DirectX総合スレ (Part5)
■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。
2006/09/08(金) 23:56:42ID:0F5D1JWX他の言語使ってる奴はいますぐ消えろ
0180名前は開発中のものです。
2006/09/16(土) 15:46:25ID:mhwk2PCU問題は既にハイトフィールド云々という次元を遥かに凌駕している。
こ れ は ど ち ら が 最 後 に 書 き 込 み を す る かっ!!!
という超超高次元な問題に遷移しているのだ。
この場合書き込みの内容は無視して構わない。
あくまでどちらが最後に書き込みをするか。この一点で勝負は決まる!
0181名前は開発中のものです。
2006/09/16(土) 15:50:38ID:j5vuvrOR0182名前は開発中のものです。
2006/09/16(土) 16:08:04ID:NbVPi73vまぁなんだ、ツールの段階でポリゴンに隙間がなければ
コリジョンが抜けるなんて事はないんだよ。
抜けるとしたらそれはそれで興味あるアルゴリズムだな・・・
0183名前は開発中のものです。
2006/09/16(土) 16:11:17ID:z4sCHZfBいったいどんな馬鹿なモデルデータを使ってるんだ?
0184名前は開発中のものです。
2006/09/16(土) 16:49:39ID:LjBp93/Tデータの問題もあるけどチェックの仕方にもよると思うね。
隣接する多角形をちゃんとくっついてるものと保障する構造を作るのが面倒だと思うけどな。
例えば、三角形Aとそのとなりに三角形Bがあるんだけど、
判定してみたら誤差の問題かアルゴリズムに抜けがあるかでその両方の三角形に偶然ヒットしなかったと。
でも、モデル的にはその2つはくっついてて、境界でも必ずそのどちらかにヒットするはずなんだけど
どっかで抜けが発生してしまう。と。
俺がデザイナの作ったメッシュデータで判定をしてたときに面倒だと思ったのはこんなところだね。
しょうがないから隣接情報を三角形ごとにもたせたけど、手間だし、無駄だと思うな。
それに対してハイトフィールドは別に隣接情報を持たなくていいから楽だし、
なによりXZから確実にYが決定できる安心感がいいね。
0185名前は開発中のものです。
2006/09/16(土) 17:04:12ID:QxqZsR+w0186名前は開発中のものです。
2006/09/16(土) 17:12:38ID:7x6J3Hmc0187名前は開発中のものです。
2006/09/16(土) 17:33:58ID:NCgixR60旧来の擬似3Dマップで使われるような判定を別に行うか、
大きくはこの2通りがある。
旧来の擬似3Dマップ方式でも、3D空間を格子状に分解して個々の
立方体領域全てについて地形が存在するか否かをもつ方式もあれば、
2D平面を格子状に分解して、ここの正方形領域に高さ情報を持たせたものを
複数層重ねることによって地形の当たり判定を管理する方式もある。
蒸し返されてる螺旋階段の例において、螺旋階段状でジャンプしたときに
上の階段とぶつかることについて考える。
3Dオブジェクトを利用した判定や3D空間を格子状に分解する方式では、
下の段に接地することと上の段に頭をぶつけることは、まあだいたい等価
に考えられる。特に特別扱いしなくてもいい。
高さ情報をもつ2D格子を複数層重ねる方式では、その層を場所ごと(螺旋階段
一周の端とか)で切り替えるようにしていると、上の階段に接触しない可能性が
出てくる。高さ依存で層を切り替えるとか、そういう配慮が必要だ。
何の方式にしろ、理屈の上ではたいていのことが工夫すれば(あるいはしなくても)可能だ。
ただ、世界の単純化の度合いが進めば進むほど、複雑なことをするためには世界のモデルを
拡張する必要がでてくる。
あとでシステムが拡張に次ぐ拡張に見舞われるようなことにならないためには、自分の作る
ゲームでやることに対して、どの程度の世界(今回の例では地形)の単純さが適切か考えることが
大切だな。
今回の言い合いでは、たぶんお互いが頭に思い描いているゲームの複雑さの基準がかなり異なっている。
それが単なる一時の思い違いによるものならいいんだが、この様子では、どちらの側も、話の中である程度
具体的に想定できるゲームのバリエーションが貧困なんだと思う。もっといろんなゲームをプレイするといいよ。
0188名前は開発中のものです。
2006/09/16(土) 17:38:28ID:+w/URioFこの書き込みを見てやっとLjBp93/Tが思っていたよりはマトモなんだと分かったw
だからこそ、普通の(←これ重要)ハイトフィールドで螺旋階段とかが
そのまま(←これが重要)判定できないっていうのに異論を唱えるのが不思議。
>>187
> 今回の言い合いでは、たぶんお互いが頭に思い描いているゲームの複雑さの基準がかなり異なっている。
みんな「時オカ」を例にして話を進めてますよ。
あれくらいの規模(ポリゴンの単純さ)からすると、ハイトフィールドよりも
メッシュ判定の方が断然楽。確かに確認作業は大変なものになるけど、
それこそ「工夫」すれば楽にできるよ、な。
0189名前は開発中のものです。
2006/09/16(土) 17:48:21ID:LjBp93/TゼルダなんてSFCの頃やったきりだしw
0190名前は開発中のものです。
2006/09/16(土) 18:19:37ID:E6j+Euzf数値計算もロクに知らないのが露呈しただけじゃん。
0191名前は開発中のものです。
2006/09/16(土) 18:29:38ID:LjBp93/Tはぁ?
0192名前は開発中のものです。
2006/09/16(土) 18:38:20ID:mhwk2PCU「楽だし、安心感がいいから、ハイトフィールド最高!!」
さぁみなさんご一緒に!!
0193名前は開発中のものです。
2006/09/16(土) 18:41:42ID:LjBp93/T無駄に苦労して抜けに苦しむ意味がわからない。
隣接情報は作るのも大変だが、それ以上に確認が大変だぞ。
0194名前は開発中のものです。
2006/09/16(土) 18:41:45ID:XwJAVNiB0195名前は開発中のものです。
2006/09/16(土) 18:56:20ID:mhwk2PCUお前の糞スタッフが糞地形データをよこすのはわかったが、
糞スタッフまみれなのはお前だけらしいから、
全世界のPGが「ハイトフィールド最高」と唱えるまで粘着するなと言ってるわけだが…
0196名前は開発中のものです。
2006/09/16(土) 19:04:21ID:NCgixR60隙間にオブジェクトがつっこんだ事それ自体とか、そのときに取得する
「それまで正常に取れてた高さ」とかが正確ならいいんだが、単に行き当たり
ばったりな対策なら余計ひどいことになるから思いとどまったほうがいいと思う。
商用ゲームのリリースとかの社会的な影響が大きいものでもない限り、
共同制作なら締め切りの延期を頼むなりして、まじめに原因と正確な
解決法の模索をしたほうがいいと思う。
0197名前は開発中のものです。
2006/09/16(土) 19:09:42ID:u5V7+KW30198名前は開発中のものです。
2006/09/16(土) 19:10:41ID:XwJAVNiB>粘着するなと言ってるわけだが
せっかくもりあげてくれてるのに…なんでそういうこというかな
彼にはDirectΧMVPをあげていい
0199名前は開発中のものです。
2006/09/16(土) 19:14:39ID:LjBp93/Tそもそもどうやって正常か異常か判断するのかと問いたいw
俺のそのときやった解決策は隣接情報を持つことだな。
これ以外の解決策があるかもわからんが・・・。
0200名前は開発中のものです。
2006/09/16(土) 19:15:01ID:W9eJQBmZ0201名前は開発中のものです。
2006/09/16(土) 19:40:30ID:XwJAVNiBメッシュの隙間をちょうど通ってなにもヒットしなかったら異常
>>194はメッシュを事前にチェックする手法じゃなくて実際にゲーム内で歩行するときにやる
次のフレームでキャラを描くY座標を求める漸次処理での話だよ
0202名前は開発中のものです。
2006/09/16(土) 19:47:35ID:LjBp93/T>メッシュの隙間をちょうど通ってなにもヒットしなかったら
だから、隣接情報がいるだろ?w
0203名前は開発中のものです。
2006/09/16(土) 20:25:41ID:q7N2QBcJ0204名前は開発中のものです。
2006/09/16(土) 20:31:20ID:x7V8Yxct隙間を抜けるとか隣接情報がどうのこうのとか言ってるってことは
キャラの接地判定を点座標かそこからの垂線かなんかで処理してるんだな?
それなら議論が噛み合わないのもわかる。漏れはマップとの当たり判定も
球コリジョンでやってるからな。その方が壁とか天井とか他キャラとの押し合い
とかも全部同じコリジョンで判定できるんで楽なんだよ。
三次元の世界で未だにマップチップ敷き詰めた二次元マップと変わらない
実装してる時点で、ロートルという指摘は間違っていなかったようだ。
0205名前は開発中のものです。
2006/09/16(土) 20:37:34ID:LjBp93/T球判定は解決になってねぇ気がする。
俺もヒットの範囲をでかくもつってのは対策としてやったことがあるけど
結局、ヒット後の戻す位置が不安定になるからキャラがガクガクする箇所がでたからその方法はボツった。
0206名前は開発中のものです。
2006/09/16(土) 20:44:04ID:NCgixR600207名前は開発中のものです。
2006/09/16(土) 20:51:36ID:mR0GXmuR処理負荷が高いだけで何の利点もない。やるだけ無駄。
0208名前は開発中のものです。
2006/09/16(土) 21:00:25ID:XwJAVNiBほんといろんなやり方があるもんだね
0209名前は開発中のものです。
2006/09/16(土) 21:07:57ID:x7V8Yxctおまえはハイト厨の仲間かw
>>205も>ヒット後の戻す位置が不安定になるからキャラがガクガクする
とか言ってるけど、球と平面の交差判定と最近接点の求め方も知らないのか?
ttp://www.amazon.co.jp/exec/obidos/ASIN/493900791X
これでも読んどけハゲども。
>>206
まさかバカ正直に表示用モデルのメッシュのポリゴン1つ1つと判定するとでも?
たしかにモデラーにメッシュ作ってもらえとは言ったが、そのぐらい想像しる。
0210名前は開発中のものです。
2006/09/16(土) 21:12:18ID:LjBp93/Tいや、普通に↓の状態のどっちの平面を優先するか?って方法が難しいだろ・・・
\○/
0211名前は開発中のものです。
2006/09/16(土) 21:21:07ID:NCgixR60> 平面
平面?
> 表示用モデルの
バウンディングボックスとか球コリジョンとか言ってるのに
どこから表示用モデルの話が?
0212名前は開発中のものです。
2006/09/16(土) 21:46:28ID:XwJAVNiB全部本に書いてあるだけの知識なんだったらなんでそんなに人を見下した態度になれるのか
よくわからn
0213名前は開発中のものです。
2006/09/16(土) 22:09:09ID:x7V8Yxct>>210
あれか、ヒット検出するたびにオブジェクトの位置更新する方法なのか。
漏れはヒット検出だけ先にがーっとやって良い位置を見つけてから動かしてる。
まさか更に後ろから追突されてる場合どうすんだ?とか聞くんじゃないだろうな?
これはもう>>187の言うとおり、想定してる実装が大幅に違うので
これ以上議論する必要はないな。ずっと平行線だろう。
>>212
説明すんのめんどくせーから良書と言われてる本提示しただけだよw
0214名前は開発中のものです。
2006/09/16(土) 22:13:30ID:+w/URioF今はオマエの方が痛いやつだな・・
処理が重くて実装が面倒(初心者向けじゃない)な方法を出してきて
優越感に浸ってるんだからな・・・
初心者へのアドバイスとしてはハイトフィールドは正解だよ。
LjBp93/T が言ってる抜けとかガクガクのことは、心配しない方がおかしい。
どんな優れた判定でも厳密な実装をしたとしても、抜けの心配ってのは尽きない。
それを「球コリジョンの判定だから大丈夫」ってのはPGとして問題ありだぞ。
0215名前は開発中のものです。
2006/09/16(土) 22:43:30ID:EvPmSf1c【Collision Detection】
ttp://pc8.2ch.net/test/read.cgi/gamedev/1015484028/
0216名前は開発中のものです。
2006/09/16(土) 23:32:15ID:mhwk2PCU地形が無表情になると感じたので、眼中になかった。
メッシュに関しては隙間があるなんて論外だ。
そもそもそんなメッシュは生成しないか、
どうしても生成する可能性があるなら、
事前にチェックする処理を実装すべきじゃないだろうか。
メッシュの範囲内で抜ける可能性があるのは、
三角形の辺や頂点付近で、計算誤差の関係で、
どの三角形の範囲内とも判定されない場合だろう。
現状、俺の場合は地面にめり込むと即破壊なんで、
(流れに沿えなくて申し訳無いが)無視しても問題なさげだが、
いずれ地面を這いずる処理もする予定なんで、
判定のときに決定されるパラメータを基準に、
高度を決めるに相応しい三角形を決定するかな。。。
正直、19時くらいから友人に拉致られていた。
亀レスでも一向に反省しない。
0217名前は開発中のものです。
2006/09/16(土) 23:49:35ID:XwJAVNiB面倒くさいくらいで自暴自棄なってたらこの先生きのこれない
021898
2006/09/17(日) 00:56:16ID:95SApkAm土曜日がお休みの奴らだけで話を進めてさ!
0219名前は開発中のものです。
2006/09/17(日) 02:17:56ID:kab63KmG>>98
3D格子を立方体見立てて、地形と判定して自動生成汁
0220名前は開発中のものです。
2006/09/17(日) 04:11:16ID:xi1qMqr5モーションキャプチャで作成されたBVHフォーマットのデータ集があります。
これを読み込んでスキンメッシュに適用したいのですが、キャプチャされた人の体型と、
キャラクターの体型が違うと、あちこちで破綻しますよね(歩きで足がめり込む、剣を
持つ手がズレる等)。こういうデータの問題は、3DCGのソフトとかで編集して何とかする
モノなのでしょうか。キャラの形を演技者に合わせるのでしょうか。それとも心配する
ほど誤差は出ないのでしょうか・・・
どうするのが一般的なのか教えて下さい。
0221名前は開発中のものです。
2006/09/17(日) 08:55:25ID:DxO0onxt0222名前は開発中のものです。
2006/09/17(日) 13:15:12ID:VB8rm0m6最近の3Dソフトは、体型やボーン構造が違うモデルに
モーションデータを破綻せずに転写する機能があるものがあるから、
それを使うといいかも。
といっても万能ではなくて、ある程度は微調整が必要だけど。
0223名前は開発中のものです。
2006/09/17(日) 14:12:34ID:xi1qMqr5Poserが安くてそんな機能を持ってるように見えますね・・・
人体のボーン以外のデータ(擬似カメラマン等)がどう処理されるのか謎ですが。
ちょっとCG板でも質問してみます。
ありがとうございました。
0224名前は開発中のものです。
2006/09/17(日) 14:33:11ID:cEnlpKqK0225名前は開発中のものです。
2006/09/17(日) 16:23:16ID:UIgbxGdy切り替えるようにすればいいのかいろいろ試しているんですがいまいち綺麗になりません。
今やっている方法としてはモデルの描画タイプなるものを変数でもってそこにenumで
定義したライト有とか無とかを入れて。それに応じた関数を1つずつ作ってその中で
設定して描画という流れをとっています。ほかに何かいい方法ありませんでしょうか?
0226名前は開発中のものです。
2006/09/17(日) 17:31:19ID:l4eSGZ3aそれで問題ないんじゃん?
要は描画タイプをもっとスマートに設定したいってことだと思うんだけど、
俺はモデルのファイル名とかテクスチャのファイル名で区別するようにして
ロードする所で自動的に描画タイプ(に相当するもの)を設定してるよ。
あとは、モデルデータの中に情報を埋めこめられたらそれがベストだろうし、
あまり使われない emissiveColor とかに判断するための情報入れても良いし。
0227名前は開発中のものです。
2006/09/17(日) 21:02:11ID:kVaTVo9Q綺麗に実装したいということであれば、シーングラフとうい単語について調べてみるといいかも。
簡単に言えば、描画のための属性情報をデータに埋め込むための方法のひとつ。
ただ、一般的に極端に柔軟な構造になっていて(属性一つ一つが別オブジェクトとか)逆に
わかりにくくなってたりするので、その辺は差っ引いて考えたほうが良い。
0228名前は開発中のものです。
2006/09/18(月) 16:38:09ID:nebAij1Lどこかにありませんか?
0229名前は開発中のものです。
2006/09/18(月) 16:53:16ID:hPW3CvLZオマイは初期化だけすれば満足なのか?
サンプル見れば初期化だけじゃなく色々処理してて楽しいぞ!
0230名前は開発中のものです。
2006/09/18(月) 16:56:42ID:3J7XaVedそれ欲しい気持ち分かるかも。
サンプルは短いほど良い。
初期化なら初期化のみのサンプルが欲しくなるけど何故か無いんだよね。
0231名前は開発中のものです。
2006/09/18(月) 17:01:59ID:hPW3CvLZホラヨ↓
static LPDIRECT3D9 d3d = NULL;
static LPDIRECT3DDEVICE9 d3dDevice = NULL;
// Direct3D生成
if ((d3d = Direct3DCreate9(D3D_SDK_VERSION)) == NULL) {
return E_FAIL;
}
// デバイス生成
D3DPRESENT_PARAMETERS d3dpp;
ZeroMemory(&d3dpp, sizeof(d3dpp));
d3dpp.Windowed = TRUE;
d3dpp.SwapEffect = D3DSWAPEFFECT_DISCARD;
d3dpp.BackBufferFormat = D3DFMT_UNKNOWN;
d3dpp.EnableAutoDepthStencil = TRUE;
d3dpp.AutoDepthStencilFormat = D3DFMT_D16;
if (FAILED( d3d->CreateDevice(D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, hWnd,
D3DCREATE_SOFTWARE_VERTEXPROCESSING,
&d3dpp, &d3dDevice) )) {
return E_FAIL;
}
0232名前は開発中のものです。
2006/09/18(月) 17:02:02ID:YGVTfy8v0233名前は開発中のものです。
2006/09/18(月) 17:23:00ID:hyOjYwNqエラーでたような
0234名前は開発中のものです。
2006/09/18(月) 17:25:42ID:hPW3CvLZなぜか開発できてる。XPだと良かったとかあるんだっけ?
0235228
2006/09/18(月) 17:34:23ID:nebAij1L今のDirectXは、VC++6.0 見捨てたって本当ですかwwwwwwwwww
2年ぶりぐらいにゲーム作り再会しようと思ったけど
昔VC6で書いたコードがどっか行ったからまた一から書き直そうと思ってたんですけどwwwwwwwwww
0236名前は開発中のものです。
2006/09/18(月) 17:48:58ID:hPW3CvLZせっかく再開しようと思ったんだから、とりあえずSDK入れてみなよw
ちなみにサンプルコードは、昔みたいにサンプルとして用意されてるんじゃなくて
Sample Browserっつーやつで欲しいやつをコピーして使うんだよ。
コピーされたやつは.NET的なプロジェクトなんでVC6.0ではそのままでは使えなくて
自前でプロジェクト作成して追加するか、中身だけコピペして使う。
0237名前は開発中のものです。
2006/09/18(月) 18:11:28ID:nebAij1Lとりあえずこれに移行しようwwwwwwwwwwwww
version2002って書いてあるけどこれでいいのかなwwwwwwww
とりあえず>>231ありがとうwwwwwwwwwww
>>236もwwwwwwww
0238名前は開発中のものです。
2006/09/18(月) 18:20:33ID:hPW3CvLZちょwwwwww
VC#じゃ俺がさらしたコード意味なくね?w
それに、>>231 も >>236 も俺だwwww
0239名前は開発中のものです。
2006/09/18(月) 18:37:41ID:u18krs0Fversion2002って、それも古いよw
ttp://www.microsoft.com/japan/msdn/vstudio/express/
↑で「Visual C++ 2005 Express Edition」が(C# 2005も)
タダで配布されているから、これを使え。
ちなみに、MFCとかいくつか機能は削られてるけどね。
0240名前は開発中のものです。
2006/09/18(月) 19:37:28ID:hx4aXYl50241名前は開発中のものです。
2006/09/18(月) 20:02:41ID:nebAij1Lありがとう
無料wwwwwwwwwwwww
>>240
ありがとう
英語わかんねwwwwwwwwwww
0242名前は開発中のものです。
2006/09/18(月) 21:00:23ID:hqDoqF8gwindows.hが無いって言われてPSDK入れようとしたら解凍時にエラーが・・・orz
0243名前は開発中のものです。
2006/09/18(月) 22:05:45ID:wQqaLVvp簡単に触れるようにしておいたら結構アドバイスとかもらいやすいですか?
0244名前は開発中のものです。
2006/09/18(月) 22:08:41ID:CKwMW6d10245名前は開発中のものです。
2006/09/18(月) 22:11:16ID:TsNNBYba0246名前は開発中のものです。
2006/09/18(月) 23:09:43ID:hyOjYwNqpd3dDevice->Resetをかけて
pd3dDevice->Presentするとエラー出るんですが
回避方法あります?
Reset前にレンダリングターゲットReleaseしてもエラーでます;;
0247名前は開発中のものです。
2006/09/18(月) 23:22:59ID:cmynSM1C→CreateVertexBuffer/CreateTexture
→BeginScene
→EndScene
→Present
の順でもエラーがでるん?
0248名前は開発中のものです。
2006/09/19(火) 00:20:26ID:U6KIFbrr0249名前は開発中のものです。
2006/09/19(火) 00:40:10ID:t7b8fFIa0250名前は開発中のものです。
2006/09/19(火) 00:56:56ID:SaZdkbYWそもそもどんなライブラリを作るの?
単なるラッパーなら誰も相手にしないと思うよ。
0251名前は開発中のものです。
2006/09/19(火) 00:57:12ID:1N/W0sXJ目指さないと使ってくれる人居なさそうだねぇ。
使ってくれる人居ないと結局csvで触ってくれる人もアドバイスやら
要望やらも来なくなるし・・・
0252名前は開発中のものです。
2006/09/19(火) 01:06:07ID:t7b8fFIaどんな機能が必要でどうまとめたら上手くいくかスレ立てて考えろよ。
でも、どういうライブラリが欲しいのか方針はお前が決めろ。
みんな勝手な要望ぎしぎし詰め込んでも実際作れないだろ?
XFileが読み込めて、バンプ、環境、スキンメッシュ、フォグ、・・・対応しろとか言われても
これ、対応するだけで1年はかかりそうな勢いだぞ。
通常描画のスキンメッシュ
パンプ描画のスキンメッシュ
環境マップ使った描画のスキンメッシュ
・
・
・
ってやること同じくせに量だけは多いんだ。
会社で作ったときもかなり時間使ったし、まず、仕様を絞らんとどうにもならんぞ。
逆にライブラリなんて作らないで、仕様だけまとめておいて公開しておくってのも手だ。
もちろん、どんな経緯でそういう仕様に決まったのか書いてあると改善案も出しやすい。
結構、ライブラリの仕様を決めるのも一苦労だろ?
0253名前は開発中のものです。
2006/09/19(火) 01:24:36ID:BOyyTazNSetRenderTargetを使っているなら、それを元に戻した?
0254名前は開発中のものです。
2006/09/19(火) 01:27:01ID:1N/W0sXJ互換を考えてもDx9フル対応くらいの勢いがほしいねぇ。
0255名前は開発中のものです。
2006/09/19(火) 01:36:21ID:oOnCYiGcDirectXラッパー…自前鯖…オナニー…
>>252
>上手くいくかスレ立てて考えろよ
SourceForgeにプロジェクト立てる。これが正解。
オナニーが頓挫したら墓標のごとく未来永劫残す。カッコイー(・∀・)
0256名前は開発中のものです。
2006/09/19(火) 01:45:48ID:KfiG372I0257名前は開発中のものです。
2006/09/19(火) 01:55:02ID:t7b8fFIa0258名前は開発中のものです。
2006/09/19(火) 01:55:43ID:oOnCYiGc最高に厨臭いDirectXラッパーを作るスレ
がいいな。潔くて好感度急上昇だな。
0259名前は開発中のものです。
2006/09/19(火) 01:59:05ID:t7b8fFIa0260名前は開発中のものです。
2006/09/19(火) 02:16:05ID:gf5/DDGm例えば
0261名前は開発中のものです。
2006/09/19(火) 02:30:20ID:E+vk7FJ40262名前は開発中のものです。
2006/09/19(火) 07:30:08ID:t7b8fFIaそんな想像力もない奴と話なんぞできん。
0263名前は開発中のものです。
2006/09/19(火) 08:59:22ID:1N/W0sXJLunaは自宅鯖でSubversion管理されてなかったか?w
0264名前は開発中のものです。
2006/09/19(火) 17:33:32ID:9n1QZKMPHLSLで描画前にテクスチャ数を指定してシェーダが切り替わるようにしたいんだけど、
上手く切り替わらず、毎回テクスチャONの状態になってしまいます……。
エフェクトファイルは↓なんですが、合ってるかどうか見てくれませんか?
http://gamdev.org/up/img/7619.zip
0265名前は開発中のものです。
2006/09/19(火) 18:35:40ID:n+W5xQneちゃんと切り替わるじゃんYO
UseTexCntの値を入力してないんじゃね?
0266名前は開発中のものです。
2006/09/19(火) 18:50:23ID:n+W5xQne値を入力しないとテクスチャONにならないし、UseTexCntが1のままとかかな?
0267名前は開発中のものです。
2006/09/19(火) 19:47:47ID:9n1QZKMPさっきGetInt()で確認したらUseTexCntの値はちゃんと描画前に0・1が切り替わっていました。
んー、何が原因なのかさっぱり分からない。orz ソースの方をもっっとよくトレースしてみます。
0268名前は開発中のものです。
2006/09/19(火) 21:37:36ID:/6g1Cemc第1弾 ライブラリ機能を上げさせていただきます。
・テクスチャマネージャ
・シェーダマネージャ
・ファイルシステム
・インプットシステム
・オーディオシステム
・Xファイル(スキン)
・描画系はできる限りシェーダで行う
・算術関数
・フォント
・スクリプト
・カメラ
・視垂体による描画判定
・メモリマネージャ
・2Dスプライト
・パーティクル
・プロファイラ
・LOD
・カメラ位置からの距離によるミップマップ
・オーダリングテーブル(オブジェクトのソート)
0269名前は開発中のものです。
2006/09/19(火) 22:56:41ID:t7b8fFIa乙。
じゃあ、次は優先度を・・・。
0270名前は開発中のものです。
2006/09/19(火) 23:18:58ID:PUi+Z24tもう済んでるかもしれないけど、描画直前(BeginPass()後)に
パラメータいじった場合は、CommitChanges()呼ばないとだめよ。
0271名前は開発中のものです。
2006/09/19(火) 23:47:57ID:SaZdkbYW力になれなくて残念なんだが・・・
VertexShader/PixelShaderの配列を定義して
変数で切り替えられるのを初めて知った!!
ありがとう!! そして、頑張れ!
0272名前は開発中のものです。
2006/09/20(水) 00:18:57ID:vxl0rQet第2弾 優先決めました。
・1.テクスチャマネージャ
・6.シェーダマネージャ
・17.ファイルシステム
・10.インプットシステム
・11.オーディオシステム
・5.Xファイル(スキン)
・9.描画系はできる限りシェーダで行う
・2.算術関数
・3.フォント
・18.スクリプト
・4.カメラ
・12.視垂体による描画判定
・16.メモリマネージャ
・8.2Dスプライト
・7.パーティクル
・19.プロファイラ
・13.LOD
・15.カメラ位置からの距離によるミップマップ
・14.オーダリングテーブル(オブジェクトのソート)
0273名前は開発中のものです。
2006/09/20(水) 00:25:00ID:37EIjtZt見辛い・・(´Д`)
メモリマネージャとかファイルシステムを後回しして大丈夫か?w
「描画系はできる限りシェーダで行う」なのにシェーダマネージャが
Xファイルよりも後だし・・パーティクルとか妙にハエーしw
一応確認しておくが、DirectX使ったゲーム作ったことある?
0274264
2006/09/20(水) 00:25:09ID:sFU/X0hE別のエフェクトのパラメータに書き込んでましたorz
ハンドルで指定していたらエラーが出ないのね……。
0275名前は開発中のものです。
2006/09/20(水) 00:26:16ID:8TG2Ez5s・2.算術関数
・3.フォント
・4.カメラ
・5.Xファイル(スキン)
・6.シェーダマネージャ
・7.パーティクル
・8.2Dスプライト
・9.描画系はできる限りシェーダで行う
・10.インプットシステム
・11.オーディオシステム
・12.視垂体による描画判定
・13.LOD
・14.オーダリングテーブル(オブジェクトのソート)
・15.カメラ位置からの距離によるミップマップ
・16.メモリマネージャ
・17.ファイルシステム
・18.スクリプト
・19.プロファイラ
ソートしてやった
0276名前は開発中のものです。
2006/09/20(水) 00:31:44ID:37EIjtZt> さっきGetInt()で確認したらUseTexCntの値はちゃんと描画前に0・1が切り替わっていました。
これを信じて、そのオチはないと信じてました・・・(;´д`)
0277名前は開発中のものです。
2006/09/20(水) 00:38:20ID:sFU/X0hESetInt()をコピペしてGetInt()に変えて試してました・・・。
こんな単純なミスだと思わなかった。orz
0278名前は開発中のものです。
2006/09/20(水) 00:45:56ID:37EIjtZt・フォント // デバッグが楽になる
・メモリマネージャ // まずコレ
・ファイルシステム // テクスチャ読むため(早くも飽きてくる)
・テクスチャマネージャ
・2Dスプライト // テクスチャ確認用(もう完成した気分)
・シェーダマネージャ // モチベーション維持のため
・描画系はできる限りシェーダで行う
・Xファイル(スキン)
・算術関数 // (惰性で開発を続け始めるころ)
・カメラ
・インプットシステム // カメラを移動してみたい(もう限界)
※ここで開発終了の可能性高し※
・プロファイラ // 以降のパフォーマンス確認のため
・LOD
・視垂体による描画判定
・オーダリングテーブル(オブジェクトのソート)
・カメラ位置からの距離によるミップマップ
・パーティクル
・スクリプト
・オーディオシステム
0279名前は開発中のものです。
2006/09/20(水) 00:59:57ID:JLgKEs2/なんか完成予想図がいつもどおりのラッパーだな。
完成してもゲーム作るの程遠いっつか夢がもてないw
これじゃ作ってもあんまり意味ないと思うんだけど・・・。
逆に考えてみね?
どんなゲームが作りたいか?
ってのをまず出して、そのためのライブラリを考えてみね?
■ このスレッドは過去ログ倉庫に格納されています