2011年1月27日木曜日

指定された型は、識別子の名前を指定せずに宣言されています。

VisualStudio2010でOpenGL中の話。
普通にやってるぶんにはGLUTもなんの問題もなく動くんだけど、windows.hも読みこんだとたんエラー。

'float' :指定された型は、識別子の名前を指定せずに宣言されています。

場所はgluPerspectivのnearとfar。いずれも変数名ママ。
とりあえずぐぐってみた。
あった。
http://f4.aaa.livedoor.jp/~pointc/101/No.18614.html
要はnearとfarって名前はDOSが内部で使ってる変数名でした、と。
太古の遺産だけど互換性担保のために残してますよ、だからwindowsAPIを呼び出す限りは使わせませんよ、と。そういうわけである。
くそだよな。
で、名前変えた。
おのおのzNear, zFarに。
動いた。
そんだけ。

そもそもなんでwindowsAPI呼び出したかっつったらQPCとQPFが使いたかったから。
それぞれキュベレイ・プルツー・コロニーレーザーとクインマンサ・プルツー・フィンファンネルの略な。
なんでそんな超高性能タイマーが必要かっていったら、高精度なフレームレート設定がしたかったから。
びっくりしたことにOpenGLにはフレームレートなんて概念がそもそも無い。
設定したかったら自分で実装せにゃならん。
一応glutTimerFuncってのはあるけど、それでも設定できるのは1msec単位だし、そもそも単なるウェイトっぽいからこれだけで高精度なFPS設定は無理そうなの。
だからQPCQPF使って超高精度FPS設定機能を実装しようぜ、という試み。
おわかりいただけただろうか。
というわけで作業に戻る。
でも眠い。ねよっかな。いやもうすこしがんばろう。
おしゃまプリンセスっていい曲だよね。
先週の金曜にインフルエンザにかかったんだけど熱出てないからインフルエンザじゃないかもしれないんだけどそういうインフルエンザもあるみたいな話だからもしかするとインフルエンザなのかもしれないねってミサカはミサカは気分が悪いと訴えながら嘔吐してみたりおウェェェェェェアァァァァァァシャァベッタァァァァァァァ!!!

やっぱ寝よう。モルダーあなた疲れてるのよ。

2011年1月19日水曜日

PlayStationEye (PS3Eye) をprocessingで使う。ついでにeclipseでも使う。

うん。そういうわけでAlexPさんのSDK落として試したみたの。
ここにあるやつ。→ http://codelaboratories.com/downloads/
sampleの中のCLEyeMulticamTest.pdeね。
そしてまあ案の定、動かないw(P.S. 動きました。後述。)
UnsatisfiedLinkError とかcannot find CLEyeMulticam.dll とか出る。
フォーラムとか眺めてみるけど解決策もなく。
AlexPさんのドライバのJavaラッパを書いてprocessingで使えるようにしたって人が居るみたいなんでそっちの方で試してみるか?
マルチで使えるかはわからんが。
_______________________

http://processing.org/discourse/yabb2/YaBB.pl?num=1258927190/0

まずこのden ivanovさんがAlexPさんのドライバ使ってprocessingでもPS3Eyeが動くようにしたぞ、と。
細かい設定なんかはivanovさんのブログな。

http://www.cleoag.ru/2009/11/23/ps3-eye-processing-library/

だけども、これを動かすために必要なAlexPドライバのバージョンは古いものが必要でしたよ、と。
どこで手に入るのかってんでliudrさんがAlexPに聞いてみたら次のとおり旧バージョンを置いてくれた。

http://codelaboratories.com/research/view/sony-ps3eye-camera-directshow-capture-source-filter-update-v3.0.0.0901

ここのv3.0.0.0901を入れたら動くんじゃね、っていう。
さあ、試してみんべ。
________________________

ってえ、試せねーんすけど。
ないんだよ。ない。どこにもねえ。
v3.0.0.0901なんてどこにもねーんだよおうい。
くそったれい。
________________________

あった!
どこのだれが上げてくれたのか知らないけどありがとう!
↓ここな。

http://www.general-search.net/fileinfo/gs5f9f7feh82i0

で、つかってみた。
動きました!やったね!
いや、まだひとつが動いただけ。
2つでやってみんと。
________________________

クソッタリーノ!
だめだ、こいつじゃ複数は動かせねえ。何か別の、別の手段がねえと、、、
________________________

きたこれいいいいいいいいいいいいいいいいいい!
うごいた!うごきやしたよおっかさん!

まあ、単純な話でね、「java ps3eye」でぐぐったら↓これがでてきてさ。


http://codelaboratories.com/forums/viewthread/238/

eclipseで実行してみたら動いたの。それだけ。
cleyemulticam.jarを参照ライブラリにビルドパス追加。
CLEyeMultiCam.dllをlivNativeフォルダの中にインポート。
(注:livNativeフォルダってのはNative library locationに設定してるフォルダのこと。
以下過去記事参照。
http://0ba38758174010h.blogspot.com/2010/11/eclipseprocessingprocessingopengl.html
http://0ba38758174010h.blogspot.com/2010/11/javajbullet.html

それだけ。

一応キャプ画像載せとくね。うれしいから。

どや!
って俺の成果じゃないんすけどね。

ああ、なんかもういいや。疲れた。帰ろう。
そして溜まりに溜まったアニメを消化しよう。
まずはまどかマギカだ。そしてフラクタルだ。その後はみつどもえにインデックスにうわあだるい。
明日はとりあえずうまくいったことを先生に言ってPS3Eyeをたくさん先生に買ってもらおう。
4つあればいいかな?
そして作業的にはJBulletに戻ろう。何も解決してねえから。
まあいい。とにかくかえろう。つかれた。おやすみ。バイバイ。
___________________________


実はここで大問題。今回使ったこのCLEyePlatformSDK、デフォルトのままだと無料で使える代わりにPSEyeは2つまでしか同時利用できない。俺は4つくらい使う必要がある。さてどうしようか。
ってんで次回に続く。

http://0ba38758174010h.blogspot.com/2011/02/playstationeye-ps3eye-processing-on.html