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/
0081名前は開発中のものです。
2006/12/10(日) 09:12:17ID:iAIA/3xoすいませんでした
0082名前は開発中のものです。
2006/12/10(日) 10:53:17ID:+ec2/YXwそれはちょっと安直じゃね?
3回転中の2回転目の判定がほしいとかいうチェックをしたことがないの?
0083名前は開発中のものです。
2006/12/10(日) 15:43:15ID:iAIA/3xo3回転中の2回転目の判定、って具体的にどんなことか分からないんですけど
そもそも3回転って何を3回転するんですか? xyz軸のこと? そして何を判定するの?
0084名前は開発中のものです。
2006/12/10(日) 16:30:07ID:+ec2/YXwええー?
この表現で通じないのー。
お前、話し難いー。
ホントに3Dでプログラム組んだことあるのかよー。
0085名前は開発中のものです。
2006/12/10(日) 17:06:22ID:iAIA/3xoその発言からなんとか理解しようとするなら
3回転はYawPitchRollのことで2回転目はPitchのことで
判定とは相手の位置の方角がどの方向なのか
こういうことですか?
これで間違っていたとしても
単にあなたの説明不足なだけですよ
0086名前は開発中のものです。
2006/12/10(日) 17:08:30ID:XKfp5jTS持ってないから断言できないけどStandardも無理と思われ。
一応ソース↓
http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=909404&SiteID=1
0087名前は開発中のものです。
2006/12/10(日) 17:19:53ID:gmCAHMuv0088名前は開発中のものです。
2006/12/10(日) 20:45:34ID:+ec2/YXwはぁ・・・馬鹿とは話できないねw
じゃあな。
0089名前は開発中のものです。
2006/12/10(日) 20:59:25ID:RXGdZhfU行列からクォータニオンは取り出せるし、直行行列での姿勢もわかるから
計算負荷に目をつぶれば3軸の回転角度も出るしなぁ・・・
0090名前は開発中のものです。
2006/12/11(月) 01:35:22ID:vTBYyTmm俺も3回転中の2回転という表記を見たときは一瞬3つの軸回転の事が脳裏をよぎったぞ
もちろん君が言いたいのはそういう意味ではない事はわかったが
3回という表記が誤解を招きやすかったり、説明が足りないという印象は否めない
文章じゃ伝えたいことが思ったほどうまく伝わらないのは当たり前だが
それを馬鹿とか切り捨てるのはどうかと思うぞ
0091名前は開発中のものです。
2006/12/11(月) 05:45:27ID:33d6g8SGありえねぇんだよ。死ねよ。
0092名前は開発中のものです。
2006/12/11(月) 10:39:57ID:gFWpLplq0093名前は開発中のものです。
2006/12/11(月) 20:28:02ID:33d6g8SGはぁ?食い違ってる?
俺にはちょっと考えれば矛盾が見えるような馬鹿な醜態(>>80)晒したことを必死で誤魔化してるようにしか見えないよ。
こういう誤魔化し方を一度でもした奴とは俺は技術的な会話を継続しない。
はっきりいって技術者として不適切。
人に対して偏屈なのは別にかまわないけど、
匿名掲示板のこんなところでまでくだらん曲解使って自分の考慮の無さを隠してるようじゃ伸びない。
技術に対してはいつも素直でいなきゃ駄目。
技術者にはそれが伝わるし、隠せ無い。
1から出なおせといいたい。
0094名前は開発中のものです。
2006/12/11(月) 21:35:07ID:RPVZVReg0095名前は開発中のものです。
2006/12/11(月) 21:47:31ID:2BhDwr1pというところまで心を開く人は、後日進歩し成長する人だと思います」
松下電器産業創業者 松下幸之助
とりあえずあれだな。仲良くしろやカスども。
0096名前は開発中のものです。
2006/12/11(月) 22:51:37ID:C6DDmuyj旺文社創始者 赤尾好夫
0097名前は開発中のものです。
2006/12/11(月) 22:59:47ID:rflZNTCU無職 バカボンのパパ
0098名前は開発中のものです。
2006/12/12(火) 01:55:44ID:xUTy3Kf3ttp://www.microsoft.com/downloads/details.aspx?FamilyID=a73a7e71-ff41-432d-a0eb-043e904a1905&DisplayLang=en
Microsoft XNA Framework Redistributable 1.0
ttp://www.microsoft.com/downloads/details.aspx?FamilyID=2e136a1f-f187-478c-9da5-aaeb0904782b&DisplayLang=en
0099名前は開発中のものです。
2006/12/12(火) 06:32:21ID:8epOU40A理解している人が居るなら後学のために教えてもらいたい。
33d6g8SGは答えなくて良いから。
0100名前は開発中のものです。
2006/12/12(火) 07:05:12ID:NFGEvJ+0マジでわからんの?
例えば、キャラが3回転するとき回転角は0〜1080になる。
この2回転目を判断するには360〜720を判断する必要がある。
これを行列に変換してしまうと、どうやって逆変換かけてもこの0〜360と360〜720というのは判断しようがない。
つまり、>>80で
>回転角が必要な場合になるのは、比較する対象がどの方角にあるか、というときくらいじゃないでしょうか
なんていってるけど、2回転するだけで回転角(またはそれにあたるパラメータ)が必要になるっちゅー話。
0101名前は開発中のものです。
2006/12/12(火) 18:47:06ID:6BpJk5LX0102名前は開発中のものです。
2006/12/12(火) 21:42:02ID:muYOaPvx0103名前は開発中のものです。
2006/12/12(火) 23:49:03ID:vbp0HzNjこのソフトでスキンメッシュを読み込んだ時、右下に表示される
Vertの値が、Xファイルに書かれている頂点数と微妙に違うのですが、
これはいったいどういうで何を表しているのでしょうか?
具体的な例を出すと、tiny.xのファイルには、
Mesh {
4432;
のように、頂点は4432個と記述されているのに、
MeshViewで読み込むと4884vertと右下に表示されます。
よろしくおねがいします。
0104名前は開発中のものです。
2006/12/13(水) 00:14:25ID:5VkPThlK位置座標は同じなんですけどUVと法線は別なんですとかそういうのじゃね?
結局、DrawPrimitiveに突っ込む形にしてみないとわからないんじゃねの?
0105名前は開発中のものです。
2006/12/13(水) 00:20:43ID:lFno5IQa自分でXファイルを展開して表示するところまでコードを書いてみれば分かる。
0106名前は開発中のものです。
2006/12/14(木) 05:49:35ID:UgT6nhgH0107名前は開発中のものです。
2006/12/14(木) 07:41:46ID:GvQx2Dou3Dスプライト?ビルボードだったらモデルといっしょじゃね?
0108名前は開発中のものです。
2006/12/14(木) 20:03:10ID:UgT6nhgH板ポリにテクスチャはっ付けている奴です。疑似2D用の。
そっかビルボードを参考にすればいいのか。ありがとうございます。
0109名前は開発中のものです。
2006/12/14(木) 20:33:23ID:8Qdr6/240110名前は開発中のものです。
2006/12/14(木) 21:46:34ID:UgT6nhgH0111名前は開発中のものです。
2006/12/14(木) 21:51:12ID:8Qdr6/240112名前は開発中のものです。
2006/12/21(木) 15:49:27ID:pvteBlEyD3Dで、BeginScene を実行したかどうかを取得するにはどしたらいい?
0113名前は開発中のものです。
2006/12/21(木) 16:06:02ID:3yBHm1wlinline HRESULT MyBeginScene(なんちゃら) {
fBeginScene = true;
return d3ddevice->BeginScene(なんちゃら);
}
inline HRESULT MyEndScene(なんちゃら) {
fBeginScene = false;
return d3ddevice->EndScene(なんちゃら);
}
inline bool D3Dで、BeginSceneを実行したかどうかを取得する(void) {
return fBeginScene;
}
0114名前は開発中のものです。
2006/12/21(木) 16:11:46ID:r6vu12ATreturn d3ddevice->BeginScene() == D3DERR_INVALIDCALL
}
しかしなんでもないときはBeginSceneされてしまうという罠
0115名前は開発中のものです。
2006/12/21(木) 19:03:00ID:pvteBlEyそんなの既に考えたわ。
そうゆう外人系の発送じゃなくて、
ちゃんとD3Dの初期化処理の内部にフラグとかがあって
BeginScene をフラグを取得ってか、
そういや、BeginSceneを2重に実行するとどうなったっけ?
0116名前は開発中のものです。
2006/12/21(木) 19:12:29ID:iCkkZVoa0117名前は開発中のものです。
2006/12/21(木) 20:31:54ID:l07XXTQQ0118名前は開発中のものです。
2006/12/22(金) 01:51:57ID:1OvCp0HcLPDIRECT3DTEXTURE9 g_pMeshTexture;
〜中略(1MBのテクスチャをg_pMeshTextureに読み込む)〜
g_pD3DDevice->SetTexture(0, g_pMeshTexture);//ステージ0では色のみ使用
g_pD3DDevice->SetTexture(1, g_pMeshTexture);//ステージ1ではαのみ使用
0119名前は開発中のものです。
2006/12/22(金) 18:26:10ID:Q/NfrM/M色々変わってるのぅ。
やはりDecember 2006 SDKは様子見だよな?
October 2006 SDKこっち使ったほうが無難だよな?
魅惑のビスタなんて糞食らえだぜ。
0120名前は開発中のものです。
2006/12/22(金) 18:44:41ID:hprlzGc10121名前は開発中のものです。
2006/12/22(金) 20:28:59ID:r5hyVZgIDirectX8世代(4Tiとか)はゲームするなっちゅーことか!!
0122名前は開発中のものです。
2006/12/22(金) 21:31:35ID:G4QmQh5L最近グラマになったクソガキなのかもしれないが、
昔から状態確認するためにGet・・・とかIs・・・には頼るなとMSが言っている。
もっともカンファとか行かないだろうから知らんだろうけど。
MSの名言を2つ。
最も高速にレンダリングする方法は、レンダリングしないことだ。
最も高速に状態確認する方法は、自分で何したのか覚えておくことだ。
0123名前は開発中のものです。
2006/12/22(金) 22:52:04ID:igGRT8du>SM1.1切り捨て
まじかそれ。えらい困るんだが。
0124名前は開発中のものです。
2006/12/23(土) 02:42:48ID:tJHKf9MA正直、3.0未満はアウトとかじゃなくてヨカタ
未だにゲフォFX5200なので・・・
0125名前は開発中のものです。
2006/12/23(土) 02:53:46ID:EewZUbpJ結局2.0の有無で分岐が現実的な線引きになっちまう。
初代箱のSM1.1も専用拡張がされてるしな。
>>120
非同期うんぬんの前に別々のスレッドから同じデバイスに
同時に書き込みを行おうとする事自体がおかしい。
0126名前は開発中のものです。
2006/12/23(土) 08:01:26ID:nacJYpBAスレッドなんか作るなといいたい。
0127名前は開発中のものです。
2006/12/23(土) 10:10:50ID:ZHr9j/ja0128名前は開発中のものです。
2007/01/02(火) 22:39:04ID:lFOAwFAt症状は、
ビルドは成功します。それでMSVCからF5で起動しても上手くいきます。
ですが、生成された実行ファイルを直に起動すると落ちてしまいます。
デバッガでアタッチしたところ、「D3DXLoadMeshHierarchyFromX」直後で
落ちていました。
「ID3DXAllocateHierarchy」の派生クラスは、サンプルのSkinnedMesh
を引用しています。変更した所は、
CreateMeshContainerとGenerateSkinnedMeshだけですが、
D3DXLoadMeshHierarchyFromX後にどちらも呼び出されることなく落ちるので
そこが原因ではないと思います。
D3DXLoadMeshHierarchyFromX後、4回目のCreateFrame内で
pFrame = new D3DXFRAME_DERIVED;
を処理しようとしたところnew内のmallocでエラーが発生し、
ヒープが壊れているとアナウンスされました。
ファイル自体は読みに行っているので、パスが間違ってるということはないと思います。
読み込ませているXファイルはSkinnedMeshで正常に読み込め、表示されます。(デバイスはHAL(SW vp)です)
似たような症状があったので参考にしたのですが、
http://www.shader.jp/xoops/html/masafumi/cbbs/cbbs.cgi?mode=al2&mo=207&namber=206&space=15&rev=1&page=0&no=0
D3DDEVTYPE_REFでもダメで、D3DCREATE_SOFTWARE_VERTEXPROCESSINGでもダメでした。
行き詰ってしまったので質問させていただきました。
思い当たる点がありましたらご指摘ください。
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:GEhX5dAq■ このスレッドは過去ログ倉庫に格納されています