色々と探し回った結果、最終的には海外のMSDNフォーラムにたどり着きました。
XACT on Win2000 ??? とかいう表題のフォーラムで、まーうちがぶつかっている問題でした。
まぁ、フォーラムを見ていただければ、わかるんですが、XACTはWindows2000じゃ動かないぜ。
と書いてあります。
薄々そうじゃないかとは思ってたんですよ(´ω`)
が、その下に、XACTを動かしたかったらマニュアルでこーいれればいいぜと書いてあります。
どれどれんじゃぁやってみようじゃないかということで、やってみました。
方法は以下の通り。
1.xactengine2_?.dllとx3daudio_?.dllなどをとりあえずコピーする。
2.msvcr70.dll以降のdllの最新をコピーして、msvcrtx.dllとリネームしておく。
3.xactengine2_?.dllをバイナリエディタで開いて、msvcrtの文字列をmsvcrxに書き換える。
(それぞれ一カ所ずつある)
4.xactengine2_?を全部regsvr32で登録する。
やー鳴りましたよ。
責任はちょー自己責任で。
ちなみに、system32に入れなくても動くみたいなので、必要なアプリケーションと同じところに突っ込めばいざというときに消しやすいかと思います。
あとはregsvr32 /uするだけでいいしね。
まーこんなことしないでもいいようにMSにはしてもらいたいのが本音です。
インストール用のinfを見たら、Windows2000はスルーされているもんなー。
あ、もちろん9x系もスルーされてました。
そっちで鳴るかどうかはまるで知りません(汗)
XACTが一体なんのエラーをはいているのかと調べるダイアログをだしてみた。
どうやら、表題の通り0×80040154らしい。
XACTの一般的なERRORではないようで調べてみたら、どーにもdll関係が登録されていない模様。
ErrorLookupの内容はこんな感じ。
HRESULT: 0×80040154 (2147746132)
Name: REGDB_E_CLASSNOTREG
Description: Class not registered
Severity code: Failed
Facility Code: FACILITY_ITF (4)
Error Code: 0×0154 (340)
regsvr32でもすれば、強引に登録できるかなぁとおもったけど、どーにも、それもxactengine2_0.dll~xactengine2_6.dllまであって非常にとほほな感じです。
とりあえず、w2kの問題なのかを調べるために2ndマシンにHDDを繋げてOSをインストールしてるところ。
そして、フォーマットしている最中ですが、素晴らしい異音がしてきましたよと。
多分、奥様マシンのHDDで異音がしてきたから、交換した代物なんじゃないかと思うのです。
まぁ、動けばいいか。
80%くらいのところで、ごりんごりん言ってるし、容量が必要なわけじゃないので、まだいける。
余ってるATA-HDD万受け付けてます(´ω`)
日本語を含まないコメントは全部スパム扱いにしてみた。
まぁ、大丈夫だと思いますが、コメント出来ない人がいましたら、コメントできないってコメントください。
自分の環境で動くの当たり前として、他の環境で動かないと言われると本当にツライ(´ω`)
まず自分の家の2ndPCで試してみるが、それでも普通に動いちゃったりすると後はデバッグ版を渡して、ワトソン先生の吐き出すログ便り。
アドレスさえ分かれば、解決できますがね。
今回はXACTCreateEngineがダメでメンバーに渡しても動かなかった模様。
しかし、そうなると引数が2つしかないこの関数にはどうにかするってのが難しいですよね。
代替えなんか効かないしXACTは非対応ってことにしかできないよなぁ。
サウンドカード側のドライバ変えればどーにかなるものなのかしら。
にんともかんとも。
ちょいと前からとある物を作っているわけです。
んで、ちょっと前に提案でこうしたいと言われて、ふむーちと面倒そうだなぁと思っていたのですが、データがあがってきて、やっぱりめんどくさいという結論になったわけです。
とりあえずなんか試してみるよ! とデータを受け取って、試作してみました。
そして、あれこれいじって結局できたわけですけどねー。
↓のような画像ね。
絵の詳細については聞かれても答えないし、何を言われてもスルーしますんで、ひとつよろしく。
いにしえの手法から考えると、ANDマスクで絵を抜いて、その上に~ なんですが、今更そんな手法で作るのもテラダルスという発想を元に、DirectX9らしい何かで作りましょうと文献ぺらぺらと眺めつつ考えた結果ステンシルバッファしかないよねーと至ったわけです。
とりあえず、レンダリング先の変更を出来るように、プログラムを改良。
同時に戻すようにも作って、サーフェイスのクラスも新設(前回使った物をこぴぺですが)
改良して、レンダリング先が変わることを確認してから、ステンシルバッファのレンダリングステートを変更するように改良。
どうしたら、いいかとか本に書いてあるので、えっちらおっちらと本を見ながらコーディング。
ステートチェンジする関数を登録するようにして、ぽいぽい追加していく形に。
ターゲット変更
↓
切り抜きマスクを描画
↓
絵を描画
↓
鏡持ちを描画
↓
ターゲット変更
↓
上で用意したテクスチャを描画
↓
完成
あーながかった(´ω`)
もうちょっとレンダリングステートの中で何をしているかを理解しないといかんなぁと思うのでした。
ってか、あれは項目多すぎなんじゃよ。
モギャー。
義母様に頼まれて、カメラマンになってきました。
朝も早かったので、色々と大変でしたが、なんとかかんとかタクシーに乗って、現地に滑り込みセーフでこっそり潜入。
撮る物は撮るけど、取り敢えず資料になりそうなものもこっそりゲットとか考えちゃうわけです。
まーここから先は有料ですとかいう感じで、先に進めないところが多くて、ひじょーに撮れるところはすくなかったのですけどね。
待合いを出るときにぱしゃーり。
三脚を持って行ったけど、立てる場所はないもんですなぁ。
式典の前方に堂々と行ける立場の人が非常に羨ましかったよ。
他人がカメラをぶら下げていると、ついつい気になってメーカーを見てしまうようになりました。
白玉で、キャノンだーとか(笑)
階段。
オチはないよ?
もぐの人が沖縄に行ったお土産を貰った。
シークワーサークレープなるもの。
※クマは付属しません。
クレープっていうから、ふにゃっとしてたりするのかと思ったら、意外と硬かったです。
味?
普通だったなぁ。
シークワーサーの味って知らないし、特別に酸っぱいということもなくて、強烈に甘くもないと。
でも、もぐもぐと美味しくいただくわけです(´ω`)もぐもぐ
今作っているのに使わないことは確定なんですが、新規に自分で作るのもなーと思うわけですよ。
同じことを前回も書きましたね。
色々と調べて悩んでいるのですが、squirrelがいいかなーと。
昼にみぐさんからURLを送られたので、そのページを見てたのですが、中々わかりやすく説明してくれていたので、理解するのに色々と手間が省けました。
C→スクリプト の流れは、以前に自分でも考えたのですが、色々と面倒じゃよねという結論づいたわけですが、やっぱり既存のそういうのを見ても面倒だと思うわけです。
スタック操作が必要なのってめんどいよねとか(どこまで横着者なんだ)
Cシンタックスでスクリプトで使うオブジェクト/構造体はスクリプト上で定義したいということを考慮するとanglecodeは方向性が違うなーと(できるのかもしれないけど)
GameMonkeyScriptなんてものあるよと言われて、調べてみました。
検索結果に、
GameMonkeyScriptってどうよ。
雑魚っぽい名前でいや。
ちょっと飲み物を吹き出しそうになった。
トランジションを実装するにあたって、コルーチンを実装した方が便利かなぁとか考えていたので、どうやって実装しようかを模索。
まぁ、結局はFiber使って実装したわけですが、はてさて、これはフレームワークのどこに位置づけるべきなのかなぁとかなんか色々とと考えていたら全然コーディングが進まないのですよ。
罠ですか。
スクリプトを一から作るのもバカらしいので、何か使える物はないかと調べたのですが、メジャーどころはLuaなんですが、Luaの言語体系が今一好きくないので、違うのないですかと調べたらAngelCodeなるところにたどり着きました。
なんだけど… 今一わからん。
高望みはしたくないのだけど、気に入らない物は使いたくないしなーとか贅沢な悩みでこれまたぐるぐる。まぁ、当面使いそうもないのですがね。
最近のコメント