遅ればせながらあけましておめでとうございます。
作ってる暇が無かったので年賀状画像は無しで。
年末はゲーム作ってUpしてた。なんとか動くところまで持って行っただけで時間切れ。技術デモってことにして置いといたけど、やっぱりIntelじゃ動かないとか音の処理がおかしくて落ちるとかいろいろ問題あり。
WindowsでもIntelだとOpenGL1.2しか無かったりRectangleTexture無かったりするのかおのれIntelめ。
まあそれでも実質の配布期間2日で200以上のダウンロードがあったみたいだし、お世辞だとしても面白いって言って貰えたし嬉しいね。
そのうちちゃんとステージとかも作り込んで正式版を配布したい。けど、配布してたイベントの次回以降の開催が危ういんだよな。まあ次まで時間はあるだろうしこれについては様子を見よう。
俺がやってもいいか、とか言いだすとほんとにやることになりそうなので言わない。
31日はコミケに行ってそのままいわきに帰った。
コミケは初めて行ったんだけど、午後から行こうとしてたら前日に午後じゃもう買えないとか有名どころは朝から並ばなきゃ無理とか言われてしまった。結局午後から行ったんだけど4つあった目当ての物はほとんど完売でEtherVaporだけ山積み状態だったのを買ってきた。
あとは見てまわるわけでもなくそそくさと出てHey行って時間潰して帰ってしまった。
覚悟はしていたけどやっぱりWFなんか目じゃない程の人出だな。 12:30頃駅に着いたのにまだWFの開場前後より多い人が歩いていくし、西館のホール?に降りるエスカレータで詰まりまくってるし、上からホール見ると人がゴミのようどころか虫の大群かのようにぞろぞろ動いてる。
中は中で、外側の方はともかくテーブルの間なんかはもう動けない程詰まってたりするしなぁ。ゆっくり見て歩くような雰囲気でもないな。
まああとはWFとかWHFなんかは買うもの買ったら見てるだけで楽しいというのもあるんだが、見て歩くだけではよくわからん物が沢山あるんで見て歩く気にもあんまりならんとか。同人ゲームのところはどこもデモがいっぱい動いてて見て楽しいけど。
あんまり気合い入れずに午後に行ったのは、コミケとか全然知らなくてどの程度売り切れるものなのかさっぱり分からなかったからというのと、WFを越える人手なのに並びたくねーというのと、結局どれも委託されそうだったから。
委託だとちょっぴり高くなるんだが、どれも元々そんなに高くないもんだから多少高くなっても痛くない。それより気合入れなくてもしばらく待ってれば買えるというのは楽すぎるよ。
ガレキなんかだと当日版権があるからオリジナルでもなければイベント以外ではほぼ買えないからなぁ。その時でなきゃ買えないってわけでもなければわざわざイベントに行く必要も無いよな。
なんかだらだら書いたけどコミケに出ることも無ければ今後も特別な理由が無ければ行かないかもね。行くならもうちょっと小さいイベントの方がいいや。人大杉。
Rikoでなんとかゲームらしきものを作ったのはいいものの、まだまだ全然整理がついてない。
いろいろやりたいけど他にもやることがあっていつまでに整理つければいいんだろうなぁ。
2Dのヒット周りをなんとかしたいな。Riko自体と分離できればいいんだがVectorとか使っちゃってるし使いたいんでどうしよう。Riko前提にするのは全然問題無いんだが、ビルドがめんどい。
今後3DのヒットをやることがあればBullet使ってしまおう。どうしても本気で組みたくなったら別だが。ちゃんとヒットとるのは大変すぎるよ。単純な形状だけなら自分でなんとかなりそうな気もするが、速くするのは大変だ。
あとOgg/Vorbis対応は完全に分離していいな。というかWavとかAiffも読めるようにして別な読み込みライブラリにしたい。
テクスチャというか画像読み込みも同じく別にしたい。ちょっとめんどいんだが、やらねばなるまい。
そもそもサウンドをどうしよう。Riko自体をOpenALに依存させるのはなんか変かなぁと思うんだが、3Dサウンドを考えるといっしょになってた方が楽だよな。うーん、これは一緒にしておくか。
今回Intel対応が全然ダメということが分かったんで、最低限Intelでも動くようにしておきたい。問題は俺がIntelGPUなマシンを持っていないことなんだが。しょぼいマシンが欲しいとか酷い。
OpenGL1.2対応はなんとかなるだろう。今は1.3前提だから1.2から1.3で増えた物に対して拡張チェックすりゃいいだけだ。
えーと、TextureEnviroment関係は使わないから良いとして他には…Compressed Texture、Cube Map、Multisample、Multitexutre、Transpose Matrixか。
えー、MultitextureとかTranspose Matrixとか駄目ですか。いやTranspose MatrixはなんとかなるけどMultitextureすらチェックする必要があるのはめんどいな。
ああそうか、Multisampleが無いから1.3にならないんだな。その程度SampleBuffersが0にしかならないとかでごまかして1.3にしてくれりゃいいのに…。
それはともかく、MacではいいんだがWindowsだとRectangleTextureも無いのは困る。やっぱりRectangleTextureちゃんとエミュレートしないとダメか。めんどいなぁ。
まだあるんだが、シェーダ前提はともかくやっぱり固定機能はちょっと欲しい。というのも適当にテクスチャ貼ったポリゴンを1枚出すにも簡単ながらもシェーダを書かなきゃならんのはめんどい。ちゃんとシェーダの管理が出来ればそんなことは無いんだろうが、今のところ上手い管理方法が思いつかないんで。
あとやっぱりシェーダにすると超簡単なものでも重くなる気がする。最近のGPUなら固定機能なにそれ?だろうし問題無さそうだけど、ちょっと古いGPUとかIntelの時に固定機能で速くなるならそれに越したことはないだろう。どうせGL3.0になったらさようならだろうが。
今でも簡単に固定機能にアクセスするクラスはあるんだが、使い勝手が悪そうな気がして使ってないのでちゃんと整理して使えるようにしてやろう。
あと2D周りの機能が弱くてめんどいんでいろいろ強化してやりたい。アニメーションとか左上を指定して配置とかいろいろ。
そんなところか。でも多すぎるぜ。他にもまだまだやりたいことはあるのに。
MacのOpenGLプログラミングガイドをみつけた。
どうもMacの開発用ドキュメントは探しづらくて困る。
で、見てたらマルチスレッドの項目も発見。
あー、コンテキスト毎に別スレッドで描画しろってことなのね。べつに勝手にマルチスレッド化してくれるわけじゃなくて自分でしろと。で、スレッド毎に別コンテキストなら並列して実行してくれるってわけね。なるほど。
今のところPBufferとか使ってないから関係無いわなぁ。これはやるとなったら結構めんどいね。
NVIDIAの方はどうなってんのかわからんけど、似たようなもんでもおかしくないな。とりあえずマルチコンテキストにした方が良さそうだ。
しかしマルチコンテキストって激しくめんどいんだよねー。PBufferはWindows、Mac、GLXで全然作り方違うしな。
あ、全然関係無いけどRadeonHD系はGL_ARB_shadowが無いらしい。いいから浮動小数点バッファ使えってことか。しかしIntelは浮動小数点バッファ使えない。