トップページgamedev
1001コメント341KB

Direct 3D

レス数が1000を超えています。これ以上書き込みはできません。
0001.01/11/09 17:06ID:wrfy6OtC
Direct Xはあるみたいですが、こちらはD3D専門という事で。
とりあえずDX8以降は初期化が簡単になったり関数が変わったり
結構大幅に変わりましたがその辺も踏まえてお願いします。
0002201/11/09 17:07ID:???
2
0003名無しさん@お腹いっぱい。01/11/09 17:09ID:A73R4jTp
>お願いします。
何をすればよいんだ?
0004名無しさん@お腹いっぱい。01/11/09 17:26ID:???
>>3
オナニン。
0005名無しさん@お腹いっぱい。01/11/09 17:45ID:???


 その辺も踏まえてお願いします。

 
0006.01/11/09 17:55ID:???
あまり揚げ足を取らないでくんさい。
0007名無しさん@お腹いっぱい。01/11/09 18:40ID:???
オブジェクトデータに対し、
テクスチャを張るのと、
バーテックスペイントを施すのと
ポリゴン毎に色情報を変えるのとでは
プログラマー的にどっちの方がうれしいんですか?
0008101/11/09 18:55ID:wrfy6OtC
はじめっからテクスチャ貼ってあるXデータが一番楽です。
ポリゴン毎に色を毎回変えるのは面倒くさい。
0009名無しさん@お腹いっぱい。01/11/09 19:47ID:???
>>7
面倒くさいのはデータ作る人であって、
動作速度とか効率とか考えないなら、
プログラマ的には大差ないと思われ。
0010名無しさん@お腹いっぱい。01/11/09 20:10ID:???
まぁ、なるべくDrawPrimitiveUPは使うなと言うことで。(謎)

 その辺も踏まえてお願いします。
0011名無しさん@お腹いっぱい。01/11/09 20:50ID:???
>>7

テクスチャと頂点色は上手に併用すればイイ感じなので
その辺も踏まえてお願いします。角度とか。
0012名無しさん@お腹いっぱい。01/11/09 21:28ID:???
このスレは「その辺も踏まえてお願いするスレ」になりました。


  その辺も踏まえてお願いします。
0013名無しさん@お腹いっぱい。01/11/09 22:20ID:0BKdFNhv
質問
アルファブレンディングの加算合成で、透明度変更する方法ない?
光がフェードアウトする感じ表現したいんだけど。
0014sage01/11/09 22:33ID:FsaE9cbV
>>13
modulate使えばいいんちゃうん
0015名無しさん@お腹いっぱい。01/11/09 22:36ID:???
まちがった、ハズ
0016名無しさん@お腹いっぱい。01/11/09 22:41ID:IttZQbTd
ブレンドファクターのalpha
0017名無しさん@お腹いっぱい。01/11/09 22:48ID:???
も踏まえてお願いします。
0018101/11/09 23:09ID:wrfy6OtC
・・・そんな変な事いったかしら?
ちなみに自分は2DでもD3D使ってます。
Drawだと色が256以下じゃないとパレット変更できないのでDirect Drawは
もうさらばいですね。
0019名無しさん@お腹いっぱい。01/11/09 23:18ID:???
>>18
・・・Highcolor/TureColorにはパレット無いが。
もう少し他人に理解できるように書くことをきぼーん
0020名無しさん@お腹いっぱい。01/11/09 23:20ID:???
ていうか、みんななんで鬱だ氏のう DirectXスレ使わないのよ。
2Dと3Dが他のスレに取られたら骨抜きじゃん。ムキー
0021名無しさん@お腹いっぱい。01/11/09 23:42ID:IttZQbTd
>>20

重複ネタスレっちうことで、俺は冷やかし半分でココ見てるけどね。
ヤパーリ本命は鬱だ氏のうスレだ。

>>1

『ポリゴン毎に色を毎回変えるのは面倒くさい。』は悶絶したYO。
謎言神スレの予感がするので、その辺も踏まえてお願いします。
0022名無しさん@お腹いっぱい。01/11/09 23:46ID:???
>>21
>ヤパーリ本命は鬱だ氏のうスレだ。

それなら下げとけYO!
0023名無しさん@お腹いっぱい。01/11/09 23:50ID:???
ゴメンYO!
0024名無しさん@お腹いっぱい。01/11/10 00:04ID:???
>>13
D3Dって、GLみたく、textureのalphaとフラグメントのalphaの
乗算ってできないの?それで解決できるんちゃうん?
0025101/11/10 01:24ID:qy22xnnZ
>>19
TrueにはないけどHighにはパレットありますよ。確か。

>>20 >>21
Direct XといってもInputから何から範囲が広いので
分けた方がよくないかなと何となく思ったので。

>『ポリゴン毎に色を毎回変えるのは面倒くさい。』は悶絶したYO。
いやテクスチャ付きメッシュ読むからプログラム上からはあまり色は指定しないのです。
何か効果つける時とかはもちろん指定してますが。
0026名無しさん@お腹いっぱい。01/11/10 03:39ID:???
>>25
君、面白いね
0027101/11/10 04:10ID:???
いや、面白くないですよ、面白がられると迷惑です。
0028名無しさん@お腹いっぱい。01/11/10 10:55ID:???
ここは1を叩くスレか?
DirectXのような超簡易ライブラリレベルで
もめるなよ。みんな。楽しくやろうぜ。
0029名無しさん@お腹いっぱい。01/11/10 11:51ID:???
みんな叩いてるというより、光臨してくれるのを
面白がってるだけさ。1さんのさりげない天然ボケが魅力だ。

ま、ここはネタスレということでその辺も踏まえて(以下略)

>プログラム上からはあまり色は指定しない

7の「ポリゴン毎に色情報を変える」てのは時系列の話じゃないでしょ。
ポリゴン面毎に頂点色が別になって三角形strip化の邪魔になるけど
プログラマとしてはどうよ?って話。で、無難な答えは>>9
0030名無しさん@お腹いっぱい。01/11/10 14:17ID:CpeGeB26
>>24
できない。
0031名無しさん@お腹いっぱい。01/11/10 18:06ID:???
俺OGL移行します。D3Dってなんにもできませんね。
0032_01/11/10 18:59ID:lcUrEUKo
デバイスをHAL⇔REFした後、スキンメッシュをD3DXMeshのDrawSubsetで描画しようとすると
エラーになってしまう。
D3D8のバグかなあ。
0033名無しさん@お腹いっぱい。01/11/10 20:02ID:wXbui20C
>>30
こらこら。そのくらいできるって(w
0034名無しさん@お腹いっぱい。01/11/11 20:31ID:SNwGUBka
やべ、ここの1さんに惚れそうだ。
あまり叩くな、バカども、せっかくの大事な天然素材だぞ。

>>1
>何か効果付けるときとかはもちろん指定してますが。
具体的にどんなことしてるのですか?
頑張って下さい、期待しています。
0035101/11/11 21:20ID:Y789xs3a
残念ですがボクはそういうキャラクタではないので。

効果といっても大した事はしていません。
上にかいてあるようなアルファブレンディングで爆発の効果を表現したりしています。
あと最近頂点バッファの使い方を覚えました。
でも持っているハードが対応していないので効果はよく解りません。
0036名無しさん@お腹いっぱい。01/11/11 22:19ID:HopZamBA
>>33
できないってば。初心者からかうなYO!
0037名無しさん@お腹いっぱい。01/11/11 23:03ID:???
>>36
俺の知る限り、Dx8 から出来るようになったYO
0038名無しさん@お腹いっぱい。01/11/11 23:28ID:???
アホな漏れにもようやくこのスレの楽しみ方が分かってきました。
1さんの謎ビデオカードについてもっと知りたいYO・・・・(;; ´Д`)ハァハァ
00392401/11/11 23:39ID:???
ちょっと調べてみたんだけど

m_pd3dDevice->SetTextureStageState( 0, D3DTSS_COLORARG2, D3DTA_DIFFUSE );
m_pd3dDevice->SetTextureStageState( 0, D3DTSS_COLORARG1, D3DTA_TEXTURE );
m_pd3dDevice->SetTextureStageState( 0, D3DTSS_COLOROP, D3DTOP_MODULATE );

/**************************************************************************
            こっち?
m_pd3dDevice->SetTextureStageState( 0, D3DTSS_COLORARG1, D3DTA_TEXTURE );
m_pd3dDevice->SetTextureStageState( 0, D3DTSS_COLOROP, D3DTOP_DISABLE );
こっちでもOKか?
m_pd3dDevice->SetTextureStageState( 0, D3DTSS_COLORARG2, D3DTA_DIFFUSE );
m_pd3dDevice->SetTextureStageState( 0, D3DTSS_COLORARG1, D3DTA_TEXTURE );
m_pd3dDevice->SetTextureStageState( 0, D3DTSS_COLOROP, D3DTOP_ADD);
****************************************************************************/

m_pd3dDevice->SetTextureStageState( 0, D3DTSS_ALPHAARG2, D3DTA_DIFFUSE );
m_pd3dDevice->SetTextureStageState( 0, D3DTSS_ALPHAARG1, D3DTA_TEXTURE );
m_pd3dDevice->SetTextureStageState( 0, D3DTSS_ALPHAOP, D3DTOP_MODULATE );

m_pd3dDevice->SetRenderState( D3DRS_ALPHABLENDENABLE, TRUE );
m_pd3dDevice->SetRenderState( D3DRS_SRCBLEND, D3DBLEND_ONE );
m_pd3dDevice->SetRenderState( D3DRS_DESTBLEND, D3DBLEND_ONE );

/*************************************************************************
diffuseのalphaを小さくしながら(大きくしながら?)オブジェクト描画
**************************************************************************/

これできるんちゃうの? D3Dよく知らないからマニュアル
見て書いてみただけだけど
0040名無しさん@お腹いっぱい。01/11/11 23:40ID:???
>>1
頂点バッファ使えない?そんなもん捨てちまえ
DX8を踏まえてお願いしたいのなら頂点バッファ避けるわけにゃいかんでしょ
0041名無しさん@お腹いっぱい。01/11/11 23:47ID:20Q7MVna
DirectX8.aから7にバージョンダウンするには
どうすりゃいいっすか?
00422401/11/12 00:07ID:???
レンダーステート間違ってた、
m_pd3dDevice->SetRenderState( D3DRS_SRCBLEND, D3DBLEND_SRCALPHA );
m_pd3dDevice->SetRenderState( D3DRS_DESTBLEND, D3DBLEND_INVSRCALPHA );
こうだ、たぶん。
0043名無しサソ01/11/12 01:37ID:???
>42
 ?乗算だったら

m_pd3dDevice->SetRenderState( D3DRS_SRCBLEND, D3DBLEND_SRCALPHA );
m_pd3dDevice->SetRenderState( D3DRS_DESTBLEND, D3DBLEND_DESTALPHA );

ではないの?上だと混合合成にならない?
00442401/11/12 01:54ID:???
>>43
そのとうでした。

>>42
のやつだと、加算にならんね。
0045101/11/12 02:02ID:JGmI7m98
持っているビデオカードはVIPERなんとかです。
これは2万円以上したのでまだ買い換えたくないです。

所で上の最後の引数はD3DBLEND_BOTHSRCALPHAじゃないですか?
0046101/11/12 02:04ID:JGmI7m98
間違えました。(__)
上の最後の行は忘れてください
00472401/11/12 02:05ID:???
間違い
加算ー>乗算
0048名無しさん@お腹いっぱい。01/11/12 02:12ID:???
これって、DX8からできるようになったの?
前から出来るような雰囲気なんだけど、
0049名無しさん@お腹いっぱい。01/11/12 03:53ID:hzjMPIYH
>>13はソースのalpha値を少しづつ変化させたい、という話だと思う。
で、ソースのalpha値をチクチク書き換えるには幾つかの方法があるよね。

例えば、対象物の全頂点のdiffuse-alpha成分を頑張って書き換える方法。
当然ながらパフォーマンス悪し。低ポリゴンの物体なら何とかなるかも程度。

他にはt、>>16がさりげなく書いてるようにブレンドファクタのalpha値を書き換える方法。
テクスチャステージ1以降で
pd3dDevice->SetTextureStageState( n_stage, D3DTSS_COLORARG1, D3DTA_CURRENT );
pd3dDevice->SetTextureStageState( n_stage, D3DTSS_COLOROP, D3DTOP_BLENDFACTORALPHA );
pd3dDevice->SetTextureStageState( n_stage, D3DTSS_COLORARG2, D3DTA_TFACTOR );

みたいな感じで。
テクスチャステージが2つ以上あれば使える。パフォーマンス良し。
0050補足01/11/12 03:55ID:???
ソース ≒ ソース側 ≒ 転送元側
00513401/11/12 05:08ID:DmTmPUJO
>残念ですがボクはそういうキャラクタではないので。
自覚してるバカなんて、そうはいないものだぜ。

>あと最近頂点バッファの使い方を覚えました。
頂点バッファ使わないでどうやって組んでいるのでしょうか。
私の浅学ぶりに1さんに嫌われないかと心配です。

>>48
勿論できた。もっと余裕をもって楽しもうヨ。
0052 01/11/12 05:39ID:???
>>51
かっちょいー

>>49
なぜ、そっちのほうが、パフォーマンスいいんですか?
経験則?
0053 01/11/12 05:50ID:???
ああ、そうか、頂点バッファのお話なんだよね
DrawPrimitiveじゃないんだよね、
なるほど、
0054名無しさん@お腹いっぱい。01/11/12 05:53ID:???
>>51

己より下と見るや嬉しそーに弄んで悦に浸ってる人間てーのは
どうしてこうも滑稽に映っちまうだろうなぁ。
00553401/11/12 06:23ID:DmTmPUJO
>>52-54
悪ぃな、滑稽に映るだけなら構わねぇんだが
不愉快に感じたんなら謝るぜ。そういうつもりはねぇんだ。

てわけで消えるます。それじゃネ。
00563401/11/12 06:37ID:???
おっと、言い忘れてた。
>>13は「加算合成」つってるから、
ブレンドファクターでアルファ使うのはルール違反だぜ。
引っかけ問題ってやつか?その辺も踏まえてお願いします。

んじゃ、今度こそ本当にサヨナラです。
0057名無しさん@お腹いっぱい。01/11/12 06:43ID:VxqY6PcN
>>52

いい加減な比較テストだけど、一応そんな結果んなった。
環境は、GeForceでT&L有効のときの頂点バッファ。
頂点数300〜400程度のトライアングルリスト。

>>55

54=me
0058101/11/12 07:37ID:JGmI7m98
>頂点バッファ使わないでどうやって組んでいるのでしょうか
53さんが言ってるとおりDrawPrimitiveじゃなくてDrawPrimitiveUPで
毎回指定していましたけど、これっておかしいですかねぇ。
他の人は全部頂点バッファ使っているのでしょうか。
頂点が頻繁に変わる時とか、逆に効率悪くならないですか?
0059 01/11/12 14:42ID:???
2x2(1x1)のテクスチャ作って
テクスチャステージで実装とか?
0060名無しさん@お腹いっぱい。01/11/12 15:35ID:IxLumFOK
>>58
別に効率は変わらないと思う。
というか頂点バッファをロックして値を変更するってこと自体あんまりやらない。
簡単なモーフィング等ならD3Dのファンクションで十分表現出来るし。
あと、DrawPrimitiveUPを使う事は全然問題なし。
アホな煽り豚は無視するべし。
0061名無しサソ01/11/12 17:43ID:???
>58
 HT&Lが使えない時はシステムメモリにVertexBufferを確保する
様にするから、頂点操作にLockが必要だとしても目立つほどの
オーバーヘッドは無いように思う。それなら、新しいデバイスを利用
してVertexBufferは積極的に使って良いと思うんだけど。とりあえず、
自分はG400だけど使ってるよ。毎度Lockして書き換えてるけど(苦笑)

 さっさとUV自動生成使ってマルチテクスチャにしてしまおう・・・。
0062名無しさん@お腹いっぱい。01/11/12 17:43ID:???
DrawPrimitiveUPは問題あると思うよ。
毎回データを内部のバッファにコピーしているから。
頂点バッファを使うとこのコピーが無くせる。
でもUPは実験用には便利。

頂点バッファをロックして値を変更は
頂点数が不定なパーティクルでは使うかもしれない。
PointSpritesというサンプルがやってるよ。
0063名無しサソ01/11/12 17:48ID:???
 補足:HT&L使用時にはVRAM上のバッファをLockしてアクセスする
事になるから、逆に不利になるかも。でも、その時はその時でVertex
Bufferを使いつつ別の工夫をした方が良いような・・・。さすがにあまり
にアクセスが頻繁だと使わないほうが良いだろうけど。
0064名無しさん@お腹いっぱい。01/11/12 18:44ID:???
マイクロソフト様がVB(VertexBufferね)使えっておっしゃっているのだから
黙ってそれに従うほうが幸せになれるってものさ。
0065名無しさん@お腹いっぱい。01/11/13 09:14ID:???
>>63
VRAM上に頂点バッファを作らないようにするためのフラグが
CreateVertexBuffer()にあるよ。
PointSpritesでは使ってる。
00663401/11/13 10:20ID:???
すまんな。これで最後にするからよ。

>>60
アホな煽り豚より知能足りてねぇ昆虫野郎の方がよほど有害だ。
UPが(カードにもよるが一般論として)非効率的なのは常識だろが。
それともあれか?初心者虐めってやつか?
まぁいいや、とりあえず逝っとけ。

つうか、頂点いじりたきゃvs使え。テメェの将来の為にもな。
006760じゃないけど01/11/13 12:30ID:ppy9bP4V
>>66
(゚Д゚)ハァ?
DrawPrimitiveかDrawPrimitiveUPかなんて状況によって使い分ける
のが普通だろ?
一概にどっちが速いなんていえねーよ。
こいつはタダの知ったか野郎だな。
ひょっとして頭でっかちのVB房なんぢゃねーの。
0068名無しさん@お腹いっぱい。01/11/13 12:36ID:???
まあまあマターリマターリ
0069.01/11/13 12:57ID:???
>>66
コイツ痛すぎ
ま、もう2度と来ないらしいからどうでもいっか。
0070名無しさん@お腹いっぱい。01/11/13 13:04ID:???
>>66
>>51で1を馬鹿にしているのにも関わらず自分が馬鹿にされると
このキレ模様。
バカ丸出しだねっ
00716801/11/13 13:09ID:???
マターリしろゆーとるやろがゴルァ! いわすぞゴルァ!
0072名無しさん@お腹いっぱい。01/11/13 13:21ID:???
もうちょっと落ち着いてしゃべろうや。せっかくできたゲ術板だし。
0073名無しサソ01/11/13 17:28ID:???
>65
 あ、それは知ってるよ。ただ、メカニズム的にシステムメモリに
VBufferを作った時に、HT&Lってどう言う風に動作しているのか
がよく分かって無いのだけど。自動的にVRAMに転送して処理
してくれるのかな?それとも、CPUが座標変換??
0074名無しさん@お腹いっぱい。01/11/13 18:34ID:???
>>73
システムメモリのAGPメモリに置いてある頂点バッファから
グラフィックチップがダイレクトに読み込んでくれるメカニズムだよ。
AGPメモリ以外のシステムメモリにある頂点バッファでは駄目だけど。
AGPメモリに頂点バッファを置くように指定するのが
CreateVertexBufferのフラグの組み合わせで
PointSpritesの通りにやればOK
0075名無しサソ01/11/13 23:21ID:???
>74
 成る程。AGPメモリに置けばビデオカードからはVRAMとして
見えて、実際はメインメモリだからLockしての書き換えもそこまで
遅くはならない、と。ありがとう、完全に疑問が解けたよ。
 となると、書き換えが頻繁でも充分VertexBufferは使えるかな。
0076レックス01/11/18 00:50ID:k3asQ08V
Xファイルで出力した「人間」なんかをゲーム中で
アニメーションさせる場合は、パーツをバラバラの
状態で読みこんで自分で一つ一つモーションを付けるものなんでしょうか。
他に効率のいい方法があれば教えて下さい。
0077名無しさん@お腹いっぱい。01/11/18 01:28ID:IsgYCSXR
普通、もデラーでつけた体全体のモーションを出力させて
(階層構造と行列のデータ群)それをそのまま再生させるよ。
で、モーションと別のモーションの間は補間でつなぐ。
モーション中に別のモーションに移りたいことがあるからね。
あとは例外的に特定のパーツに差分行列かけて個別に動かすこともある
ケースバイケースばい。
0078レックス01/11/18 01:37ID:???
>77
そうやるんですか・・アニメXファイルが出せるモデラ
は高いんでゲームでは使わないのではと勘違いしてました。
ありがとうございます。
00797701/11/18 02:48ID:???
ああ、上のはXファイルに限らず、自前フォーマットにも当てはまるよ。
おれは自前ファイルだけど目で読めるテキストXファイルからモーション情報だけ
取り出させて使わせてもらうことがある。
逆にXファイルのケツに他のフォーマットから取ったモーション行列を
自分でくっつけてやればモデラが対応してなくてもアニメXファイルの出来上がりじゃないか?
0080名前は開発中のものです。01/11/26 03:08ID:???
保守age
0081名前は開発中のものです。01/11/26 23:02ID:uAFlRpp2
TrueSpaceBASICがモ―ション付きX吐ける
0082 01/11/26 23:49ID:e4V2gjyG
Xファイルなんてすててモデリング&モーションフォーマットもMSが提唱してくれればいいのにね
ヘンテコXファイルなんていつまでも残してもしょうがないだろ〜
0083名前は開発中のものです。01/11/27 00:13ID:???
Xファイルの問題点。
・拡張性はあるけど拡張は出来ないに等しい。
・ストリップ等、データの最適化をデータ段階で出来ない。
・テキストだとバカでかい。バイナリでもかなりデカイ
・読み込みが遅い。
・モーションデータを不動少数マトリクスで持つために無駄が多すぎる。

 ま、こんな感じ?それにしてもリアルタイム系のモデル
フォーマットをどこかが提唱してくれないとそれそろ、個人で
手が届く時代じゃなくなってきたね。
0084名前は開発中のものです。01/11/27 06:31ID:???
これってどうよ?
http://www.xglspec.org/
0085名前は開発中のものです。01/11/27 07:00ID:???
暇潰しに面白い話が無いか読んでみたが、やはりこの程度のスレだったのか。
とりあえず質問とかする前に最低限↓くらいは読んでおこうよ。(下の2つは暗記するくらいのつもりで)
ttp://www.microsoft.com/japan/developer/directx/techart/DirectX8faq.asp
ttp://www.microsoft.com/japan/developer/library/jpdx8_c/_dx_d3drenderstatetype_graphics.htm
ttp://www.microsoft.com/japan/developer/library/jpdx8_c/_dx_d3dtexturestagestatetype_graphics.htm

それと、DrawPrimitiveとDrawPrimitiveUPだけど、速度だけで言ったら
DrawPrimitiveの方が速いよ。適切な使い方をする必要があるけど。
確かにいちいちLockするのは面倒だし、使い方を間違えるとだいぶ遅くなって
面倒ではあるけど。得にTnL使用時は気をつけないとパフォーマンスがた落ち。
ただ、1はそこまで気にするような段階には見えんが。
0086名前は開発中のものです。01/11/30 01:05ID:???
D3Dで直接LWOとかLWSとか読む方法か,ライブラリって無いですか?
0087名前は開発中のものです。01/12/01 03:26ID:3MhhzyVS
>>86
Lightwaveのデータ形式なら比較的読み込みが楽なんで自前で読み込み
作ってもバチはあたらないと思うが、以下のライブラリがとっかかりには
なると思う。

http://www.dstorm.co.jp/dev/sdk/sdk.html
のObject, Sceneライブラリ。

もしLightwaveのデータを何も考えずに表示したいのなら、X形式にコンバート
すればよいし、自前のフォーマットを作りたいのならそれを改造するもよし、
直接読み込むような形であれば、親切なドキュメントとOpenGLのサンプル
プログラムを参考にしてみれ。全部ソース付きなので根気よく解析すれば
かならずわかるはず。
0088.01/12/07 12:54ID:Wr0guOje
>>85
きたよ、毎度のごとく現れる高飛車君。
この程度っていうぐらいだったら自分で高度(?)な話題でもふってみれば?
0089名前は開発中のものです。01/12/07 20:53ID:???
>>85のような奴がいるから
「3Dやってるプログラマは人を小馬鹿にしたやつが多い」
と言われる。
0090名前は開発中のものです。01/12/07 22:33ID:DT4mxdiM
>>88
高度な話題振っても付いてこれる奴がいない(アマだから)
or付いてこれても書きこまない(プロだから)
0091名前は開発中のものです。01/12/07 23:29ID:???
高度な話をし過ぎると身元が割れる危険が伴なう(以下略)
0092名前は開発中のものです。01/12/07 23:43ID:???
出し惜しみしてるのはニッポンジンの技術屋だけあるよ。
ガイジンはプロもアマも出し惜しみしないあるよ。
0093名前は開発中のものです。01/12/08 00:02ID:???
>>91
下手な言い訳はやめなさい。
単に高度なネタ持ってないだけでしょ?オレモナー
0094名前は開発中のものです。01/12/08 09:59ID:???
情報をクローズドにすると独自の文化が育つ。
そこが日本特有の長所でもあり短所でもあるな。
0095名前は開発中のものです。01/12/08 15:21ID:???
>出し惜しみしてるのはニッポンジンの技術屋だけあるよ。
>ガイジンはプロもアマも出し惜しみしないあるよ。
アマだったら日本でも出し惜しみしてない良質なコンテンツが豊富にあるだろ?
プロに関しては、技術隠蔽するのは当然。それは海外も同じ。
ただ、海外はプログラマー社長が極めて多いので、
社長判断で勝手に公開している例が目立つ。
0096名前は開発中のものです。01/12/08 21:46ID:???
海外は公開してても特許でガードしてたりするよな。
Stable Fluids使わせろやゴルァ
0097名前は開発中のものです。01/12/09 01:04ID:???
>>96
もし使ったとして、A|Wがお得意先の日本のゲーム会社を訴えるんだろうか?
0098名前は開発中のものです。01/12/16 21:46ID:???
>>95
レベルも人数もちがう。
まぁ、日本は少数精鋭ってことにしとこう。
0099名前は開発中のものです。02/01/03 20:37ID:3/AaBPnv
たまには上げてみるか・・
0100名前は開発中のものです。02/01/03 22:50ID:???
>99
何、アげてんの?
0101名前は開発中のものです。02/01/04 01:50ID:???
>>100
何、サげてんの?
0102名前は開発中のものです。02/02/10 14:33ID:???
これが本スレだ
0103名前は開発中のものです。02/02/10 21:33ID:???
また3Dの糞スレあげてやがる。
ヴォケどもが。
0104.02/02/12 21:05ID:9lA8tETC
おぉD3D専用のスレが・・・
という事で質問させてください。
D3DXLoadMeshFromX関数でXファイルを読み込んだ後、
このオブジェクトに対して行列を設定するには(既にローカル座標は作っているのですが)
どの関数を使うのでしょうか。
とりあえずそのままだと座標(0,0,0)に表示されているのですが、、
0105名前は開発中のものです。02/02/12 21:06ID:???
>>103
うるせー馬鹿
0106名前は開発中のものです。02/02/12 21:09ID:???
>>104
質問はこちらへ

プログラム板
Direct3D
http://pc.2ch.net/test/read.cgi/tech/1011762546/
010710402/02/12 21:25ID:9lA8tETC
>>106
それってココじゃないんですか?
0108名前は開発中のものです。02/02/13 04:05ID:NOxt2cqP
>>104
オブジェクトに対し、トランスフォーム行列を設定するという認識がそもそも間違い。
D3DDeviceに対しトランスフォーム行列を設定し、
D3DDeviceに対し表示するメッシュを設定する、が正しい。
即ち、IDirect3DDevice8::SetTransform。これ最強。
0109なかまかな02/02/22 18:51ID:Lhsx7X1+
要望
 DXでサーフェースとして管理してる2Dキャラを、
 D3Dで表示して、回転できるようにしたい。
 DX8には、ハードウェアが対応してないようなので、DX7で。
 まず、テクスチャを準備して、テクスチャサーフェースに割り当てた。
 あとは、このサーフェースを、座標指定して表示すればいいと思う。

●今までのやり方
         描画先エリア サーフェス
           ↓     ↓
ret=pDDSBack->Blt( &rect1, g_pDDS,NULL, 0, NULL );

●D3Dでのやり方
         テクスチャサーフェス
                ↓
pd3dDevice->SetTexture( 0, g_pDDS );
pd3dDevice->DrawPrimitive( D3DPT_TRIANGLESTRIP, D3DFVF_VERTEX,ddx_txv, 4, NULL );

今までは、rect1にピクセル座標(?)を代入してた。
D3Dでは、ddx_txv に座標を設定するらしい。
が、ヘルプ読んだが良くわからん。
どうやればいいか、分かる人教えてみないか。
011002/02/22 18:53ID:Lhsx7X1+
>>109
ずれてる。こっちに差し替え。
         描画先エリア サーフェース
             ↓    ↓
ret=pDDSBack->Blt( &rect1, g_pDDS,NULL, 0, NULL );
●D3Dでのやり方
         テクスチャサーフェース
                  ↓
pd3dDevice->SetTexture( 0, g_pDDS );
0111名前は開発中のものです。02/02/22 21:30ID:???
>>109
> D3Dで表示して、回転できるようにしたい。
この程度の処理が
> DX8には、ハードウェアが対応してないようなので、DX7で。
DirectX7で対応していて、DirectX8では対応していない
ハードウェアがなんなのか教えて欲しい。
そんなものあるの?
0112なかまかな02/02/22 23:09ID:8+9pSBiP
>111
DX8だと、ハードウェアが新しくないと機能しないよね。
サンプルを実行したら、ダイアログボックスがでて、ソフトウェアモードで処理された。
DX7のサンプルは、ハードウェア(HAL)で動いた。
それとも、回転だけなら、今までのビデオカードでもハードウェアで動くの?
0113名前は開発中のものです。02/02/22 23:15ID:???
正直、DX8のものって動かないものが多いよ・・・
0114名前は開発中のものです。02/02/22 23:32ID:lyn6ieNN
>>109
つまんねぇネタだな
0115名前は開発中のものです。02/02/23 02:42ID:???
>>111
持ってるハードが古いorメーカが既に逝っててドライバが更新されてないとか(w
0116なかまかな02/02/23 10:43ID:OEDm8gEo
>115
でもほかのDXのスレで、DX8は、ビデオカードとかが新しくないと
ダメだったようなこといってたよーな
0117名前は開発中のものです。02/02/23 11:32ID:???
>110 DrawPrimitiveでの回転は折れのスキルでは出来ないので
板ポリゴンにテクスチャ張ってD3DXMatrixRotationXなどで
回転させてる。
0118名前は開発中のものです。02/02/23 11:53ID:???
>>112
DirectX8固有の機能でなければ古いドライバでも動作します。
動かないのはサンプルに新機能のデモが多いせいでは?
011910902/02/23 15:23ID:u/EZFxFI
>118
でもXファイルを表示するだけのサンプルも、ソフトで処理された。

>117
なんだ。D3DXってライブラリ、付属してるのか。別途かと思った。
最初からコレ使えば良かった。どうしようかな。

おわる。
0120プログラマになりたい厨房(ひきこもり)02/03/05 01:37ID:???
DirectX7でDirect3DrmモードとDirect3Dimモードってあるけれども、
このスペックのPC使ってDirect3Dimモードで作成して動かしても普通に動くかな?

VRAMは8Mバイト3Dチップ付き
メモリ64MB
CPUはPentium2 400MHz
0121名前は開発中のものです。02/03/05 02:36ID:vchuM+1W
>>120
チップの名称くらいかけ。

ちなみにi810とかsisみたいなチップ内蔵の場合、UMAの方で
不具合でるからむり。
0122名前は開発中のものです。02/03/08 01:28ID:WfC+A2/G
グラフィッカーなんですが、
ピクセルシェーダーの紹介されている書籍やサイトをおしえてくださぃ・・・。
でかい本屋を何件か回ったのですが、どのDirectX8本も
プログラムよりの基本的な3D表示のことしか書かれていないので
Direct3D固有のビジュアル表現の可能性がわからないのです。


・・・なんとなく放置されそうですが(w)、よろしくおねがいします。
0123名前は開発中のものです。02/03/08 01:32ID:???
>>122
http://www.microsoft.com/japan/developer/directx/welcome/dsmsdn/directx08202001.asp
http://www.microsoft.com/japan/developer/directx/japan/dx8/DX81PS.asp
こんなのでいい?
012412202/03/08 01:50ID:WfC+A2/G
>>123
すばやいレスありがとうございます。
そーです。そんなのですー。
かなり詳しく載っているのでじっくりと見させてもらいます。
親切な方、ありがとうございました。

0125名前は開発中のものです。02/03/09 01:34ID:???
>124
ttp://developer.nvidia.com/
24h遅れスマソ
0126名前は開発中のものです。02/03/26 19:25ID:???
Xファイルを読み込んで表示すると、ポリゴンが透けて見えたり、裏側が見えてしまって
困っているんですが原因と対処方法わかりますでしょうか
http://mrpackman.hoops.ne.jp/D3DLearn.zip
大きくて申し訳ないですがこんな感じです
0127名前は開発中のものです。02/03/30 17:45ID:???
>>126
Xファイルは何で作ってる?
ツールによっては反転させないとおかしな事になる
0128名無しさん02/04/15 21:05ID:HOmtp0LM
ライブラリいいの無い?
0129名前は開発中のものです。02/04/15 21:59ID:???
>>128
むしろDirectXがライブラリ。
0130名前は開発中のものです。02/04/15 22:05ID:???
>>128 はい!はい!はい!
http://www.geocities.co.jp/SiliconValley-SanJose/8134/
0131名前は開発中のものです。02/04/16 05:10ID:rxWSPVEM
>>128
D3DX8
0132名前は開発中のものです。02/04/16 08:54ID:wEjyLAPY
>>128
http://www.ah.wakwak.com/~jey/
こんなのもあるよ。オープンソース
0133名無しさん@お腹いっぱい。02/04/25 09:07ID:KWIZFbqs
DOGAつかってますか?
0134名前は開発中のものです。02/04/25 11:57ID:???
>>133
以前は良く見たけど。
最近はめっきり見なくなったねえ
0135名前は開発中のものです。02/05/03 13:47ID:.VzbAcu.
やぱその辺り踏まえてないからちゃう?w
0136名前は開発中のものです。02/05/03 13:47ID:???
どゆこと?
0137名前は開発中のものです。02/05/14 00:58ID:???
Matrox、世界初512bit GPU「Parhelia-512」を発表
〜DirectX 9、10bitカラー処理、Triple Headなど多くの新機能
http://www.watch.impress.co.jp/pc/docs/2002/0514/matrox.htm

遂に正式発表されたみたいだ。え?板チガイか!?
0138名前は開発中のものです。02/05/14 18:40ID:iHWdaZs2
DirectX9完全準処ハードをメインターゲットにしてゲーム売れるのは
いつごろになるのだろう?
0139名前は開発中のものです。02/05/14 19:34ID:???
>>138
XBOX2の頃かな?なんちて
0140名前は開発中のものです。02/05/14 21:32ID:gp9yAFEg
 
0141名前は開発中のものです。02/05/15 00:13ID:???
そもそも今、完全にメインに出来るバージョンっていくつかなぁ。
正直、DirectX6くらいな気がするよ……。
0142名前は開発中のものです。02/05/15 00:14ID:???
あ、PCの話ね
0143名前は開発中のものです。02/05/15 03:32ID:1hyuY9to
あああ、ID3DXBaseMesh::GenerateAdjacencyが失敗するぅぅぅ
何をやっても駄目だぁ、エラーコードもUnknownだしィィ
つーか、もっと根性みせろやD3DXが!!例外出てる訳でもねーんだろ!!
それが出来ねーんならソース公開しろォォ!!
ID3DXSkinMesh::Convert系で作ったスキンメッシュはリストアで必ず失敗するしよォォォ!!
0144名前は開発中のものです。02/05/15 14:05ID:???
>>141
実際、7あたりが標準になってるんじゃない?
0145名前は開発中のものです。02/05/16 04:32ID:???
テクスチャにレンダリングする方法は
一度サーフェイスにレンダリングした後にコピーするしかありませんか?
0146名前は開発中のものです。02/05/16 04:32ID:rbiFXjkI
age
0147hoge3d02/05/16 19:32ID:???
>>145
IDirect3DTexture8::GetSurfaceLevel()でサーフェスを取得してSetRenderTarget()でレンダリング対象にすればいい、かな?
やってみたことないので参考まで。
0148hoge3d02/05/16 19:42ID:???
>>144
(141とは別人ですが・・・。)
開発ターゲットはDirectX8になってるにしても、
安全に使えるハードウェア機能としては6〜7くらいという気もする。
開発力が十分あって、ハードウェアごとにレンダラの構造変えられるなら話は別ですが・・・。
0149hoge3d02/05/16 19:50ID:???
>>145 追記というか訂正
KanoさんBBSの過去ログからこんなのを発見
>残念ながら、D3DUSAGE_RENDERTARGET を指定してあるテクスチャは
>D3DPOOL_DEFAULT にしか置くことができないため、LockRect は使えません。
>結局、残された唯一の方法が CopyRects というわけです。

だそうです。

ここらへんより
http://cgi3.tky.3web.ne.jp/~tkano/bbslog/bbslog12.shtml
0150名前は開発中のものです。02/05/20 17:11ID:c/rCiqvY
現在使用しているビデオボードで利用可能な
テクスチャの最大サイズってどうやって取得すれば
いいんでしょうか。
0151マス大山02/05/20 18:20ID:???
>>150
きみィ〜基本がなっとらんよ。
見たまえ、このコブシの拳ダコは
そりゃあもう血の滲むような訓練云々〜
0152名前は開発中のものです。02/05/20 19:28ID:???
>>150
struct D3DCAPS8の
MaxTextureWidth および MaxTextureHeight
IDirect3D8::GetDeviceCaps使って
015315002/05/20 19:46ID:???
>152
それこそ求めていたものです
ありがとうございました!
0154hoge3d02/05/29 21:40ID:???
あげてみる
0155名前は開発中のものです。03/02/06 23:40ID:MWXJs3Hk
DX7でDirect3D IM の勉強をしてるんですが、
板ポリ表示すら出来ずに鬱入ってます。
初期化部分はクリアしたんですが、Viewportの設定や投影変換の所で躓いてます。。
いろいろ検索とかかけて調べてるんですが、出てくるのはDX5やDX8のサンプルなどで
DX7を解説してるようなサイトが見つかりません。
(見つかっても初期化の部分だけとか)

どなたかいいサイトご存知でしたら教えてくれませんか?
よろしくです。
0156名前は開発中のものです。03/02/06 23:48ID:PXQKBNV4
ここしか知らない。

ttp://www.age.jp/~writing/wws/programs.htm#Direct3DIM研究日記

つか、DX8にしときなさい、と忠告してみる。9でもいいけど・・・。
015715503/02/06 23:57ID:MWXJs3Hk
> 156
レスありがとです。
ここ前に見たんですが、レベル高くて結局基本的な事がわからずじまいで・・・。
DX8はHDC取得出来ないらしいので不便かなぁと言うのと、DX7の方が教材になるのではと思ってみたり(推測)。
9ではHDC取得が復活したらしいですが、出たばっかしなのであまり手を出したくないんですよね。
0158名前は開発中のものです。03/02/07 00:17ID:PWiq5PrS
う〜ん、漏れはHDCに頼ってるように見えるんだけど、そっちのが勉強になるんかな。
ちなみにテキスト表示が不便だってんならGetGlyphOutlineみたいなAPIもあるし
文字表示・入力のいい勉強になると思うけど。
015915503/02/07 00:36ID:teDPhK+Q
HDC云々ってのは勉強とは別であったら便利だよなぁーって事です。
取りあえず1度にいろいろな事覚えるのは出来そうにないんで3Dの基本的な部分を
やっつけていきたいと思ってます。
みなさんのレスから推測するに、やっぱり解説してる所って少ないんですね・・・。
0160名前は開発中のものです。03/02/07 02:45ID:iTMeZkvn
            o
            /  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ /
           /   このスレは無事に   /
           /  終了いたしました    /
          / ありがとうございました  /
          /                /
         /    ギコ猫より      /
         / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
  ∧_∧  /
 (  ゚Д゚) /
 (    )つ
 | | |
 (__)_)
0161名前は開発中のものです。03/09/26 16:07ID:4vP7z/gC
9になってからDCが取得できるようになったけど、
αが使えないから結局自分でイメージ操作しなきゃいけないんだよね
0162名前は開発中のものです。03/09/27 08:23ID:QTyrRSDv
えーとD3D9で以下のような感じで Windoid モードで 60fps ほど画面を更新しているんですが、
なんだか微妙にテアリングが出てしまいます。D3D8 の SWAPEFFECT_COPY_VSYNC がなくなった
関係でこれは避けようがないのでしょうか。P4 3.0G + Intel 865G オンボード VGA です。
SWAPEFFECT は COPY, FLIP, DISCARD の全て試してみました。。。

// 毎秒 60 回呼ばれる
UINT cSwapChains = pd3dDevice->GetNumberOfSwapChains();
for (UINT iSwapChain = 0; iSwapChain < cSwapChains; iSwapChain++) {
 CComPtr<IDirect3DSurface9> pBackBuffer;
 pd3dDevice->GetBackBuffer(iSwapChain, 0, D3DBACKBUFFER_TYPE_MONO, &pBackBuffer);
 pd3dDevice->SetRenderTarget(0, pBackBuffer);
 pd3dDevice->BeginScene();
 ...描画処理...
 pd3dDevice->EndScene();
}
pd3dDevice->Present( NULL, NULL, NULL, NULL );

0163 ◆/lQMO72QVo 03/09/27 11:50ID:Zbl+k1GC
http://aa.2ch.net/test/read.cgi/mona/1063098214/l50
0164名前は開発中のものです。03/09/27 12:51ID:GhzIUXdM
>>162
ヘルプの「DirectX 9.0 への移行」をよく読むべし。
0165名前は開発中のものです。03/09/28 01:19ID:a+akW1WN
256x256のHeight DataがあるんですがD3Dで
グリグリするにはどう書けばいいですか?
ヒントだけでもいいので教えてください
0166名前は開発中のものです。03/09/28 01:52ID:tqpqQKn3
ふつうにポリゴンでつなげてみたら?
0167名前は開発中のものです。03/09/28 16:37ID:n87Rw2yc
>>165
1.BMPファイルから高さ情報を読む。
2.VERTEX構造体に取得した高さ(Y座標)とX,Z座標
(その他、必要なら法線ベクトルやUV座標)をセット。

後はゲームループ中で、
VERTEX情報をSetVertexShaderとかで指定して、DrawPrimitive系の
命令で描画する。

こんな感じかな? 1.の処理させるのが一番面倒くさいかも。
0168名前は開発中のものです。03/09/29 14:29ID:LJ4M8ydv
>>194
ヘルプを読んだ限りでは、D3DPRESENT_INTERVAL_ONE を使えってことみたいですね。。
D3DPRESENT_INTERVAL_ONE でもダメっぽいので、このアダプダ(ってもオンボードだけど)
だとDirectX9 では無理ということであきらめておきます。
0169名前は開発中のものです。03/09/29 15:50ID:u36ThLJ2

            ∧_∧
     ∧_∧  (´<_`  ) 
     ( ´_ゝ`) /   ⌒i   
    /   \     | |
    /    / ̄ ̄ ̄ ̄/ |
  __(__ニつ/  FMV  / .| .|____
      \/____/ (u ⊃
0170名前は開発中のものです。03/10/01 15:26ID:P7z7yNso
http://www.shaderx2.com/
日本語版まだでないの?
0171名前は開発中のものです。03/10/02 19:08ID:oRuaMBhV
マジレスならぬ、マジネタ。
DX7で。
3Dの当たり判定って、モデルのワールド座標を使用すんじゃん。
このワールド座標は、D3Dで描画する際に、内部で算出してるじゃん。
だから、それを使って当たり判定をしたいんだけど、
このワールド座標を取得することができね。
座標変換だけを実行するProcesVerticsを使うと、
ワールド変換、カメラ変換、ひし形の台変換、スクリーン座標変換
だかまで自動的にやっちまうじゃん。
だから、ワールド変換までを行った座標を取得したいんだけど、できねよな。
自分で計算プログラム作ると、無駄な計算じゃん。
他のサイトを見ようとおもたらD3Dを扱ってるサイトのねーこと。
0172オレー03/10/02 19:14ID:37nYM4r4
>>171
ワールドマトリクスを自分でかけてD3Dに渡すんじゃねーの?
内部で算出ってなんだよ
0173名前は開発中のものです。03/10/02 19:17ID:oRuaMBhV
おお!釣れた!。じゃなくって、レスはや。
>ワールドマトリクスを自分でかけてD3Dに渡すんじゃねーの?
なにそれ。自分で計算すんのかよ!

描画は、
1.モデルデータ作る
2.D3DMATRIX作る
3.SetTransformで、ワールドマトリックスセット
4.DrwaPrimitiv
じゃん。自分で計算なんてしてないだろ
0174オレー03/10/02 19:21ID:37nYM4r4
>>173
>3.SetTransformで、ワールドマトリックスセット

素直に↑このワールドマトリクスとモデルデータをかけたやつで計算しろよ
0175名前は開発中のものです。03/10/02 19:21ID:oRuaMBhV
>ワールドマトリクスを自分でかけてD3Dに渡すんじゃねーの?

んなことしねーよ!オレーは、そうやってんのか?
0176オレー03/10/02 19:22ID:37nYM4r4
>>175
いや、してない。勘違いしたんだ
0177名前は開発中のものです。03/10/02 19:23ID:oRuaMBhV
>174

だからそれやると計算が無駄になるつってんだろ
0178オレー03/10/02 19:24ID:37nYM4r4
>>177
俺はそうしてるけどな。描画しねーと衝突判定できねーなんてfps低かったら悲惨だしな
0179名前は開発中のものです。03/10/02 19:26ID:oRuaMBhV
だから、描画の際に、たぶんHALで計算してんだから、
そんときに算出されたワールド座標を流用すればいいでしょ。
それがムリなら、座標変換を、個別に指定できるべきだし
0180オレー ◆bJKvyv1OZU 03/10/02 19:28ID:gTkZ+ADQ
>>179
俺のは描画より内部計算のほうが多くなる場合があるからツカエネエ
まーガンバレヤ
0181名前は開発中のものです。03/10/02 19:39ID:oRuaMBhV
>180
ゲームだとそうなるだろ。描画はD3DがHALで高速になるから、
そうするとネックは、あたり判定になる。
ツカエネ理由が分からんが。

座標変換は、モデル→ワールド→カメラ→プロジェクション→画面
になってて、これって、D3DMATRIXを使った同じ方法を取ってると思ってる。
変換の名前は変わっても、コード的にやってることは同じ。
で、最初に、モデル→ワールドだけを行わせる。このワールド座標はあたり判定に使用。
そのワールド座標を、DrawPrimitiveに渡して、DrawPrimitiveには、
ワールド→カメラ→プロジェクション→画面
の範囲を行わせる。
とできるべきだろう。
0182オレー ◆bJKvyv1OZU 03/10/02 19:52ID:Jlg/RJFo
>>181
あああ。ProcessVerticesをもっと融通きかせろって話か!
そういえばそう書いてあるな。そうだな俺もそのとおりだと思うぞ。

しかしこの板は使いにく否
0183名前は開発中のものです。03/10/03 02:47ID:TURYwUXu
なんの話してるのかわからないんだけど座標変換って
モデル(頂点データ)→ワールド→カメラ→プロジェクション→画面
で、いんだよね。
でも、計算順序って
まず、
ミックス = ワールド→カメラ→プロジェクション
で、最後に
モデル(頂点データ)→ミックス
だよね。
途中もなにもねーと思うんだけどどうよ?
0184名前は開発中のものです。03/10/03 10:03ID:c42nfsnL
物体が視野に入っていなければ描画をパスさせるため
物体の中心座標をいちいち透視変換しているんだけど
こういうのもHAL側で一気に変換してもらえんかなぁ…
0185名前は開発中のものです。03/10/03 17:20ID:w9WLibzF
http://jbbs.shitaraba.com/travel/2226/
0186名前は開発中のものです。03/10/03 17:47ID:MBDW7FWT
>>183
普通はそうだと思う。よっぽどヘボい実装でなければ。
あと、ついでにビューポート変換まで一緒にやっちゃうかもね。
0187名前は開発中のものです。03/10/03 19:56ID:SyJm30wx
>>183
いや、パイプラインとの兼ね合いの話でしょ
0188名前は開発中のものです。03/10/12 03:20ID:KIwlleBu
>171

HALは、内部では1つの行列になってるから、分けると2倍遅くなる。
そもそも、当たり判定にモデルの描画用の姿勢は必要ない。
0189名前は開発中のものです。03/10/13 07:30ID:8OV7MIl9
>>171
>このワールド座標は、D3Dで描画する際に、内部で算出してるじゃん。
頂点のワールド座標の位置を求めるなら内部だけど
171が欲しいのはしてないでしょ?

SetTransform(D3DTS_WORLD,world);

とか突っ込んでるのがワールド座標じゃないの?
0190オレー03/10/13 08:09ID:B3HQr2aa
ってか、当たり判定を専門にやってくれるチップがビデオカードについて
それをあつかうDirectCollisionがあればいーんだよな!!
0191名前は開発中のものです。03/10/13 11:34ID:bV77mRDF
>>189
文脈的に変換後の頂点座標の事かと>ワールド座標
0192名前は開発中のものです。03/10/14 05:51ID:tEdriz0H
>188
何をいってんだかよくわからんね。
>HALは、内部では1つの行列になってるから、分けると2倍遅くなる。
当たり判定用に、トランスフォームすると、描画用と当たり判定用で2つで、2倍遅くなる?
>そもそも、当たり判定にモデルの描画用の姿勢は必要ない。
姿勢ってなんだよ。中身をはっきしいえや。
てか、こいつ、なに気取ってんだよ。ダサ!!
0193名前は開発中のものです。03/10/14 06:42ID:stBbbSEk
>>192
お前こそオブジェクトのワールドの姿勢行列がほしいのか
オブジェクトの頂点ごとのワールドでの位置座標がほしいのか
はっきりしろよ。(どっちなんだよ、いえよ馬鹿)

188の内容が理解できない馬鹿はお前ぐらいだっつの。
(いやマジで)
0194名前は開発中のものです。03/10/14 09:04ID:qbnFovZI
1. オブジェクトの頂点を全部変換するんじゃなくて、
当てられるほうの判定球とベクトルにワールド座標の逆行列をかけて判定。

2. 必要に応じて1の段階でリストアップしたポリゴンを詳細に判定
0195名前は開発中のものです。03/10/14 20:48ID:tEdriz0H
>196
>お前こそオブジェクトのワールドの姿勢行列がほしいのか
>オブジェクトの頂点ごとのワールドでの位置座標がほしいのか
>はっきりしろよ。(どっちなんだよ、いえよ馬鹿)
アホだなこいつ。気取ってるのを指摘してやったら、さらにアホなことを、、、。
ワールドの姿勢行列は、オブジェクトごとに持たせるに決まってんだろが。
だから、それは3Dでのオブジェクトには不可欠なデータだから有って当たり前。
だから、欲しいっていってんのは、頂点ごとのワールドの位置情報しかないだろが。くだらねぇこと聞くんじゃねよ
0196つか188は俺じゃねーの03/10/14 22:56ID:7kwhY3R9
>>195
おまえ行列の演算順序を理解してねーのか?
183に詳しく書いてくれた人がいるだろ?なんで読まない?

普通は

ミックス = ワールド→カメラ→プロジェクション
モデル(頂点データ)→ミックス

というふうになってるんだよ。
ようはワールド→カメラ→プロジェクションをバラバラに頂点データにかけてるわけじゃなくて
ミックスした行列を一回だけ頂点データにかけてるんだよ。
だから途中も何もないんだよ。理解できたら返事しろアホ。
0197名前は開発中のものです。03/10/14 23:46ID:tEdriz0H
おいおい!I/O別冊によれば、
座標変換はDrawPrimiticeメソッドなどがよばれたら、
ワールド、ビュー、射影の順に座標変換が行われるって書いてあるが。
0198名前は開発中のものです。03/10/15 00:11ID:LRGxbgsn
>>197
それは行列のかける順番(方向?)を強調したかっただけじゃねーの?
一度シェーダでも触ってみれば?
0199名前は開発中のものです。03/10/15 00:33ID:zBR2pFHf
頂点座標に何度も演算したら、行列作ってる意味無いじゃん。
ローカル座標→スクリーン座標が一発で変換できるのが行列の偉いところ。
0200名前は開発中のものです。03/10/15 01:38ID:EakjPa/S
つうかDirectXの機能使うしか理解出来ない奴ばっかなのか?
別に自分で座標変換した頂点を描画するなんて実装は誰だって理解して組めるだろ。
問題はそうじゃなくDirectXの機能で描画に使った部分を
自分が必要なワールドの処理に流用しようとしてアホな議論をしてる事だろ。
DirectXの仕様がそうなってない以上は、自分で用意して処理するのが当り前。
0201名前は開発中のものです。03/10/15 02:15ID:muRCTpui
>>200
いや、なんていうか195は
>DirectXの仕様がそうなってない
ってところから理解できてなかったように見えるけど。
まあ、はじめは誰でもこんなもんでしょ。

基本的に描画はゲームの処理にちょっかいを出すような設計にはしない
ってことがそのうち理解できるでしょ。
0202名前は開発中のものです。03/10/15 02:34ID:Xs8JLMZk
>それは行列のかける順番(方向?)を強調したかっただけじゃねーの?
そうなんか?しかし、どうよんでも順番に変換してると読めると思われ。
DirectX8実践プログラミングP30
DX7のヘルプみたがそれらしき説明は見当たらないが。(ミックスという用語すらない)
しかし、全ての行列をMultiplyして一度でスクリーン座標にできるならその方がよいな。
>HALは、内部では1つの行列になってるから、分けると2倍遅くなる。
こういった理由がそれと分かる。
0203名前は開発中のものです。03/10/15 02:43ID:Xs8JLMZk
>201
1個の行列にトランスフォームしてるだけなら、HALでワールドに変換してないから、
>200
>問題はそうじゃなくDirectXの機能で描画に使った部分を
>自分が必要なワールドの処理に流用しようとしてアホな議論をしてる事だろ。
これは、的はずれになる。

>201
>基本的に描画はゲームの処理にちょっかいを出すような設計にはしない
>ってことがそのうち理解できるでしょ。
何いってんだよこれは。基本的になら、裏技的にはやる場合もあるってことだろが。意味ねー
0204名前は開発中のものです。03/10/15 03:12ID:QGfW+W06
     / /-'''''| | /l /‐'''/'' .人   i'    .:: :;'" / / l  ノ゙i// ,,-‐'"──==
     //'"   ゙i;: | /‐' ./,, ,,ノ ゙i;,.  |     _,,-ヾ.// ノ ,-''" l |  ‐'"   ,,,-‐二
     レ'     ヽl:i' ./  )'、‐,\゙i;: | ,,,-‐二-┬ナ" /‐'"‐ 〉 ,i'───'''" ̄~-''"
         ,-‐',ヽ|'"  ./゙ヽ-ゝ='\゙i,'''ヽ -゙=‐'   '" ,‐'ノ,, /‐''" ,,-‐'''"~
        / / ;;:.  ──ヽ, ゙i;'''''' , ゙ "-‐'''''"""    〔_,/ ゙ヽ'-'"~
       / /   / ,; ,,_}_  ゙、 ./__,,  _,,       /      \    >>202-203おまえ
      ,;'  / ,;;;:;:/;: ,,   ~ ヽ ヽ.  ヽニ‐'、     / /       ゙i,_  ここおかしいだろ
    ./        ''  ,l,,,,,,/ 〉  ゙ヽ、 ''''    ,,-''" /        ゙i.\ \

0205名前は開発中のものです。03/10/15 06:44ID:OQb25g7m
一度でもいいから、自力で3Dエンジン組んでから、
DirectXなりなんなりにうつると応用がきくんだがなー。
ただDirectX利用するだけだと、仕組みが理解できんでしょ
0206名前は開発中のものです。03/10/15 11:26ID:DsUUxBL9
自作しなくてもこれくらい読んどきゃ大丈夫でしょ
http://www.amazon.co.jp/exec/obidos/ASIN/4939007375
0207名前は開発中のものです。03/10/15 12:08ID:z0aKx4vG
>>206
この本になんの武装もなく正面から挑める人をすごいと思う。
0208名前は開発中のものです。03/10/15 12:45ID:fAK+lzAs
経験地ためて、<数学>技能でも取得するべか。
0209名前は開発中のものです。03/10/15 12:48ID:wM6JJU60
この本、わざと難しく記述してる様に思うのですが・・・
単に自分が勉強不足なだけか・・w
どちらにしても基礎をきっちり理解しとかないと、この本
読むのは難しいと思うのだが・・。
0210名前は開発中のものです。03/10/15 13:37ID:z0aKx4vG
>>209
でもバンプマップはこの本以外の本ではさっぱりわからなかったよ。
あと良書といえば最近出たCgの本もかなりいい。
0211名前は開発中のものです。03/10/15 17:43ID:Xs8JLMZk
テイノウ似非プロ3DPG厨君らに、もっと気取られるかと思ったそうでもないな。
>205
こいつもヴァカだな。3D描画を任せれるからエンジンを利用すんでしょうか。
ま、どーせ口先だけで言ってんだろけど。
ちなみにD3Dはいまいち
>209
そう?漏れ的にはヘルプのが分かりにくい。
基礎の理解って、3D座標系は誰でも見当つくだろ。
わからんのは、D3DMATRIXを使った行列かな。
高校の数学で行列やるけど、あれだけで行列の本質が分かるのはザラにはいないだろ。教え方がヘタレなんだよ。
そんなもんを教材で勉強して試験にいどむんだから、バカが大量生産されて当然。
しかし、学校のテキストは、一般な出版社が出した分厚い糞本よりはずっとイイ。
てなわけで、生徒ももともとバカだから仕方ないのか。
0212名前は開発中のものです。03/10/15 17:52ID:iw1j/jhg
学校のテキストは一般的な出版社が出しているようにしか見えないんだけど、
具体的に一般的ではない出版社とはどこのこと?
0213名前は開発中のものです。03/10/15 18:01ID:Xs8JLMZk
>212
ようするに、文部省検定済みというかんじで、
国立大学の人達が編集したような本が、非一般的。とうか、非世間的。
出版社自体に違いは無いかもしれん。
こういった人達は、国からの信頼があるから、ハッタリで金をもうけようとしないぶん、
本の内容は、マトモというか本質だけを記すようになるんだろう。
0214名前は開発中のものです。03/10/15 18:04ID:Xs8JLMZk
う、なんか失礼だ。すいません。m(__)m
読んでないだろけど
0215名前は開発中のものです。03/10/15 20:14ID:sCAhcpdd
>211
この本の場合、基礎の理解というのは3Dの基礎ではなく、数学の基礎
の事をいってんじゃないの?
たしかに、ベクトルや行列の本質を理解するのは奥が深いと思うが、D3D
MATRIXを使った行列がごときが難しくてどやって3D組むんだ?
0216名前は開発中のものです。03/10/15 21:34ID:2BMLRTf/
こんな可愛い子が・・・
http://www.nukix.net/index2.html
0217名前は開発中のものです。03/10/15 22:56ID:sqeAf7uh
>>211
そもそもお前、行列演算も理解できてねぇ奴がほざくセリフじゃねーよ。
ゲラゲラハライテ-
0218名前は開発中のものです。03/10/15 22:59ID:wokzwdbw
ツマンネースレだなおい
0219名前は開発中のものです。03/10/15 23:04ID:EakjPa/S
高校でやる行列は数Cの行列だろ。
あんなもんを行列の勉強とか言ってる奴は高卒か?
普通は大学で線形代数という分野でみっちりやる。
つーか数Cの行列ってほとんど行列の勉強じゃないと言っても過言じゃない。
そんなで、本質とか教え方とか言ってるなよ。
0220名前は開発中のものです。03/10/15 23:06ID:iw1j/jhg
まずは行列の出来るラーメン屋で勉強汁
0221名前は開発中のものです。03/10/15 23:30ID:wokzwdbw
Direct3Dの話をしやがれ
0222名前は開発中のものです。03/10/16 00:14ID:Nd9swNJ7
FPSのゲームで影を表現する場合、シャドウボリューム、シャドウバッファ、
投射テクスチャマッピング 等いろんな手法がありそれぞれに一長一短がある
と思うのだがどれが一番今後の主流になるんでしょうか?
この板では場違いか・・?
0223名前は開発中のものです。03/10/16 00:24ID:0l+lLL1x
>>222円影
0224名前は開発中のものです。03/10/16 00:26ID:/Vxh3k/t
興味アリ。

というか、そういうのも基礎といえば基礎だよなぁ。
それ関係の参考書でまとまってるのってGEMSくらい?
0225名前は開発中のものです。03/10/16 00:30ID:f0dyhnvp
>>222
今後の主流って・・・。ハードは日進月歩だからな。
一長一短の「短」って、元をただせばハードの制約から来てるわけだし、
そもそもそれらの手法がハードウェアに依存してるわけだ。
0226名前は開発中のものです。03/10/16 00:47ID:Nd9swNJ7
ざっと調べてみたところ、こんな感じなんだが・・
Half-Life2 シャドウバッファ
鬼武者3(PCではないが) 投射テクスチャマッピング
DOOMV  シャドウボリューム
EverQuestII シャドウボリューム
0227名前は開発中のものです。03/10/16 00:48ID:tVfjRfB+
>>224
別に実装sampleに拘らなければ、シェーダー系の本でも理論や数式が載ってるよ。
最近だと、アドバンスレンダーマンの日本語版が出てるよ。
0228名前は開発中のものです。03/10/16 00:57ID:0l+lLL1x
>>226
FFX(日本代表超大作RPG) 円影
0229名前は開発中のものです。03/10/16 01:00ID:YV0V9TBS
イース6 投影円影
0230名前は開発中のものです。03/10/16 01:01ID:Nd9swNJ7
>228
スマソ。日本代表超大作。忘れとった!!!

0231名前は開発中のものです。03/10/16 04:45ID:vUXy0UHR
FFばつ=ヲタの総結集
0232名前は開発中のものです。03/10/16 06:47ID:xVD3WR4l
この板的にはヲタがどうとか関係無いな
0233名前は開発中のものです。03/10/16 16:10ID:V+3kXHxb
そうか、そういえば高校数学のレベルでは
3Dプログラミングに必要な行列の知識はカバーできないんだよな。
ベクトル外積も出てこなかった気がするし。

まあ、ちょっと調べれば分かることだけど。
0234名前は開発中のものです。03/10/16 16:38ID:vUXy0UHR
233=このスレ史上最高の馬鹿誕生
0235名前は開発中のものです。03/10/16 16:43ID:EiC4tLUW
>>234
×このスレ
○この板
0236名前は開発中のものです。03/10/16 17:00ID:jCmYAMBF
まぁ、マジな話

影とか言ってる暇があったらゲームをマトモにしような

023723303/10/16 17:46ID:V+3kXHxb
>>234-235
ナニがバカなのか説明して。おねがい。
0238名前は開発中のものです。03/10/16 18:15ID:xVD3WR4l
>>236
ならスレ違いだろ。
0239名前は開発中のものです。03/10/16 19:15ID:jCmYAMBF
いまだにDirectXなんぞの話してるような低脳共にはこの板お似合いだなぁw
0240名前は開発中のものです。03/10/16 19:18ID:ifFY+P+X
いや、まぁそういうスレだし、
キミはオレたちみたいな低レベルな人間を煽るためだけにこのスレに来てるんだったら
それはどうなのよ?と釣られてみる

>>237
理系で大学いってるけどオレにもわからん・・
0241名前は開発中のものです。03/10/16 19:31ID:xVD3WR4l
なんかこのスレ僻みっぽい性格なヤツ多くない?
0242名前は開発中のものです。03/10/17 00:38ID:7jfLH+KW
>>241
そんなことはない。

なぜなら、この板は全体的にそういう奴が多いので、
このスレだけが目立っているわけではないからだ!
0243名前は開発中のものです。03/10/17 02:06ID:ouNMemrc
>>>234-235
>ナニがバカなのか説明して。おねがい。
臭いから。
0244名前は開発中のものです。03/10/17 12:33ID:4xWkb76G
>>243
高校でも2x2行列と回転行列、一次変換は習うし、
相当レベルの低い高校でも、「外積」という言葉は出さ
ないにしろ「ベクトルのたすきがけ」ってテクニックは
教えているってことを234は言いたかったんでは?
0245名前は開発中のものです。03/10/17 16:23ID:5EL/rGDZ
>>243でそこまで読み取れるとはなかなかのエスパー。
0246名前は開発中のものです。03/10/17 16:27ID:0sWnDGVR
>>243
人類初!臭いを伝えた掲示板!

全日本スメリング振興会
0247名前は開発中のものです。03/10/17 16:36ID:dYTyS2K6
一瞬スルメリングにみえたよ
0248名前は開発中のものです。03/10/18 02:00ID:u4L5nOzW
>>244
数Cだと一次変換は無い。あったのは代数幾何までの時代。
しかも、ベクトルのたすきがけって
3x3行列のみに有効な逆行列の出し方の話だし。

さすが相当レベルの低い高校卒。
0249名前は開発中のものです。03/10/18 04:44ID:vurQEaLO
>>248
数Cに一次変換はあったぞ。
0250名前は開発中のものです。03/10/19 11:48ID:t2r9NdQp
3x3以上の逆行列も求められなよいよな。
0251名前は開発中のものです。03/10/19 11:49ID:t2r9NdQp
って、ひょっとして世代とか学校とかでだいぶ違うんじゃねーか?
0252名前は開発中のものです。03/10/20 00:46ID:RQQdBw5V
>>250
あ、俺、4x4の逆行列の計算いまだにどうやるのか知らないや。
いつもどっかに関数が用意されてるからね。
自分で組まなきゃいけないときになったら「調べりゃどっかにあんでしょ」って感じ。
0253名前は開発中のものです。03/10/20 09:08ID:R1ZmpV3F
回転変換なら逆行列求めなくても
転置させるだけですむ罠。
0254名前は開発中のものです。03/11/05 14:47ID:jJc8m7+7
行列なんて適当なソース見て憶えろ!!
0255名前は開発中のものです。03/11/05 16:39ID:0aeovm5Y
大名行列のソースどこ?
0256名前は開発中のものです。03/11/05 20:22ID:ucAPgQL7
>255
http://www.naviu.net/totiodaimyougyouretu/totiodamyougyouretu.htm
0257名前は開発中のものです。03/11/05 20:37ID:0aeovm5Y
>>256
見ましたが覚えられませんでした。
0258名前は開発中のものです。03/11/05 20:46ID:ucAPgQL7
>257
それは自分の責任です
0259名前は開発中のものです。03/11/05 20:53ID:vZXYewMF
ごめん俺も無理だった
0260名前は開発中のものです。03/11/05 21:07ID:ucAPgQL7
>259
あやまる理由が分かりません
0261名前は開発中のものです。03/11/07 01:00ID:KlsoqapJ
数C って何だ? 数III のことか?
高校では外積習わないだと?
どうやって物理の電磁気勉強するんだ?
これがゆとり教育の成果か?
0262名前は開発中のものです。03/11/07 02:33ID:S7KcfCHb
Direct3Dの話をしろよ貴様ら
0263名前は開発中のものです。03/11/07 23:09ID:0mHMguKP
高校では外積教えないのは昔からだぞ
0264名前は開発中のものです。03/11/08 15:05ID:hOKrRPpu
うむ。俺の12年前の教科書見てみたが出ていない。
0265名前は開発中のものです。03/11/09 02:20ID:Idkyti++
>>252
3×3以上は余因子を使う。
回転行列だったら転置ですむんだがナー。

ベクトルだとか行列だとかクォータニオンだとかのクラスを作ってみると結構勉強になる。
すでに関数が用意されてるんだからわざわざ作る必要はないが。
0266名前は開発中のものです。03/11/09 05:04ID:SHOLBRju
高校で外積習わなかったのに
大学では知ってる前提で授業が進むから
かなり困った記憶が。
0267名前は開発中のものです。03/11/10 23:05ID:PshTpjij
max4.2とDirectX9で3Dアクションゲームを作成してるんですが。
「PandaDirectXExporter」でXファイル書き出しをしてみても上手く書き出せず、
Xファイルビューアで見ても「真っ黒&データ損傷」という状態なんです。
「Panda...」で解決!というようなコメントがチラホラと見られるんですけれども、
どのようにしたら上手く書き出せるのかが分りません。

どなたか、知っている方がいましたら、ご教授おねがいします…
0268名前は開発中のものです。03/11/11 16:17ID:eZ5T8rzP
すいません
後ろのポリゴンに前のポリゴンが塗りつぶされてしまうんですが
どうすれば正しい順序で描画されますか?
0269名前は開発中のものです。03/11/11 17:20ID:KlL6ALmI
Zバッファを有効にするか、Zソートをかける
0270名前は開発中のものです。03/11/23 15:01ID:SCoxfvAt
あるメッシュ(キャラクタ)の姿勢ベクトルの取得方法を教えてくれ。
0271名前は開発中のものです。03/11/23 15:13ID:St0MgiVu
高校数学の内容は昔と比べてガンガン減ってる。

今は外積も一次変換も微分方程式も出てこない。
0272名前は開発中のものです。03/11/23 15:21ID:FVc+pu0V
ということは、
1.若いプログラマーは育たないかヘボ
2.俺たちは何時までも引っ張りだこ
っていうこった!
0273名前は開発中のものです。03/11/23 18:06ID:2W0ab3iv
>>271
>>263 >>264

私立は違うだろうけどな
0274名前は開発中のものです。03/11/23 18:37ID:1ESucSsD
東大京大に1割ほど逝く程度の2流私立高校だったけど
やっぱり外積はやらなかった、1流私立ならやるのかもしれないけど
とりあえずうちの高校教師はテストに出ないとこはやらないという方針だったな
0275名前は開発中のものです。03/11/24 00:28ID:9OWEx9zV
うちは東大に半数近く行く程度の3流私立高校だったけど
理系コースは外債をやったよ
応用数学の基礎がないと専門分野のエリートができないからね
0276名前は開発中のものです。03/11/24 00:53ID:UUxn7nSE
偏差値60ぐらいの高校だったけど、
三角形の面積で似たようなのが出た。
1/2|x1y2-x2y1|
とかいうの。
0277名前は開発中のものです。03/11/24 12:13ID:ykT209na
>>275
面白いとおもって書いてるならマジで死んでくれ
0278名前は開発中のものです。03/11/24 14:55ID:1t7U73Xr
東大の近くにあるけど、受かった奴は1人もいないって
高校だったけど、外積は教わった。今から15年位前の
話だけどな。予備校とかでも使ってたし。
…俺の知らない間に、受験戦争って終わってたの?
0279名前は開発中のものです。03/11/24 19:58ID:AV2HGEcK
受験戦争なんて聞いたことも有りません
0280名前は開発中のものです。03/11/24 20:38ID:TnmocILl
冷戦と同時に終わったらしい。
0281名前は開発中のものです。03/11/24 21:02ID:1t7U73Xr
漏れ達の青春は受験戦争によって奪われてしもった…
_| ̄|○ そもそも俺は当時、既に負けてたけどな
0282名前は開発中のものです。03/11/24 21:59ID:Df+DJvwA
受験勉強せずに遊びまくりの高校生活してたのに灯台いったやつがいた
やつのIQは150超えてたらしい

越えられない壁を感じた 
0283名前は開発中のものです。03/11/24 22:14ID:GqsB1Z/x
そもそも、青春捨ててまでいくようなところかよ
>>282の知り合いみたいな行けるヤツが行けばいい。
第一、そいつみたいなヤツは勉強でもしとらんと、
頭がキレるだけに何するかわからん。
0284名前は開発中のものです。03/11/24 22:54ID:opLwytxG
東大よりも大きい、大東大に逝け。
0285名前は開発中のものです。03/11/24 23:56ID:qsKRQfod
>>283
はぁ?学歴コンプレックスですか?
人がどんな青春送ろうと勝手だろうが。
あんたはさぞかし大層な青春時代を送ったんだろうな。言ってみろよ。
SDK_VERSION
0286名前は開発中のものです。03/11/25 00:14ID:vBYvQALs
>>285
>あんたはさぞかし大層な青春時代を送ったんだろうな。言ってみろよ。
こんな↓
http://203.138.101.12/cgi-bin/upload/source/up2851.jpg
こんな青春がいい。
0287名前は開発中のものです。03/11/25 00:17ID:ttCQRji7
>SDK_VERSION
にワラタ
0288名前は開発中のものです。03/11/25 09:41ID:w7rQECX+
>>282
そういう奴を知ってるが、時間の使い方が物凄い上手いだけ。
遊んでばっかりに見えて、やるときはやってる。
0289名前は開発中のものです。03/11/25 13:01ID:eHxaMr9z
>>282
洩れはその手の人間なんだけど(灯台より1ランク↓だが)、頭が良いわけじゃないぞ。
ただ単に要領がいいだけだ。

とりあえず、本当に天才肌の人間知ってるけど、普通の人とモノの見方が違う。一歩
間違えれば変人なくらいに。
天才とバカは紙一重とは、よくいったもんだ。
0290名前は開発中のものです。03/12/01 23:21ID:vs2JGrAe
>>286
そんな青春時代を送ると性犯罪者になっちゃうだろw
0291名前は開発中のものです。03/12/03 14:49ID:9tMelrfA
ム板の同名スレと間違えて覗いて、いつの間に俺の知らない話題が展開
されてたのかと焦った。

俺も高校で外積を習った記憶が無いんだが、同じ高校から同じ大学に
行った奴(なぜか附属校なのに一般入試で入ってきた)が言うには
高校のときに習っていたらしい。

っていうか、そもそも俺は授業を全く聞いてなかったわけだが。

俺も勉強してないのに成績が良い部類の人間だけど、家でも勉強しないし
学校帰りは毎日ゲーセン通いだったよ。

そんな俺が今はめちゃくちゃ出世して稼ぎまくっているかというと、そんな
ことは全くないわけで、むしろ俺みたいに努力を知らずに育っちゃうと
のほほーんと過ごすようになっちまうぞ。
0292名前は開発中のものです。03/12/03 16:50ID:Afv8Mtad
>>291
のほほーんと過ごせてるのならそれはそれでいいじゃないかとか思ったり
0293イタチ飼い03/12/04 03:13ID:gkv74Y/y
二十過ぎればただの人ってやつですな。俺もそのクチ。

何の努力もしないくせに成績が良いという状態は非常に危険だ。
世の中なめてるから、高校、大学、社会人と確実に凋落していく。
もしそういう子供を持ったら、通知表の数字に喜んでないで、とっとと虎の穴に叩き込みましょう。

歴史を紐解いても、すべての天才は例外なく努力家である。
ウサギとカメの寓話があるが、最強なのは休まないウサギなのだ。
0294名前は開発中のものです。03/12/04 08:52ID:/bX+C4Ck
休まないウサギの末路は過労死。
ザパネーゼカロウシ。
0295名前は開発中のものです。03/12/08 17:45ID:gvF03lSv
このスレ、もはやDirect3Dと関係なくなっとるw
0296名前は開発中のものです。03/12/08 19:44ID:ZV91wG1A
そこがまたいい
0297名前は開発中のものです。03/12/08 21:24ID:rIybFkrM
ポリゴンのチンコ誰か欲しい?
0298名前は開発中のものです。03/12/09 16:16ID:TX90nXkP
欲しい♥
むしろ製作チュートリアルきぼん
0299名前は開発中のものです。03/12/09 20:37ID:6Z/t0xpr
ちんぽりごん
0300名前は開発中のものです。03/12/11 09:39ID:U7iNpITN
ステンシルバッファって鏡と影以外で、面白い使い道ってないの?
0301名前は開発中のものです。03/12/11 21:10ID:XXWZ7GkB
億泰やヴァニラ・アイスが削り取った部分
0302名前は開発中のものです。03/12/12 22:29ID:hPK+Uhz9
うーん実際見てみないと見当がつかない・・・
その技法を使ったゲームの紹介画像ってどっかにない?
0303名前は開発中のものです。03/12/17 13:51ID:KmghdbFK
クレイジータクシーの自車が陸橋に入ったり出たりするとき自車に落ちる影
あれをどうやってんのわかんなくて気になる
地面に落ちる自車の影は、ステンシルバッファの裏表の描画状態で判断つけら
れそうだけど、影の中に視点が入っちゃうような場合はどうすんだろ?
0304名前は開発中のものです。03/12/17 21:23ID:kecn54jU
>>301
3Dっつーのもそろそろ限界に来てるな。
技術じゃなくて需要が。
0305名前は開発中のものです。03/12/21 22:32ID:n1iQDmEm
>>303
そういうときだけは表側は描かないで、代わりにステンシルバッファ全部を
インクリメントしちゃって、そのあといつもどおり裏側で抜く。
で、うまくいきそうな気がするけど
0306名前は開発中のものです。03/12/21 22:45ID:oSm5qie6
入るぎりぎりのとこ、つまりステンシルボリュームが
前クリッピング平面にクリッピングされたとこが視界に入るような状況だと(動きが早いと数フレームぐらいしか生じないけど)
そこで見た目がへんになるんだよな…

まぁクレタクは305のほうほうだろうけど
0307名前は開発中のものです。03/12/22 02:44ID:o8QuJx9z
ニアにかかったステンシルはニアのXY平面で反転して描画。するとクリップされたポリだけが描画できるので無問題。
そうそう、反転した面はZ無視でね。

厳密にはこれでも結構問題でるんだけど、取り合えず動きが早いものなら誤魔化せます。
0308名前は開発中のものです。03/12/22 17:52ID:VTzd2bKs
なるほど皆さん凄いな!俺も今日からは丸影を卒業して、ステンシル影にチャレンジ
でも最近は、光源から見て描画したZ値と、視点から見たZ値を比較して影を
描くのが流行みたいね
0309名前は開発中のものです。03/12/22 17:57ID:Q6Mm9LXS
丸影 != ステンシル影
って訳ではないのだが。
シャドウボリュームを端折って、ステンシルで丸影を使う場合もある。
0310名前は開発中のものです。03/12/22 18:13ID:VTzd2bKs
>>309
丸影のテクスチャを描画する代りに、ステンシルの値のみ変えるよう描画し、
画面の描画が全部終わったところで、ステンシルの値が変わっている
ピクセルを影っぽい色をブレンドして塗るってこと?
0311名前は開発中のものです。03/12/22 18:30ID:Q6Mm9LXS
シャドウボリュームが円筒状というだけの話なんだけど。
まともに作ると重いから。
0312名前は開発中のものです。03/12/22 21:00ID:VTzd2bKs
>>311 納得。
0313名前は開発中のものです。03/12/22 22:54ID:yj69sFk7
>>307
5時間考えたけどどーしてもその方法ワカラン・・・

前投影面の少し前でクリッピングするほうほうじゃだめかねぇ、
まぁこの方法自体難しい気がするけど
0314名前は開発中のものです。03/12/23 01:45ID:1vDrzUD8
んーと。説明悪かった。2パスで描画すんのよ。まず、ニアにかかるってケースを検出してね、

1パス目…普通に描画
2パス目・・・Z*-1してZは無視で描画。

すると、2パス目でニアでクリップされた部分が描画されるしょ?これでニアクリップ面は塞がれるって寸法。
でも、解説の為に簡略したけどホントは2パス目はニア平面で反転させないとダメよ。

まー、描画コスト高いけどコレが一番楽。というか、305のやり方の方がよく解らん。無理がある気がする。
0315名前は開発中のものです。03/12/23 01:47ID:1vDrzUD8
DirectX8世代なら4パスか。まぁいいや。オレの予感じゃDOOM3も多分コレ。
0316名前は開発中のものです。03/12/23 02:21ID:VyQpIX7z
>>314>>315
サンクス!
よーやくわかたよ。なるほどね、うまいこと考えるね。プロ?
オレの考えた方法に比べれば
実質ステンシル描画負荷2倍なんて軽いもんだ。
0317名前は開発中のものです。03/12/23 02:54ID:58Qv7PQZ
でもさあ、同人でもプロでもいいから
そういう技術つかった日本のPCゲームないじゃん。
0318名前は開発中のものです。03/12/23 03:08ID:EO+0r1r5
コンシューマであるじゃん。
0319名前は開発中のものです。03/12/23 07:23ID:z5pCXM0M
コンシューマつまんねーからやんないし。
他にはどこで使われてんの?
0320名前は開発中のものです。03/12/23 13:44ID:3A9yt2E/
あげても全部つまんねーで片付けられそう。
コンシューマーはどの辺がつまんないの?
つーかやったことあるの?
0321名前は開発中のものです。03/12/24 02:14ID:fo2vArQT
>>316
いや、それフツーに使われてるテクだと思うよ。少なくとも自分のいるコンシューマ屋じゃ常識ぽいかも。
SONY製の安物ハードだとニアクリップも自前でやらにゃあかんのでそのついでにニアでふさぐけどね。
なんつー前時代的な・・・

コンシューマ屋は昔から失敗作みたいなハードが主流を握る傾向があるので技術があっても表に出しにくい
ってのがあるな。なんだったらサイレントヒル3とかカーマックも舌打ちしそうな出来だから見とくといいよ。
ま、PC版もあるわけだけど。
0322ステンシル大好きな人03/12/30 08:05ID:2wi9wpGv
シャドウボリュームの中に視点が入ってしまう問題は、そんな面倒なこと
しなくても、ZFAILでステンシルを更新する方法を使えば解決するよ。
ただ、逆にファークリップにひっかかる場合に問題になるけど。
あとフィルが、普通の方法よりも厳しい。

車ゲーみたいにある程度視点と光源の位置関係が固定されているなら、
ファークリップの問題はほとんど関係ないかも。
リプレイなんかで上から見下ろすときは、逆にニアの問題が有り得ないから
状況に応じて使い分ければいいかと。
0323名前は開発中のものです。03/12/31 07:55ID:dYmJ5kjK
>>322氏の方法を試してみた
裏面は、D3DRS_STENCILZFAILをD3DSTENCILOP_INCRSATにして描画
表面は、D3DRS_STENCILZFAILをD3DSTENCILOP_DECRSATにして描画
これだけで影に視点が入ってもうまく表示できたよー!
自機に背景の影が落ちるの見てなんか感動した
さて次は、視点からの距離で影にもフォグがかかるようなんとかしたい…
0324名前は開発中のものです。04/01/04 09:26ID:uFzLO2ik
何故ZFAILにする必要があるのかよーわからんけど
飽和減算で裏面を書けば防げるってことかな?
0325名前は開発中のものです。04/01/04 09:27ID:uFzLO2ik
あぁ、ごめん書いた直後に分かった
0326名前は開発中のものです。04/01/04 14:06ID:kQ7jSRJZ
概念を簡単に説明すると
地面を境界にシャドウボリュームを2つに分断して、その断面を暗くすれば
影になるわけだけど、普通の方法は分断されたシャドウボリュームの地面より
上の方を使っている。ZFAILの方法は、地面より下のボリュームを使っている。
どちらを使っても断面の形状は全く一所だから、同じ影ができる。

ただ、ZFAILの方法をセルフシャドウに使おうとすると、ちょっと注意が必要。
0327名前は開発中のものです。04/01/29 12:03ID:aRkiSiXS
ソvidaのフォトショップ用ノーマルマップ作成プラグイン
ttp://developer.nvidia.com/object/nv_texture_tools.html

これの使い方がさっぱりわまかそりん。どこのボタン選択して
も真っ青(法線ベクトルのまま)の画像しか生成されません・・・教えてシェーダー使いの人
032832704/01/29 12:50ID:aRkiSiXS
高さのスケール値を指定したらできました。
ナンチャンの顔から作ったノーマルマップを使ってバンプ表現にチャレンジ・・・
0329名前は開発中のものです。04/01/29 16:20ID:JOflTWGE
何気に素晴らしいネーミングだ
ちんぽりごん

0330名前は開発中のものです。04/01/30 13:37ID:ISbdpqEk
すいませんがどなたか教えていただけませんか?
3Dゲームにおいて爆発などのエフェクトはどういったポリゴンで
表現されているのでしょうか?
0331名前は開発中のものです。04/01/30 15:02ID:+aDGr/Yc
イタポリとか
0332名前は開発中のものです。04/01/30 15:14ID:vd2N2Ux7
漏れもただのビルボードで・・・
0333名前は開発中のものです。04/01/31 08:19ID:IQTlYJOf
小生も不覚ながらビルボード。
ひょっとして >>330 は ビルボード行列の作り方を聞きたかったのか?
033433004/01/31 15:14ID:PYmxYIqC
最近3Dのゲームを作っておりましてエフェクトを作ろうとした時
爆発でどこからみても爆発して見えるのはてっきり爆発用に
頂点データ的なものがあるのかな〜と思いまして、しかしそれだとすごく
疲れる作業だな〜と思い聞かせていただいた所存でございます。
キャラの位置に合わせてポリゴンをビルボードしてるんですかね。
ありがとうございました。
もしよろしければビルボード行列の作り方を教えて戴けませんでしょうか。
0335名前は開発中のものです。04/01/31 16:56ID:WSdg894Q
>>334
sprite.Begin(SpriteFlags.Billboard | SpriteFlags.SortDepthFrontToBack);
とか。

DX9 Summer 2003 Update 用ね
0336名前は開発中のものです。04/01/31 17:24ID:IQTlYJOf
んー私の記憶が正しければ…

matView ビュー行列(あらかじめ作っとく)
matBillboard ビルボード行列

D3DXMatrixInverse( &matInv, NULL, &matView );//行列の逆元
matBillboard = matInv;
matBillboard._41 = 0.0f;//X移動を0
matBillboard._42 = 0.0f;//Y移動を0
matBillboard._43 = 0.0f;//Z移動を0

たしかこれでビルボード行列ですはいー。
0337名前は開発中のものです。04/02/01 13:19ID:u/zDYgLU
メガデモ見てると自分に自信がなくなってくる・・・ 
033833004/02/01 14:16ID:372QHYP7
本当にありがとうございました。
実はもう1つ問題がありまして、もしよろしければ助けて戴けないでしょうか。
334でも述べた通り3Dゲームを作っておりましてアクションゲームなのですが
X,Y,Z 10,6,30 のMAPでブロック(x,y,z=1,1,1)を表示していきたいのですが、
現在頂点データを6個で立法体(1,1,1)でMAPを表示しておりますがそれでは
ポリゴン数が多すぎてFPSがでないので、ブロックの大きさを2,1,1や4,2,3
などの頂点データを打っているのですが数を上げていくと頂点データを
1000以上打たなければいけない計算になります。
この問題に大して打開策がありましたら教えて戴けませんでしょうか。
0339名前は開発中のものです。04/02/01 14:22ID:qGvNFBm3
速度を上げる工夫をする
or
MAPの仕様を変える
0340名前は開発中のものです。04/02/01 14:30ID:w7gnma4r
見えない部分のマップを描かない。
0341名前は開発中のものです。04/02/01 15:44ID:Xi+ahqRK
1つ1つのポリゴンを描画する度、DrawPrimitive系命令を呼んでたりして?
0342名前は開発中のものです。04/02/01 16:21ID:OUnuJC++
>>341
それやってたとしてもそんなに遅くはならないはずだけど。
0343名前は開発中のものです。04/02/01 16:32ID:MUD5wauh
うおっバカ系来た
0344名前は開発中のものです。04/02/01 16:47ID:u/zDYgLU
>>342
IDがC++
0345名前は開発中のものです。04/02/01 20:19ID:zmw0Mii3
Photoshop7.0が10万って高!
安い店ないかな?
0346名前は開発中のものです。04/02/01 20:40ID:u/zDYgLU
スレ違い
034733004/02/02 03:04ID:RyS6mA+O
DrawPrimitive系命令を呼んでたりして?
これやってますね。何か他の方法があるのですか。
0348名前は開発中のものです。04/02/02 05:27ID:Jm+cIG2+
>>345
プログラマならはっきりいってこんなんで十分だぞ。
http://www.amazon.co.jp/exec/obidos/ASIN/B00006JMXI/249-6804501-1889152

>>347
誰のレスに何を聞きたいのか非常にわかりづらいので
もっとわかりやすくなるようにしてくれないですかね?
0349名前は開発中のものです。04/02/02 05:52ID:Jm+cIG2+
>>338
いくつか疑問が・・・。

>X,Y,Z 10,6,30 のMAPでブロック(x,y,z=1,1,1)を表示していきたいのですが、
>現在頂点データを6個で立法体(1,1,1)でMAPを表示しておりますがそれでは
>ポリゴン数が多すぎてFPSがでないので、ブロックの大きさを2,1,1や4,2,3
>などの頂点データを打っているのですが
とありますけど、そもそも謎の多い文章なんですよこの文章は。

まず、X,Y,Z(10,6,30)のマップっていうけど1ブロック辺り12ポリ使ったとしても
10*6*30*12で21600ポリ程度じゃポリ数が原因で速度が落ちることはあんまり無いと思うけど?
しかもこれって全部画面に出した場合であって普通はマップのある部分だけなんでしょ?
はっきりいってポリ数が速度の落ちる原因とは考えにくい。

で、ここでいくつか質問だけど

・クリッピング処理(画面からはみ出た部分を描画しないようにする処理)はちゃんとやってる?
・みえない部分は描画しないようにしてる?(Zバッファを利用して前から描画とかでもいいや)
・実際のゲームの画面で一回の描画で何ブロック描画する必要があるのよ?(マップ全部じゃないでしょ?)
・カリングの設定はしっかりできてる?
・本当に速度の落ちる原因はポリ数だったか調べた?
 (実はこれを調べるのは結構困難。単に描画面積がでかかっただけかもしれないし、
  クリッピング処理が上手く働いていなかったとか・・・。)

あたりは全部やってるの?
0350名前は開発中のものです。04/02/02 06:32ID:HsES/+LZ
>>348
Photoshop Elementsはアルファチャンネル削られてるからゲープロ的にはだめぽだと思う。
DirectDraw世代なら別にかまわないけど。
0351名前は開発中のものです。04/02/02 06:43ID:Rie53uXk
>>330
環境にもよるがDrawPrimitiveをめっさいっぱい呼ぶともっさりするので注意な。

>>336
誰も突っ込まないので(というか突っ込まなくてもいいか?)一応。

matView ビュー行列(あらかじめ作っとく)
matBillboard ビルボード行列

D3DXMatrixTranspose(&matBillboard, &matView);//転置
matBillboard._14 = matBillboard._24 = matBillboard._34 = 0.0f;

この方が早い。逆行列使うのは避けた方がいいでそ?
0352名前は開発中のものです。04/02/02 06:49ID:Rie53uXk
>>350
そこでMS謹製のTextureToolですよ。





('A`)マンドクセ
0353名前は開発中のものです。04/02/02 07:25ID:Jm+cIG2+
>>350
pngで保存すると背景の部分がアルファチャンネル扱いになるけど?
それで十分じゃないの?
0354名前は開発中のものです。04/02/02 07:31ID:Jm+cIG2+
>>351
ビルボードなんてカメラと平行っぽくなってりゃいいんじゃないの?
なんで逆行列や転置が必要なのかわからない。

そのままでいいだろ。

D3DXMATRIX bill = view;

んで、

bill._41 = bill_x;
bill._42 = bill_y;
bill._43 = bill_z;

で完成じゃボケ。
0355名前は開発中のものです。04/02/02 13:50ID:f+P8GJRa
>>354 おぬし男の中の男だな。
0356名前は開発中のものです。04/02/02 20:52ID:qCykuM3X
directXってどういうものですか?
言語ではないと聞いたんで…。
DirectX覚えただけではゲーム作れないんですか?
0357名前は開発中のものです。04/02/02 21:31ID:ruvzNpBE
http://e-words.jp/w/DirectX.html
035835604/02/02 21:38ID:WcP70SUw
>>357
サンクスベリーマッチョ。
0359名前は開発中のものです。04/02/02 23:37ID:qCykuM3X
読んでもやっぱり分からないんですが
DirectXだけ勉強してゲームは作れるんでしょうか?
0360オレー04/02/03 00:26ID:lqBJLK7t
>>359
わかりやすく言うと、DirectXはゲームとかにつかう命令のセットだ!
コントローラーのボタンを読め!とか、ポリゴンを描け!とか命令するとやってくれる。
C++とか他の言語で、その命令を呼んでやるわけだが、そーいうもんだから呼ぶために言語も勉強しろ!!
036128904/02/03 01:28ID:pyweXtof
てことは、C++とかじゃできないことをやってくれるのがDirectXですか。
それとも、C++でもできることを簡単にするように使うのがDirectXですか?
とりあえず言語は覚えてみます。
0362オレー04/02/03 01:38ID:aqfOOcxz
>>361
とりあえず、基本的なとこでいいから、てきとーに言語覚えてからすぐSDKについてるサンプルをビルドしろ!
そんで改造していくと覚えるの速いぞ。マジお勧めなこれ
0363X04/02/03 01:40ID:low7AtO4
どうも330です。330ですというとわかりにくいのでXと呼んで頂ければと思います。
X,Y,Z 10,6,30 のMAPにおいてfor文で回してMAP情報を書き込んだ3次元配列から
データを読み取ってブロック表示しているのですが。
ここで今まで書き込ませて戴きましたが、皆さんとても豊富な知識をお持ちのようで。
そこで大変ご迷惑だとは思いますがE-mailに乗せてあるアドレスで私はメッセンジャーを
使っておりましてもしよろしければ私のプログラムを見てもらいましてアドバイスをいただきたいのですが。
大変ご迷惑な事、ずうずうしい事とは承知しつつもし見て戴ける方が居られましたらお願いいたします。
0364名前は開発中のものです。04/02/03 02:16ID:6qjzgiJc
微妙に変な日本語だな
0365名前は開発中のものです。04/02/03 02:42ID:V33o00bN
ソースうpしる
0366名前は開発中のものです。04/02/03 10:02ID:nvDFyoS5
>>363
わざわざメールでやりとりなんて疲れるから
http://cgi.f6.aaacafe.ne.jp/~pyuav/php/upload.php
うpしる!
0367X04/02/03 11:14ID:q1OWKOSR
//----------ゲーム本体------------------------------------------------------
// DrawMain - 描画メイン
// この関数は1フレームごとに呼び出されます
void DrawMain(){
// バックバッファと Z バッファをクリア
lpD3DDEV->Clear(0,NULL,D3DCLEAR_TARGET | D3DCLEAR_ZBUFFER,D3DCOLOR_XRGB(0,0,0),1.0f,0);
// 描画開始
lpD3DDEV->BeginScene();
D3DXMATRIX matWorld,matRotateX,matTrans,matView;
0368X04/02/03 11:14ID:q1OWKOSR
static float PlayX=12,PlayY=10,PlayZ=-8;
static float BectolX=3,BectolY=0,BectolZ=8;
// 視点は (0,0,0) にあり、(0,0,5) の方向を向く
D3DXMatrixLookAtLH(&matView,&D3DXVECTOR3(PlayX,PlayY,PlayZ),&D3DXVECTOR3(BectolX,BectolY,BectolZ),&D3DXVECTOR3(0,1,0));
// プロジェクション行列を設定
D3DXMATRIX matProj;
// 視界 60 度、近くの限界 0.1、遠くの限界 100.0
D3DXMatrixPerspectiveFovLH(&matProj,60.0f * PI / 180.0f,1.0f,0.1f,100.0f);
// 各行列を設定
lpD3DDEV->SetTransform(D3DTS_VIEW,&matView);
lpD3DDEV->SetTransform(D3DTS_PROJECTION,&matProj);
0369名前は開発中のものです。04/02/03 22:31ID:Dj4DkP/N
BectolXワラタ
0370名前は開発中のものです。04/02/03 23:32ID:/6vJImFb
英語力って大事だな
Bectol → Vector
0371オレー04/02/03 23:34ID:VYXMEMW7
このソース途中じゃん。続きは???????
0372名前は開発中のものです。04/02/03 23:53ID:pACG0/A5
D3DXVECTOR3がソースにある以上
英語力の問題でもないような。
途中までだけどなんか根本的に
わかってないような気がする。
0373名前は開発中のものです。04/02/04 00:08ID:8XXIUaLn
>>372
そう?とりあえずここまでのソースは問題なさそうな感じだけど。
細かくはみてないけど。
0374名前は開発中のものです。04/02/04 00:25ID:yUu1C7Gn
>>373
だってベクトルって言葉は知ってるのに
D3DXVECTOR3をベクトルって気付かないまま使ってるのはどうかと思う。
float x 3 使っちゃってるし。

サンプルか何かを見ながら
よくわからないままコーディングしてる気がする。
0375名前は開発中のものです。04/02/04 00:40ID:8XXIUaLn
>>374
いや、さすがにそれだけじゃ判断できないって。
0376名前は開発中のものです。04/02/04 01:22ID:S4gpfpmI
一緒に机並べてる奴がこんなソース書いてきたら、
どんな力を利用してでも自分の周りから遠ざけるけどな。
0377名前は開発中のものです。04/02/04 02:01ID:yUu1C7Gn
>>375
問題ないと思うならメッセンジャーでアドバイスしてあげてよ。
0378名前は開発中のものです。04/02/04 07:36ID:r/i/wFB8
これだけでもstatic floatとか色々と突っ込みたいところいっぱいあるなぁ。
0379X04/02/04 08:32ID:TUjDrKub
void DrawMain(){
lpD3DDEV->Clear(0,NULL,D3DCLEAR_TARGET | D3DCLEAR_ZBUFFER,D3DCOLOR_XRGB(0,0,0),1.0f,0);
lpD3DDEV->BeginScene();
D3DXMATRIX matWorld,matRotateX,matTrans,matView;
static float PlayX=12,PlayY=10,PlayZ=-8;
static float BectolX=3,BectolY=0,BectolZ=8;
D3DXMatrixLookAtLH(&matView,&D3DXVECTOR3(PlayX,PlayY,PlayZ),&D3DXVECTOR3(BectolX,BectolY,BectolZ),&D3DXVECTOR3(0,1,0));
D3DXMATRIX matProj;
D3DXMatrixPerspectiveFovLH(&matProj,60.0f * PI / 180.0f,1.0f,0.1f,100.0f);
lpD3DDEV->SetTransform(D3DTS_VIEW,&matView);
lpD3DDEV->SetTransform(D3DTS_PROJECTION,&matProj);

// MAP表示
int X,Y,Z;//各座標ループ用
lpD3DDEV->SetTexture(0,BLOCK01texture);
for(Z=0;Z<2;Z++){
for(Y=0;Y<6;Y++){
for(X=0;X<10;X++){
switch(MAP[Z][Y][X][1]){
case 111:PrintBLOCK(&matTrans,&matWorld,Z,Y,X,0,6);break;
case 211:PrintBLOCK(&matTrans,&matWorld,Z,Y,X,6,12);break;
case 311:PrintBLOCK(&matTrans,&matWorld,Z,Y,X,12,18);break;
case 411:PrintBLOCK(&matTrans,&matWorld,Z,Y,X,18,24);break;
case 511:PrintBLOCK(&matTrans,&matWorld,Z,Y,X,24,30);break;
case 611:PrintBLOCK(&matTrans,&matWorld,Z,Y,X,30,36);break;

}}}
po=1;
FrameCnt();
lpD3DDEV->EndScene();
if (FAILED(lpD3DDEV->Present(NULL,NULL,NULL,NULL))){lpD3DDEV->Reset(¶m);}
}
0380X04/02/04 08:35ID:TUjDrKub
遅くなってすいませんでした。
改行が多くて乗せれないみたいなことがでてしまい時間がかかりました。
皆さんアドバイスお願いいたします。
MAP表示のSelect文のcaseはあともっとあります。
0381名前は開発中のものです。04/02/04 09:12ID:S4gpfpmI
ここまでやっちゃいけない事例のオンパレードなコードも珍しい。
D3Dより先にC言語を勉強するべき
0382名前は開発中のものです。04/02/04 09:43ID:+5PC35hU
#define BLOCK_SIZE_X (1.0f)
#define BLOCK_SIZE_Y (1.0f)
#define BLOCK_SIZE_Z (1.0f)

CUSTOMVERTEX *pcv = (CUSTOMVERTEX *)locked_ptr; // 頂点バッファが望ましい
for(Z=0;Z<2;Z++){
for(Y=0;Y<6;Y++){
for(X=0;X<10;X++){

 if( MAP[Z][Y][X] != 0 ) { // 描画するか否か
  float x = X*BLOCK_SIZE_X;
  float y = Y*BLOCK_SIZE_Y;
  float z = Z*BLOCK_SIZE_Z;
  D3DCOLOR c;
  float tu,tv;

  // 立方体を構成 (カラー、UVは適当に設定)
  (*pcv++) = CUSTOMVERTEX( x, y, z, c, tu,tv );
  (*pcv++) = CUSTOMVERTEX( x, y+BLOCK_SIZE_Y, z, c, tu, tv );
  (*pcv++) = CUSTOMVERTEX( x+BLOCK_SIZE_X, y+BLOCK_SIZE_Y, z, c, tu, tv );
  (*pcv++) = CUSTOMVERTEX( x+BLOCK_SIZE_X, y, z, c, tu, tv );
                     :
                     :
  poly_counter += 1ブロックあたりのポリゴン数;
 }
}}}

DrawPrimitive( QUADLIST, poly_counter );

もしくは1ブロックごとにD3DTS_WORLDを更新してDrawPrimitive系()を複数回呼ぶ。
・・・俺はなにか勘違いしてるんだろうか
0383名前は開発中のものです。04/02/04 14:21ID:fWwu0COO
ソースを圧縮してアップローダーにでも上げてくれれば良いのに
0384名前は開発中のものです。04/02/04 22:39ID:uFnV7/G9
ああ・・・クラクラしてきた。
漏れダメかもしんない。
0385X04/02/05 14:10ID:6C1zUxy0
>ここまでやっちゃいけない事例のオンパレードなコードも珍しい。
どこか教えて戴けないでしょうか。
0386名前は開発中のものです。04/02/05 14:15ID:8EbK+SUS
>>385
switchの事だと思うけど。

あと、PrintBLOCK()の中身の一部を晒しつつ
トリップつけてみてよ
0387X04/02/05 14:40ID:6C1zUxy0
void PrintBLOCK(D3DXMATRIX *matTrans,D3DXMATRIX *matWorld,int MapZ,int MapY,int MapX,int H,int OF){
int HF,W,WF,O;
HF=H+2;W=H+2;WF=H+4;O=H+4;
if(MAP[MapZ][MapY][MapX][0]==1){H++;}
             ・
for( ;H<HF;H++){
D3DXMatrixTranslation(matTrans,MoveX[MapZ][MapY][MapX],MoveY[MapZ][MapY][MapX],MoveZ[MapZ][MapY][MapX]);
*matWorld = *matTrans;
lpD3DDEV->SetTransform(D3DTS_WORLD,matWorld);
lpD3DDEV->SetStreamSource(0,vb[H],0,sizeof(LVERTEX));
lpD3DDEV->DrawPrimitive(D3DPT_TRIANGLEFAN,0,2);
}
for( ;W<WF;W++){
D3DXMatrixTranslation(matTrans,MoveX[MapZ][MapY][MapX],MoveY[MapZ][MapY][MapX],MoveZ[MapZ][MapY][MapX]);
*matWorld = *matTrans;
lpD3DDEV->SetTransform(D3DTS_WORLD,matWorld);
lpD3DDEV->SetStreamSource(0,vb[W],0,sizeof(LVERTEX));
lpD3DDEV->DrawPrimitive(D3DPT_TRIANGLEFAN,0,2);
}
for( ;O<OF;O++){
D3DXMatrixTranslation(matTrans,MoveX[MapZ][MapY][MapX],MoveY[MapZ][MapY][MapX],MoveZ[MapZ][MapY][MapX]);
*matWorld = *matTrans;
lpD3DDEV->SetTransform(D3DTS_WORLD,matWorld);
lpD3DDEV->SetStreamSource(0,vb[O],0,sizeof(LVERTEX));
lpD3DDEV->DrawPrimitive(D3DPT_TRIANGLEFAN,0,2);
}
}
こんな感じです。LPDIRECT3DVERTEXBUFFER9 vb[]がグローバルでvb[1800]確保していてその変数の中に頂点データを格納してます。
379のfor文のZが少しおかしかったです。終了条件は30でした。
if文の・はその数値によって立方体のどの面を表示しないかを設定してます。
0388名前は開発中のものです。04/02/05 15:01ID:8EbK+SUS
なにゆえ頂点バッファが1800も?
1つじゃだめなの?
0389名前は開発中のものです。04/02/05 15:14ID:/vLOTadA
もはやつっこむ所が多すぎてつっこみきれん。
もうネタとしか思えない。
0390名前は開発中のものです。04/02/05 15:18ID:yFFdfEYa
ポリゴン2つ描画するのに、毎度DrawPrimitive使うのはかなり重いんじゃないか?
あと、もし毎フレームごとに頂点バッファ作っているようなら、
背景みたいに変形しないモデルなら、最初に全てのポリゴンを含んだ頂点バッファを
1つ作っておいて、それをDrawPrimitiveで描画したほうが手間がかからないよ。
0391名前は開発中のものです。04/02/05 15:53ID:8EbK+SUS
int flag = MAP[MapZ][MapY][MapX][0];
ブロック[0,0,0]の 常に描画する6ポリゴン
ブロック[0,0,0]の flag!=1の時だけ描画する6ポリゴン
ブロック[1,0,0]の 常に描画する6ポリゴン
ブロック[1,0,0]の flag!=1の時だけ描画する6ポリゴン
ブロック[2,0,0]の 常に描画する6ポリゴン
ブロック[2,0,0]の flag!=1の時だけ描画する6ポリゴン
            :

void DrawMain() {
  lpD3DDEV->SetStreamSource(0,vb,0,sizeof(LVERTEX));
  for(Z=0;Z<2;Z++){
  for(Y=0;Y<6;Y++){
  for(X=0;X<10;X++){
    PrintBLOCK(Z,Y,X);
  }}}
}
void PrintBLOCK( int MapZ, int MapY, int MapX ) {
  D3DXMATRIX matWorld;
  D3DXMatrixTranslation(&matWorld, MoveX[MapZ][MapY][MapX], MoveY[MapZ][MapY][MapX], MoveZ[MapZ][MapY][MapX]);
  lpD3DDEV->SetTransform(D3DTS_WORLD, &matWorld);

  int StartVertex = (((CAP_X * CAP_Y) * MapZ) + (CAP_X + MapY) + MapX) * 12;
  int PrimitiveCount = (MAP[MapZ][MapY][MapX][0]==1)? 6 : 12;
  lpD3DDEV->DrawPrimitive(D3DPT_TRIANGLEFAN, StartVertex, PrimitiveCount);
}
0392名前は開発中のものです。04/02/05 16:14ID:8EbK+SUS
ものすごい勢いで間違えてた・・・

× :
int StartVertex = (((CAP_X * CAP_Y) * MapZ) + (CAP_X + MapY) + MapX) * 12;
lpD3DDEV->DrawPrimitive(D3DPT_TRIANGLEFAN, StartVertex, PrimitiveCount);

○ :
#define TRIANGLE_NUM (12) // 1ブロックを構成するポリゴン数
#define VERTEX_NUM (3)   // 1トライアングルを構成する頂点数
int StartVertex = (((CAP_X * CAP_Y) * MapZ) + (CAP_X * MapY) + MapX) * TRIANGLE_NUM * VERTEX_NUM;
lpD3DDEV->DrawPrimitive(D3DPT_TRIANGLELIST, StartVertex, PrimitiveCount);
0393X04/02/06 09:41ID:0X7fE0LV
1800個用意してるのはブロックの大きさの違う頂点データを格納しているからです。
MAP情報(ブロックの大きさ、表示面FLG)をtxtから読み込んで表示させています。
1ブロック分の頂点データでMAP表示をしたところポリゴン数が多かったので
違う大きさのブロックを用意してポリゴン数を減らそうとしました。
0394X04/02/07 12:19ID:HQxh50cd
頂点バッファは最初に用意しています。
ポリゴン数は500強まで抑えれたのですが全然FPSがでません。
原因として考えられるものを見たのですがわかりません。
たとえばどんなことをすればFPSがでないのでしょうか。
どなたか教えていただけませんでしょうか。
0395名前は開発中のものです。04/02/07 12:23ID:CLQE2Fb+
>>394
だから500ぽっちのポリ数で処理オチなんてするわけないでしょ。
なんでわからんのかねチミ。
原因は別のところにあるのだよ。
0396名前は開発中のものです。04/02/07 12:31ID:cF8RWyca
劣悪な環境なのかもよw
0397名前は開発中のものです。04/02/07 12:36ID:o6RXyTtt
>>394 少しずつ処理を止めていって、どの処理が重いのか検討つけてみなよ。
その上で、
PCやグラボがショボイってことは無い?MSのサンプルはきちんと動く?HELで動かしてない?
初期化の段階で一度、定義取得すればいいような処理を、毎回やってない?
無駄にループ処理が多くない?ループの外に出せる処理をループ内でやってない?
0398名前は開発中のものです。04/02/07 16:09ID:VKCT6fFP
ソースをうpしてくれん事には
どうにも解決できない希ガス
0399X04/02/08 03:00ID:VlGbZ8et
皆さんができるだけレベルの高い人が多くの見れくれる場所はどこですか。
そういった事をしたことがなくて少しびびってます。
0400名前は開発中のものです。04/02/08 03:17ID:FsAxusDH
え?
0401名前は開発中のものです。04/02/08 03:18ID:X73WE+nW
コーディングも変だが日本語も変だな。
0402名前は開発中のものです。04/02/08 03:45ID:jR1jDgu/
翻訳サイトでも使ったのか?
0403名前は開発中のものです。04/02/08 04:30ID:UH78BtVm
貴様どこの星から来た!?
0404デフォルトの名無しさん04/02/08 07:38ID:EfTOxtBw
>>403
そりゃ遊星だろw
0405名前は開発中のものです。04/02/08 07:46ID:Bpmlhhr/
>>404
座布団一枚。
0406名前は開発中のものです。04/02/08 10:16ID:tWxjYBbl
>>399
もういちど言い直してみてくれ・・・ 
0407名前は開発中のものです。04/02/08 12:05ID:OMvVX0nS
さすがに>>399 は別人ネタレスじゃないか?まあX氏自身もネタに近いものがあるが・・・
はたして彼は、今までに出たアドバイスを試すことができたのだろうか?
0408X04/02/08 12:46ID:1SC30ugo
どうもXです。399はいちよX本人です。
日本語がおかしいのは実は1ヶ月ほど1日の睡眠時間が3時間程度の状態
が続いてるからです。それとネタ的なプログラムな事は3Dのプログラム
に関してまだ触って3ヶ月だからです。あと私の理解力のなさからです。
ビルボードに関しては試させて戴きました。まだカメラを移動させてそれに
大してビルボードされておりませんが。
0409名前は開発中のものです。04/02/08 13:59ID:Bpmlhhr/
釣りな気がしてきた
0410名前は開発中のものです。04/02/08 14:49ID:6M6RYNuz
釣りが気にしてきた。
0411名前は開発中のものです。04/02/08 15:47ID:P2w3BnL9
あそこまで遅くなるほうに最適化出来るということは

釣 り な 気 が し て き た
0412X04/02/08 18:32ID:nsvaA+4r
信じて戴けないかもしれませんがネタではありません。
あと数日である程度動く物にしなければいけません。
誠に自分勝手ではございますがもしよければメッセンジャーでアドバイスを戴けないでしょうか。
あと数日は寝ずにがんばっておりますので入って下されば絶対います。
当然メッセンジャーに入って気が向いてる時だけアドバイスして戴けるだけで結構です。
本当にご迷惑だとは思いますが10秒でも20秒でもアドバイスして戴きたい状態です。
もしアドバイスしてやってもいいと思われる方が居られましたらお願い致します。
0413名前は開発中のものです。04/02/08 18:53ID:2mWO52jY
いちお 紹介しておきます。

ゲーム製作技術@2ch掲示板避難所の アップローダ
ttp://gamdev.org/up/upload.php
0414名前は開発中のものです。04/02/08 20:18ID:Xhkqx59O
睡眠時間をけずらなければいけないほど
切羽詰った状況とは何だ?
答えなさい。話はそれからだ。
0415名前は開発中のものです。04/02/08 20:27ID:0s9yjcTA
>実は1ヶ月ほど1日の睡眠時間が3時間程度
であのレベルじゃあと数日じゃどうにもならんだろ。
いっそもう他人に頼んじゃったほうがいいんじゃない?
アドバイスでどうにかなるレベルじゃない。
0416X04/02/08 20:43ID:AyXCEV6t
実は数日後にある程度完成させた作品をソースごとネットで公開し、
オープンソース的な状態でどんどんそのゲームを進化させていきたいと
思っております。それまではソースを完全公開は避けたいので
メッセンジャーでアドバイスを戴ける方だけに渡したいと思っております。
正確には何日後かわかりませんが数日後にある程度完成した作品を
とある場所で公開するのでそれまでにという思いです。
0417名前は開発中のものです。04/02/08 21:02ID:0s9yjcTA
趣味でやってるの?
だとしたら数日後じゃなくてもいいじゃない。
全くダメなんでもっと修行したほうがいいよ。
あんなのオープンソースにしても意味がない。

それともやっぱりネタですか?
0418名前は開発中のものです。04/02/08 21:05ID:1IkWSScj
状況を正確に言いなさい!
学校の宿題なら手伝えないでしょ
0419名前は開発中のものです。04/02/08 21:08ID:OMvVX0nS
急がなくても、自分の気の済むように作りこんでから公開してもいいんじゃないの?
ここでゲームプログラム作っている人達は、他人のソースは参考にしても、それを
拡張してまでゲーム作ったりする人は少ないんじゃない?
最初から作ったほうが面白いし、俺イズムなコーディングできるから。
0420X04/02/08 21:44ID:AyXCEV6t
正確な状況を言います。
まず宿題ではありません。ゲームを作る宿題があると思われてるということは
そういった学校に通われてると思われてるみたいですね。
私は大学生で趣味でゲームを作っております。しかし今回の作品は私と知人2人の3人で作っているものでして
新しくHPを作って目玉としてオープンソース的なゲームプログラムを公開します。
公開日は今週の水曜日の18時です。メンバが各々違う処理を担当しており
最初最低限の仕様を決めてそこまで作り上げて公開ということです。
今まで公開日が伸びてしまい最終的な公開日が今週の水曜になっています。
私が最低限するべくレベルまで出来ていない状況なのでアドバイスを戴けたらと
思い書き込ませていただきました。
0421名前は開発中のものです。04/02/08 21:51ID:DCWz8J9a
宿題だったか…
0422名前は開発中のものです。04/02/08 21:52ID:OMvVX0nS
>>420 早めに他のメンバーに謝った方が良くないか?
コンピュータ関連の会社だったら修羅場になっちゃうけど。
  ↓
Flash「新世紀エヴァングラマー」
http://crybaby-sakura.hp.infoseek.co.jp/flash/eva.html
0423名前は開発中のものです。04/02/08 21:53ID:K5PzK6gp
HPのURLをキボンヌ
0424名前は開発中のものです。04/02/08 21:55ID:pUbFdPa3
プロの方々に質問させてください。

私のノートパソコンはDirect3D対応していないのですが
(お兄ちゃんから貰ったもので古いんです)
うっかりDirect3D対応のゲームを買ってしまいました。
あきらめるしかないのでしょうか?

Direct3Dの確認はdxdiagってやつで見ました。
Direct3Dアクセラレータ利用できません。
って書いていました。
デバイス名はTridentVideoAccelerator9525DVD 5.6070.26
ってあります。

お兄ちゃんはあきらめろって言ってたんですが
もったいないので助けてください!
0425名前は開発中のものです。04/02/08 21:57ID:K5PzK6gp
つーか完成品じゃない物を期日決めて公開しても
しょうがないと思うけど。
0426名前は開発中のものです。04/02/08 22:13ID:Bpmlhhr/
>>424
http://www.google.co.jp/search?num=50&lr=lang_ja&q=お兄ちゃんどいて!そいつ殺せない!
0427名前は開発中のものです。04/02/08 22:42ID:lI5pQUKp
>>424
ビデオカードが対応してないんだから
どうあがいても無理。
そんなことよりおじちゃんと遊ばない?
0428名前は開発中のものです。04/02/08 22:51ID:OMvVX0nS
>>424 またネタっぽい質問がきてるな

パソコン初心者版
http://pc2.2ch.net/pcqa/
そちらの質問スレで尋ねた方がいいんじゃない?ノートパソコンだと難しいと思うけど・・・
0429名前は開発中のものです。04/02/08 22:58ID:jR1jDgu/
いや、これは間違いなくネタだろ
0430名前は開発中のものです。04/02/09 00:11ID:h+IssnCf
お兄ちゃんといっても弟でしょ
0431名前は開発中のものです。04/02/09 13:42ID:DNtgH3z+
>X
大阪府の人?
0432X04/02/11 01:35ID:RvFWUtYj
なぜに大阪?
0433名前は開発中のものです。04/02/11 14:32ID:FwrI7GbY
>>424
ちょっとワラタ

俺も今度どこかで質問するときは妹のフリをしよう。
0434名前は開発中のものです。04/02/12 23:29ID:ZfdN/mCD
directxを簡単に扱えるライブラリって結構あるけどどれが最強よ?
0435デフォルトの名無しさん04/02/13 00:02ID:s0TZDiXw
>>434
D3DX
0436名前は開発中のものです。04/02/13 01:15ID:FlhNvr4y
自作
0437名前は開発中のものです。04/02/13 08:44ID:DZhOTV1Z
他人のソース読むのメンドウ。カスタマイズすると何処で影響出るか判らずブキミ。
なので、原理をパクって、ソースは自作。
0438名前は開発中のものです。04/02/13 09:12ID:SH5YdBQJ
仕事でライブラリ屋やってたから自作の利点は分かるけど、
気力的に続かなくなる。ゲーム作ることに気力を割いた方がいいよ。
0439名前は開発中のものです。04/02/18 13:34ID:p73oUtCq
ビルボードでの計算式を教えていただけませんか。
if( BillBoard.x<0.0f){
   rad = (float)acos(D3DXVec3Dot(&BillBoard, &sBillBoard)/(D3DXVec3Length(&sBillBoard)*D3DXVec3Length(&BillBoard)));
}else{
   rad = -(float)acos(D3DXVec3Dot(&BillBoard, &sBillBoard)/(D3DXVec3Length(&sBillBoard)*D3DXVec3Length(&BillBoard)));
}
D3DXMatrixRotationY(&mRotateY, rad);
}
これで平面におけるビルボードはできているのですが
カメラの位置がXYZどの方向に移動してもそちらへ向くための数式を
誰か教えていただけませんか。
0440名前は開発中のものです。04/02/18 16:09ID:0iEToC7t
平面が出来てるなら、もう1軸足すだけですね
0441名前は開発中のものです。04/02/18 17:12ID:6LPAs+mf
イチジク
0442名前は開発中のものです。04/02/18 18:27ID:4Zkw2dJi
ニンジン
>>336 >>351 >>354
0443匿名君04/02/20 01:07ID:63doXt8J
すいません、質問させて下さい。
こんな画像を
http://www.xxxx.nu/upload/upload.cgi?page=Download&dir=&sort=date&filename=flare.JPG

こんな風に
http://www.xxxx.nu/upload/upload.cgi?page=Download&dir=&sort=date&filename=ViwP.JPG

表示したいんですがやり方がわからないので助言していただけたらなと。
黒色のアルファを透明色にしたらいい?のかな?
出来れば、頂点シェーダーを使わないでやりたいのですができますでしょうか?
スプライトだけとかでできませんかね?
0444名前は開発中のものです。04/02/20 01:12ID:cjTWv5RL
>>443
ただの加算ブレンドだと思われ。
ここなんかいいと思われ
http://platz.jp/~moal/old.html
0445匿名君04/02/20 01:28ID:63doXt8J
>>444
ああ、そうだったのですね。(^^;
基礎知らなくてどうもすんません。
044644504/02/21 22:42ID:DrvAnV60
スプライトを使って簡単に加算合成ができました!
しかしながら、常に画面手前に表示されてしまいます。
SetVertexShader(FVF_LVERTEX) と SetTexture(0,Img); つかってやることは出来ないでしょうか?
スプライトで3Dの表現は難しいですか?
0447名前は開発中のものです。04/02/21 22:46ID:Dt5hTRW3
>>446
どうも何がやりたいのかがよく分からないんだが、、
エフェクトなら画面一番手前に表示されるのが普通じゃないのか?
044844504/02/21 22:49ID:DrvAnV60
あ、すいません、できました(汗
上げてすいません
044944504/02/21 22:51ID:DrvAnV60
>>447
3Dアクションゲームだったんで、そのキャラの手前にエフェクト表示とかしたかったんですよ。
0450名前は開発中のものです。04/02/27 21:28ID:CEfjX1WV
大学のHPに公開して、教授にオープンソースする


宿題・・・ですかね、期日も決まってるしなんか変
0451名前は開発中のものです。04/02/28 15:16ID:UeeMPs1b
シェーダについて質問があります。DirectXのBumpEarthサンプルのように、
ピクセル単位の凹凸と映り込みの表現を、シェーダとキューブマップを使って再現
したいのですが、バンプ等に使用するノーマルマップを参照してキューブマップを
ピクセル単位で貼り付けるなんてことは、シェーダで可能なんでしょうか?
0452名前は開発中のものです。04/03/01 05:59ID:/hzutH0D
グループで卒業論文にあたるプロジェクトをやってるとか。
0453名前は開発中のものです。04/03/06 09:36ID:SFWQB4Uj
モデルにスケール100倍をかけて描画したらライトの
影響を受けなくなりました。ライトの強さを100倍にしたら
普通に受けるようになりました。

なぜ?
0454名前は開発中のものです。04/03/06 11:07ID:gyOTZTVe
>>453 法線ベクトルを正規化しなかったからじゃない?
0455名前は開発中のものです。04/03/06 15:41ID:XiMT98gx
>>453
実はレンダリングステータスにこんなものがある

D3DRS_NORMALIZENORMALS

ためしにTRUEにしてみるよろ。
0456名前は開発中のものです。04/03/08 14:47ID:QnrLNmbR
>>453
スケーリング行列の場合はベクトルの長さは保たれません。(当たり前)
法線ベクトルを正規化して頂点ストリームに渡しても、変換したら長さが1以外になります。
455にもあるD3DRS_NORMALIZENORMALSを使って法線変換後に正規化させましょう。
0457名前は開発中のものです。04/03/21 15:36ID:LgK8+mJY
大変初歩的な質問ですが

D3DXCreateTextureFromFileAで取得したテクスチャの縦横ピクセルサイズは
どこで取得すればよろしいでしょうか?
(フォーマットがわかればなおよしA8R8G8B8<ビットフォーマット)

調べたのですが、納得がいく方法が見つかりません。

現状は横1ピクセルのデータ−を仮で読み込んで、ロックしそのピッチ幅を取得
それを基準にして、他の画像は横幅を割り算して取得しています。

目的は大きいテクスチャの一部分を、動的に他のテクスチャに複写し
ポリゴンに貼り付ける為です。


もっともゲームで使うなら最初からサイズは解っているので、
決め打ちでいいのですが、そこは突っ込まないでください^^




0458名前は開発中のものです。04/03/21 16:56ID:BxdkMd0d
>>457
テクスチャからサーフェースを、そのサーフェースからD3DSURFACE_DESCを。
ここにサイズやらフォーマットやらが書かれている。
045945704/03/21 17:58ID:LgK8+mJY
>>458 レス有難う。こちらも調べて幾つか解ったことがあったので自己れすします

D3DXCreateTextureFromFileAではなくD3DXCreateTextureFromFileEXの
ColorKey パラメーターの説明
透明となる値。カラーキーを無効にする場合は 0 を指定する。
ソース イメージのフォーマットとは関係なく、これは常に 32 ビットの ARGB
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
カラーである。アルファが有意であり、通常はカラーキーを不透明にする場合は
FF を指定する。したがって、不透明な黒の場合、値は &HFF000000 となる。

実験しましたら確かにこのフォーマットで作られていました。EXもAもたぶん同じ^^

更に質問
3Dモデルに結び付けられていない。1枚絵(ポリゴンに貼り付けるだけ)で使うテクスチャをどのように管理されていますか?

私は以下のように考えているのですが、他の方はどのような方法をとられてますか?

巨大なテクスチャファイル(いろんなパーツが入っている)
テクスチャ配列(クラス) それぞれのテクスチャクラスにサイズと位置を記憶
使用時*テクスチャ番号(引数) 

これによってテクスチャクラスは自分が必要な
データ−を巨大テクスチャより切り取り動的に切り替えることができる。

小さなパーツで構成される画面を作る時に適している。
テクスチャ間のコピーのときに任意の処理ができる(例:枠をつけたり)
テクスチャクラスに振る舞いを登録できるような設計にできる為、
使用する側はそのままの表示ロジックを維持しながら、データ−を供給するクラス側で
データを入れ替えることが可能。
(例えば時間に応じて変化するテクスチャなど)
0460名前は開発中のものです。04/03/22 01:06ID:tNFLCTBp
>>459
ttp://bbx.hp.infoseek.co.jp/cgi-bin/bbx.cgi?log=39&vew=30
0461初心者04/03/23 14:04ID:Jczyt83k
初歩的な質問で申し訳ないのですが
読み方はダイレクトサンディでよろしいのでしょうか?
0462名前は開発中のものです。04/03/23 21:23ID:Yrm+HBGz
>>461
違うよ サムディ 信じる心いつまでも おーーーーサムディ♪
0463名前は開発中のものです。04/03/23 22:42ID:5PwlM6K3
>>461
ダイレクトエッキスです
0464名前は開発中のものです。04/03/24 00:22ID:YZ3i2F6G
ディレクトセックス
0465名前は開発中のものです。04/03/24 08:33ID:jOSSC0EV
>>461
3Dを「サンディ」と呼ぶのは
出版業界から嫌われているサンディ○○ぐらいだろ
0466名前は開発中のものです。04/03/24 14:29ID:IJNb+c5r
>>465
任天堂が64のCMでサンディって言ってたじゃん。
任天堂が言うんだから、サンディが正しいに違いない。
0467名前は開発中のものです。04/03/25 00:09ID:kQT5/IqP
http://www.tosp.co.jp/i.asp?i=shogunsan

http://www.geocities.co.jp/AnimeComic-White/2682/

先生!サンディについて調べました
0468名前は開発中のものです。04/03/25 12:07ID:F7pYy+Ij
bio100%のサンディー恋塚
0469名前は開発中のものです。04/03/30 23:59ID:fcRSAwJm
皆、バーテックスバッファをどういう構成で使ってます?
MSのFAQを読む限りでは、なるべくSetStreamをしないほうがいいって書いて
あるんだけど、単一のVBに全てのメッシュ頂点を置くより、メッシュ単位で
VBを持たせて、各Meshを描画するたびにSetStreamでVBを切り替えたほうが
圧倒的に速かった。これはVRAM容量と頂点数に依存すると思われるけれども、
mesh毎にVBをもつ方法だとFVFをモデル単位で最適化できるし
利点の方が多そうなんだけど、実の所どうなんでしょうか?
もう一つは、FVF単位で複数のVBを持つというのもあるかと思いますが。

あと、SetStreamでVBを切り替えるたびに、System RAM→VRAM間の
データ転送が起きるんでしょうか?
0470名前は開発中のものです。04/03/31 03:36ID:wPHsbNEc
どのスレで聞いたらいいかよく分からんのでここで聞かせてもらいます。
3Dで雷みたいなエフェクトをビルボードでアニメーションさせて表示して
るんですがビルボード以外でなるだけ軽くて使えそうな方法って無いんでしょうか?
教えてください

0471名前は開発中のものです。04/03/31 07:08ID:uLEtiF6X
空の描画みたいな完全に2Dでいいモノなら、FVF_XYZRHW でスクリーン座標系で描く。
0472名前は開発中のものです。04/04/04 01:41ID:hMv86NdG
http://pc5.2ch.net/test/read.cgi/tech/1011762546/438
どうなんだろ
0473名前は開発中のものです。04/04/07 12:07ID:Z8uh3z3S
DirectX9を学ぼうと思ってるのですが、いきなりじゃ難しいでしょうか?
DirectX7とかを学んでからの方が良いでしょうか?
0474名前は開発中のものです。04/04/07 12:36ID:zQ7BBAvd
>>473
初めて学ぶのであれば、どちらも大差ない。
0475名前は開発中のものです。04/04/07 13:48ID:Z8uh3z3S
>>474
レスありがとうございます。
じゃあDirectX9をやってみようかな…

それと、やっぱDirectX9はサンプルで勉強するもんなんですか?
こんなスレがあるくらいですし→http://pc5.2ch.net/test/read.cgi/gamedev/1032657642/
今BasicHLSLってのを見てるんですが、結構難しく思えるんですが…
0476名前は開発中のものです。04/04/07 13:56ID:kANErwe5
>>475
悩む必要はなくDirectX9をやるのが当然です。
それより、いきなりシェーダーですか?
初学者は、たのむから固定パイプラインで基礎から勉強してください。
下手な解説読んだり本買うよりまずここ。
http://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/DirectX9_c/directx/intro/dx9intro.asp
0477名前は開発中のものです。04/04/07 14:12ID:Z8uh3z3S
>>476
レスありがとうございます
シェーダーとか良く分からないんですが、
Basicって書いてあるから一番簡単なのかなと思って見てみたんですが全然分からなかったです。
固定パイプラインとやらも良く分かりませんが、そこ読んで勉強してみます
047847604/04/07 18:44ID:kANErwe5
>>477
固定機能パイプラインに対して、プログラマブル・パイプライン。
これがバーテックス/ピクセル・シェーダー。
まぁ、今はわからんでよろしい。とにかくそれはfixed pipeline で
テクスチャー〜環境マップ〜バンプマップまで、自在に描けるように
なってからのアドバンスド・コース。先に進んでみればシェーダー自体は
なんにも難しい事はありません。


047947604/04/07 18:47ID:kANErwe5
おっと、ちなみにHLSLとは、
High Level Shader Language
そのBasicとは、単に「HLSLの基礎」という意味だと思われる。
このHigh Levelとは、元々のアセンブリ・シェーダー言語と相対的に、
高級(高抽象度)言語であるというだけの話。

0480名前は開発中のものです。04/04/07 20:00ID:Z8uh3z3S
>>476さん
いろいろありがとうございます。
覚える事が沢山あって大変そうですが頑張ります。
048147604/04/07 23:08ID:kANErwe5
どういたしまして。MFC同様、最初は圧倒されるけど、所詮凡人の作ったAPI。
こつこつとやっていけば、たいした事はありません。

それより、OpenGLという選択肢もありますが?
http://www.opengl.org
0482名前は開発中のものです。04/04/08 00:10ID:hciw5qmt
>>481
自分が調べた限りでは、OpenGLの方が使いやすかったりするっぽいですが、
将来性を考えるとDirectXの方が良いような気がします。

↑的違いだったらすいません。あまり調べてないので。
0483名前は開発中のものです。04/04/08 11:43ID:k7lLjW3m
隊長!DirectSoundでリスナーって二つ使えますでしょうか!?
なんか二つ作っても片方からしか聞こえません!!
0484名前は開発中のものです。04/04/08 11:55ID:VDhri/a/
リスナーは聞き手なので一つだけ。
0485名前は開発中のものです。04/05/27 17:33ID:dVPVJqfU
画面上にある矩形をマウスでドラックさせるのを作ってるけど
手計算で算出した矩形の射影座標を元に計算させる方法以外で
もっとスマートな方法あります?
同じ計算を描画ライブラリがやってるだろうからそれを利用できれば
2度手間にならないと思うんだけど。

開発環境 8..1 D3D VC6.0
0486名前は開発中のものです。04/06/01 16:35ID:0lkL1ujz
説明不足で何をしたいのかよく分からんが、最初から矩形をスクリーン座標で
描画したら駄目なのか?
0487 04/06/14 17:42ID:WFl8Z6je
Savage4でDirect3Dのメッシュやテクスチャが崩れるんですが、
これは放置してて大丈夫ですか?
0488名前は開発中のものです。04/06/14 21:24ID:DXSiFvmK
>>487は放置してて大丈夫です。
0489名前は開発中のものです。04/06/14 21:36ID:81gUeaEA
>>487
Savage4は欠陥品なので完全無視でALL OK。
0490名前は開発中のものです。04/06/15 21:10ID:SDa90yDU
皆さん、【dx90update_managed.exe】って使いましたか?
自分はMSDNのサイトから落として実行したのですが、以後、自作プログラムが
おかしくなりました。
以下が処理の順番です。
@.2Dスプライト(ウィンドウとか)の動きに頂点シェーダを使用したいので、
X,Y,Z,Color,U,Vのフォーマットで頂点バッファを作成
A.LockしてXYZには-1〜+1の値
UVには0〜テクスチャのWHを設定
B.制御用の行列をSetVertexShaderConstantする
C.SetVertexShader
SetStreamSource
DrawPrimitive
 を呼ぶ。

8.1で作ってますが【dx90update_managed.exe】を実行する前は1〜4で大丈夫でした。
ですが実行後は、AのUVを0〜1にしないと表示が上手くいきませんでした。
同じ経験した人っていますか?
0491名前は開発中のものです。04/06/15 21:13ID:eg0dM5JV
どうせ自分のバグだよ
0492名前は開発中のものです。04/06/15 22:11ID:vBX3lzB0
>>490
どうおかしくなるの?
どうなってほしいの?
肝心な情報がすっぽり抜けてるよw
あーむかつくw
0493名前は開発中のものです。04/06/16 00:56ID:WhwThShq
>>490
もう氏んでしまえよ
0494名前は開発中のものです。04/06/16 01:35ID:E0t6wJPT
Savage4は放置でいいと思う。
あのボード(というかドライバ?)は手におえない。
DirectX使ったプログラムを配布する人は、
Savage4の奇妙さを体験しておくべきだと思う。
0495名前は開発中のものです。04/06/16 02:31ID:nZ9pPWc1
どんなことになるの
スクリーンショットとか見せて
0496名前は開発中のものです。04/06/16 09:27ID:5xXMamqD
Savage4
・オーバーレイするとハングアップする。
・透過色ありサーフェースの描画が乱れる。
・Zバッファを正しく参照しないことがある。
・アルファブレンドで重ねるとZバッファに異常が出ることがある。
・32ビットカラーのみ機能制限がある。
・DirectX8以降で誤動作しやすい。
0497名前は開発中のものです。04/06/16 10:06ID:xKl8nzXy
回避方法とかあんの?
0498名前は開発中のものです。04/06/29 21:02ID:PqhpO3TI
>>497
新ビデオボードに入れ替える。
0499名前は開発中のものです。04/07/01 11:19ID:V3ULX8sG
>>497
回避方法はある。
さけぶんだ。大きな声で。「ぬるぽ!」って。
叫ぶ回数は1回だ。
2回以上叫ぶと効果がない。注意しろよ。
0500名前は開発中のものです。04/07/05 19:23ID:jDyf4pp5
ぬるぽ!
0501名前は開発中のものです。04/07/05 19:27ID:jDyf4pp5
>>499
なおったよ。
ありがとう。
0502名前は開発中のものです。04/07/07 20:58ID:ar3+CrBe
ぬるぽ!
0503名前は開発中のものです。04/07/07 20:59ID:ar3+CrBe
>>499
なおらないぞ。
(゚Д゚)ゴルァ
0504名前は開発中のものです。04/07/12 07:25ID:EBdetT+D
>>503
オマエは ! を全角で叫んだからダメなんだ。
半角で叫べ!
0505名前は開発中のものです。04/07/14 22:31ID:f/SdApvM
ぬるぽ!
0506名前は開発中のものです。04/07/15 21:30ID:qKmUe2h3
ぬるぽ
0507名前は開発中のものです。04/07/16 23:35ID:PaFB2ALi
ぬるぽ! ぬるぽ! ぬるぽ!
0508名前は開発中のものです。04/07/18 19:09ID:0ZPPFwpX
ぬるぽ
0509名前は開発中のものです。04/07/20 13:23ID:eC5Pqwrk
    ∧_∧ ◆        
   ( ´・ω・)/◆ ガッガッ!!!   
  c(,_u__つ   Σ( ゚∀゚) >>505>>506
        \■
        ■ ガッ!ガッ!
          Σ( ゚∀゚) >>507>>508
0510名前は開発中のものです。04/07/23 02:23ID:d/ONKr7r
大きいぬるぽと、小さいぬるぽ。
あなたは、どちr
0511名前は開発中のものです。04/07/24 19:32ID:P1GEgvZG
レスのない可哀想な>>510の為にage
0512名前は開発中のものです。04/07/25 20:37ID:umbpNFnG
レスのない可哀想な>>511の為にage
0513名前は開発中のものです。04/07/26 20:34ID:RTagjcW0
レスのない可哀想な>>512の為にage
0514名前は開発中のものです。04/07/27 05:33ID:+kiBCzN6
>>510
ガッ ガッ
0515名前は開発中のものです。04/07/28 12:48ID:XhHnaZC6
かわいそうだから>>510の尻の穴に ガッ
0516名前は開発中のものです。04/07/31 19:18ID:nGdeWbuw
レスのない可哀想な>>515の為にage
0517名前は開発中のものです。04/08/02 23:28ID:jHaMhjeT
レスのない可哀想な>>516の為にage
てか、>>516はageてないじゃん。
0518名前は開発中のものです。04/08/03 11:13ID:b+weJY54
かわいそうだから>>516-517の尻の穴に ぬるぽっ
0519名前は開発中のものです。04/08/13 12:39ID:YcFHAU6U
10日放置された可哀想な>>518の為にage
0520名前は開発中のものです。04/08/13 13:24ID:pUzAsloY
Direct3Dの次バージョンは、
大脳にインストールすると、透視できるようになるって本当れすか?
0521名前は開発中のものです。04/08/15 23:06ID:51XiLT/l
本当れす
0522名前は開発中のものです。04/08/16 12:13ID:LhW0fUrv
レスのつかない可哀想な>>521の為にage
0523名前は開発中のものです。04/08/16 17:26ID:QWeiiHXx
Direct3Dの次バージョンは、
相対性理論をサポートしたDirect4Dって聞いたんですけど本当れすか?
0524名前は開発中のものです。04/08/16 22:01ID:vEUP9K0U
あれ? 次バージョンは液体が使えるって聞いたぞ
0525名前は開発中のものです。04/08/16 23:37ID:o5d17tpP
レスがついた>>523の為に乾杯
052652304/08/17 13:00ID:6FDqNPYe
レスツイタ━━━━||Φ|(|゚|∀|゚|)|Φ||━━━━!!!!
0527名前は開発中のものです。04/08/17 19:01ID:4zoJaIbh
なんで閉じ込めてられてんねんキミ。
0528名前は開発中のものです。04/08/18 00:53ID:IssSuWG7
DirectX 9.0d には藤原紀香が付いてきます。どうぞお構いなく。
0529名前は開発中のものです。04/08/18 09:08ID:gKvCATyJ
福原愛ちゃんのママが付いてくるなら
考えてやってもいい。
0530名前は開発中のものです。04/08/20 11:02ID:6u/RzTHh
それじゃ、愛ちゃんをもらおうか。
0531名前は開発中のものです。04/08/22 15:51ID:6VMofEwm
しかたない。
パパをもらうとしよう。
0532名前は開発中のものです。04/08/24 00:01ID:pT7fUlXV
えーと。
私は、何をもらえるのでしょうか?
0533名前は開発中のものです。04/08/24 11:23ID:hdyd3kuK
藤原紀香のママだな。
0534名前は開発中のものです。04/08/27 23:57ID:IvjAjLag
わかりました。
では、いただきます。
0535名前は開発中のものです。04/08/28 20:11ID:ZmpOMqOF
先生!
ボクは誰をもらえますか?
0536名前は開発中のものです。04/08/29 16:48ID:ptS3VStC
パパイヤ鈴木のパパだな。
0537名前は開発中のものです。04/08/31 00:05ID:qnsJDKel
マジですか?
マジでパパイヤ鈴木のパパですか?
チェンジ出来ませんか?
0538名前は開発中のものです。04/08/31 22:08ID:BYxzdD4T
仕方ない、細木数子のママにしといてやる。
0539名前は開発中のものです。04/09/03 02:41ID:DX4480aG
俺はパパイヤ鈴木で我慢しよう。
0540名前は開発中のものです。04/09/03 21:55ID:WqdUNBwA
複数のモーションデータ付きXファイルをつくろうとして、
テキスト形式のXファイルの、モーションデータの部分を
メモ帳つかってコピーしてんだけど、これが結構メンドクサイ。
なんか楽に作る方法ってないですか?
0541名前は開発中のものです。04/09/03 22:03ID:EuFC3A0v
>>540
同じディレクトリにあって、ファイル名のある法則にしたがって
複数のXファイルのアニメーション部分だけコピーしてまとめるプログラムを組む。
とか
必ず、1つのモーションデータとして作ってもらうってのはどうよ?
つまりキーフレーム0〜29までは歩きモーション、30〜59まではジャンプモーション
って具合に作ってもらう。

とかいかがでしょうか?
0542名前は開発中のものです。04/09/04 14:55ID:dwmAir/c
>>541
ものすごいやっつけ作業で作ったMFCプログラムならあるけど
指定した4種までのアニメ付きXファイル(LWで出力したもの)のモーション
データの個所を、指定したXファイルの下にフレーム名を修正して追加すんの。
使えなくても泣かないならUPするよ?
054354104/09/04 22:07ID:TzAUQGCx
>>542
んなもん俺は自分で作れるよw

ところでなんで「4種まで」なんだ?
MFCの意味もようわからんし。
やっつけにしてもコンソールプログラムにしておいて、ファイルを放り込むだけでまとめてくれるとか
フォルダ以下のXファイルを(ファイル名の命名規則によって)一括変換してくれるとかの方が使い勝手いいだろ。
0544名前は開発中のものです。04/09/05 01:51ID:0s4Gjsu9
>>543
パパイヤ鈴木だな。
054554104/09/05 09:31ID:cl2xtHrW
>>544はニセモノ。

>>543
うぅ残念。アニメーションは50くらいあるんすよ。
できたらプロジェクトファイルで貰えませんか?
0546名前は開発中のものです。04/09/05 09:48ID:cl2xtHrW
>>542
それだと楽そうですが、今度は、読み込んだ1つの
アニメーションセットを、指定したフレームごと
分割して、トラックに格納しなおすプログラム作るのが
難しいような気がすんですが、簡単にできるなら
そっちのほうがいいかも?
0547名前は開発中のものです。04/09/06 23:48ID:DKw3vlDI
少し、疲れたようだ。
0548名前は開発中のものです。04/09/07 11:47ID:xqaU++aJ
そうだな。
オレも疲れたよ。
0549パトラッシュ04/09/07 18:25ID:aTZU5RUu
クゥ〜ン・・・(つーか俺が一番疲れたってーの)
055054304/09/07 20:21ID:HcdIOeum
>>544
「とまる」、「あるく」、「はしる」、「戦う」の4種のモーションしか扱わないし
チェックボックスの配列のやり方が、わかんないからなのさ〜!

>>546 あいよ。
http://gamdev.org/up/img/1196.zip
ぜひ、50種類のモーションを扱える、見た目が普通のWindowsアプリに
改造して再UPしてくれw (俺が使いたい)
0551名前は開発中のものです。04/09/08 12:27ID:ynCgLjJ8
>>550
>チェックボックスの配列のやり方が、わかんないからなのさ〜!
まさかたったこれだけの理由で4種類とか制限ついてんのか?

              逝ってこいw

チェックボックス付きのリストビュー使うとか頭働かないの?
055254304/09/09 18:50ID:e/m8MsLA
だからやっつけだとw
50もモーション使うとは格闘ゲームとかかいな?
0553名前は開発中のものです。04/09/11 18:13:04ID:nQge4N57
ぬるぽ
0554名前は開発中のものです。04/09/11 22:53:09ID:ZTwlJcxH
>553
してあげないよw
0555名前は開発中のものです。04/09/12 12:00:42ID:G8jzJ+9I
ところで3Dに弱いPCを持つユーザーのことを考えてD3Dのゲームを作る場合
動作環境はどれくらいと考えるといいのでしょうか?
私は最低ラインをPenV500MHz頃のスペックで準拠させようとしていますが
もう少し高めのほうがいいのでしょうか?
0556名前は開発中のものです。04/09/12 13:19:00ID:RtfDKybn
D3Dの場合、CPUスペックはほぼ考慮しなくて良い。する必要ない。
強いて言えばMMXが載ってるかどうかぐらい。
0557名前は開発中のものです。04/09/12 13:59:21ID:c7XvMXyS
>>555
ビデオ性能を考えれ。
ま、無印モバラデが最低ラインかな?
0558名前は開発中のものです。04/09/12 14:44:14ID:ubUEi8dv
CPUやグラボの最低ライン決めても、
どんどんオーバーしてくんだな。
0559名前は開発中のものです。04/09/12 14:56:06ID:qwuzmzUh
今なら自分の中の最低ラインはDX8VS有PS無かなぁ
0560名前は開発中のものです。04/09/12 18:03:02ID:vcu0slih
3ds max 6 で作ったシーンを .x に出力したいんだけど
出来ないんですかね?
SDKのExtraに入ってたエクスポーターは5.1まで対応で、
バイナリが入ってないし、max 6.0のSDKではコンパイル通らないし・・・

Tinyとかはmaxで作られてるらしいんでmaxで逝くのが
標準かと思ってたんだけど・・・
とりあえずLightwaveでやってるんだけど、複数アニメ
サポートしてないしOTL
0561名前は開発中のものです。04/09/12 18:48:14ID:yUax/xnE
>>560
ぱんだ
0562名前は開発中のものです。04/09/12 21:15:14ID:ubUEi8dv
>>560
がんがってXファイルを手動で編集しる
056355504/09/12 21:18:23ID:nn5iy7jY
説明不足でした
>最低ラインをPenV500MHz 頃 のスペック
というだけで別にCPUの性能ではなくその頃のビデオ性能くらいという意味です
0564名前は開発中のものです。04/09/12 23:54:58ID:QfYzN36Y
>>560
>>LightWave
モーションミキサーで妥協するしかなさそうな気がする。。。
一旦motファイルに書き出して、新しいシーンファイルで
結合された状態のデータを作るのね。
プログラム技術のないユーザーは最終的にレンダリング
するためのlwsを作るためのlwsファイルを作るのが定石。
0565名前は開発中のものです。04/09/13 00:15:31ID:IliKTilG
>>560
>561の通りで正解なんだが、わかりにくいような気がするので補足
Panda Exporterというフリーのプラグインがある。
ぐぐってみ。
0566名前は開発中のものです。04/09/13 01:54:26ID:UBPxg6MU
うおお
みなさんたくさんのレスありがとうございます!
Lightwaveで生きていくしかないかなぁと思いつつ、
それなりに面白味を見出してたところでした。

panda exporterですか。今までこれ系のスレでも
聞いた事無かったので知りませんでしたよ。
ちょっとこれからいろいろ調べてみます。
0567560,56604/09/13 03:17:47ID:UBPxg6MU
Panda Exporterテスツしてみたんですが、
アニメーションを、キーフレームのタイム関係無しに
一定時間ごとにサンプリングしてしまいますね。
(例えば、2フレーム毎にサンプリング)

これは避けられないですかね?(みたところ無理っぽい)
んー、これは凄く気持ち悪いんでLightwaveに帰るか・・・
LightwaveよりWindowsライクで使いやすかっただけに
残念。
強制サンプリング斬り!!
0568名前は開発中のものです。04/09/13 04:19:43ID:nsSeC4Qk
>>567
DirectXで動的にキー間の情報を補間するのは同じなんだから
予め補間されたキーフレームデータが存在してるだけでしょ?

もし、DirectXの補間方法がmaxの計算と方法が違っていた場合に
maxの方で補間したキーフレームデータがあった方が、より忠実に再生できるんじゃない?

自前で再生を実装してて、補間計算がmaxと同じならデータ量が増えてるだけだけどね。
0569567とか04/09/14 22:26:49ID:XxbZpl1O
Lightwave&エクスポーター使ってるんだけどダメだ。
プログラムでいろいろやってるんだけど、困る事が多い。
以下、漏れの(無知 || 勘違い)があったらスマソ

// エディタ
・レイヤーの入れ替えが出来ない(?)
・複数のアニメーションに対応してない(?)

// エクスポーター
・フレームの名前が決められない(せめてレイヤー名を含んでくれ)

・パーツのメッシュなんだが、
普通は
フレームの行列を設定 -> メッシュの描画
だと思うんだが、LWの場合
フレームの行列を設定 -> メッシュから原点へトランスフォーム
-> メッシュの中心点にトランスフォーム -> メッシュの描画
という感じ。

以上の事から(漏れ的に)使いものにならない事が判明。
以上グチスマソ。

自作かなぁ。自作するならモデリングは・・・とか考えつつ、
素敵なツールを探しに逝ってきます。

>>568
レスさんくす。
pandaはサイズが10倍くらいになりそうなんで厳しいですyo
0570名前は開発中のものです。04/09/14 22:35:41ID:QrQFla+K
>>569
おおむねあってると思うよ。(フレームの名前はどうだったかな?)
#複数のアニメーションに対応してないってのは工夫次第でなんとかなんじゃね?
俺もlightwave触ったことあるけど特殊だよね。
マジでこんな糞でいいのかよって思ったw
その様子だとスキニングもあるフォーマット探してるのかな?

そうするとMayaかSoftImageかMaxが残ってるけど。
SoftImage以外はエクスポーター(プラグイン?)みたいなのを自分で作る形になるよ。
だからファイル解析は意味がない。(とくにMayaはかなり特殊)

色々とモデリングソフトとファイルフォーマットを探したことがあるので
このスレで聞いてくれれば知ってる範囲で答えるよ。
0571名前は開発中のものです。04/09/14 22:58:53ID:XxbZpl1O
先程は取り乱してスマソ。
自作しようとかプラグイン作ろうと思ったが、それらが
存在&出現すれば意味が無くなるので思いとどまった。
効率悪いけどやりたい事はプログラムで対応、という事で
Lightwaveで逝こうと思います。
0572569,571とか04/09/14 23:24:18ID:XxbZpl1O
>>570
即&スバラスィレスサンクスです。

〜これまでのあらすじ〜
最初はサンプルでも使ってたMaxで逝きたかったんだけど、
Max6はオフィシャルなプラグインが存在しない。
でPandaを使ってみたら、強制的に一定期間のアニメを吐いて
しまう。
で、Lightwave7.5Exporterに戻って細々とやってたら、
フレーム構造が特殊で、プログラムでカスタマイズ再生しにくい。
〜以上

試しにMaya逝ってみようかな?(未体験)
ダメならBlenderかな?

関係ないけどBlenderって「どこの星の人が考えたインターフェイス?」
ってくらい特殊ですね。英語なのもちょっとネック。

>>570さんは何使ってます?
0573名前は開発中のものです。04/09/15 00:16:51ID:lPIRJ7EF
>>572
Blenderにはまってた時期があるのでレスさせてもらいます。
英語なのはあまりネックにならないっす。案外上手くデザインされてます。
そしてBlenderのIKは案外素直なのですすめたいが、しかしソフト全体が
不安定で再セットアップの手間が付きまとうかもしれないのでチョット。。。
本当の敵はフリーウェア独特のバグ放置です。
0574名前は開発中のものです。04/09/15 00:18:38ID:MG6VFVmK
>>572
>で、Lightwave7.5Exporterに戻って細々とやってたら、
>フレーム構造が特殊で、プログラムでカスタマイズ再生しにくい。

モデルの再生って理解してる?
MAX吐き出しのXfileとLightWave吐き出しのXfileで
フォーマットが違うとでも言いたいの?

じゃあ、D3DXのMesh系の関数は、内部でMAX系、LW系なんて条件分岐しとるのかね?
0575名前は開発中のものです。04/09/15 00:18:44ID:/4xq4x6N
>>572
>>>570さんは何使ってます?
会社じゃMayaかSoftImageだけど自分じゃ買えないね。
LightWaveも購入したところで自分でアニメーション作れるわけでも無いし
なんか馬鹿みたいだからやるの辞めちゃったw

MayaもMayaAPI触るの結構面倒だよ。
Blenderも資料少ないし、ファイルフォーマットも特殊じゃなかったかな?
(つか、たしか公開されてないから八方塞だった希ガス。ソース公開されてるって言われてもねぇw)
色々探したけど、結局諦めた覚えあるなぁ。
Blenderは時間の無駄な予感。資料少なすぎ。つか無いw

最終的には自分で作ったものネットで公開したかったんだけど
色々と資料少ないし、LightWaveとか買える人って明らかに少数だし、
メタセコイア+ミコトにすりゃよかったかなぁ〜って後悔してるw

ただ、個人でモデリングソフトを購入して何やらやる範囲で
スキニングやるならどうしたってLightWaveになるって結論は間違いじゃないと思う。
(公開されてる資料の量も含めて)
057657004/09/15 00:27:59ID:/4xq4x6N
>>573
あ、Blenderってそんな素直なんだ。
データってどうやってこっちにもってくるかわかりますか?
(私はこれがさっぱりでした)
よろしければご教授お願いします。

>>574
>>572ではないけど、レス。
たしか、フレームの中心がすべて真ん中になってたから、
そのままlwoのままじゃやり難いはず。少なくとも俺はなんもできんかった。
XFileに直して読み込んだことはないんだけど、多分、全てのフレームが中心になってるんじゃないかとw
階層構造って概念がlw自体にないっつか、かなり不便。
0577名前は開発中のものです。04/09/15 00:37:37ID:lPIRJ7EF
>>576
自分はほぼオペレートとデザインオンリーです。
コード読むセンスが無いんでさっぱりですわ。
Xファイルの書き出しはできるようですが、手元のビューアーで
表示に成功した事はなしです。FKもIKもバグは少ないんですが、
今でもコンストレインツ関係にわりと不良動作の素は潜んでます。
使い方を覚えても損は無いでしょうけど、すぐには役立たないかも。
プログラムがわかるなら、フォーマットの解析を、特にMikotoの
ファイルを解析した方が早いのでないかと考えてます。
0578名前は開発中のものです。04/09/15 00:43:17ID:MG6VFVmK
>>576
あのさ、lwoのままじゃ当り前じゃんよ…
それってローカルのまんまじゃん。

LightWave自体が、モデラとレイアウトに分かれていて
lwoファイルとlwsファイルあるんだから
lwsファイルを読み込むのが当然じゃん…

スキニングだろうが、階層構造だろうが
LightWaveにあるってーの…
0579名前は開発中のものです。04/09/15 00:45:04ID:/4xq4x6N
>>577
うー残念。
Blenderはそこがまさにネックでして、
ゲームにデータを持ってくる方法がさっぱりわからないんですよ。

私もBlenderに用意されているエクスポーターは色々見てみましたが
全く役に立ちませんw

ので、とりあえずBlenderは何か資料がないと対象からははずれてしまったりします。
(調べ方が足りないって言われればそうかもしれないんですけど)

レスありがとうございます。
0580名前は開発中のものです。04/09/15 00:54:58ID:MG6VFVmK
>Panda Exporterテスツしてみたんですが、
>アニメーションを、キーフレームのタイム関係無しに
>一定時間ごとにサンプリングしてしまいますね。

英語だがしっかり書かれてる事を
出来ないとか言ってる理解力がない方が大騒ぎしてるだけのような?
0581名前は開発中のものです。04/09/15 00:59:37ID:/4xq4x6N
>>578
あ、それはやってるうちに気づきましたよw
そっからまず理解しないといけないんですよね。

lwのモデラってずいぶん小さい単位の部品を作るものであって
組み立てるのはレイアウトの方なんですよね。
なんで、複数のlwoと1つのlwsで普通のモデリングソフトの吐き出すモデルファイルってイメージですよね。
つまり

複数のlwo+lws = 普通のモデルファイル

とかいう感じw
レイヤーってのはフレームじゃなくて、ただの作業しやすい用のレイヤー?(ってなにいってんの?俺)
多分、569の人もこれと同じ間違いをしたと思われw(私もしょっぱなやりましたw)
lwの体験版をもってないとこの構造に気づけないんですよねw
私は勘違いしたままプログラムを組んでしまってですねw
0582名前は開発中のものです。04/09/15 01:09:57ID:MG6VFVmK
>>581
lwoはレイヤー毎にobject保存が出来るんだよ。(PhotoShopのレイヤーみたいなもの)
で、lwsではlwoのレイヤーまで指定してobjectを読み込めるってだけ。

完全にフリーでD-STORMに散々情報が落ちてるんだからさ…
0583名前は開発中のものです。04/09/15 01:13:34ID:MG6VFVmK
因みに、LWのDXExporterのソースも公開されてるんだけど…
0584名前は開発中のものです。04/09/15 01:13:35ID:F9iKHnDp
Pandaの
The future...but don't know when
Export of just the defined animation keys instead of sampling.
を待つくらいなら、自分で作った方が早い。
IGameを使えば、簡単に抽出できるし。
その場合、結局独自フォーマットにした方が便利だから、
Xファイルなんか使わなくなってしまうと言う落ちがつくけど。
0585名前は開発中のものです。04/09/15 01:16:59ID:/4xq4x6N
>>582
まあ早い話、プログラム側でレイヤーは触らないほうが無難ってことですよね。

lwoは頂点やらテクスチャやら読み込んで「ほな、さいなら〜」って感じ。
lwoは必ずレイヤーを1つにまとめてもらう方向にしてもらうとかそんな感じがいいかも。
階層情報があるのはlwsの方。

ワンスキンのモデルだとレイヤー1つに人体まるまる入ってることが多いけど
果たして、この作り方がいいのか悪いのかは私にはわからないです。
0586名前は開発中のものです。04/09/15 01:22:03ID:MG6VFVmK
>>585
>まあ早い話、プログラム側でレイヤーは触らないほうが無難ってことですよね。
…自分に理解するのは無理ですって言えば?
全く問題ないと思うけど、lwoのレイヤー指定読み込み。
ちゃんとPNTSタグが分かれてるだろ?

>ワンスキンのモデルだとレイヤー1つに人体まるまる入ってることが多いけど
…あのさ、あんた何言ってるのワンスキンって意味わかる?



0587名前は開発中のものです。04/09/15 01:22:13ID:lPIRJ7EF
>>585
階層関係はPGの方で責任を持っていただきたい。
1ファイル1階層でやってもらえると助かるというもんです。
そりゃ頼まれればある程度の努力はしますが。
0588名前は開発中のものです。04/09/15 01:32:37ID:/4xq4x6N
>>586
>全く問題ないと思うけど
だから全く問題ないでしょう。

あ、ワンスキンじゃなくてスキニングのモデルでした。
失礼しました。
0589名前は開発中のものです。04/09/15 01:36:02ID:MG6VFVmK
>あ、ワンスキンじゃなくてスキニングのモデルでした。
なんと言えば良いのやら…

通常は、スキニングのモデルはワンスキンが前提だろ?
0590名前は開発中のものです。04/09/15 01:36:20ID:/4xq4x6N
>>587
lwoのレイヤーはゲーム側では無視です。
lwsの階層構造のみ反映されます。

簡単にいうとこんな感じでしょうか。
0591名前は開発中のものです。04/09/15 01:41:24ID:/4xq4x6N
>>589
>通常は、スキニングのモデルはワンスキンが前提だろ?
いえ、lwoの時点でわかれていたとしても、
lwsのときにスキニングになっていればいいような気がするんですよね。
あれだけポツポツわける作り方を強いるツールなのに、
人体まるまるってところが不自然な気がします。
0592名前は開発中のものです。04/09/15 01:42:49ID:MG6VFVmK
>>590
君は頓珍漢な事を堂々と言ってるね…
一つのlwoに6つのobjectが保存されてて、
lwsの階層読み込みの指定がレイヤー指定の同じlwoだと
無理って事か?

それともLWのレイヤーと階層構造がごっちゃになってるのか?
0593名前は開発中のものです。04/09/15 01:45:53ID:MG6VFVmK
>>4xq4x6N
>いえ、lwoの時点でわかれていたとしても、
>lwsのときにスキニングになっていればいいような気がするんですよね。
>あれだけポツポツわける作り方を強いるツールなのに、
>人体まるまるってところが不自然な気がします。

おまえ、ボーンによるスキニングの再生プログラム組んだ事ないだろ?
不自然な気?気?
なんだよ、気って…
理論的に考えれば、なぜワンスキンと言う名称か判るだろ…
0594名前は開発中のものです。04/09/15 01:46:07ID:/4xq4x6N
>>592
いえ、lwoを読み込むときにレイヤーは無視しちゃった方が楽ですね。って話です。
0595名前は開発中のものです。04/09/15 01:49:02ID:/4xq4x6N
>>593

フレームがわかれていてもスキニングはできますよね?
0596名前は開発中のものです。04/09/15 01:51:26ID:MG6VFVmK
>>594
だから、それをアホな考えだっていってるの。
lwsでは、lwoのレイヤー3を読み込めとか
そう言う指示のされかたなの。
無視したら読み込めないだろ。
0597名前は開発中のものです。04/09/15 01:53:29ID:/4xq4x6N
>>596
ですから、意図的にlwoのレイヤーの1番にモデルをすべてまとめてもらうように
デザイナに頼んでおいた方が楽じゃ無いですか。
って話ですよ。
0598名前は開発中のものです。04/09/15 01:57:42ID:MG6VFVmK
>>595
勿論、やろうと思えば出来る。
しかし、その意味する処理内容を
数々の発言から君が理解出来てるとも思えないね。
0599名前は開発中のものです。04/09/15 01:59:13ID:MG6VFVmK
>>597
だから、何度も言わせるな。
それを、腕が無い、アホ、だって言ってるの。
0600名前は開発中のものです。04/09/15 02:01:54ID:/4xq4x6N
>>599
でも、結局、レイヤーはゲームには反映されないですし。
この構造で分けておくことに意味はないですよね。
0601名前は開発中のものです。04/09/15 02:03:27ID:MG6VFVmK
>>4xq4x6N
おまさ、コンパイラプログラムが分割コンパイルを許さず、
ソースは一つのファイルにまとめておけって仕様だったら、クソとか思わない?
0602名前は開発中のものです。04/09/15 02:05:56ID:lPIRJ7EF
>>600
限定されたシチュエーションでの話ですが、LightWaveではレイヤー分けって
作業は時にローポリモデルの間接を曲げる時に必要な概念なんですよ。

つうかモーションはデザイナーに丸投げで良いじゃないですか。
PGサイドではlwsを使う事に注目してしまっていい気はします。
0603名前は開発中のものです。04/09/15 02:06:47ID:MG6VFVmK
>>600
無能全開のお言葉だなww
レイヤーとは保存の形式であって、構造ではないだろ。
親子構造でアニメーションするモデルは
構造数分のlwoで保存ってか?
アホ言ってるなよ。
ロボ系とか、軽く1000近くなるぞ?
0604名前は開発中のものです。04/09/15 02:08:44ID:/4xq4x6N
>>601
それよか、1つのモデルに対しlwoとlwsと複数のファイルがちらばるので
その中身をデザイナさんが管理できているのかっていう方が心配です。
いっそ、レイヤーは切ってしまった方がすっきりすると思っています。
1つのヘッダファイルに複数のクラスが定義してあるのって嫌ですよね?
0605名前は開発中のものです。04/09/15 02:11:04ID:jCoUsS9N
  _________           ___
  |           |        (___)
  |   巻きで!  |            ‖
  |_______,|  _.∧∧ ┐ .‖ ∧,,∧    ∧∧
     ∩ ∧ ∧∩     ○)(゚Д゚ ) ] ‖((゚Д゚(Ο  (゚ー゚*)
      \(゚Д゚ )ノ       ̄⊂ |┘ ⊂ミ  Uミ φ|  ∪
        |  \.         |  |   ‖ ミ  ミ     l  )〜
       (__ノ       U U      U U    U"U
0606名前は開発中のものです。04/09/15 02:13:02ID:MG6VFVmK
>>604
逆だよ、親子構造のモデルを管理するのに
レイヤー分けで一つのlwoにした方が楽だろ。

何度も言うが、お前は"思ってる"とか"気がする"とか凄いな…
0607名前は開発中のものです。04/09/15 02:14:22ID:/4xq4x6N
>>603
>親子構造でアニメーションするモデル
なるほど。
それはやりにくいです。
0608名前は開発中のものです。04/09/15 02:14:45ID:MG6VFVmK
>1つのヘッダファイルに複数のクラスが定義してあるのって嫌ですよね?
まさに、お前の言う、一つのレイヤーにまとめるってのと同義だろ。
自分で、自分の考えを否定してりゃ世話ないわな。
0609名前は開発中のものです。04/09/15 02:15:01ID:lPIRJ7EF
>>606
>>親子構造のモデルを管理するのに
>>レイヤー分けで一つのlwoにした方が楽だろ。
すまん。それもしんどいかと思うんすw
0610名前は開発中のものです。04/09/15 02:17:16ID:/4xq4x6N
>>606
>逆だよ、親子構造のモデルを管理するのに
>レイヤー分けで一つのlwoにした方が楽だろ。
なるほど。
確かにその通りです。
lwoをメッシュ(?)格納庫と見て、lwsで構造を組み立てるって感じですかね?
0611名前は開発中のものです。04/09/15 02:18:43ID:/4xq4x6N
>>609
え?駄目なんすか?
実は、これだなって思ったんですけどw
0612名前は開発中のものです。04/09/15 02:20:27ID:lPIRJ7EF
>>611
制作者本人なら階層関係は全部頭の中に入ってるとも思います。
でも他人を巻き込んだときに破綻する気がしたんですよ。
0613名前は開発中のものです。04/09/15 02:21:41ID:MG6VFVmK
>>611
はぁ、お前は全く理解出来てない。
要は、LWが許している挙動をお前のプログラムが対応してればいいだけ。
決め内で、こう動くプログラムとか言ってるなって事だ。

まぁ、仕事でスピード最重視のコーディングなら許されるかも知れんが。
0614名前は開発中のものです。04/09/15 02:24:43ID:C8YNRxVr
そのまま再生させるだけなら問題無いんですよ。

例えば、人体モデルで、拳のパーツの部分、

拳のフレーム(拳空間にトランスフォーム)
 |ー拳のメッシュ(拳のローカル座標系のメッシュ)

になってて欲しいトコロを、LW7.5の場合、

拳のフレーム(拳空間にトランスフォーム)
 |ー拳のメッシュのフレーム(原点にトランスフォーム)
   |_拳のメッシュ(ワールド座標系のメッシュ)

になってしまってるんですよ。
もしかしてこれって普通?Maxでもそうなるのかな?
0615名前は開発中のものです。04/09/15 02:28:43ID:lPIRJ7EF
>>611
>>610のレスは完全には間違っていません。
階層の記録を数段階に分けて考えてみて欲しいのです。
0616名前は開発中のものです。04/09/15 02:29:08ID:MG6VFVmK
>>614
全然言ってる事が理解出来ないが、
確実に言える事が二つ。
一つ、Xfileのフォーマットは決まってるぞ。
一つ、Xfileのフォーマットを理解出来てないか、アニメーションプログラムを理解してない。
0617名前は開発中のものです。04/09/15 02:38:34ID:lPIRJ7EF
管理が困難なファイルは個人製作でしか通用しないし、
それをいつまでも運用できる人ってなかなかいないと思うのです。
フィールドや敵、障害物、主人公キャラなどの1つの
キャラが最低限の分割単位になるんじゃ無いでしょうか?
他人を巻き込むにしても、1人で作っていくにしてもです。
人間て倫理だけでなく観念でも世界を規定していくでしょ?
lwoファイルごときにそれを記録する能力はないと思います。
やっぱりlwsファイルです。新しいlwsファイルや他のシーンを
組むためのlwsファイルを作成するべきなんだと思います。

すんません。意味不明かも。。。
0618名前は開発中のものです。04/09/15 02:39:23ID:/4xq4x6N
>>614
俺がいってたのと全然ちがうことで悩んでたんだ。
すまんかった。

>lPIRJ7EF
>MG6VFVmK
お二方、お付き合い頂きありがとうございました。
lwのフォーマットについてずいぶん勉強できました。
ありがとうございました。
0619名前は開発中のものです。04/09/15 02:39:51ID:MG6VFVmK
拳のフレーム(拳空間にトランスフォーム)
 |ー拳のメッシュのフレーム(原点にトランスフォーム)
   |_拳のメッシュ(ワールド座標系のメッシュ)

あのさ、これが階層構造なら
拳のフレーム(拳空間にトランスフォーム)以下のツリーは
拳空間とやらになってるだろ。
0620名前は開発中のものです。04/09/15 02:46:25ID:lPIRJ7EF
>>618
お疲れ様です。あと変な観念振り回し引っ掻き回してすまんかった・・・
あまり解説できてない気もしますが解説能力もないしw
機会あれば今度は協力させてもらいたいと思います。
062161404/09/15 03:37:56ID:C8YNRxVr
>>619
LWの吐き出すそのデータも正解なんですよ。
ただ、例えばその拳だけスケーリングするとか、そういった場合、
その構造だと面倒なんですよ。

関係無いけどメタセコ+ミコトを除いてきた。
ミコト、X吐けないじゃんOTL
ミコト公式からのXコンバータのリンク染んでるし・・・
(ミコトのXコンバータってありますか?)
メタセコ弄ってたら「DOGA」のコマンドがあった。
で、DOGAを覗いてみたyo。
形状のインポートが貧弱じゃん・・・OTL
次はMilkshapeとBlenderを覗いてみようと思います。
0622名前は開発中のものです。04/09/15 04:00:02ID:MG6VFVmK
>>621
>LWの吐き出すそのデータも
"も"ってなんだよ?
LWのデータはXfileのフォーマットでキチンと吐き出されるっつーの。
お前の望むフォーマットじゃないからって騒いでた訳だ。

はっきり言うと、
お前の処理だとXfileの仕様では、
プログラムの腕が無くて対応できませんって意味だろ。

普通は親の行列を子に渡して行くように処理にするだろ。
お前の言ってる処理は、階層構造無視で単体で処理したいって事か?

指定のフレーム名だけスケールとか余裕で出来るだろ?

自分の腕の無さを披露されてもな…
0623名前は開発中のものです。04/09/15 04:10:23ID:MG6VFVmK
>拳のフレーム(拳空間にトランスフォーム)
> |ー拳のメッシュ(拳のローカル座標系のメッシュ)

ああ、これの意味する所が分ったような…

普通は"拳空間にトランスフォーム"とやらの下層フレームでは
そのトランスフォーム行列を渡して処理するのを
いきなり
"拳のローカル座標系のメッシュ"とか言ってるのは
親の行列を渡して無いんだろう。

ボーンのスキニングはおろか、親子構造のアニメーションだって
理解出来てないんじゃない?
0624名前は開発中のものです。04/09/15 04:17:40ID:MG6VFVmK
>拳のフレーム(拳空間にトランスフォーム)
> |ー拳のメッシュのフレーム(原点にトランスフォーム)
>   |_拳のメッシュ(ワールド座標系のメッシュ)

因みにこれは、
"拳空間にトランスフォーム"する行列を下層のフレームに渡して
"原点にトランスフォーム"、これが激しく意味が分らんが、
おそらく単位行列だろう(大体のXfilからしての推測)
だから何も変わらず、
"ワールド座標系のメッシュ"に"拳空間にトランスフォーム"する行列をかけるから
ローカルの座標が求まるんだろ。

つーか
>拳のフレーム(拳空間にトランスフォーム)
> |ー拳のメッシュ(拳のローカル座標系のメッシュ)
って、階層構造無視の要求なのが良く分った…

"拳のローカル座標系のメッシュ"に"拳空間にトランスフォーム"する行列をかけたら
メチャクチャじゃん。
0625名前は開発中のものです。04/09/16 12:23:13ID:6f4/79r8
LWで困ったときの↓
0626名前は開発中のものです。04/09/16 14:47:30ID:0CRYeTdh

 「_ ̄フ  ノ^ー┐ ///////////ノ/
 ,-、二、 ーク /  7_/////////^
 `ー‐‐'  `ー'     ///////し
   _l^l_  i^i i^i   ///////
  / ,--┘ U ノ |  //////^
  !__ニコ  lニ.ノ    7///    _,,.. . __
 __l^l__へ  i^i i^i  //^    .. _  `ヽ
 ゙┐r┐T゙ ∪ ノ |  |/     /::/.┬".)   l
  く,ノr'_,ノ  lニ.ノ   7    _iゞ/イ。_ノ    _r'''、
   |    ,へ ,ヘ /    / ニ-''^\¨   ∠.} l
   |    `゙ / / |.   |l、ヾ⌒-|  u  r_ノノ "
   |    ヾ二ノ  |    ヽ |`´_,--|  i、ニイ
   |    /,ニ^\. |     \l<-ニフ ,ノ ,. \、'
  | | | |  | しリj |  \    \ ̄ ,/ノ/ , | Z
  ゚ ゚ ゚ ゚  `ー" ー'  〔      / ̄/ '", /// ,.
0627名前は開発中のものです。04/09/17 21:52:41ID:YVERs7ZW
DirectXのAnimationController久しぶりに弄ってるんだけど、
Timeの直接入力が出来なくなっちまってる。
フレームを直接指定は無理ですかね?やっぱ複数アニメーション必須?
062862704/09/17 22:59:23ID:YVERs7ZW
自己解決しました。
0629名前は開発中のものです。04/09/19 16:54:10ID:+GZ6cXzY
DirectXの本でわかりやすいやつってある?
0630名前は開発中のものです。04/09/19 21:55:04ID:FV999S92
最近見た中で、分かりやすさ・分量・値段のバランスが一番取れていたと思ったのはこれ。

ttp://www.amazon.co.jp/exec/obidos/ASIN/1584502630
0631名前は開発中のものです。04/09/19 22:57:24ID:YtUHKYG1
いったい何をするのかすら説明されていない状況で、
分かりやすい本など答えようがない。
質問するのに最低限の情報を出さない馬鹿がいれば、
その最低限のことすら考えずに答える馬鹿もいる。
0632名前は開発中のものです。04/09/20 00:39:10ID:xe2YuZIw
>>631
おや、こんなところに天才がいるw
0633名前は開発中のものです。04/09/20 01:51:30ID:cP268W0V
今からこのスレは、>>631を神と讃える書き込み以外を禁止します。
0634名前は開発中のものです。04/09/20 01:52:22ID:fTRdbYpQ
ハハハ、、はぁ。洋書じゃん。みんな頭いいのな
0635名前は開発中のものです。04/09/20 05:21:15ID:G4JeccNs
>634
DirectXのリファレンスと公式のサイトのコラムが最強、と言いたいとこだが、
出版物では大川善邦という人の本が親切でわかりやすい。

あと煽りが約1匹常駐してるようだけど、頼むからスルー汁!
0636名前は開発中のものです。04/09/20 05:39:49ID:msLlkYGT
>>635
彼の本は、分かりやすくはない上に
内容の偏りがとても大きい物が多いように思う。
初心者にははっきり言ってお勧めできない。

某DX9本の第一章では、DXの歴史について
彼の偏見が満ち溢れた攻撃的な文章で書かれているので、
興味あれば読んでみるといい。
0637名前は開発中のものです。04/09/20 10:20:09ID:1CCtnaAj
>>631
お前、そんなの初心者にわかるわけないって気づかないもんかな。

質問するのに最低限の情報なんてわかる奴が質問なんかするかよ馬鹿。
だいたいてめぇがそんなに完璧だっていうのなら、模範解答ぐらい見せてみろよ。

はじめは「DirectXの本でいい本ないですか?」って質問して
「こんなのどお?」とか「どんな本がほしいの?」とか食いついてきてくれてから
詳細を出しても遅くねぇだろ?
いきなり>>631みたいなレスを刻むことになんの意味があるの?
興味なけりゃ失せろよ。お前がどんなに実力あろうが、読み手にとって必要ねぇだろお前のレスは。
0638名前は開発中のものです。04/09/20 11:33:56ID:gh8dBUSj
そして質問の仕方も知らない馬鹿に、洋書を紹介する大馬鹿、
さらにそれを煽る馬鹿に、それを馬鹿という馬鹿、
ここは馬と鹿でいっぱいです。
0639名前は開発中のものです。04/09/20 13:24:34ID:NBNTfQYF
はい、馬鹿のトップがいらっしゃいましたよ
0640名前は開発中のものです。04/09/20 13:32:20ID:eotHNQaN
しかしだれも目的を聞かずに、好き勝手に回答しているわけだけど、
なんだかプログラマの独善性というか、独りよがりの様が垣間見えてステキ。
0641名前は開発中のものです。04/09/20 13:56:37ID:0wAQaBPW
推薦図書/必読書のためのスレッドinゲ製作技術
http://gamdev.org/w/?%5B%5B%BF%E4%C1%A6%BF%DE%BD%F1%2F%C9%AC%C6%C9%BD%F1%A4%CE%A4%BF%A4%E1%A4%CE%A5%B9%A5%EC%A5%C3%A5%C9in%A5%B2%C0%BD%BA%EE%B5%BB%BD%D1%5D%5D

推薦図書/必読書のためのスレッド in ゲ製作技術
http://pc5.2ch.net/test/read.cgi/gamedev/1086023829/
064263504/09/21 01:39:06ID:OVi+J62+
>>634
すいません。私は質問者ではないです。
0643名前は開発中のものです。04/09/21 01:54:13ID:DEwwUhjo
 \もうね、アボカド/   \ 馬 /     \ 鹿 かと/
                            ∩   ∩
                            | つ  ⊂|
                   ∧ノ~        ! ,'っ _c,!
      ヽ           ミ| ・  \     ⊂/  ・  \
     γ⌒^ヽ        ミ|  ... '_)     | __,,▼
     /:::::::::::::ヽ.       ミ|. (,,゚Д゚)        |・ (,,゚Д゚)
     /.::::::::(,,゚Д゚)         | (ノ  |)      | (ノ  |)
    i:::::(ノDole|)         |   馬 |         |・・ .鹿 |
     ゙、::::::::::::ノ         人.._,,,ノ      ι.・,,_,ノ
      U"U           U"U         U"U
0644名前は開発中のものです。04/09/22 21:35:17ID:RNRnDlpa
オマエら、ガンダムは好きか?
0645名前は開発中のものです。04/09/22 21:47:21ID:clrj2MuY
592 名前:デフォルトの名無しさん 投稿日:04/09/21 12:08:43
アッガイなら好きだ。


593 名前:デフォルトの名無しさん 投稿日:04/09/21 17:39:48
加護より辻だろ


594 名前:デフォルトの名無しさん 本日のレス 投稿日:04/09/22 21:11:23
アッガイは低壁として有効だ。
0646名前は開発中のものです。04/09/24 01:44:46ID:NKyPyH0l
オマエら、ガンダムは好きか?
0647名前は開発中のものです。04/09/24 15:15:18ID:mWFHuK90
彼女とSEXするほうが好き
0648名前は開発中のものです。04/10/01 13:51:47ID:JKX9QAEf
オマエら、ガンダムは好きか?
0649名前は開発中のものです。04/10/01 15:10:42ID:YdevfgFc
彼女とSEXするほうが好き
0650名前は開発中のものです。04/10/01 19:19:59ID:AF2jiSUQ
>648
ガンダム世代ではないのでガンダムは別に好きではありませんが…
0651名前は開発中のものです。04/10/01 22:53:43ID:7XNH8LNX
ガンダム世代だけどガンダムは嫌い
0652名前は開発中のものです。04/10/02 01:13:07ID:0gHT3zrZ
生理的に?トラウマ?
0653名前は開発中のものです。04/10/06 00:43:20ID:t+yC/4+H
ガンダム見てたら、激しい生理痛にみまわれたんだな。きっと。
0654名前は開発中のものです。04/10/06 22:04:27ID:HUuynDZW
整理通以前に、見てない。
トラウマでもなんでもなく、興味ないから。
0655名前は開発中のものです。04/10/08 13:21:55ID:c6wEv35N
オマエら、654は好きか?
0656名前は開発中のものです。04/10/08 22:57:25ID:8tYEJEJR
等差数列フェチの俺としては、大好きだな。
0657名前は開発中のものです。04/10/10 02:38:12ID:jxgGsTI5
オマエら、October2004は好きか?
0658名前は開発中のものです。04/10/10 02:40:18ID:Ecqm84vI
Direct3Dで、手前にある3Dオブジェクトが、なんか歪んでいる。
上下左右に伸びてる。
これって、治る?
0659名前は開発中のものです。04/10/10 09:00:28ID:yPgf9JPV
視野角を狭く…でいいような
0660名前は開発中のものです。04/10/10 11:12:34ID:4j8VItD6
>>658 何人だよ
0661名前は開発中のものです。04/10/10 20:01:57ID:+lHJGuNa
3人と見た
0662名前は開発中のものです。04/10/11 16:49:16ID:e+nbPJpi
バックバッファサーフェスに書き込んだ画像を
テクスチャとして使うことってできんの?
モーションブラー用に、自前で別サーフェスを
用意してんだけど、できるんだったら、用意する
サーフェスを1つ減らせてラッキー。
0663名前は開発中のものです。04/10/11 17:26:28ID:1ZelzsvN
>サーフェスを1つ減らせてラッキー。

そう。よかったね。もう二度と来ないでちょうだい。
0664名前は開発中のものです。04/10/11 18:00:38ID:e+nbPJpi
ゲッ!テクスチャへのレンダリングすらできない
>>663のような奴に煽られちまった!
0665名前は開発中のものです。04/10/11 18:30:01ID:YSzu4yPY
>>662
できるよ
0666名前は開発中のものです。04/10/11 20:04:23ID:jqTCTr00
バックバッファのサーフェス上の画像を直接得る方法は、恐らく次の二つしかない。
Device.GetRederTargetData
Device.GetFrontBufferData
これらはターゲットのサーフェスへの参照を得るメソッドではなく、
サーフェスの内容を指定したサーフェスにコピーするものだ。
デバイス作成時にFSAAの設定をした場合は、AA済みの画像が手に入る。
当然パフォーマンスは良くないから、モーションブラー用に使うには向いていない。

悪かったね。君の今のやり方で我慢してちょうだい。
066766204/10/12 20:22:26ID:s2vByoDJ
>>665-666
サンクスクスクコ
GetRenderTargetDataでどんくらい速度でるか試してみる。
0668名前は開発中のものです。04/10/12 21:53:28ID:qSbzxOXV
そこで頭のいい奴は、バックバッファをテクスチャにするのではなく
テクスチャをバックバッファの代わりにすると考えるもんだ。
常にシーンをテクスチャに描画して、本物のバックバッファには
テクスチャを描画するだけ。
しかし、この手法には数々の問題点が…(来週につづく)
0669名前は開発中のものです。04/10/13 01:00:45ID:gcf5eUxD
>>668
別に頭なんて良くなくても、原理を分かってれば誰だって出来るだろう。
それ以前にお前が言ってることは>>662と何も変わってない。

来週に続いたところで、そんなもん読むくらいなら火曜の夜はぷっすま見るほうがまし。
0670名前は開発中のものです。04/10/13 06:07:05ID:fyUkMMUH
>>669
バカかお前は。銭金に決まってるだろ。
0671名前は開発中のものです。04/10/13 06:46:46ID:aNunOKNy
銭金は今やってないだろ…
来月から再開でしょ。
0672名前は開発中のものです。04/10/14 23:46:31ID:oEBIW2wn
お前ら、ぬるぽは好きガッ?
0673名前は開発中のものです。04/10/18 02:02:32ID:g5wSND4n
ぬるぽは好きだガッ、何か?
0674名前は開発中のものです。04/10/18 16:40:41ID:VGfCVvCx
DirectX9で質問です。
サーフェス全体を、RGBは変化させず、α成分のみ0で
塗りつぶしたいのですが、何か上手い方法って無いでしょうか?
現在は、もう1つサーフェスを用意して、画面をクリアして、
そこに元画像をコピーしてます。
0675名前は開発中のものです。04/10/18 18:06:14ID:KdUfN5eY
D3DRS_COLORWRITEENABLE
067667404/10/18 20:00:44ID:VGfCVvCx
>>675
D3DRS_COLORWRITEENABLE_ALPHAビットをリセットして
サーフェスに矩形を描画することにより、α成分を
0で塗りつぶせました。ありがとうございました。
0677名前は開発中のものです。04/11/14 14:08:22ID:v4FEHN7v
FPSみたいに自分中心で視点回転させるんてどうすればいいんでしょか・・・
注視点のうまい処理法がワカラナイ
0678名前は開発中のものです。04/11/14 16:56:35ID:EHnZA0OT
いっそのこと世界を回転させるとか
0679名前は開発中のものです。04/11/14 16:56:54ID:SapNnW4y
ボールが転がるプログラムをしています。
ボールの半径(r)と移動量(x,z)から
マトリックを作りたいのですが分かりません。

誰か教えてくれませんか?
0680名前は開発中のものです。04/11/14 18:39:23ID:3PVkE8ml
>679
D3DXMATRIX matWorld,matTrans,matRot,matScale;
D3DXMatrixIdentity( &matWorld );
D3DXVECTOR3 vec3Trans( x, y, 0.0f );
D3DXVECTOR3 vec3Scale( 1.0f,1.0f,1.0f );
D3DXVECTOR3 vec3Rot( 0.0f, 0.0f, 0.0f );
D3DXMatrixScaling( &matScale,vec3Scale.x,vec3Scale.y,vec3Scale.z );
D3DXMatrixRotationYawPitchRoll( &matRot,vec3Rot.y,vec3Rot.x,vec3Rot.z );
D3DXMatrixTranslation( &matTrans,vec3Trans.x,vec3Trans.y,vec3Trans.x );
matWorld = matScale * matRot * matTrans;

ボールの半径ってのがわかんね
0681名前は開発中のものです。04/11/14 18:57:02ID:6Qcx2TGz
マトリックってのがわかんね
0682名前は開発中のものです。04/11/14 19:22:39ID:X5jIu0Wl
Mr.
0683名前は開発中のものです。04/11/14 20:56:24ID:hCc7YYs/
>>680
半径から円周を出して、それと移動量から回転を出すのでは?
068467904/11/14 22:11:40ID:SapNnW4y
ス抜けすまそ。

>683
はい。

>680
ワールド上での各軸の回転量は分かったのですが、
D3DXMatrixRotationYawPitchRollなどの
オイラー角による回転処理では上手く姿勢を制御できなくて
困っています。

 X軸90度、Z軸90度の順で計算した場合。
 X軸90度がワールド上でみるとY軸90度回転になってしまう。

  
0685名前は開発中のものです。04/11/14 22:23:48ID:hCc7YYs/
回転させるときの軸は一つ。
まずは軸そのものを回転させることを覚えること。
068667904/11/15 08:14:16ID:9iJoBOqn
解決しました。
ここのHPが参考になりました。
http://hp.vector.co.jp/authors/VA013430/

さらに質問なのですが、ボールが地面(高さ0のXZ平面)に接している、
座標をボールの座標系(ローカル座標系)で知りたいのです。

ワールド座標系なら、ボール位置(ballX,ballY,ballZ)と地面なので
ballX,0,ballZと簡単なのですが、ローカル座標での位置がわからない。

平行移動とスケールは掛けていない、ボールの回転のみの
D3DXMATRIX ballMatとballの位置(ballX,ballY,ballZ)、ballY=ボールの半径
から求めるにはどうしたら良いでしょうか?
0687名前は開発中のものです。04/11/18 04:46:14ID:O/aA7zi9
ローカルをワールドにする計算で使うマトリクスの逆行列もとめて、
ワールドにするときと逆にかけてやれば求まるんじゃないの?

つーことじゃなくて?
0688名前は開発中のものです。04/11/19 00:43:00ID:qqm541c3
>686
ベクトルV = (ボールと地面の接点) - (ボールの中心位置)
行列M = ballMatの移動成分を消した行列
行列MI = Mの逆行列

接点のローカルでの位置へのベクトルをVLとして
(ベクトルV_tmpは作業用)
V_tmp = MI * V
VL = 正規化(V_tmp) * 半径

これででるんじゃないのか?
0689名前は開発中のものです。04/11/19 02:32:29ID:GWqqf4sG
何でわざわざ複雑にするんだ。
単に逆行列掛ければいいじゃん。
0690名前は開発中のものです。04/11/20 04:13:49ID:Zf2UOU2N
文字列の表示方法がわかりません・・・orz
D3DXCreateFontで定義した後、
DrawTextを用いれば良いのでしょうか?
069169004/11/20 04:14:26ID:Zf2UOU2N
誤爆スレ違いスマソ
スルーしてください
0692名前は開発中のものです。05/01/04 20:28:36ID:be4GSkLD
DirectX9のSDK入れたんだけどサンプルが無茶苦茶重い。
コマ送りどころじゃない。3秒に一回画面が変わるくらい。
ゲフォ2MX+Pen4 1.5Ghzなんだけどグラボが糞すぎるのかなぁ?
0693名前は開発中のものです。05/01/04 20:30:58ID:TqdwmBQ/
うん
0694名前は開発中のものです。05/01/04 20:36:36ID:02I9yCUU
REFなんだろ
0695名前は開発中のものです。05/01/04 20:44:47ID:r9h8bhSx
MX使ってる奴はプレハブ暮らし
0696名前は開発中のものです。05/01/07 23:35:55ID:MsUaYNJp
>>695
ノート対応も考えてると単純に最新機能バリバリってわけにもいかないんだよ。
同人のオナニーゲームならいいんだろうけどね。
0697名前は開発中のものです。05/01/08 00:43:13ID:N6OoXonV
>>696
だったらPixel Shaderは使わない。(または使う版と使わない版を作る)
Vertex Shaderはsoftware vertex processingにする。
0698名前は開発中のものです。05/01/08 01:07:28ID:2Cq+r6HX
オナニーゲームじゃないなら愚痴ってないで
そんくらいやってほしい。
0699名前は開発中のものです。05/03/13 15:08:48ID:idmmnJMg
>692
2MXでDX9のサンプル動かそうという考えがわからん
0700名前は開発中のものです。05/03/13 17:11:07ID:RmZEegr/
>>699
そんな感じが平均ってことだよ。

くそ高いグラボ買う余裕あったら、CS買い足して、
PCでは動く範囲のゲームを買うのが普通だと思う。
0701名前は開発中のものです。05/03/13 18:38:56ID:ttgzE6C1
一般人の感覚がどう話に繋がるというのだろうか。

曲がりなりにもDirectXSDK入れて開発側に回ろうとしている人間が
ヘボいビデオカード使ってギャーギャー騒ぐことに何の価値があるのか。
金の問題だけなら、たったの数千円でシェーダ3.0環境すら手に入るし
そもそも開発環境とCS(コンシューマゲームの略か?)との因果関係が全く繋がらない。

一言で言えば>>700頭大丈夫?
0702名前は開発中のものです。05/03/13 19:54:21ID:RmZEegr/
>>700
なんでそうなんの?

オマエみたいなやつがいるから、
カジュアルプログラマーが減るんだよ。
0703名前は開発中のものです。05/03/13 19:59:43ID:Nw916qbK
ある意味本質を付いたレスですね:-P
0704名前は開発中のものです。05/03/13 20:08:00ID:RmZEegr/
うひゃ、やっちまった・・・。
0705名前は開発中のものです。2005/03/29(火) 15:48:21ID:h1LjyVBy
さて、噂の「X OPERATIONS」のMODを作ろうとしている香具師らが
ちらほらと現れているんだが・・・

君達も「セクシーオプス部」に入らないか?
ttp://fps.last-heaven.com/cgi-bin/bbs3/bbs.cgi
さぁ、時計の針は元に戻すことはできない。だが自らの手で進めることはできるぞ。

ついでにage
0706名前は開発中のものです。2005/04/02(土) 17:37:58ID:z0euE+RD
age
0707名前は開発中のものです。2005/04/15(金) 20:47:26ID:VDAcC9BQ
ポリゴン伸ばして疑似的なブラーを再現できる?
低付加ブラー。
0708名前は開発中のものです。2005/04/15(金) 23:07:23ID:K/7mzgKa
ttp://hpcgi2.nifty.com/fluidmechanics/dlrank/perldnload.cgi?dlfile=http://homepage2.nifty.com/fluidmechanics/dx/dx8cloth.zip&dlname=DirectX/クロス
こんな風にテクスチャを貼り付けるにはどうしたらいいの?
0709名前は開発中のものです。2005/04/15(金) 23:40:10ID:f8cgGetv
>>708
テクスチャ?
ただの平行投影でこうなると思うよ。
0710名前は開発中のものです。2005/04/15(金) 23:57:02ID:K/7mzgKa
>>709
THX。悩んでみるよ
0711名前は開発中のものです。2005/04/20(水) 02:15:22ID:uTPKZKx5
シューティングを作ろうとしていて2Dの描画で質問なんですが
rhwを指定して描画するのとスプライトでの表示どちらが処理早いですか?
スプライトで描画するなら回転とかが楽でいいと思ってるんですが
どうでしょうか?
0712名前は開発中のものです。2005/04/20(水) 03:24:51ID:ZaV+y+yT
>711
やってみたほうが早いんじゃ・・・?
0713名前は開発中のものです。2005/04/20(水) 17:13:50ID:nqjFf9Ll
>>711
スプライトがID3DXSpriteのことを言ってるならアレは遅い。
あれはDraw1回につきDrawPrimitiveを1度ずつ呼んでいるはず。
ヘルプを見れば分かるんだが実はこんだけサイクル数がかかる。
DrawIndexedPrimitive 1200 - 1400
DrawPrimitive 1050 - 1150
こいつらを呼ぶ回数を減らせば減らすほど(普通は)速くなる。

あとD3DUSAGE_DYNAMICなVertexBufferも良いのだが
頂点バッファを用意したりロックしたり、デバイス消失のイベントをハンドルしなければならず、手間がかかる。
しかもSetStreamSourceだとかSetIndicesとかにまた数千サイクルかかる。
システムメモリに頂点溜め込んで一気にDrawIndexedPrimitiveUPが高速だし楽。

あとはこの辺を参考。
http://www.twin-tail.jp/contents/vsdx8/d3d/020/index.htm
0714名前は開発中のものです。2005/04/21(木) 01:49:14ID:3svv31My
>>713
いつの時代の組み方ですか?
シェーダ使ったりできないし、汎用性とかまったくないじゃん。
あくまで2D専用って感じ?
それにそんなにまとめてホントに早いのかぁ?
うさんくせぇなぁ。
Zバッファの前から描画とか絡んでくると単純にまとめりゃいいってモンでもねぇんじゃねぇか?
(それともそれってDirectXが勝手に手前から描画してくれるとかあるの?)
0715名前は開発中のものです。2005/04/21(木) 01:52:56ID:DC0sESiu
Draw*Primitiveが遅いのは既に定説。Longhornまではどうにもならん。
NVIDIAのGDCのスライドとか見れ。
0716名前は開発中のものです。2005/04/21(木) 02:05:14ID:3svv31My
>>715
てゆうか性能の限界ぎりぎりまで出すわけじゃないんだから
最近は動けばいいんだよ。
軽い必要はまったくないよ。
快適な環境でやりたきゃいいボード買え。
ノートPCでやってる客にも売りたきゃそもそも3Dゲーム作るな。
だいたいそんな傾向なんだから、俺が重視するのは汎用性オンリー。
DrawPrimitiveの回数をプログラム側で減らすなんて無駄。
やるならデザイナにモデルまとめさせて終わり。
あと、俺はフィルレート(前から描画)を重視したほうがよっぽどはやくなると思うけどな。
その辺との速度の比較はGDCのスライドじゃやってないでしょ?(やってる?)
0717名前は開発中のものです。2005/04/21(木) 02:06:37ID:3TCkNM2r
>シェーダ使ったりできないし、
使えるが。
0718名前は開発中のものです。2005/04/21(木) 02:14:26ID:3svv31My
>>717
DrawPrimitive一発でシェーダ複数使用ってできたの?
なんかプログラム複雑じゃねぇ?

てっきり

@シェーダセット!(行列とかその他もろもろ設定)
ADrawPrimitive
Bシェーダ解除!

だと思ってたけど。
まとめても一括でいけるもんなんだ・・・。
そらしらんかった。
でも、その場合ってまとめた分の頂点情報もどっからどこまでがどのシェーダでって情報も
いれなきゃいけないんだよね。位置座標、UV、バンプ、法線、色、とかどう設定すんだべか。
0719名前は開発中のものです。2005/04/21(木) 02:27:25ID:3TCkNM2r
>>718
同時にシェーダを複数使用することは出来ないよ。
ある程度の種類をまとめてDrawPrimitiveとかで纏めて描画するというだけ。

例えば敵の弾が200個だとか300個だとか出てきたら
DrawPrimitiveを1つずつ呼び出してたら塵も積もれば何とやらって奴ですよ。
普通スプライトのシェーダなんかどの弾もテクスチャ貼り付けるだけなんだから切り替える必要もないし。

こういうのは適所適材だと思うんだがな。

確かにZソートとかは効率が良いのだが…
スプライトの場合は普通テクスチャのαブレンドの関係で
順序よく描画しないと見た目が変になるからねぇ。
0720名前は開発中のものです。2005/04/21(木) 03:21:53ID:NlkBwh5B
何この噛み合ってない会話
0721名前は開発中のものです。2005/04/21(木) 04:09:22ID:kfjpiSjx
2Dスプライトの話なのに>>714がヘンな突っかかり方したのが悪いんだろ。
GPUとCPUの性能差がある環境ならDrawPrimitiveのくそっぷりが良くわかるよ。
0722名前は開発中のものです。2005/04/21(木) 04:24:33ID:eTngQ0SA
このスレあったの2年くらい忘れてた。

>>711
なんか最近こういう誤解みたいなのが多いけど、D3DXってのは
Direct3Dを使って実装された上位ライブラリで、そこで提供されている
スプライトとかの機能は全部普通のDirect3Dの機能を使って実装
されているから、ID3DXSpriteとかも中でDrawPrimitiveを呼んでいるだけだよ。

だから、DrawPrimitiveを適切に使っていれば、ID3DXSpriteより
遅くなることは絶対に無い。
0723名前は開発中のものです。2005/04/21(木) 05:28:29ID:ZLrcnKcw
そういやID3DXSpriteって、DirectX9Summerあたりからバッチスプライトのリストに溜めて
Flushで一気に描画みたいな感じになってるけど、>>713の様な手法に変えたのかな?
0724名前は開発中のものです。2005/04/21(木) 13:47:16ID:DC0sESiu
結局3svv31Myがまるで話を理解していなかったということで。
0725名前は開発中のものです。2005/04/21(木) 19:17:22ID:7TDOP59j
なんか最近シェーダ馬鹿みたいなの多いね。
0726名前は開発中のものです。2005/04/21(木) 19:54:12ID:ZgTyqCoE
ウフフ フフフフフ HLSLだぁ〜い好き ウフフフフフ
0727名前は開発中のものです。2005/04/22(金) 01:08:50ID:YqbwOmiM
つか、シェーダ馬鹿にならないとこれからの3D業界は乗り切れないぞ。
0728名前は開発中のものです。2005/04/22(金) 02:12:51ID:ARah4tGO
その馬鹿の意味がヲタクという意味の馬鹿ならいいのだが
DQNという意味の馬鹿なら困るわけで
0729名前は開発中のものです。2005/04/22(金) 18:40:47ID:8ED9pWH4
アクセスするアドレスによってCPUからGPUに負荷を振り分けるように
OSが最適化されたら、シェーダなんてのはなくなるよ。

みんな思ってるだろうけど、いまのシェーダは過渡的だし、
はっきりいってかなり不格好な実装だからね。
0730名前は開発中のものです。2005/04/22(金) 18:42:07ID:8ED9pWH4
あ、アドレスって書いたけど、98じゃねぇんだから、
厳密にはメモリ空間か?
0731名前は開発中のものです。2005/04/22(金) 19:06:06ID:O5EH+LRu
本物のバカキター
0732名前は開発中のものです。2005/04/22(金) 19:24:53ID:UV35yiVz
どうしようこれ>>729-730・・・
0733名前は開発中のものです。2005/04/22(金) 23:59:46ID:87eHM9Oz
放置するのが一番なんだが、ひとしきり騒いで満足するまで
このスレに隔離できればなお良し。他に漏れて無駄に荒れるのがワーストケース
0734名前は開発中のものです。2005/04/23(土) 00:28:22ID:ntQ8pk/i
盛り上がってまいりました!
0735名前は開発中のものです。2005/04/23(土) 08:03:51ID:3/WCVL7Q
rhwを指定してDrawPrimitiveUPでtop,left,right,bottomを指定して
描画してるんですが回転をさせるにはどうすればいいですか?
テクスチャ座標をいじるんでしょうか?それとも画面上の位置を指定して
いるほうの座標?どちらですかね?
0736名前は開発中のものです。2005/04/23(土) 08:09:22ID:UkNi8XjC
       , --- 、_
      /ミミミヾヾヽ、_
   ∠ヾヾヾヾヾヾjj┴彡ニヽ
  / , -ー‐'"´´´    ヾ.三ヽ
  ,' /            ヾ三ヽ
  j |             / }ミ i
  | |              / /ミ  !
  } | r、          l ゙iミ __」   
  |]ムヽ、_    __∠二、__,ィ|/ ィ }    
  |    ̄`ミl==r'´     / |lぅ lj 
  「!ヽ、_____j ヽ、_  -'  レ'r'/  ちょっと面白かったよ!アンダーソン君! 
   `!     j  ヽ        j_ノ
   ',    ヽァ_ '┘     ,i
    ヽ  ___'...__   i   ハ__
     ヽ ゙二二 `  ,' // 八
      ヽ        /'´   / ヽ
      |ヽ、__, '´ /   /   \
0737名前は開発中のものです。2005/04/23(土) 23:46:18ID:IDBdQOtf
>>735
両方試してみるのが今後のためになると思う
0738名前は開発中のものです。2005/04/24(日) 11:46:46ID:8qI4623k
>>735
ディスプレイを回転すればいいと思うよ
0739名前は開発中のものです。2005/04/24(日) 12:21:24ID:7qnyspJJ
>>735
むしろ、自分が回ればすべてOK。
0740名前は開発中のものです。2005/04/28(木) 17:02:58ID:kPgpP9f5
てか、みんな真面目に答えないのね。
0741名前は開発中のものです。2005/04/28(木) 19:56:08ID:8tDojadv
お前の顔よりはみんな真面目だよ
0742名前は開発中のものです。2005/04/28(木) 21:18:46ID:NDkFRPfa
マトリックスは真面目だよ
0743名前は開発中のものです。2005/04/30(土) 15:54:22ID:T0NPnyeQ
>>735
2D(DirectDrawとか)だったら、複数のコマを用意したアニメーション
のようにすればいいと思うし、
3Dで作ってるなら、4頂点を回転させた方が簡単にできて便利。
好きにすればいいと思う。
0744名前は開発中のものです。2005/05/06(金) 08:07:21ID:G1nDPq2U
質問なんだけど、D3DXでポリゴンオフセットって可能?
0745名前は開発中のものです。2005/05/06(金) 09:32:23ID:dNQ+cS0S
なんじゃそりゃ?と思ってググってみたが
要するにシャドウバッファとかでズラすことかいな?
そういうのはシェーダ担当な気がしないでもないのだが
0746名前は開発中のものです。2005/05/06(金) 19:22:03ID:1iusvKVp
簡単に言うと面の上にラインを引くと点線になるのを防ぐみたいなやつです
0747名前は開発中のものです。2005/05/06(金) 20:21:33ID:dNQ+cS0S
それじゃ合ってるか。
シェーダで座標変換した後でz値に適当な値を加えりゃいいだけでは?
ただ極端に値を変えると浮いた感じになるから
そこは深度バッファの精度次第になりそう。
0748名前は開発中のものです。2005/05/06(金) 21:28:27ID:wYX9qHMx
[深度バイアス]とかいうのがあるけど、なんかダメっぽい機能だったような…

適切なオフセット値計算して射影行列に設定するってサンプルなら
GameProgrammingGems1とかに載ってた
0749名前は開発中のものです。2005/05/08(日) 05:22:34ID:UzkGygsF
今気づいたけど>>35の質問に対しての回答が>>36でちゃんと答えられてるのね。

ちょっと面白かったよ!アンダーソン君!
0750名前は開発中のものです。2005/05/11(水) 09:52:08ID:aZk20wUL
>アンダーソン君!

なにこれ?はやってるの?
0751名前は開発中のものです。2005/05/11(水) 10:21:14ID:sT61sFtN
救世主が要るスレはここですか?
0752名前は開発中のものです。2005/05/12(木) 00:04:40ID:jj93DCJg
何年前の映画だよ!
0753名前は開発中のものです。2005/05/12(木) 00:51:02ID:IwT5EJWT
もうマトリックスより後に生まれた世代が書き込みしまくってる時代だもんあ
0754名前は開発中のものです。2005/05/13(金) 18:39:56ID:6TC4SLWG
質問です。
透視射影の場合、マウスでクリックした場所の3次元空間への方向は
カメラの位置ベクトルとクリック先の3次元空間点の差分で求まりますが、
正射影の場合どうやってマウスの方向を求めるのでしょうか?
0755名前は開発中のものです。2005/05/21(土) 00:07:16ID:z/gEVygN
レスのない>>753のためにage
0756名前は開発中のものです。2005/05/26(木) 01:30:24ID:eUP2N7f1
・main.obj : error LNK2019: 未解決の外部シンボル _D3DXCreateSprite@8 が関数 "long __cdecl InitD3d(struct HWND__ *)" (?InitD3d@@YAJPAUHWND__@@@Z) で参照されました。
・main.obj : error LNK2019: 未解決の外部シンボル _D3DXCreateTextureFromFileExA@56 が関数 "long __cdecl InitD3d(struct HWND__ *)" (?InitD3d@@YAJPAUHWND__@@@Z) で参照されました。
・main.obj : error LNK2019: 未解決の外部シンボル _Direct3DCreate9@4 が関数 "long __cdecl InitD3d(struct HWND__ *)" (?InitD3d@@YAJPAUHWND__@@@Z) で参照されました。

こういうリンカエラーってどうやって解決したら良いの?
0757名前は開発中のものです。2005/05/26(木) 01:57:49ID:tlxf709N
>>756
ライブラリをリンクしてないだけだろ?
0758名前は開発中のものです。2005/05/26(木) 19:18:37ID:eUP2N7f1
>>757
プロパティから設定するの忘れてた。
ありがとう
0759名前は開発中のものです。2005/06/02(木) 23:38:17ID:taMZnyW/
>>758
0760名前は開発中のものです。2005/06/04(土) 11:36:31ID:5zu0k2nb
SDKの2005 Juneは出るんだろうか?
0761名前は開発中のものです。2005/06/04(土) 12:16:27ID:s3E6qlk9
>>760
予定では2005AUGUSTになってるが遅れるのかも
0762名前は開発中のものです。2005/06/04(土) 14:58:20ID:5zu0k2nb
>>761
二ヶ月ごとに出すんじゃなくて、今度はAUGUSTなのか
0763名前は開発中のものです。2005/06/04(土) 15:50:14ID:vn3r9MGU
sageぐらい覚えろ、能無し。
0764名前は開発中のものです。2005/06/04(土) 16:05:35ID:5zu0k2nb
>>763
自己紹介乙
0765名前は開発中のものです。2005/06/04(土) 19:19:36ID:b277QKnL
DX7のD3Dのアルファブレンドとかを使って、サーフェースをグレーにして表示できる?
つまり、1ピクセル当りに以下の処理をしたいわけ。
OUT.R =OUT.G = OUT.B =(IN.R + IN.B +IN.G ) /3;
0766名前は開発中のものです。2005/06/04(土) 20:01:46ID:8WR3BEco
>>765

ttp://www.itmedia.co.jp/anchordesk/articles/0404/02/news069.html

ちなみに(IN.R + IN.B +IN.G ) /3では正しくグレースケールにならないよ
0767名前は開発中のものです。2005/06/04(土) 20:45:57ID:b277QKnL
できるとは知らなかった。
0768名前は開発中のものです。2005/06/04(土) 20:56:47ID:Jxi5RktW
>>766
うほっ、凄い参考になるなあ
職人技っぽくてステキ
0769名前は開発中のものです。2005/06/15(水) 23:48:47ID:VibO27At
>>768
0770名前は開発中のものです。2005/06/18(土) 11:16:59ID:6iUM9GbJ
>>768
0771名前は開発中のものです。2005/06/18(土) 16:23:55ID:7iyw6hrJ
769 名前:名前は開発中のものです。[] 投稿日:2005/06/15(水) 23:48:47 ID:VibO27At
>>768


770 名前:名前は開発中のものです。[] 投稿日:2005/06/18(土) 11:16:59 ID:6iUM9GbJ
>>768
0772名前は開発中のものです。2005/06/18(土) 17:39:18ID:VSdAkBJe
771 名前:名前は開発中のものです。[sage] 投稿日:2005/06/18(土) 16:23:55 ID:7iyw6hrJ

769 名前:名前は開発中のものです。[] 投稿日:2005/06/15(水) 23:48:47 ID:VibO27At
>>768


770 名前:名前は開発中のものです。[] 投稿日:2005/06/18(土) 11:16:59 ID:6iUM9GbJ
>>768
0773名前は開発中のものです。2005/06/23(木) 03:21:20ID:w+rTqWXJ
DX7で、
頂点にカラー値を含ませて、そのカラー値を0にして描画すると、
本来は描画されるとこが真っ黒になるんだけど、
COLORKEYが無視されるでしょ。
(カラーキーが0でも、カラー値0がサーフェースに書き込まれる)
この条件で、COLORKEYを有効にさせるにはどうしたらいいですか?
0774名前は開発中のものです。2005/06/23(木) 09:30:28ID:WnRRk4RN
αを適切に設定。
0775名前は開発中のものです。2005/06/24(金) 00:07:27ID:RQFT/vXk
>>774
よくワカラン
0776名前は開発中のものです。2005/06/24(金) 00:16:06ID:30tErfQc
      r;ァ'N;:::::::::::::,ィ/      >::::::::::ヽ
.      〃  ヽル1'´        ∠:::::::::::::::::i
       i′  ___, - ,. = -一   ̄l:::::::::::::::l
.      ! , -==、´r'          l::::::/,ニ.ヽ
      l        _,, -‐''二ゝ  l::::l f゙ヽ |、 そろそろDX9に移れ
        レー-- 、ヽヾニ-ァ,ニ;=、_   !:::l ) } ト
       ヾ¨'7"ry、`   ー゙='ニ,,,`    }::ヽ(ノ  
:ーゝヽ、     !´ " ̄ 'l,;;;;,,,.、       ,i:::::::ミ
::::::::::::::::ヽ.-‐ ト、 r'_{   __)`ニゝ、  ,,iリ::::::::ミ
::::::::::::::::::::Vi/l:::V'´;ッ`ニ´ー-ッ-,、:::::`"::::::::::::::;゙ ,  な!
:::::::::::::::::::::::::N. ゙、::::ヾ,.`二ニ´∠,,.i::::::::::::::::::::///
:::::::::::::::::::::::::::::l ヽ;:::::::::::::::::::::::::::::::::::::::::::/ /
::::::::::::::::::::::::::::::! :|.\;::::::::::::::::::::::::::::::/ /
0777名前は開発中のものです。2005/06/24(金) 01:41:24ID:Sfv+RKQ8
>>776
お前ほど優しい人間はいない
0778名前は開発中のものです。2005/06/24(金) 02:06:42ID:RQFT/vXk
      r;ァ'N;:::::::::::::,ィ/      >::::::::::ヽ
.      〃  ヽル1'´        ∠:::::::::::::::::i
       i′  ___, - ,. = -一   ̄l:::::::::::::::l
.      ! , -==、´r'          l::::::/,ニ.ヽ
      l        _,, -‐''二ゝ  l::::l f゙ヽ |、 あげあげ!
        レー-- 、ヽヾニ-ァ,ニ;=、_   !:::l ) } ト
       ヾ¨'7"ry、`   ー゙='ニ,,,`    }::ヽ(ノ  
:ーゝヽ、     !´ " ̄ 'l,;;;;,,,.、       ,i:::::::ミ
::::::::::::::::ヽ.-‐ ト、 r'_{   __)`ニゝ、  ,,iリ::::::::ミ
::::::::::::::::::::Vi/l:::V'´;ッ`ニ´ー-ッ-,、:::::`"::::::::::::::;゙ ,  な!
:::::::::::::::::::::::::N. ゙、::::ヾ,.`二ニ´∠,,.i::::::::::::::::::::///
:::::::::::::::::::::::::::::l ヽ;:::::::::::::::::::::::::::::::::::::::::::/ /
::::::::::::::::::::::::::::::! :|.\;::::::::::::::::::::::::::::::/ /
0779名前は開発中のものです。2005/06/25(土) 12:09:51ID:/thqxDx7

                r,''ヘ_  
              _,,,,_⊂-くノ`ヽ,
          _  〆_゙'ir''⌒"  )←>>773
         ξ⊂!  っ》`   く ∠___
         .''\ノ''''‐`` i、 ,ノ  │,-ヽ7=、、 ,,rー'"`-、
           \_゙l、,,,_,/i゙、 ,ノ 〈 ゛  `ヌ⌒ )/=i、 l
                 `゙゙'''"`'ミ--/-,_  ´ /"  `''
                        \ .,,、`lニン-゛
                      \__ノ

      ___
    _ ┐  /            
    / 'rlご ┥ .,,,、 
    |  |゙ `jエ |〈゙',) ←DirectX9
    ゙l,,,i´ /,/,ノ"r
   ,r_,ノ''こ!、,,┴.
   |  ‘''く′ ,/ │
  .r'ヘ,、  `'イ゙>'"
  .厂|,`'-,,  .|'ヽ、
0780名前は開発中のものです。2005/06/25(土) 16:42:33ID:/thqxDx7
まて!IDがDX7だ!
0781名前は開発中のものです。2005/06/25(土) 16:44:57ID:SGquLxgy

                r,''ヘ_  
              _,,,,_⊂-くノ`ヽ,
          _  〆_゙'ir''⌒"  )←>>780
         ξ⊂!  っ》`   く ∠___
         .''\ノ''''‐`` i、 ,ノ  │,-ヽ7=、、 ,,rー'"`-、
           \_゙l、,,,_,/i゙、 ,ノ 〈 ゛  `ヌ⌒ )/=i、 l
                 `゙゙'''"`'ミ--/-,_  ´ /"  `''
                        \ .,,、`lニン-゛
                      \__ノ

      ___
    _ ┐  /            
    / 'rlご ┥ .,,,、 
    |  |゙ `jエ |〈゙',) ←DirectX9
    ゙l,,,i´ /,/,ノ"r
   ,r_,ノ''こ!、,,┴.
   |  ‘''く′ ,/ │
  .r'ヘ,、  `'イ゙>'"
  .厂|,`'-,,  .|'ヽ、
0782名前は開発中のものです。2005/06/26(日) 00:00:37ID:mFTp4nrm
アリエナイザー
0783名前は開発中のものです。2005/06/26(日) 00:52:44ID:mFTp4nrm
出現 直ちに出動だ!!!! エマージェンシー!!フェイスオン!!!!!!

アリエナイザー出現!!?????
ぶっちゃけありえな〜い

デュアルオーロラウェーイブ!!!!!!!!!
0784名前は開発中のものです。2005/07/01(金) 04:38:30ID:kdhKBhU5
      r;ァ'N;:::::::::::::,ィ/      >::::::::::ヽ
.      〃  ヽル1'´        ∠:::::::::::::::::i
       i′  ___, - ,. = -一   ̄l:::::::::::::::l
.      ! , -==、´r'          l::::::/,ニ.ヽ
      l        _,, -‐''二ゝ  l::::l f゙ヽ |、 DX7で解決した。
        レー-- 、ヽヾニ-ァ,ニ;=、_   !:::l ) } ト  
       ヾ¨'7"ry、`   ー゙='ニ,,,`    }::ヽ(ノ   >>776,779
:ーゝヽ、     !´ " ̄ 'l,;;;;,,,.、       ,i:::::::ミ   はお呼びじゃねーんだよ
::::::::::::::::ヽ.-‐ ト、 r'_{   __)`ニゝ、  ,,iリ::::::::ミ
::::::::::::::::::::Vi/l:::V'´;ッ`ニ´ー-ッ-,、:::::`"::::::::::::::;゙ ,  な!
:::::::::::::::::::::::::N. ゙、::::ヾ,.`二ニ´∠,,.i::::::::::::::::::::///
:::::::::::::::::::::::::::::l ヽ;:::::::::::::::::::::::::::::::::::::::::::/ /
::::::::::::::::::::::::::::::! :|.\;::::::::::::::::::::::::::::::/ /
0785名前は開発中のものです。2005/07/01(金) 06:15:38ID:kdhKBhU5
>>774
 ∧∧∩))
 (゚Д゚),ノ
 (|  | 
〜|  |
 ∪∪
0786名前は開発中のものです。2005/07/02(土) 09:18:16ID:YqBodVWC
elでゲーム作ろうと思ってたら、コンパイル時に
外部シンボル 'DirectSoundCreate' が未解決
と出るぞ
なんでだ
0787名前は開発中のものです。2005/07/02(土) 09:28:30ID:VY9iyG1S
必用なライブラリがリンクされてないから。
そんなこと聞くまでもないと思うのだが。
0788名前は開発中のものです。2005/07/02(土) 11:26:42ID:FZ7aW3ey
今更elはないような気がする。
2DだけならDxLibがいいと思う。
0789名前は開発中のものです。2005/07/03(日) 00:18:14ID:t4v5W16q
DXLIB機能豊富に見えて基本的な所がELより劣るのが困りモノ^^;
0790名前は開発中のものです。2005/07/28(木) 02:05:45ID:nhSv6ByA
Direct3Dで、テクスチャサーフェースで、
1ピクセルごとにα値を設定するのって、どうやるの?
普通のCGツールじゃ、α値なんて設定できないんだけど
0791名前は開発中のものです。2005/07/28(木) 02:19:10ID:ylLI/A/I
gimp とか photoshop とかならできるぞ。
SDK付属のTexture Tool で グレースケールの画像用意してそれをα成分として合成させることはできる。
0792名前は開発中のものです。2005/07/28(木) 13:36:34ID:Y/SQGHVH
>>790
α値は大抵のCGツールで設定できるぞ。
α成分を保存できるファイル形式が分かってないだけだろう。

ただ、この用途だとPhotoshopは使いにくい。
0793名前は開発中のものです。2005/08/01(月) 23:22:58ID:aniH/Aq0
>>790
まあ、名称がそのままα成分とは載って無いかもしれんがな。
でもアルファ〜とかって名前にはなってるような希ガス。

一体何がアルファ成分に当たるのかって調べるのもいい。
俺は2万円ぐらいのフォトショ(なんか安い奴あるんだよ)でPngで吐き出してる。
つーか、2万円のフォトショだとPngにしかアルファが付かない。
オレカワイソスw
0794名前は開発中のものです。2005/08/02(火) 04:15:06ID:vcJ9MyaA
貧乏人はGimp使っとけ。貧乏じゃなくてもGimp使ってる漏れは勝ち組。
0795名前は開発中のものです。2005/08/02(火) 05:04:52ID:p8+wOVCl
Gimpなら、ソースネクストのPaintgraphicの方がいいよ。
元は和製フォトショと呼ばれてたソフトだし。
フォトグラファ≒HyperKiD≒The Graphics[ペイント]≒Paintgraphic
0796名前は開発中のものです。2005/08/02(火) 20:44:16ID:0cuYGLsf
http://www.geocities.jp/ichizo6/download.htm
このゲームがどうも上手く起動しないのですが・・・
動く人は動いてるみたいなんですよ。
何がげんいんだか教えていただけませんか?
0797名前は開発中のものです。2005/08/03(水) 01:00:42ID:hge3/zDc
>>796
Direct3Dのリテールモードだと普通に動く。
デバックモードだと以下の例外で止まる。

Direct3D9: (ERROR) :Can specify D3DLOCK_DISCARD or D3DLOCK_NOOVERWRITE for only Vertex Buffers created with D3DUSAGE_DYNAMIC
DXGAME02.exe の 0x7c941230 でハンドルされていない例外が発生しました : ユーザー設定のブレークポイント。
0798名前は開発中のものです。2005/08/06(土) 18:18:41ID:ezRj0yxJ
スマソ。MSから下のヘルプダウンロードできないんだが、ネット上で見る方法なかったっけ?
http://www.microsoft.com/downloads/details.aspx?FamilyID=4b9b1752-6f6c-440e-816c-35d247570ae4&displaylang=ja
0799名前は開発中のものです。2005/08/06(土) 22:11:42ID:/iNs0isg
>>790
SDKに付いてるDirectX Texture Toolを使う。
0800名前は開発中のものです。2005/08/09(火) 14:23:58ID:XWR1EMWN
D3Dで、テクスチャのサイズに、ゲームで使用するテクスチャが収まらないので、
マルチテクスチャで、最大8枚(HALで2枚ぐらいになるが)までを使おうとして、
テクスチャステージの、1だけを使用する頂点と、2だけを使用する頂点を作製したいのだが、
どちらかのステージのテクスチャ座標VとUを全て0にして、三角形ポリゴンにすると、
まったく表示されなくなる。
ところが、少しでもテクスチャを使用するようにテクスチャ座標を設定すると、表示される。

ステージ1だけを使用する頂点と、2だけを使用する頂点を混在して
レンダリングするにはどうしたらいいですか?
0801名前は開発中のものです。2005/08/09(火) 20:32:24ID:8ySy3mUn
テクスチャに透明色の部分を用意しといて表示したくない頂点にはそこを割り当てるのはどうですか
0802名前は開発中のものです。2005/08/10(水) 02:01:12ID:4UhpS71Y
>>801
それ考えたんですが、結局は1枚だけのテクスチャを描画するだけでも、
2枚描画することになるので、速度的に無駄かなと。
もともと、1回のレンダリングで複数のテクスチャを使用したいと思ったのは、
描画速度を上げる為なので。仮にこれができたとして、描画速度が向上してなければ、意味ないですが
0803名前は開発中のものです。2005/08/10(水) 05:47:55ID:9peKGd/0
マルチテクスチャでそんなことするなら、テクスチャごとに頂点を
分けた方がよっぽど速い。

そもそも、全てのテクスチャ座標を0にしたら、テクスチャの左上の
ピクセルがトライアングルいっぱいに描画されるってことは理解してる?
0804名前は開発中のものです。2005/08/10(水) 08:15:36ID:4UhpS71Y
>マルチテクスチャでそんなことするなら、テクスチャごとに頂点を
>分けた方がよっぽど速い。
それって、テクスチャごとにレンダリング処理を行うってことでしょ?

>そもそも、全てのテクスチャ座標を0にしたら、テクスチャの左上の
>ピクセルがトライアングルいっぱいに描画されるってことは理解してる?
それで、ポリゴンが真っ青になったのか。
0805名前は開発中のものです。2005/08/10(水) 13:10:41ID:z/uuadyF
(´-`).。oO(この人はなぜマルチテクスチャにすれば速くなると思ったんだろう・・・)
0806名前は開発中のものです。2005/08/10(水) 13:18:34ID:WVKdo31H
坊やだからさ
0807名前は開発中のものです。2005/08/10(水) 14:01:39ID:4UhpS71Y
>>805
別に理由はどーでも、一回のレンダリングで複数のテクスチャを使う方法ぐらい、
知っておいて損はないでしょ。
0808名前は開発中のものです。2005/08/10(水) 14:30:58ID:C6xjkzBn
D3DCAPS::TextureAddressCapsでD3DPTADDRESSCAPS_BORDERが立っていれば
適用したくないテクスチャステージは、座標を0~1外にしアルファ0の任意色にすることで
排除出来る。問題はBORDERをサポートするデバイスが少ないということ。
まあ現実解として、Shaderで似たような処理を実装するか>>801かですな。
0809名前は開発中のものです。2005/08/10(水) 14:53:02ID:/zhGE92h
>>802で、>>801の方法を速度を理由に否定してるってことは、
残るはピクセルシェーダ3.0で動的条件分岐くらいかねぇ。
現在のハードでは2回テクスチャフェッチするよりもさらに遅くなりそうだけど。
0810名前は開発中のものです。2005/08/10(水) 15:20:34ID:bemeUi1u
>>807
そもそも一回のレンダリングという単位は、
プリミティブを分けても一回なんだが。
0811名前は開発中のものです。2005/08/10(水) 16:49:52ID:4UhpS71Y
>>810
つまんねー用語厨か?
じゃ、一回のプリミティブて言えば満足すんだな?
0812名前は開発中のものです。2005/08/10(水) 16:57:08ID:z/uuadyF
(´-`).。oO(下手な釣りだなぁ・・・)
0813名前は開発中のものです。2005/08/10(水) 18:09:06ID:zT7+elX9
くっだらね。実際に動かして速度を比較してからにしろよ。
0814名前は開発中のものです。2005/08/10(水) 18:26:52ID:VrKJWQ2w
ID:4UhpS71Yが最初は敬語を使っていたのに、いつの間にか偉そうな口調に変化した件について
0815名前は開発中のものです。2005/08/10(水) 19:03:18ID:msNqQT/5
心が荒んでるんだよ
0816名前は開発中のものです。2005/08/10(水) 19:36:15ID:avB1rksC
>>813
てゆうか、それだよな。
何につけてもこういう手間を惜しむ奴は伸びない。
0817名前は開発中のものです。2005/08/10(水) 20:25:36ID:ZNFs0VWr
>>816
別に手間がテーマになっていた訳じゃないと思うけど。
1パスで2つのColorMapを使う方法って話だろ?
0818名前は開発中のものです。2005/08/10(水) 20:30:23ID:ZNFs0VWr
誰も答えてくれないのよね。知ってる人いない?

160 名前: デフォルトの名無しさん 投稿日: 2005/08/05(金) 16:35:28
固定機能パイプラインを使って
テクスチャ座標を色として出力したいんですが
可能でしょうか?

HLSLの場合こんな感じです。
float4 PixelShaderMain( const in float4 i_vTexCoord0 : TEXCOORD0) : COLOR0
{
return i_vTexCoord0;
}
0819名前は開発中のものです。2005/08/10(水) 21:28:34ID:9peKGd/0
>>818
無理。そんなのヘルプ見たらわかるだろ…
テクスチャ使っていいならできるが。
0820名前は開発中のものです。2005/08/19(金) 17:00:22ID:w+QDJ2nJ
DX7で、アプリからフルシーンアンチエイリアスかけるのって可能なの?
DX7のドキュメントに書いてある通りやってもかからないのでググって
みたら、

http://www.visualbasicforum.com/archive/index.php/t-176185.html

> The absence of ANY sample or tutorial DX7 code using antialiasing on
> the net (that I can find) is beginning to make me think it's not possible / easy.

なんか簡単に出来なさそうなんだけど、出来てる人いる?
0821名前は開発中のものです。2005/08/19(金) 18:17:42ID:Ef+LLSxx
2コンのマイクに向かってフルシーンアンチエイリアスって叫べば掛かるよ
0822名前は開発中のものです。2005/08/20(土) 10:37:14ID:lAZ1SVDQ
そうなんだ
0823名前は開発中のものです。2005/09/14(水) 01:24:06ID:cuazMJTo
DirectX 9.0 SDK ( Aplil 2005 ) を使っています。
透過付きDDSファイルを表示すると、
重ねて表示した画像の境界がうっすらと白くなったり黒くなったりします。
別のPCで実行してみたら、そのPCではそういった現象は起こりませんでした。
これはビデオカードの問題でしょうか?

Card name: Intel(R) 82865G Graphics Controller
Manufacturer: Intel Corporation
Chip type: Intel(R) 82865G Graphics Controller
DAC type: Internal
Device Key: Enum\PCI\VEN_8086&DEV_2572&SUBSYS_12BC103C&REV_02
Display Memory: 64.0 MB
Current Mode: 1280 x 1024 (16 bit) (60Hz)
Monitor: Monitor Max Res: 1600,1200
Driver Name: ialmrnt5.dll
Driver Version: 6.13.0001.3485 (English)
DDI Version: 8
Driver Attributes: Final Retail
OSはWinXPHome(SP2)です。
dxdiagで調べた該当箇所を載せておきます。
0824名前は開発中のものです。2005/09/14(水) 02:01:39ID:p99+ccKZ
まぁまずはビデオカード増設できる程度には貧乏を脱出しような
0825名前は開発中のものです。2005/09/14(水) 08:08:03ID:yOQcAFLm
そういう問題じゃないだろ。
0826名前は開発中のものです。2005/09/14(水) 09:52:15ID:iGr5WH1G
D3DTADDRESS_WRAP と D3DTEXF_LINEAR を組み合わせて使うと、
テクスチャの反対の端の色がにじみ出てきているように
見えることがありますが、そういうこと?
08278232005/09/14(水) 10:38:17ID:cuazMJTo
>>824
正直、ビデオカードを買う余裕はありません。
ウイルス対策以外のソフトも全てフリーので賄ってますw

>>826
>テクスチャの反対の端の色がにじみ出てきているように
そんな感じです。
でもD3DTADDRESS_WRAPもD3DTEXF_LINERも使っていません。
D3Dを使った2Dの描画のみです。
αを持たないDDSファイルならば問題はありません。
0828名前は開発中のものです。2005/09/14(水) 11:19:55ID:ZikdG0oq
D3DXCreateTexture〜で読み込むときにフィルタが掛かってるとかかしら。
試しにD3DXCreateTexture〜Exでフィルタ無効にして読み込むとか。
08298232005/09/14(水) 17:03:44ID:cuazMJTo
>>828
ありがとうございます。
やってみます。
08308232005/09/15(木) 00:34:33ID:3aU9jAmb
>>828
変わりませんでした。
別のPCではそういった症状が出ませんので、
グラフィックカードが原因だと思っておきます。
0831名前は開発中のものです。2005/09/15(木) 03:31:50ID:NKwWscc3
>>791
どうも〜。遅くなりましたが、Gimpでやってみました。
透明の設定の仕方が分からなくて、苦労しました。
消しゴムでやれることが分かったですが、なんか1ピクセルごとに書けなくないですか?
それと、PNGの読み込みが大変面倒そうです。嫌になってしまいました
0832名前は開発中のものです。2005/09/15(木) 10:39:27ID:TvGSAO22
>>831
ツールの使い方などをきちんと調べられるのも
プログラマーのスキルですよ。
Gimpなら透明の空画像作ってレイヤー重ねてください。
ちなみに消しゴムだろうがブラシサイズ変えられます。
個人的にはPNGじゃなくてTGAがお勧め。
0833名前は開発中のものです。2005/09/16(金) 22:58:45ID:EfSiJ+7d
よく4人プレイのゲームとかで画面が4分割のがありますがこれはどうやったら
可能になりますか?ビューポートの設定で無理やり4分割にして実現したんですが
他に方法ありませんか?
0834名前は開発中のものです。2005/09/17(土) 00:01:49ID:y67Z5UeI
つーかViewportが正道だよ。その為にあるようなもんだし。
windowモードで画面ごとに違うwindowを割り当てたい時などは
SwapChainを使う。
0835名前は開発中のものです。2005/09/26(月) 21:15:20ID:Oe64tQA1
未だに初期の9.0SDK使ってて、つい先日Update版導入したら色々仕様変わってるよorz

ID3DXSpriteのスケール設定引数がごっそりなくなったわけだけど、
スプライトの拡大縮小って他に代替手段あったっけ?
0836名前は開発中のものです。2005/09/26(月) 21:49:31ID:b4zN5J/A
D3DXMatrixTransformation2D
0837名前は開発中のものです。2005/09/28(水) 23:10:19ID:xxFcAXti
読み込みpngが800*600のサイズでフルスクリーンでそれを画面いっぱいに
描画しようと思ったらうまくいきませんでした。方法としては4つの頂点と
それに合わせたテクスチャ座標をしてsetfvfで指定してprimitiveup関数に
引数渡して描画しました。描画自体はできていますが画面のサイズに合わせて
テクスチャが画面いっぱいになっていません。spriteをつかえば綺麗に描画
されますがspriteは重いのでどうすればいいかわかる方いらっしゃいましたら
アドバイスよろしくお願いします
0838名前は開発中のものです。2005/09/28(水) 23:15:07ID:m79xquiV
またその質問か
0839名前は開発中のものです。2005/09/28(水) 23:26:37ID:STJ5f+Tq
ヒント:2乗
0840名前は開発中のものです。2005/10/02(日) 01:56:07ID:gskv2QXE
>>839
それを言うなら、2のN乗だろう
0841名前は開発中のものです。2005/10/02(日) 10:09:53ID:OIAGxN+l
画像の読み込み時にフィルターかければ2のN乗にかってになっちゃうと思いますが
フィルタかけないとそのままのサイズで読み込まれるのかな?
0842名前は開発中のものです。2005/10/03(月) 14:17:07ID:b9jVRaHQ
横スクロール2Dシューティングの制作で板ポリゴンにアルファ付きPNGを貼り付けて
スプライト替わりに使ってるんですが三枚以上重なったところで一番上の板ポリの
右側のアルファ境界が縁取りしたように背景まで透過する現象が起きています。
グラボはATI、NVIDIAと色々試していますがどれも同じ現象です。
これはD3D公知のバグかなんかなんでしょうか?
0843名前は開発中のものです。2005/10/03(月) 15:29:19ID:qjZo7wPY
>>842
そんなバグは聞いたことがないので、お前さんのプログラムが
おかしいだけだと思う。
0844名前は開発中のものです。2005/10/03(月) 15:30:21ID:qjZo7wPY
ついでに言うと、ATIでもNVIDIAでも発生しているなら、
ちゃんと仕様通りの可能性大。

人のせいする前に、自分のプログラムを疑え。
0845名前は開発中のものです。2005/10/03(月) 15:51:32ID:b9jVRaHQ
>>843
>>844
書き方が悪くて申し訳ありません。
これでも散々疑って試してみたのです。
板ポリ止めて箱にしてみてたり、テクスチャのフォーマットも色々変えてみました。
ただどうしても二枚で大丈夫で三枚目からおかしくなる症状が自分の経験則では
理解できなくてこうして質問させて頂いています。
掲示板での書き込みは不慣れなもので不躾な点ももあるかとは思いますがご容赦下さい。
0846名前は開発中のものです。2005/10/03(月) 16:36:09ID:qjZo7wPY
Zバッファ、ステンシルバッファは使っているのか否か?
描画順はどうなっているのか?
スプライトの端=テクスチャの端なのか?
「テクセルとピクセル間の直接マッピング」の項は理解しているのか?
テクスチャフィルタリング、テクスチャアドレシングモード、 テクスチャラッピングは
理解しているのか?

こんなところで効く前に、ステップ実行等でデバッグした方がいいと思うぞ。
スワップエフェクトをCOPYにして、スプライト1枚描画するたびにPresentとキー入力待ち
でも入れておけば、どこでおかしくなるのか分かるだろう。
0847名前は開発中のものです。2005/10/03(月) 16:37:46ID:ISXXfAQq
>845
とりあえず本気で解決したいと思ってるなら、
よく解らん説明よりスクリーンショットぐらい出せ。
0848名前は開発中のものです。2005/10/05(水) 09:39:43ID:UxKKWdII
単純にしっかり設定されてるテクスチャステージステートが2枚までなんじゃねーの?
それかミップマップが変なことになってるとか。
とか、いい加減なこと言ってみるw
0849名前は開発中のものです。2005/10/05(水) 13:57:07ID:P/i86CO3
>>845
マザボのAGPドライバはちゃんと最新の入れてる?
俺も板ポリじゃないけど、同じようなことになったことがある。
プログラム的に問題ないと思ったら、ハード面疑った方がいい。
0850名前は開発中のものです。2005/10/06(木) 02:17:53ID:AY7ac6mV
半透明部分にもZ値があるせいで、うまく重なってないだけじゃないのか?
ちゃんとソートしる
0851名前は開発中のものです。2005/10/08(土) 02:17:20ID:BaTRUxEl
鰻を3Dで表示したいんです。
0852名前は開発中のものです。2005/10/08(土) 02:53:10ID:ouZcSp9y
>851
ム板に引きこもってろ。
0853名前は開発中のものです。2005/10/08(土) 10:51:47ID:gpIr/MEu
ま・・・まぐろ?
3D MAG LOADERっすか
0854名前は開発中のものです。2005/10/08(土) 15:52:02ID:n+YDLIDB
MAGとかPIとか、懐かしいねぇ
0855名前は開発中のものです。2005/10/08(土) 20:13:56ID:AzKw7bav
質問ですいません。今Visual BasicでDirectXライブラリを使ってプログラムを作っていてその中でオーバレイ上に
ColorKeyを使う部分があり、定数、DDCKEYCAPS_SRCOVERLAYで判断しているのですが、DirectX Caps Viewer
で調べたところ下記のような結果でした。
実際、GeForceの方は値がないのでプログラムでColorKeyが使えないのですが、元々GeForceではColorKeyは
使えないのでしょうか。
値を追加して使えるようにしたり、または別の方法で使えるようにしたりできるのでしょうか。

ATI Radeon 9600
 DDKEYCAPS_DESTOVERLAY
 DDKEYCAPS_DESTOVERLAYYUV
 DDKEYCAPS_SRCOVERLAY
 DDKEYCAPS_SRCOVERLAYCLRSPACEYUV
 DDKEYCAPS_SRCOVERLAYONEACTIVE
 DDKEYCAPS_SRCOVERLAYYUV

GeForce FX5500
 DDKEYCAPS_DESTOVERLAY
 DDKEYCAPS_DESTOVERLAYONEACTIVE
0856名前は開発中のものです。2005/10/26(水) 00:53:48ID:mIo8wBwy
DirectX9をインスコしようとしたら、
「このOSには対応してねえ!」といわれます。
win2000+sp4です。

違法コピー版と認識されているのでしょうか。
0857名前は開発中のものです。2005/10/26(水) 01:43:33ID:oqHGEfQp
SDKか
0858名前は開発中のものです。2005/10/26(水) 23:57:57ID:mIo8wBwy
そう、SDK
0859名前は開発中のものです。2005/10/26(水) 23:59:31ID:I00czP7t
2000は今年くらいにSDKのサポートから外されたよ
0860名前は開発中のものです。2005/10/27(木) 00:04:46ID:bOzR+4cG
2000は最新のSDKから見捨てられたはず。
0861名前は開発中のものです。2005/10/27(木) 01:18:24ID:BYRLQUWY
そうか。ありがとう。

後、DirectXで開発するためにピクセルシェーダ対応のビデオカードを
買おうと思うのだが、チップセットとかインターフェース(AGPとか)は気にする必要ある?
最近のPCは疎いので、、

いままでコンシューマ開発だったのでPCは知らないのよ。
板違いかな。
0862名前は開発中のものです。2005/10/27(木) 01:31:24ID:dxsiFruV
>>861
新しいPCを買うなら恐らく自動的にPCI-Expressになるかと。
今使ってるPCにVGAを乗っけるなら、インターフェイスの選択の余地は無いのでは?
0863名前は開発中のものです。2005/11/01(火) 14:03:52ID:Y3Zj/C/T
lockしないでDirectDrawサーフェイスからDirect3D9サーフェイスにデータを転送する方法ってありますか?
教えて下さい!
0864名前は開発中のものです。2005/11/01(火) 15:46:50ID:reaSso5i
ない。
そもそもDirectDrawサーフェスは同じデバイスで扱うことができないし。

Direct3DSurface9同士でよければ可能だが。
0865名前は開発中のものです。2005/11/01(火) 16:04:32ID:VkhR35MA
GetDCでデバイスコンテキストを取得すれば出来ないことはない。
0866名前は開発中のものです。2005/11/01(火) 17:06:34ID:Y3Zj/C/T
>>865
DCをとった後どうするんでしょうか?
IDrawVideoImageというインターフェースがあったのですがこれを使うんでしょうか?
0867名前は開発中のものです。2005/11/01(火) 17:55:01ID:VkhR35MA
Win32API
0868名前は開発中のものです。2005/12/20(火) 03:07:51ID:WMPdnOCu
遠景を表現する方法ってどんな方法がある?
球にマッピングしても不自然だし・・・
法線内側で箱状にしても不自然だった・・・
考え方だけでもいいのでアドバイスお願いしますorz
0869名前は開発中のものです。2005/12/20(火) 03:57:42ID:FaHGR1/a
どう不自然なのかよく分からないが、
遠方を描画するのは球でも箱でもメジャーなやり方では。
環境マップとかの話になると、箱とか双放物面になるのかな。
0870名前は開発中のものです。2005/12/20(火) 09:33:54ID:7CtF6n3+
>>868
ボックス、球が普通。
視点がパンしない場合は円柱、または1枚絵を背景に使う場合も。

後者はスターグラディエーター2(カプコン)が芸術的だった。
0871名前は開発中のものです。2005/12/20(火) 20:31:44ID:48KY6nMF
遠景を全部ポリゴンで作r
0872名前は開発中のものです。2006/01/17(火) 02:14:37ID:Lcnts4sV
フォグについて。
フォグがかかるポリゴンが、距離18000先にあって、
視点を回転させると、フォグの強度が上がったり下がったりする
(ポリゴンまでの距離は変化しない)
んですが、なんでですか

0873名前は開発中のものです。2006/01/17(火) 02:17:44ID:Lcnts4sV
ひょっとして、線形フォグだからポリゴンがでかいもんんで、
視点からポリゴン頂点への距離が変化してたからだったりして
0874名前は開発中のものです。2006/01/17(火) 02:22:23ID:Lcnts4sV
線形フォグじゃなくて頂点フォグ。
実験で873は違うっぽい
0875名前は開発中のものです。2006/01/17(火) 02:29:52ID:btpyDufx
>>874
頂点フォグは計算を端折ってるからいい加減かもね。
範囲ベースのフォグを使用するといいかも。
0876名前は開発中のものです。2006/02/01(水) 15:28:13ID:X4JHCij2
3Dアクションのマップってどう作るのが一般的なんでしょうか?
フリーゲームのフォルダを漁ってみると、マップのXファイルがまるごと入っていたり
するのですが、Xファイルから当たり判定の取得ってできるんでしょうか。
0877名前は開発中のものです。2006/02/01(水) 15:42:15ID:l48r1Fzn
できる
08788762006/02/01(水) 17:36:13ID:X4JHCij2
D3DXComputeBoundingBoxで箱を取得するまでは出来たのですが、
マップ全体を包む箱になってしまいます。
複雑なXファイルの形状を取得するにはどうすればいいのでしょうか?
0879名前は開発中のものです。2006/02/01(水) 17:50:29ID:zsLxHCNF
>>878
そもそもBoundingBoxがどういう意味か調べてみろ。
exciteなりgooなりの英和辞書があるだろw
08808762006/02/01(水) 18:04:03ID:X4JHCij2
>>879
excite翻訳は制限箱と返してきました。
箱状の頂点座標のことですよね?
0881名前は開発中のものです。2006/02/01(水) 18:06:46ID:52d+JDgR
直方体ならノード単位とか判定させたい最低範囲に分割。
面に沿うなら面との判定。
乗せる物体も判定部位や条件によって揃えるデータは様々。
0882名前は開発中のものです。2006/02/01(水) 18:11:41ID:zsLxHCNF
。。。w
bound = 境界。要するに境界ボックスのこと。
Xファイルを含む最小の箱を返してくる関数だからマップ全体を包む箱になるのは当然

マップのXファイル云々を言う前にマップはどういうマップなんだ?
閉空間のマップならそれなりにめんどくさくなるぞ
08838762006/02/01(水) 18:18:23ID:X4JHCij2
>>882
マップは分岐のあるトンネルのような閉空間です。
0884名前は開発中のものです。2006/02/01(水) 18:32:11ID:AaW4sDxf
形状を把握するのなら、ポリゴンを一つ一つ見ていくしかない。
さらにそのデータをどうするかというのを自分で考えて、処理を書かなければならない。
どこまでの精度が必用かによってロジックは異なるし、
判定の高速化や効率化をベンチをとりつつ最適に調整しなければならない。
一朝一夕で出来ることではないが、まあがんばれ。
0885名前は開発中のものです。2006/02/01(水) 18:37:22ID:6ZhYGdPT
コリジョンディテクションの技術を「どうすればいんですか?」の一言で手に入れられたら
誰も苦労しないんだが。
08868762006/02/01(水) 18:53:50ID:X4JHCij2
>>884
ありがとうございます。
やることは多そうですが、地道に考えていこうと思います。

>>885
すべて教えてもらおうとしてきたつもりではなかったのですが、
仰る通り楽をしようとしました。お気に触られたようでしたらすみませんでした。
0887名前は開発中のものです。2006/02/01(水) 20:45:29ID:CL8bLvaf
ま、これでも読んどけ

ttp://www.amazon.co.jp/exec/obidos/ASIN/493900791X/
0888名前は開発中のものです。2006/02/02(木) 03:35:57ID:gRZL/mzV
うは
こんなに範囲の限定された本が出ているのか。
最近はいい時代になったな。(読む方にとっても書く方にとっても)
0889名前は開発中のものです。2006/02/09(木) 23:15:42ID:TZ2DGw+s
DirectX7。
サーフェースのピクセルフォーマットを、
R8G8B8A8(32bit)
で作製したい(アルファチャンネルを持つ)のだが、どうやれればいいですか?
普通に、作製すると、プライマリが16ビットだからか、16ビットになります。
0890名前は開発中のものです。2006/02/10(金) 14:43:46ID:yxCh92dg
じゃプライマリも32bitで作れば。デスクトップが32bitになってないと作れないが。
それとカードが対応してないと無理だから確認して
0891名前は開発中のものです。2006/02/10(金) 17:11:23ID:hihqEItj
いや、プライマリとオフスクリーンサーフェスは普通に
違うフォーマットで作れるが…
ヘルプにも作り方が書いてあるし。
0892名前は開発中のものです。2006/02/10(金) 19:56:20ID:0IZWNT7D
>>891
具体的にどこ?
0893名前は開発中のものです。2006/02/10(金) 22:51:51ID:d9CO7I+x
>>890
アホいうな糞。
プライマリはビデオメモリだ。アルファ値なんて存在しない。
>>891
どこ?サーフェース作製時に、DDSDESC2とかいう構造体で、
サーフェース能力指定する訳だが、ピクセルフォーマットを指定したら
エラーになった。INVALID_PARAMとか。
あと、他んとこに「アルファを含む」とかいうフラグを指定してもエラー。
しかし、D3Dのデバイス能力は、テクスチャアルファのビットが1になっとる。
0894名前は開発中のものです。2006/02/10(金) 22:54:57ID:d9CO7I+x
本屋でDXに関する本を見たが、テクスチャアルファをもつサーフェースの作製方法が
どれにも載っていない。
1冊だけあったが、それはD3DXというライブラリを使用するもので(DX9で)
そのD3DXライブラリのソースがDX9SDKに入ってなかった
0895名前は開発中のものです。2006/02/10(金) 23:59:07ID:hihqEItj
>>892-893
[DirectDraw]-[DirectDrawの要点]-[サーフェス]-[サーフェスの作成]-[オフスクリーンサーフェスの作成]

>また、ピクセル フォーマットがプライマリ サーフェスのピクセル フォーマットと
>異なるサーフェスも作成できる。ただし、この場合には、システム メモリの使用が
>制限されるという弱点がある。次に示すコードでは、8 ビット パレット化サーフェス
> (現在のディスプレイ モードがピクセルごとに 8 ビット以外であると仮定する) を
>作成するために、DDSURFACEDESC2 構造体メンバを準備する方法について示す。

次にサンプルコードと、その後にワイドサーフェスに関する記述がある。

他にもDirect3DのチュートリアルでもD3DX無しでテクスチャサーフェス作っているし、
たしかDX7のSDKならD3DFrameにテクスチャ関係のソースもあったかと。
0896名前は開発中のものです。2006/02/11(土) 21:36:18ID:lAR/R2x2
>>895
D3DFrameでやってることから、なんとか32ビットアルファ付きが作成できました。
ありがとう。
0897名前は開発中のものです。2006/02/16(木) 07:59:44ID:rDkYJJ3P
 縁取りを表現するためにポリゴンオブジェクトを一回り大きくして法線を反転して
黒く表示する手法がありますが、Xファイルを読み込んで自動的に縁取りようのポリゴンを
付加してくれるツールって無いですかね。

 普通にモデリングツールで拡大したりすると、中心からの距離によって線の厚さが
変わってくるし…
0898名前は開発中のものです。2006/02/16(木) 08:46:03ID:C4eltmhJ
普通はシェーダ使うからそんなツール作らない。
0899名前は開発中のものです。2006/02/16(木) 23:10:57ID:HgwrBgLl
>897
モデルを作るとき、ついでに一回り大きなモデルも作って
出力しとけば委員ジャマイカ?
0900名前は開発中のものです。2006/02/17(金) 01:42:59ID:pMnLEopp
>>899
エッジ描画用のモデルは単純に拡大するとは違う処理だから、
モデリングツールにそういう機能がないってことかと。

頂点シェーダで2〜3行で済む処理だから、普通は別モデルとして
データを持ったりはしないと思う。
シェーダで処理すれば実行時に線の太さを調節できるしね。
09018972006/02/18(土) 01:23:17ID:jGbiZdO7
>>898->>900

コンバータ作っちゃったよorz
0902名前は開発中のものです。2006/02/25(土) 01:03:39ID:Kaa3X1K0
質問です。
私は、去年より3Dのアクションゲームを制作している初心者なのですが、
画面全体にかかる、霧のようにもやもやっとしたエフェクト表現をしたいと考えています。
この霧ですが、常に表示位置がプレイヤー位置に対して固定されているのではなく、
プレイヤーが前へ歩けば霧も後ろへ下がっていくような、きちんと奥行きのあるものにしたいです。
私の考えてみた方法は、最初にプレイヤーから一定距離以内の3D空間(球)へランダムにA点をいくつか配置し、
A点がプレイヤーの移動によって一定距離(球)を超えたら、球の反対側へ移動させることで無限に続く霧とし、
そのA点全てから、点を中心とし霧テクスチャを貼った長方形ポリゴンをビルボード状に描画するという方法です。
正直・・どうなるか気にはなるのですが、私がやろうとすると時間がかかってしまうため、まだ試しておりません。
こんな面倒臭がりな私ですが、よろしければ、私の霧再現方法がいけそうかどうかの、ご助言をいただけないでしょうか。
以上です。よろしくおねがいいたします。
0903名前は開発中のものです。2006/02/25(土) 01:12:17ID:p8ryOYmk
濃淡のある霧ならいいんじゃね?
アクションゲームだから霧のテクスチャーの向きを決めやすいだろうし。
ただし、普通はコレ↓
ttp://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/directx9_c/directx/graphics/programmingguide/advancedtopics/framebuffer/fogtypes/pixelfog.asp
0904名前は開発中のものです。2006/02/25(土) 01:18:39ID:IfP3m5iC
いけるんじゃないの
0905名前は開発中のものです。2006/02/25(土) 01:55:46ID:5d11EVBg
自力でそこまで考えたってことがいいことだと思った
0906名前は開発中のものです。2006/02/25(土) 02:02:05ID:pbYlIp6T
でも、どうせなら自分で実行するまでして欲しい
0907名前は開発中のものです。2006/02/25(土) 03:15:55ID:p8ryOYmk
>>902のやり方で問題になるが、
・遠くのポリゴンが突然現れる。
・投影面まで迫ってきたポリゴンが突然消える
これらはαブレンディングのやり方で解決するとして、

・Zバッファとの相性の悪さ。

例えば建物の角に差し掛かったとき、
・Zバッファを使わないと、角とその向うの風景で霧の濃さが変わらない。
・Zバッファを使うと、角の手前の壁面で霧のポリゴンがブツ切りになる。
というような問題が生じる。

だからポリゴンに頼らずにフォグを使うのが無難。使うにしても、
フォグを有効にして壁面やその向うの風景を描画してから、
フォグよZバッファを無効にしてお化粧程度に軽く霧ポリゴンを描画するのが
いいと思う。
0908名前は開発中のものです。2006/02/25(土) 05:10:19ID:9iRbb0YP
GIMPでレイヤーとして作ったグレースケールのものを、
アルファチャンネルとして画像に反映させて
それをpngのα値として保存できっる?
0909名前は開発中のものです。2006/02/25(土) 08:53:59ID:06GMcHAz
できっる?
0910名前は開発中のものです。2006/02/25(土) 18:34:19ID:zYUYY4hi
コレ?
ttp://tpot.jpn.ph/t-pot/program/76_VolumeFog/index.html
0911名前は開発中のものです。2006/02/26(日) 08:25:09ID:dTtz2MU3
別スレから来ました。

同じような事やった人がいたら聞きたいんですが、
3Dキャラクターの服や髪の揺れの実装で揺れる部分のモデルはどうやって
作ってるんでしょうか?
(今使ってるのはメタセコLEです)

布のテストコードは書いたんですが、自前で頂点グリッドを作ってるので
順序よく頂点を計算出来ます。
しかし、髪の毛のようなちょっと複雑な形状ではどうやってるのかわからないです。
(アキラの鉢巻とかは自前で組んだものリンクするだけで良いと思いますが)
0912名前は開発中のものです。2006/02/27(月) 01:53:01ID:M1NCZhu8
>>911
揺らさなくて良い
0913名前は開発中のものです。2006/02/27(月) 01:56:19ID:/11puAhO
手足と一緒じゃない?
0914名前は開発中のものです。2006/02/27(月) 02:35:12ID:ilMX+Bbl
それはボーンでは?
0915名前は開発中のものです。2006/02/27(月) 04:19:40ID:dAYC5WSX
そう、そのボーンで
0916名前は開発中のものです。2006/02/27(月) 09:13:32ID:c8Xb3f1o
ボーンも大変だな
0917名前は開発中のものです。2006/02/27(月) 14:32:36ID:B+9WtNTM
ぼいーんぼいーん
0918名前は開発中のものです。2006/02/27(月) 17:34:56ID:gjTyS3us
まゆげ
09199112006/02/28(火) 22:47:40ID:1rPz5eKD
要は同人ごときで揺れものはいらんて事か。

でも、ボーンでちょっとアイディア浮かんだ(多分車輪の再開発だろうけど)
0920名前は開発中のものです。2006/03/22(水) 22:49:06ID:+4SK85pH
背景ブラーはどうすればいいですか?
背景とキャラがあったらどういう順番で書いてバッファはいくついりますか?
0921名前は開発中のものです。2006/03/23(木) 16:42:01ID:GIaKujt9
Win95時代にVBでAPI呼び出しでゲーム作ってたオレなんだが、
今の時代2DやるにしてもDirectX3Dつかうと便利らしいんで勉強したいんだけど、
コンパイラはVC6とかでいいのかな?
さすがに古いから最近でてるようなもののほうがいいの?
C#とか.NETって中身しらないけどc++適当に知ってるならあっちのコンパイラがいいの?
0922名前は開発中のものです。2006/03/23(木) 21:36:19ID:oLVbqIbi
>>921
vc6に慣れると後々面倒なので最初から.netにしる
もうすぐvs2005でるからそれ買え(もうでたかも?)
0923名前は開発中のものです。2006/03/23(木) 23:53:50ID:LhNcYWZL
最新の DirectX SDK は VC6 に対応してないんだな。
というわけで

VC++2005 Express Edition + PlatformSDK + DirectXSDK

をオススメする。
0924名前は開発中のものです。2006/03/24(金) 10:23:18ID:2x4zPrfI
サンクス

つーかすごいね今は
express版は無料とは…しかも普通に使えるみたいだし
自分が高校生のころはVC4が10万だからあきらめて、VB4(3万円)ににげたってのに
0925名前は開発中のものです。2006/03/24(金) 14:45:05ID:QI12QPFz
フリーが出たから客を逃がさないため、増やすためにでしょ?
0926名前は開発中のものです。2006/03/26(日) 16:53:09ID:4jFe4Scb
3Dの同一キャラを何十体も表示する時、一体だけ読み込んで

描画→移動→描画→移動

で、最後に表示、とするのと
何十体分を全部読み込んで一括表示するのでは
どちらが一般的なのですか?
0927名前は開発中のものです。2006/03/26(日) 17:02:56ID:60rseIt8
>>926
同じモデルを使用数分読み込むなんて時間もメモりも無駄でしょう。

> 描画→移動→描画→移動
「移動」になるかは実装次第。

> 何十体分を全部読み込んで一括表示するのでは
一括と言ってもその何十体のキャラはそれぞれ移動したりするし、
それぞれに対して描画命令を呼ぶんでしょう?
0928名前は開発中のものです。2006/03/26(日) 17:40:14ID:M3SaxWSJ
>926が何を言いたいのかイマイチよくわからんが…

かく言う俺は、同一モデル(つっても2D描画用だから4頂点だけ)で
テクスチャアドレスだけ異なるデータを多数読ませてる
いちいちVertexBufferロックしてテクスチャ座標書き換えんのマンドクセ
どうせ大した容量じゃねーし(せいぜい100Kb)
0929名前は開発中のものです。2006/03/27(月) 14:10:21ID:TZH2Qp8M
>>926
3Dとか2Dとか関係無いですな
0930名前は開発中のものです。2006/03/28(火) 09:35:34ID:hQv6Ivkd
だから2Dスレ?行けって方が変だし、その突っ込みも外れている気がするがw

サンプルのメッシュクラスをそのままだと、姿勢制御とメッシュが一対一だから、
再計算がいらない時に、前者だと無駄に見えちゃうのかもね。
0931名前は開発中のものです。2006/07/28(金) 20:17:22ID:jSlMO7QK
PNGの透過情報そのままつかいたいなぅ
0932名前は開発中のものです。2006/07/28(金) 21:23:48ID:BPfFbEG3
>>928
>いちいちVertexBufferロックしてテクスチャ座標書き換えんのマンドクセ

シェーダの側でmov oT0.xy,c0.xyとでも書いておいてシェーダ定数だけ書き換えた方が早くね?
モデルも一個で済むし。
0933名前は開発中のものです。2006/07/29(土) 01:02:21ID:5pQF6T1y
シェーダ定数の転送も頂点バッファの切り替えも、
どっちも描画パイプラインはぶったぎることになるわけだし、
コスト的には大して変わらんよなあ。
Lockが面倒くさければDrawPrimitiveUPを使えばいいじゃなーい。
へらへら。
0934名前は開発中のものです。2006/08/05(土) 01:00:58ID:TcBxlLdT
てstあげ
0935名前は開発中のものです。2006/08/05(土) 22:23:23ID:U0Fgap1T
みなさんモデルのフォーマットって何ですかね?
自分Xファイルだったんですが、やっぱり独自フォーマットですか?
だとするとモデリングソフトやモーションの編集ソフトとかも
自作するわけですかね?
0936名前は開発中のものです。2006/08/05(土) 23:47:40ID:TcBxlLdT
そりゃないだろ
0937名前は開発中のものです。2006/08/06(日) 00:29:50ID:oFPRg3ro
>だとするとモデリングソフトやモーションの編集ソフトとかも
>自作するわけですかね?

ないないないないないないw

自作でやるなら、その環境用のSDKを使って出力プラグイン作るか、
それこそXあたりからの変換プログラムを別途用意する。

俺は使って無いけど、MD2、MD3あたり(Quakeのフォーマット)を使ってる人も多いそうだ。
0938名前は開発中のものです。2006/08/06(日) 00:48:49ID:T4AOumaO
>>935
Xファイルに不満がなければ、無理に独自フォーマットにする必要はないよ。
なんとなく独自フォーマットの方がかっこいいとか、そういう理由で変えたいなら
やめておいた方がいい。
0939名前は開発中のものです。2006/08/06(日) 00:58:58ID:JH7W+62t
そこでDNMですよ。
09409352006/08/06(日) 02:36:33ID:GDaOHyUH
なるほど。ありがとうございます。
ツールまで自作となると途方もないのでちょっと安心しました。

はじめは不満はなかったのですが、
メッシュ間のモーションの結合、例えば
「人型のメッシュに剣のメッシュを持たせる」
のようなことをしようと思って、
始めは手のボーンの先に剣のボーンを延長して
モーションを作成しようかと思ったのですが、
モデリングは得意でなく、作り直すのが大変なので
他の方法を考えることにしました。
作り直さないとすると既存のメッシュ間のモーションを作成するツールが必要だなぁ
などと考えて、ならばいっそのこと独自フォーマットにしてしまおうかと思ったのです。

実際、装備とかはどのように実装されているのでしょう?
やはり事前に剣や盾のボーンを手の先に作っておくものなのでしょうか。
0941名前は開発中のものです。2006/08/06(日) 02:59:38ID:6ljY+nkf
データが別々になっていたって、後から手のフレームの配下に結合すればいいだけ。
Xファイルだろうが独自フォーマットだろうが関係ない。
0942名前は開発中のものです。2006/08/06(日) 03:23:45ID:oFPRg3ro
>実際、装備とかはどのように実装されているのでしょう?
>やはり事前に剣や盾のボーンを手の先に作っておくものなのでしょうか。

概ねそんなもん。
基準モデルに接続ノードを割り振っておくのはよくあること。

帽子ノード、首輪ノード、剣握るノード、盾持つノード、エトセトラ。

別途用意しなくても、近しい位置のノードに適当なオフセットかますだけでもいい場合も多い。
帽子なら頭に多少高さを足すとか、剣なら手首から少し内側にずらしてやるとか。
要求が一般化できない以上、必要に応じて試行錯誤するしかないところなんで、
好みの形に収まるまで、いろいろ試してみなっせ。
09439352006/08/06(日) 04:30:16ID:GDaOHyUH
みなさんありがとうございます。
そんな感じで実装してみます。
0944名前は開発中のものです。2006/08/06(日) 07:47:22ID:SMYgJlZG
>>933
拡縮や回転があるとどうしてもシェーダ定数を弄れるようにしておきたいと思うけどね。
後、Lockだけは別じゃね?
あれは方向が逆だから。
0945名前は開発中のものです。2006/08/08(火) 20:55:56ID:WF5N+nKv
DirectX 9.0SDKのヘルプって日本語版はないんでしょうか?
0946名前は開発中のものです。2006/08/08(火) 21:07:59ID:zZVFc5Ct
最新版のって意味なら無いと思うけど、October 2004ならここに
ttp://www.microsoft.com/japan/msdn/directx/downloads.aspx
0947名前は開発中のものです。2006/08/19(土) 22:54:00ID:+gAmHKio
Direct3Dというより3D全般の話題にあたるかもしれませんが、ここで質問させて頂きます。
どこか適切なスレがあったら誘導して下さい。


2Dの場合の”スプライト”にあたるような
3Dのオブジェクトに対する名前の定番ってないでしょうか?
クラスの名前を付けるのに迷っています。

現状、C++で開発しているので 3D〜〜 の様な変数名は使えないし
立体という意味で solid という名前も検討しましたが、固体・液体・気体の固体のイメージがあるので避けました。
背景や固定物も含むので character の様な名前も使いにくいです。

皆さんがどんな名前を付けてるのかというのも教えていただければ嬉しいです。
0948名前は開発中のものです。2006/08/19(土) 23:01:33ID:iyWXwWdL
ビルボード
0949名前は開発中のものです。2006/08/19(土) 23:05:38ID:yVrv7+mw
>>947
スプライトと何が違うのさ?
たぶんビルボードなんだろうけど。
0950名前は開発中のものです。2006/08/19(土) 23:39:30ID:Kg/n9ytV
>>947
クラス名・変数名に迷ったら書き込むスレ。Part8
http://pc8.2ch.net/test/read.cgi/tech/1154448184/
0951名前は開発中のものです。2006/08/20(日) 00:28:51ID:FmTUYmId
>>947
逆にFVF毎に3D描画に関係無いような名前を付けてる俺マッシュ。
0952名前は開発中のものです。2006/08/20(日) 01:39:46ID:ekgZYi2k
>>947
hoge
0953名前は開発中のものです。2006/08/20(日) 02:25:33ID:i51kMu5X
>>948-949
947はビルボードの名前を聞いているんじゃなくて
2Dオブジェクトの名称の例としてスプライトを出しただけかと。

で、3Dの場合だとMeshあたりかね。
0954名前は開発中のものです。2006/08/20(日) 03:40:50ID:IV6K60G4
モデル
0955名前は開発中のものです。2006/08/20(日) 09:42:05ID:WG+AEKUI
プリミティブ
0956名前は開発中のものです。2006/08/20(日) 12:04:21ID:UXPgli+S
おいらはobjectとか使ってるなぁ...DxObjとか...
オブジェクト指向とかのobjectと混同するから使わない人もいるだろうけど。
もっとイイの無いかね?

ModelとかMeshはおいら的には違うなぁ。
x-fileなんかを読み込んだ物がModelで、そん中にMeshとかFrameがあって、
Modelを3D空間に配置した物がObject、って使ってる。
1つのModelを複数個表示することもあるわけだし。
PrimitiveはDrawPrimitive()のPrimitiveってカンジがする。
0957名前は開発中のものです。2006/08/20(日) 15:01:19ID:JTywg2ac
モデルとメッシュ
0958名前は開発中のものです。2006/08/20(日) 22:51:38ID:IV6K60G4
>956
>1つのModelを複数個表示することもあるわけだし
一つのスプライトを複数個表示することもある訳だが
0959名前は開発中のものです。2006/08/21(月) 08:35:04ID:dkS6CWGq
>>947
シンシアさん
ttp://ja.wikipedia.org/wiki/%E3%83%8E%E3%83%BC%E3%83%88:X68000
0960名前は開発中のものです。2006/08/31(木) 23:10:20ID:5wxtWzxs
テクスチャサーフェースを、マップチップとして、例えば16x16個のパーツにした場合、
テクスチャ座標使って、どのチップを表示するか決める訳だけど、
マップをちょっと拡大すると、隣のチップのドット情報が、わずか1ドットぐらい描画されて、
四角いシマシマ状になるんだけど、
これを回避するには、チップ間を2ドットあけて両チップの最後のドットを1ドット延長して書いておけばいいが、
もっとスマートなやり方で治らないですか?
0961名前は開発中のものです。2006/08/31(木) 23:23:35ID:sIr8NDj7
   0.5/テクスチャー分割数  1-0.5/テクスチャー分割数
  ↓               ↓
 ┌┬┬┬┬ … ┬┬┬┬┬┐
 ├┼┼┼┼ … ┼┼┼┼┼┤
 └┴┴┴┴ … ┴┴┴┴┴┘
0962名前は開発中のものです。2006/08/31(木) 23:33:40ID:JbQMb9iU
>>960
ヘルプの三角形ラスタ化ルールとかいう項目に詳細な説明が載ってる。
0.5ずらすのもいいけど、マシンによって違うし、
ひっくり返すとポリゴンの裏面は逆にずれてるので両面ポリゴン使ってるときはヤバイ。
さらにバイリニアフィルタ掛けるともうどのくらいズレルか全く予想がつかないので
クランプテクスチャアドレッシングモードがオススメ。
0963名前は開発中のものです。2006/08/31(木) 23:36:58ID:WZnRnl1o
0.5ずらしても1ピクセル分の範囲は0.0-1.0になるので、1.0の境界線は終了地点であり開始地点になる。
つまり隣の色が出てしまっても間違いとは言えない。
隣の色を引っ張ってくるかはビデオカード次第。
これを回避するには、微妙に終了座標を縮めるしかない。
0964名前は開発中のものです。2006/08/31(木) 23:49:45ID:JbQMb9iU
でもぶっちゃけ、チップなんて使って作るぐらいなら、
最初からモデリングソフトでそういうモデルを作れといいたい。(チップなんて使わずに)
むしろ、ある程度まとまったモデルをチップのように貼れといいたい。

ハードにあった作り方というものがある。
これはどんなにハードが進化してもどうにもならん。
解決しようとするのは極めて困難だ。
その時代にあった作り方をするがよいわ!
それが嫌なら地獄をみろ!
0965名前は開発中のものです。2006/09/01(金) 01:21:24ID:bbAaczJt
>0.5ずらすのもいいけど、マシンによって違うし、

流石に最近では見なくなった気がするけど、今でもそんなマシンはあるのかね。
0966名前は開発中のものです。2006/09/01(金) 01:31:12ID:4647tUfZ
過疎スレだと思ってたが、思ったよりレスがあったり・・・。
0.5ずらすのは既にやってました。テクスチャ座標を1ドット分の半分の値を、引いたり足したりで。
しかし、治らない。
多分、拡大されたときにテクスチャをぼかす、バイリニアフィルタをやってるから?
そこで、テクスチャ座標1ドット分の値を、引いたり足したりしたが、やはり拡大されてくると、
隣のチップのドットが出てくる。
クランプテクスチャアドレッシングモードは、テクスチャ座標が1.0より上の場合に有効なので、
マップチップの隅にあるパーツ以外では使えない。
やはりスマートな方法が見つからず。
0967名前は開発中のものです。2006/09/01(金) 01:37:20ID:4647tUfZ
2ドット分を加算減算したら上手くいきました。
しかしチップの上下左右の2ドットが表示されません
0968名前は開発中のものです。2006/09/01(金) 06:42:25ID:w52JDnCq
>>966
>クランプテクスチャアドレッシングモードは、テクスチャ座標が1.0より上の場合に有効なので、
>マップチップの隅にあるパーツ以外では使えない。
いや、だから、テクスチャを無理に1枚に敷き詰めようとするからじゃん。
テクスチャなんて切り替えたってそこまで速度下がらないよ。
シェーダ使ってりゃ死ぬほど切り替えるんだぞ。
マップチップなんてウンコみたいな数だろ。速度に影響しない。
0969名前は開発中のものです。2006/09/01(金) 08:38:33ID:ZbJ3UMQE
マップチップは敷き詰めるのが普通かと思うんだが
0970名前は開発中のものです。2006/09/01(金) 11:31:44ID:4647tUfZ
マップチップを利用してポリゴンを100個描画するとき、
頂点を全て設定して1回のDrawPrimitiveを実行するのと、
100回DrawPrimitiveを実行するのとでは、どっちが早いの?
0971名前は開発中のものです。2006/09/01(金) 11:57:10ID:S26duukq
マップチップ系はバイリニアと相性悪いから諦めたほうが……。
どうしてもと言うなら、一度オフスクリーンのレンダーターゲットに
バイリニア無しで敷き詰めて、それを拡大ってのでどう?
0972名前は開発中のものです。2006/09/01(金) 12:33:38ID:0ApikcMy
DrawPrimitiveUPなら若干差が出るかもしれないが、
それでも100ポリゴン程度ならほとんど変わらん。
0973名前は開発中のものです。2006/09/01(金) 14:11:38ID:4647tUfZ
だって、関数呼び出しが99回減るんだから、1回で実行した方が早くない?
0974名前は開発中のものです。2006/09/01(金) 15:27:24ID:SOIOoZPO
>>970
1回のDrawPrimitiveで描画する方が速い。
DirectXのFAQにも書いてある話。
0975名前は開発中のものです。2006/09/01(金) 16:01:49ID:4647tUfZ
>>968
テクスチャ切り替えって、1チップごとにDrawPrimitiveをするって意味ですよね。
じゃ、速度が低下するんじゃん。
0976名前は開発中のものです。2006/09/01(金) 21:59:11ID:XNX6bf8U
テクスチャやステートの切り替えがなくてもDrawPrimitive自体がかなり処理的に重い。
0977名前は開発中のものです。2006/09/01(金) 22:01:44ID:w52JDnCq
>>975
でも、それだと0.5ドットずれる問題(+フィルタ関係全滅)に対して全く打つ手が無いじゃん。
そこで品質を取るか、速度を取るかのトレードオフになると思うんだよね。
ターゲットマシンで一発動かしてみてチップごとにテクスチャ切り替えて
速度的に間に合ったらそれでいいんじゃないの?
0978名前は開発中のものです。2006/09/01(金) 22:02:12ID:4647tUfZ
ケキョーク、1ドットを余分に付加することにしました。
今、変換ツール作ってますが、DIBセクションの作成やらBMPファイルの読み取りやらで
思ったよりまんどい
0979名前は開発中のものです。2006/09/01(金) 22:07:10ID:w52JDnCq
>>978
意味わかんね。
つまり、どういうこと?
チップごとにテクスチャを切り替える方法をやってみたけど遅くて使い物にならなかった?
テクスチャごとにまとめておいて描画すればそんなに遅くはならないと思うんだけど。
0980名前は開発中のものです。2006/09/02(土) 01:14:53ID:rF9mlnnG
0.5ずらすのって、テクスチャ座標じゃなくてポリゴン座標だよ。
ポリゴン座標に 0.5足してみ。
0981名前は開発中のものです。2006/09/02(土) 06:14:27ID:udcl1M/G
DrawPrimitiveを使わなけりゃいいじゃん。
0982名前は開発中のものです。2006/09/02(土) 07:11:20ID:LmoAi9PT
結局、速度も測らずに遅い遅い言ってるだけのクズでFAだろ。
そもそもハードに合わない仕様に無理やりしてる時点でそいつ、およびそいつの環境に未来はない。
0983名前は開発中のものです。2006/09/02(土) 08:15:52ID:38/ohoru
>>982
そんなこと言ってる割にはずいぶんと具体性を欠いた批判だな
0984名前は開発中のものです。2006/09/02(土) 12:51:41ID:/COj+PxF
つーかどのマシン使ってるかしらんが、俺がチップ敷き詰め系のゲーム作った時は
フィルタあろうがなかろうがドットが欠けるとかずれるとかいう現象は起こらなかったが。
0985名前は開発中のものです。2006/09/02(土) 20:50:09ID:eY5cFahb
>>984
てことは、私のグラボ、GF2MXという一昔前のグラボが悪いのか?
これ、ドライバをNIVIDIAからダウンしたのにしたらバグったので、
どっかのオンボードグラボにGF2がある、オンボード用のを利用してる。
0986名前は開発中のものです。2006/09/02(土) 22:01:24ID:LmoAi9PT
はぁ?何言ってんの?
三角形ラスタ化ルールってDirectXのヘルプにも載ってるって言ってるだろ。
0987名前は開発中のものです。2006/09/02(土) 22:05:24ID:LmoAi9PT
http://msdn.microsoft.com/library/ja/default.asp?url=/library/ja/DirectX9_c/directx/graphics/programmingguide/gettingstarted/3dcoordinatesystems/rasterizationrules.asp
0988名前は開発中のものです。2006/09/02(土) 22:47:22ID:eY5cFahb
GF4MXにしたけど同じだった。。。
0989名前は開発中のものです。2006/09/02(土) 23:09:48ID:LmoAi9PT
>>988
ちなみにRadeon9600でも当然ながら同じ。
0990名前は開発中のものです。2006/09/02(土) 23:36:49ID:eY5cFahb
拡大時のぼかしフィルターをOFFにしても同じだった
0991名前は開発中のものです。2006/09/02(土) 23:44:00ID:eY5cFahb
ついに原因判明!!!!!!!!!!
空白のチップは、カラーコード0の真っ黒にしてたのだが、
問題のチップの隣のチップの一番下は、暗い紺色ですが、
これが何故か真っ黒になっており、このY座標を基準に次のチップを描いたので、
そのチップは、通常のチップより1ドット小さいチップで、
その上で確認のために一番下に、はみ出し描画確認用の赤いラインを書いたので、
当然ならが、正常にテクスチャ座標が設定されれば、確認用の赤いラインまで描画されるというこで、
機械の方は正直に素直に動いてくれていたことが分かりましたーーーー!!!!!ありがとう機械!!!!!!!
ちなみに、三角形なんとかルールは全く関係ありません。
0992名前は開発中のものです。2006/09/03(日) 00:03:25ID:zsKqvcJI
>>991
落ち着いて清書してくれ。勿論日本語で頼む。
0993名前は開発中のものです。2006/09/03(日) 00:32:25ID:YAC/s3Yf
チップが2つならんでるとこを想像してみて。
左がわのチップの、一番下のラインは、暗い紺色のはずだった。
ところが、これが未使用チップの色として使用する、黒 だった。
そのチップの右隣のチップをツールで描くとき、
チップの高さは、左隣のチップを基準にして描いたんだ。
そうすると、左隣のチップの一番下は、黒なので、それを基準にして
その右隣のチップを書くと、Yのサイズが1ドット小さくなるんだ。
0994名前は開発中のものです。2006/09/03(日) 02:04:47ID:bRItgJ9B
てゆうか、お前固有の問題は正直どうでもいい。
マップチップなんて使ってる時点で程度が低すぎて話するだけ時間の無駄だし。
0995名前は開発中のものです。2006/09/03(日) 11:26:49ID:2TnsP4e5
時間の無駄だとかいいながらレスしちゃうひとってかわいい☆
0996名前は開発中のものです。2006/09/03(日) 13:24:45ID:bRItgJ9B
まあ、レス返してほしいのはラスタ化ルールの問題をわかってて
ちゃんと対処してる奴だけなんだけどな。
0997名前は開発中のものです。2006/09/03(日) 17:54:38ID:uHyZT6NJ
Direct3D10 では、0.5ピクセルずらすのが不要になるらしい。
0998名前は開発中のものです。2006/09/03(日) 18:49:54ID:YAC/s3Yf
>>996
そんなにそのルールが好きなら結婚すればいいのに
0999名前は開発中のものです。2006/09/03(日) 19:00:23ID:zsKqvcJI
5年近くかけて、やっとたどり着いた次スレの季節。
ttp://pc8.2ch.net/test/read.cgi/gamedev/1132937938/
1000名前は開発中のものです。2006/09/03(日) 19:01:39ID:zsKqvcJI
まぁ、あっちもすぐ埋まりそうではあるw
10011001Over 1000Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。