DirectX総合スレ (Part6)
■ このスレッドは過去ログ倉庫に格納されています
0001DirectX6
2006/11/17(金) 00:38:52ID:lRjOsWKq他の言語使ってる奴はいますぐ消えろ
■過去スレ
DirectX総合スレ
Part 1: http://pc5.2ch.net/test/read.cgi/gamedev/1083728025/
Part 2: http://pc5.2ch.net/test/read.cgi/gamedev/1095863432/
Part 3: http://pc5.2ch.net/test/read.cgi/gamedev/1105333209/
Part 4: http://pc8.2ch.net/test/read.cgi/gamedev/1132937938/
Part 5: http://pc8.2ch.net/test/read.cgi/gamedev/1157727402/
0129名前は開発中のものです。
2007/01/03(水) 00:11:31ID:WUf1mB34きっちり読まずに勘で答えるけど、
D3DDEVTYPE_REFじゃなくて
D3DDEVTYPE_HALはどう?
0130名前は開発中のものです。
2007/01/03(水) 01:14:02ID:YqMAaEXoやってみましたが、それでもだめでした。
ハイエンドなグラボの友達のPCでもダメだったので
やはりヒエラルキの実装に問題があるのでしょうか。
もう一回ソース洗いなおしてみます。。。
何か気づきましたらまたお願いします。
0131名前は開発中のものです。
2007/01/03(水) 03:54:25ID:z0c+FGaT0132名前は開発中のものです。
2007/01/03(水) 08:54:41ID:NNKpeQ1h0133名前は開発中のものです。
2007/01/03(水) 12:21:21ID:VJaAEY5u0134名前は開発中のものです。
2007/01/03(水) 18:42:13ID:NNKpeQ1h今まで使ってきてD3DXLoadMeshHierarchyFromXで落ちるなんてなかったし、
SDKのサンプルプログラムで同じファイル読み込んでみりゃ判るんじゃないかね。
どっちみちヒープエラーってVCに言われてるならどっかでメモリのアクセスが間違ってんだろう。
0135名前は開発中のものです。
2007/01/03(水) 19:56:50ID:ibn1TUIB0136名前は開発中のものです。
2007/01/03(水) 21:27:54ID:Yqqhb3rL0137名前は開発中のものです。
2007/01/03(水) 22:04:01ID:z0c+FGaTまぁ、お前がヒープぶっ壊してるんじゃねぇの?という同じような流れのようだが。
http://www.gamedev.net/community/forums/topic.asp?topic_id=376836
4回目で落ちるよウワーン、という辺りが似てて不覚にもワロタw
0138名前は開発中のものです。
2007/01/04(木) 01:30:44ID:a0F351u30139128
2007/01/04(木) 22:21:17ID:ObCbN5Q8やはりメモリ操作でトンチンカンなことをしていました。
エラーが発生したところより前ばかりをトレースしていたのですが、
発生点よりも後ろのコードでのメモリ操作が原因でした。
ヒープを壊すのは初めてなので、まだ実行していない所が原因
になることもあるのだと、とても勉強になりました。
高級言語での統合開発環境の温床でヌクヌクと育った者としては、
抽象化されて隠蔽されているスタック操作やヒープの動作が
今ひとつよく分からないものですが、
これからはまじめに勉強せねばと思いました。
みなさんありがとうございました。
0140名前は開発中のものです。
2007/01/10(水) 18:13:17ID:o7h3y59i0141名前は開発中のものです。
2007/01/10(水) 18:38:01ID:4WpzaT6j0142名前は開発中のものです。
2007/01/14(日) 04:21:21ID:gu/ia/06厳しい競争を勝ち抜いて生まれてきたはずなのにな。
0143名前は開発中のものです。
2007/01/14(日) 05:57:46ID:MKAkOouqいますぐお父さんのチンコに額を擦り付けておkい
0144名前は開発中のものです。
2007/01/16(火) 09:23:35ID:KHP7pGgl2Dスプライト表示、みたいなことをしたいんですが、
キャラクタを10種表示したいとすると毎フレームで
キャラクタの動きを頂点座標に反映させて
頂点バッファをロックして転送してアンロックして
テクスチャ変えてDrawIndexedPrimitive、
ってのを10回することになるんでしょうか?
0145名前は開発中のものです。
2007/01/16(火) 14:56:49ID:gP9L1vRW0146名前は開発中のものです。
2007/01/16(火) 15:03:01ID:YPdaz3ag0147名前は開発中のものです。
2007/01/16(火) 18:06:17ID:Qw3el5gz0148名前は開発中のものです。
2007/01/16(火) 20:20:13ID:vyE0zc7j0149名前は開発中のものです。
2007/01/16(火) 20:25:02ID:tnQFmMuuそもそもDrawPrimitiveの類の命令は何度も呼び出すなと
リファレンスに書いてあるんだが。
その程度のことも知らない奴がいるのか…
0150名前は開発中のものです。
2007/01/17(水) 03:37:34ID:E2w/eAk+0151名前は開発中のものです。
2007/01/17(水) 03:45:40ID:ebYcO/DEでも
最初はそれでいいんだよ
0152名前は開発中のものです。
2007/01/17(水) 07:12:47ID:YqVdowjiワールド上に存在するモデルをすべてまとめようとか頓珍漢なことをやりだす。
描画しない(=クリッピングではじくこと)が一番早い。これはとても重要なことだ。
0153名前は開発中のものです。
2007/01/17(水) 07:55:50ID:ebYcO/DEそうですか、で、実際はどうでしたか?
0154名前は開発中のものです。
2007/01/17(水) 08:46:07ID:Hr0+Jc9n0155名前は開発中のものです。
2007/01/17(水) 19:41:55ID:nMjirDWm(それくらいグラボに勝手にやってくれるだろwww
と思ったのだがグラボごとに実測しないと確証とれないし、
書き込むのやめよう…)
昔自力でポリゴン描いたり、テクスチャーマッピングしようとしたときは、
画面外の描画はスキップしてましたがX68kなので、移植はできません。
DirectXでは車輪は勝負どころではないので、
できれば車輪の再発明は避けようと思います。
スマートなやりかたがあったら是非ご教授いただけませんでしょうか?
で、実際はどうでしたか?
0156名前は開発中のものです。
2007/01/17(水) 20:19:12ID:6kOFoQzYそれらをやった上で速度が出ないのならわかるけど、
いきなり教えろとか言われても、面倒だから他人に教えてもらうような
単なる手抜きにしか見えないなぁ。
0157名前は開発中のものです。
2007/01/17(水) 22:51:12ID:ebYcO/DE0158名前は開発中のものです。
2007/01/17(水) 23:01:12ID:64NzxfZu0159名前は開発中のものです。
2007/01/17(水) 23:46:05ID:h6VYY8T/板状のメッシュ作ったほうが楽な気もする。
と、頂点情報からメッシュを作れることを3日前に知った俺が言ってみる。
0160名前は開発中のものです。
2007/01/18(木) 07:25:24ID:zIj4yGTPお前馬鹿なの?
せめて頂点変換まではしないと座標が最終的にどこに配置されるかわからないじゃん。
範囲外なのか範囲内なのか。
だからDrawPrimitiveに突っ込んだもんは全部頂点処理だけはかかるだろ?
その前にはじかないと駄目だろ?
グラボができるわけねーじゃん。頭悪い?
0161名前は開発中のものです。
2007/01/18(木) 08:49:32ID:UqJYwdN50162名前は開発中のものです。
2007/01/18(木) 08:54:48ID:5A7iMsVMOBB、ビューフラスタムカリング。
まぁそれ以前に2Dスプライトの話で座標変換とかありえねぇけどな。
0163名前は開発中のものです。
2007/01/18(木) 09:12:36ID:1oM7pzGB0164名前は開発中のものです。
2007/01/18(木) 19:42:33ID:zIj4yGTP頂点毎にアクセスせずに済むと思ってるならあまりの馬鹿さにヒクw
ちなみに>>160の話しは3Dも込み。
0165名前は開発中のものです。
2007/01/18(木) 19:57:22ID:ZyeNC73I0166名前は開発中のものです。
2007/01/18(木) 19:59:00ID:zIj4yGTPそりゃ描画しねぇのが一番早いに決まってるだろ?
やってみなきゃわからんか?w
そりゃおめ重症だろw
0167名前は開発中のものです。
2007/01/18(木) 20:01:58ID:ZyeNC73Iどういう人生を送ればDirectXにコンプレックスを抱けるんだ?
0168名前は開発中のものです。
2007/01/18(木) 20:10:12ID:zIj4yGTPつかなんでそんな無駄にまとめちゃうの?
理解してないからそういう見てて恥ずかしすぎることやっちゃうんじゃん。
てか、別に仕組み理解しなくても関数みてわからんか?w勘でよw
0169名前は開発中のものです。
2007/01/18(木) 20:29:54ID:ZyeNC73Iいや、ハナからお前には聞いてないよ?
0170名前は開発中のものです。
2007/01/18(木) 20:47:12ID:uNJoGW3B0171名前は開発中のものです。
2007/01/18(木) 23:19:34ID:Jif4h1vT0172名前は開発中のものです。
2007/01/19(金) 00:24:53ID:rESBohHJだれか詳しく解説してくれ
0173名前は開発中のものです。
2007/01/19(金) 00:30:06ID:jEs42mha0174名前は開発中のものです。
2007/01/19(金) 02:25:22ID:RsBU2cJ/0175名前は開発中のものです。
2007/01/19(金) 08:23:19ID:rp/CozZr0176名前は開発中のものです。
2007/01/19(金) 08:54:33ID:6Swg19CX↓
画面外のものは描画しないのが最速なんだよモラー
↓
頂点変換しなきゃ画面外かわからないだろプギャー
↓
今ここ?
まぁ描画しないのが最速なのはえらそうに語ることではない。
2Dに関していうなら頂点変換もないし、ガードバンドクリッピングで
弾かれるので大して意味はない。GPUキャッシュくらいか?
こういうと3Dではどうこう言いだすが、
そもそもの話は2Dスプライトでの話だ。
0177名前は開発中のものです。
2007/01/19(金) 10:22:45ID:p8kEpZuq素人を惹きつけるなにかがあるんだろうか
0178名前は開発中のものです。
2007/01/19(金) 12:44:58ID:GhuqtFuNアレな人は、げふんげふんとでも言っておいてクダサイw
フリーのがいいのだが、無いよねぇ?
0179名前は開発中のものです。
2007/01/19(金) 12:53:37ID:uGFxs9XR0180名前は開発中のものです。
2007/01/19(金) 14:59:50ID:GEhX5dAq0181名前は開発中のものです。
2007/01/19(金) 19:27:21ID:CAY7VyBYRokDeBoneとかエルフレイナとかは?
0182名前は開発中のものです。
2007/01/19(金) 19:34:16ID:jEs42mhaで?そんな少量のポリゴンでなんかまとめるといいことあるの?
>>177
残念ながら別人なんですが、
ゲームプログラマなんてとっくに辞めてほとんどこんなスレ来てないし。
似たような人に似たようなこと言われただけでしょ?
ちなみにゲームプログラムの話題なんて他の掲示板でした覚えも無し。
0183名前は開発中のものです。
2007/01/19(金) 20:01:40ID:ahkdpMpEバッチ処理ぐらいしかやることのない2Dスプライト話の最中に
まとめるよりクリッピングが大事なんだとあさって向きながら
切り込んでは罵倒を繰り出すアナタは間違いなくあの時の勇者様。
0184名前は開発中のものです。
2007/01/19(金) 20:20:25ID:D/0P80ds+大量のビルボードを一個づつdrawprimitiveしまくりな場合に限って
視野に入ってないエンティティの描画処理を除外するとすさまじい効果があがるだろうな
そりゃもう興奮してどっかの掲示板でがんばっちゃうくらい
エンティティのモデル一個の描画そのものが結構な負荷になっててしかも視野が自由に
振り回せるような環境でfrustum cullingなんてやってもFPSが不安定になるだけで逆に迷惑
そんなのに割ける労力があるならprogressive meshとかoccluder cullingの
導入を検討したほうがいいよ
ほいでもってそもそも最適化とか言う以前にアマチュアの3Dゲーは
なぜかMIPMAP使ってないのがやたらと多い
使ってくださいお願いだから
0185名前は開発中のものです。
2007/01/19(金) 20:42:47ID:WCWaaWRi0186名前は開発中のものです。
2007/01/19(金) 20:44:51ID:WCWaaWRi特にPCは出来る限り低スペックのマシンでも動かすためにVRAM節約したほうがいいし
0188名前は開発中のものです。
2007/01/19(金) 21:12:48ID:9faX+yANバスケのゲーム作れるPGいない?いたら、メールくれ。
ただ今、鋭意開発中。セブン〜エアガーデンへの招待〜
http://www112.sakura.ne.jp/~kaientai-project/seven.htm
0189名前は開発中のものです。
2007/01/19(金) 21:38:23ID:eUMc5cOg給与の支払いによる支出が原因で、本来の企業活動ができないというのは
本末転倒であって、経費以外の支出はあってはならないんだよ。
今の日本には、自分ことしか考えられない自己中心的な一般人が多くて、
給与額の増大による支出が原因で、経営が圧迫されるケースが多いし。
このまま一般人を野放しにしたら、本当に日本の将来が危うくなってしまうよ。
0190名前は開発中のものです。
2007/01/19(金) 21:39:26ID:eUMc5cOg0191名前は開発中のものです。
2007/01/19(金) 21:47:16ID:m9q22FbK0192名前は開発中のものです。
2007/01/19(金) 21:51:08ID:jEs42mha視野が自由に振り回せるならなおさらはじいたほうがいいじゃん。
例えばサッカー場みたいなモデルをまとめて一つドスンとおくよりは
いくつかに分割して、視界に入るもんだけDrawPrimitiveしたほうがあきらかに速いよな?
つーか、モデルを1つに固めたらあんまり遅くて動かなかったけどな。
0193名前は開発中のものです。
2007/01/19(金) 21:59:33ID:CAY7VyBY俺の場合はサッカー場みたいな土台になる部分は1モデルをドスンと置いてそこに生えてる草木なんかを視線との内積で処理からはじくかはじかないかを決めてるなぁ。
まぁサッカー場に木は生えないけど。
0194名前は開発中のものです。
2007/01/19(金) 23:00:20ID:f5zQO4FEグランドに木の生えてるサッカーゲームやってみたい。
0195名前は開発中のものです。
2007/01/20(土) 05:03:26ID:xn0RwbJ6OK貴様には死ぬまでmipmap使わないことを許してやる
絶対に使うなよ
0196名前は開発中のものです。
2007/01/20(土) 06:42:01ID:f3G4h5T20197名前は開発中のものです。
2007/01/20(土) 09:59:19ID:6O6mWNrJミップマップは異方性フィルタがない&テクセルレートのない貧弱環境用だな。
0198名前は開発中のものです。
2007/01/20(土) 10:25:37ID:xn0RwbJ6そのサッカー場のモデルをみせてごらん
0199名前は開発中のものです。
2007/01/20(土) 17:17:46ID:xn0RwbJ6>数倍きれい
ミップマップなしで異方性フィルタ と
ミップマップありで異方性フィルタ を比べて言ってるの?
最適化のことを言ってるのにテクセルレートのない貧弱環境用とか言われてもこまる
節約できるところはどんな環境でだって節約したいんだよ他にやらなきゃならないことが
いくらでもあるんだから
0200名前は開発中のものです。
2007/01/21(日) 22:20:21ID:9mLhEG6sなんかテクスチャを伸ばすような感じに利いてるような気がするですが。
たぶん手で設定するようなものでなく行列演算で設定されるもんだとは思うんですが、
意味は理解しときたいと思いまして
0201名前は開発中のものです。
2007/01/21(日) 22:32:04ID:cEcsRmiV0202名前は開発中のものです。
2007/01/21(日) 23:12:02ID:nGi3p95ALPDIRECT3DDEVICE9で作成したデバイスのサーフェイスをLPDIRECT3DTEXTURE9に
コピー(というかレンダリング)したいのですが、どうやったらいいのでしょうか?
IDirect3DDevice9::GetRenderTarget() でデフォルトのサーフェイスから取得して
IDirect3DSurface9::GetContainer(IID_Direct3DTexture9, ...) でテクスチャインターフェイスを取得しようとしても
E_NOINTERFACEになってしまいます。
バックバッファからテクスチャにレンダリングするよい方法はないでしょうか?
0203名前は開発中のものです。
2007/01/21(日) 23:20:32ID:cEcsRmiV・バックバッファからGetRenderTargetでサーフェス持ってくる
・テクスチャからGetSurfaceLevelでサーフェス持って来る
・StretchRectでコピー
これで駄目かな?
ってか、Windowsならバックバッファからテクスチャに持ってくるよりは
先にテクスチャをSetRenderTargetで設定してそいつに書けば良い気がするが
それじゃ駄目なんかね
0204名前は開発中のものです。
2007/01/21(日) 23:26:20ID:nGi3p95Aありがとうございます!
やってみます!!
0205名前は開発中のものです。
2007/01/22(月) 19:12:56ID:F8tuaha10206名前は開発中のものです。
2007/01/29(月) 11:21:37ID:pA/1EhhkしばらくWindows開発から離れてたら、噂には聞いていたけれど DirectDrawが無くなってた。
ちょっとウェブめぐってみたんだけど、あくまでも3Dゲーの中での2D処理用な気が。
2Dゲーを作ろうとしてるんだけど、DirectGraphics(DX9)で作るべき?
ちょっと とっかかってみたけれど、今までバックバッファに描いてたのを
テクスチャに描くようにしてD3DXSPRITEで表示…って これじゃすんげー遅くなりそう。。。
0207名前は開発中のものです。
2007/01/29(月) 12:13:50ID:pA/1Ehhk動的にテクスチャをいじるのではなくて、レンダリングターゲットの指定が出来るのですね。
(DirectDraw時代より冗長な気がしますが) トライしてみます。お騒がせしました。
0208名前は開発中のものです。
2007/01/29(月) 13:02:57ID:dXEwqYYZバックバッファに描くという方法を考えてたなら普通にGDIでやるべきじゃないか?
そうじゃなくていわゆる昔ながらのスプライト(矩形の切り張り)がやりたいなら
4頂点の板ポリ使った方がハードウェアアクセラレーション効くんで断然速いよ。
半透明も回転も拡縮もグラボにやらせるほうがいい。
なんで3Dの中の2Dとかややこしい事思ったのかしらんが、
ビューマトリクスを平行投影(D3DXMatrixOrtho系)にすれば
座標で悩む事もない。
0209名前は開発中のものです。
2007/01/29(月) 17:04:45ID:gjiHxWHs0210名前は開発中のものです。
2007/01/30(火) 07:18:09ID:durbSHnIDirectX Viewer が起動すると落ちるんだが、おまいらの環境はどうですか?
うちの環境はざっくり書くと、こんな感じ
Athlon64x2 4800+
2GB Memory
GeForce7900 GT
前のバージョンのやつ持ってくると動くんだよなー
同梱しているソースをビルドすると、DX10要求されるんだよなーw
わけわかんねーw
0211名前は開発中のものです。
2007/01/30(火) 07:31:43ID:wAiNWVnkvista専用
0212名前は開発中のものです。
2007/01/30(火) 10:34:02ID:c33eI9Ua再生してるのですが、それだけで
CPU使用率を40〜50%も消費してしまいます‥
当方の環境は、Pentium4 1.8 でメモリ 256M です。
たかだかBGMを鳴らすだけでこんなにもCPU使用率が上がってしまう
ものなのでしょうか?
もっとその負荷を軽減する方法はないでしょうか?
0213名前は開発中のものです。
2007/01/30(火) 10:39:38ID:RaYmE1RN挫折したへたれなんですが、最近のバージョンでもIMはそんなもんですか?
VC++Expressが無料ということで再挑戦しようと思っているのですが、MFC使わないで
組み方を説明しているサイトや本でお勧めのがありましたら教えてください。m(_)m
0214名前は開発中のものです。
2007/01/30(火) 11:13:00ID:G09dYyDG0215名前は開発中のものです。
2007/01/30(火) 11:19:31ID:mSsPPcjQMIDI自体がCPU消費しまくる
Pen4 1.8Gじゃそんなもんだろ
0216名前は開発中のものです。
2007/01/30(火) 11:34:29ID:G09dYyDGMIDIは専用ハードが無いと厳しいし今ならOggがベストなんじゃないかねぇ。
0217名前は開発中のものです。
2007/01/30(火) 12:07:26ID:bT9TxsoIDirectX3DIMはDX7のしかやった事ないけど、DirectXGraphicsの方が簡単だと思う。
サイトはこの辺がいいんじゃね?
ttp://www.plustarnet.com/aspil/Programming/
ttp://www.twin-tail.jp/
ttp://monsho.hp.infoseek.co.jp/index.html
まあ、ちょっと古いからそのままだとコンパイル通らなさそうだけどw
0218名前は開発中のものです。
2007/01/30(火) 12:50:43ID:RaYmE1RNありがとうございます。
いつのまにかDirectXGraphicsに3Dも2Dも統合されていたのか・・・かなりウラシマですorz
あと、上記サイトの中で最新のDirectX9SDKではwin2000が未対応になったという記述がありますが、
これは開発環境だけで、実行環境ではwin2000でも98でも問題ないですよね?
0219名前は開発中のものです。
2007/01/30(火) 12:54:32ID:4gHdVOHh調子に乗って延々と質問し続けるんだよね。
0220名前は開発中のものです。
2007/01/31(水) 09:58:57ID:n451U0UK問題ないよ。
0221名前は開発中のものです。
2007/01/31(水) 19:17:53ID:kII7Zcj298はDirectX9がインストールできないかな?
でも98自体使ってる人がほぼ皆無の状態って感じ。
エロゲでも2000 XPのみサポートってのが結構ある状態。
こっから先を調べたけりゃ自分で探すしかない。
おそらく誰に聞いても同じ。
0222名前は開発中のものです。
2007/01/31(水) 20:09:25ID:Oa6nAGvx0223名前は開発中のものです。
2007/01/31(水) 23:45:10ID:NKCnpIjT2000でも、DirectX9は動く。
SDKに関しては、
http://pc10.2ch.net/test/read.cgi/tech/1132965206/65
によると、
>日本語ヘルプがある最新版 = 2004OCT
>Win2000サポート最新版 = 2004DEC
>実際にWin2000で使える最新版は? = 手動で解凍してincludeとlibを設定すりゃ新しい奴
らしい。
0224名前は開発中のものです。
2007/01/31(水) 23:48:30ID:2NGbPsUX0225名前は開発中のものです。
2007/02/01(木) 01:20:23ID:62s13ds+0226名前は開発中のものです。
2007/02/01(木) 10:04:40ID:VVBfqW3G機能追加したらランタイムの方も同じようにアップデートされないといけないはずだけど
9.0c以降は変わってないし・・・(最新のは10になったけど)
0227名前は開発中のものです。
2007/02/01(木) 10:11:31ID:62s13ds+0228名前は開発中のものです。
2007/02/01(木) 20:06:59ID:bfeNRfzV■ このスレッドは過去ログ倉庫に格納されています