■過去ログ置き場に戻る■ 1- 次250 最新50


[memo] "9999999999_00.html#R20" という感じで、URLの最後に "#RレスNo" を追加すると幸せになれます。

鬱だ氏のう DirectX (Part 16)
1 名前:デフォルトの名無しさん :2005/11/26(土) 21:10:02
DirectXについて、にいさま達がマターリと
技術情報交換&雑談するためのスレッド。
初心者用相談室では扱わないような少し高度な話題も受け持つ。


■過去スレ
DirectX総合スレ
http://pc5.2ch.net/test/read.cgi/gamedev/1083728025/
DirectX総合スレ (Part2)
http://pc5.2ch.net/test/read.cgi/gamedev/1095863432/
DirectX総合スレ (Part3)
http://pc5.2ch.net/test/read.cgi/gamedev/1105333209/

■関連スレ
【C++】 DirectX初心者質問スレ Part7 【C++】
http://pc8.2ch.net/test/read.cgi/tech/1132216611/

■関連サイト
- MSDN > DirectX
http://www.microsoft.com/japan/msdn/directx/default.asp
- DirectX Home Page
http://www.microsoft.com/japan/windows/directx/default.mspx

- DirectX Info Lib (デバイス情報のデータベース。すばらしい!)
ttp://www.netsphere.jp/dxinfo/
- BBX(掲示板)
ttp://isweb8.infoseek.co.jp/computer/bbx/

2 名前:デフォルトの名無しさん :2005/11/26(土) 21:11:09
// 外部
- MSDN > DirectX
http://www.microsoft.com/japan/msdn/directx/default.asp
- DirectX Home Page
http://www.microsoft.com/japan/windows/directx/default.mspx

- DirectX Info Lib (デバイス情報のデータベース。すばらしい!)
ttp://www.netsphere.jp/dxinfo/
- BBX(掲示板)
ttp://isweb8.infoseek.co.jp/computer/bbx/
- spin
ttp://spin.s2c.ne.jp/
- 宇治社中改(3D基礎講座) のミラー
ttp://web.archive.org/web/20020607052151/http://www.cc.rim.or.jp/~devilman/


3 名前:デフォルトの名無しさん :2005/11/26(土) 21:11:37
// 関連スレ
【C++】 DirectX初心者質問スレ 【C++】
http://pc5.2ch.net/test/read.cgi/tech/1084765853/
Managed DirectX vol.2
http://pc5.2ch.net/test/read.cgi/tech/1061285378/
- DirectShowと戦うスレ
http://pc5.2ch.net/test/read.cgi/tech/1026666092/
- Direct3D
http://pc5.2ch.net/test/read.cgi/tech/1011762546/
- OpenGL VS Direct3D
http://pc5.2ch.net/test/read.cgi/tech/1044308707/

DirectX総合スレ (Part2)
http://pc5.2ch.net/test/read.cgi/gamedev/1095863432/
Direct 3D
http://pc5.2ch.net/test/read.cgi/gamedev/1005293179/
2D!!のDirectXをやってみるかもな
http://pc5.2ch.net/test/read.cgi/gamedev/1005133911/
【Collision Detection】
http://pc5.2ch.net/test/read.cgi/gamedev/1015484028/
衝突力
http://pc5.2ch.net/test/read.cgi/gamedev/1012852070/
各種ライブラリ紹介スレ
http://pc5.2ch.net/test/read.cgi/gamedev/1008220559/

4 名前:デフォルトの名無しさん :2005/11/26(土) 21:13:31
// 過去スレ
Part 1: ttp://piza2.2ch.net/tech/kako/966/966655286.html
Part 2: ttp://pc5.2ch.net/tech/kako/997/997101556.html
Part 3: ttp://game.2ch.net/gamedev/kako/1005/10051/1005119775.html
Part 4: ttp://game.2ch.net/gamedev/kako/1016/10162/1016276254.html
Part 5: ttp://pc5.2ch.net/gamedev/kako/1027/10273/1027351925.html
Part 6: ttp://pc5.2ch.net/gamedev/kako/1033/10339/1033920036.html
Part 7: ttp://pc5.2ch.net/gamedev/kako/1039/10395/1039509250.html
Part 8: ttp://pc5.2ch.net/gamedev/kako/1046/10466/1046676308.html
Part 9: ttp://pc5.2ch.net/tech/kako/1054/10545/1054553472.html
Part9.5: ttp://bbs.gamdev.org/test/read.cgi/gamedev/1054109966/
Part10: ttp://pc5.2ch.net/tech/kako/1061/10614/1061420660.html
Part11: ttp://pc5.2ch.net/test/read.cgi/tech/1069376986/
Part12: ttp://pc5.2ch.net/test/read.cgi/tech/1076651336/
Part13: ttp://pc5.2ch.net/test/read.cgi/tech/1083313796/
Part14: ttp://pc5.2ch.net/test/read.cgi/tech/1088594869/
Part15: ttp://pc8.2ch.net/test/read.cgi/tech/1096649788/
※「いや〜、ごめんなさい」により紛失っぽ

5 名前:デフォルトの名無しさん :2005/11/26(土) 21:16:43
建てたぽ

6 名前:デフォルトの名無しさん :2005/11/26(土) 21:58:40
ゲ製作板にすでに立ってるが?

DirectX総合スレ (Part4)
http://pc8.2ch.net/test/read.cgi/gamedev/1132937938/

前スレの流れでは「向こうに行け!」的な流れになってたし


7 名前:デフォルトの名無しさん :2005/11/26(土) 22:03:53
また鬱か

8 名前:デフォルトの名無しさん :2005/11/26(土) 23:03:34
うなぎ禁止

9 名前:デフォルトの名無しさん :2005/11/30(水) 05:41:31
鰻はここに聞けと言われてきました。

日本の鰻は海へ出たら何処へ旅に出ているんですか?
あと、鰻は土から生まれるってのは本当ですか?

教えてください。

10 名前:デフォルトの名無しさん :2005/11/30(水) 13:08:45
>>9
私の知る限り、
前者は研究中のテーマだったと思うし、
後者は幼生が小さいことからきた誤解だと言う話だったと思う。

11 名前:デフォルトの名無しさん :2005/12/01(木) 00:00:59
SDK Decemberでるのかな?

12 名前:デフォルトの名無しさん :2005/12/13(火) 12:30:29
December 2005 DirectX SDK
http://msdn.microsoft.com/directx/sdk/

         ∧∧ ∧∧
キタ━━━━ (*゚∀゚) (∀゚*)━━━━━━!!!!!!!!!!!!
     彡 ⊂   つ⊂  つ  ミ
   ((   ⊂、 /   \ 〜つ   ))
     ミ   ∪  ≡  U′  彡


どうでもいい。

13 名前:デフォルトの名無しさん :2005/12/13(火) 12:32:58
> Direct3D 10 Technology Preview
これは気になるか。コミケ終わってから見よっと。

> Windows Vista Game Explorer
なんじゃいこれは。またわけのわからんものを。

14 名前:デフォルトの名無しさん :2005/12/13(火) 15:35:00
MDX2がまだbeta2向けだorz

15 名前:デフォルトの名無しさん :2005/12/14(水) 07:25:01
普通にスルーだなw
もう、DLL自分で配れとかマジありえねぇサポート(?)の状態は終わったのか?w
なんか色々増えてるっぽいけど、どうせ次のウィンドウズが出るまで放置確定だろ。



16 名前:デフォルトの名無しさん :2005/12/18(日) 08:20:36
じゃあ鰻ポリについて語ろうぜ。

17 名前:デフォルトの名無しさん :2005/12/18(日) 09:55:37
鰻って何ですか?

18 名前:デフォルトの名無しさん :2005/12/24(土) 18:55:02
確認しておきたいことがあるんですが、
DirectGraphics にてメモリからテクスチャ読み込んだ時、読み込み後すぐにバッファは破棄してOK
DirectMusic にてメモリからセグメント読み込んだ時、読み込み後すぐにバッファを破棄するのはNG
……で合ってますか?

19 名前:デフォルトの名無しさん :2005/12/24(土) 19:04:15
テクスチャに既存のデータではなく単色で塗りつぶすだけでもいいから、
直接内容を書き替えるプログラムを作ってから出直せ。
質問はその後だ。

20 名前:デフォルトの名無しさん :2005/12/24(土) 19:14:20
いや、書き換えたことあるから上は想像ついた。18 で聞きたかったのは下の方。

21 名前:デフォルトの名無しさん :2005/12/24(土) 20:42:26
GCしないとキャッシュされてんじゃなかったっけ。

22 名前:デフォルトの名無しさん :2005/12/25(日) 01:44:15
ガードキャンセルか

23 名前:デフォルトの名無しさん :2005/12/26(月) 04:30:53
DirectX7の日本語ヘルプってもうDLできないの?
どっかにないかな?

24 名前:デフォルトの名無しさん :2005/12/26(月) 12:54:35
えーマジDirectX 7!! DirectX 7が許されるのは小学生までよねー

25 名前:デフォルトの名無しさん :2005/12/26(月) 13:03:08
>>23
DirectX1からヘルプを取ってある俺がきましたよ。
どうしてもほしけりゃアップするよ

26 名前:デフォルトの名無しさん :2005/12/26(月) 13:22:45
>>25
>>23じゃないけど、俺も欲しいからぜひお願いします

27 名前:デフォルトの名無しさん :2005/12/26(月) 13:34:57
http://gamdev.org/up/img/4140.zip

28 名前:26 :2005/12/26(月) 13:49:16
>>27
助かりました。ありがとう。

29 名前:23 :2005/12/26(月) 18:40:47
>>27
助かった!ありがとう。感謝!!


30 名前:デフォルトの名無しさん :2005/12/26(月) 21:03:06
4以前のヘルプ持ってるって凄いな

31 名前:デフォルトの名無しさん :2005/12/26(月) 22:05:28
directx 2 でググると出てくる
ttp://pc.watch.impress.co.jp/docs/article/960627/kaigai21.htm
にはDirectXって1995年10月にMicrosoft Windows 95 Game Software Developers Kit
として出たものだって書いてあるねぇ。
ところで初代DirectXってまだ使えるの?

32 名前:デフォルトの名無しさん :2005/12/27(火) 02:47:50
知らんけど動きそうな予感がするのがMSという会社の隠れた恐ろしさ。

33 名前:デフォルトの名無しさん :2005/12/27(火) 22:53:02
10年前のライブラリなのに動いたらすごいね。
(久々にブラウザで書き込んだらageてしまった スマソ)

34 名前:デフォルトの名無しさん :2005/12/28(水) 03:11:52
へーこのスレにsage進行のローカルルールがあったなんて初めて聞いた

35 名前:デフォルトの名無しさん :2005/12/28(水) 21:50:24
あ、違うんか。
みんなsageてたからてっきりそうだと思って。

36 名前:デフォルトの名無しさん :2005/12/29(木) 03:23:11
自治厨が住み着かないくらい寂れたスレだからな。
ウナギの件でも明らか。

37 名前:デフォルトの名無しさん :2005/12/29(木) 03:42:39
おまい、鰻を馬鹿にしたな?

38 名前:デフォルトの名無しさん :2005/12/29(木) 07:37:38
マジメな質問はこちらへどぞー

DirectX総合スレ (Part4)
http://pc8.2ch.net/test/read.cgi/gamedev/1132937938/

39 名前:デフォルトの名無しさん :2005/12/29(木) 20:24:43
xファイルの仕様を調べようと思ったが
検索してもうまく引っかからないので挫折した。

40 名前:デフォルトの名無しさん :2005/12/29(木) 20:32:04
検索するまでもなくSDKのヘルプに載っているだろ。

41 名前:デフォルトの名無しさん :2005/12/29(木) 23:24:04
>>39-40
ワロタ

42 名前:デフォルトの名無しさん :2005/12/29(木) 23:55:37
鬱だ氏のう

43 名前:デフォルトの名無しさん :2005/12/30(金) 00:08:54
うつだうじのう

44 名前:デフォルトの名無しさん :2005/12/30(金) 23:58:23
>>39
仕様が見つからないなんて、しようがないなー

45 名前:デフォルトの名無しさん :2005/12/31(土) 01:11:52
>>44
ノ[座布団]

46 名前:デフォルトの名無しさん :2005/12/31(土) 13:31:10
こんなので座布団もらっちゃったよ。

47 名前:デフォルトの名無しさん :2006/01/01(日) 06:08:26
DirectX8でXファイルを作成するモデリングソフトを作ってるんだけど、
フレームありのXファイルを読み込む際、メッシュの読み込みに、
D3DXLoadMeshFromXofを使ったんだけど、
保存する際には、D3DXSaveMeshToXofって無いみたいですね。
そういうときは、どうすればいいんでしょう??

48 名前:デフォルトの名無しさん :2006/01/01(日) 06:12:36
自分でつくりゃあ
めんどーなだけで難しくはなかろ

49 名前: 【大吉】 【89円】 :2006/01/01(日) 06:16:04
test

50 名前:デフォルトの名無しさん :2006/01/01(日) 06:16:05
>>48
自前で組むしかないんですねぇ。
まぁ、けっきょくはテキスト出力ですけど・・・・orz

51 名前:デフォルトの名無しさん :2006/01/01(日) 07:03:53
ID3DXFile系のインターフェイスじゃダメなの?

52 名前: 【凶】 【584円】 :2006/01/01(日) 07:42:25
a

53 名前:デフォルトの名無しさん :2006/01/01(日) 13:50:01
>>51
ID3DXMeshとか?

54 名前:デフォルトの名無しさん :2006/01/01(日) 14:12:32
モデリングソフトを作る人間が、内部データまでD3DXに依存する作り方をするのがそもそもの間違い。
使っていいのはせいぜい低レベルの入出力を担当するID3DXFileまで。

55 名前: 【ぴょん吉】 【378円】 :2006/01/01(日) 14:27:13
>>54
んなことねーだろwあけおめ

56 名前:デフォルトの名無しさん :2006/01/01(日) 14:59:03
やってみれば分かる。
すぐに破綻するから、開け閉め。

57 名前: 【大凶】 【1382円】 :2006/01/01(日) 15:58:31
融通が利かずショボイとこで頭打ちにはなるだろうが
Xファイルで表現できることが、そもそもショボイのだからいいんじゃまいか。

58 名前:51 :2006/01/01(日) 16:50:36
あー、DX8か・・・。
じゃあIDirectXFileだね。

59 名前:デフォルトの名無しさん :2006/01/01(日) 18:09:54
スプライトを拡大して描画すると画像がボケてしまうんですが
このフィルターを無効にする方法を教えてください

60 名前:デフォルトの名無しさん :2006/01/01(日) 18:10:31
あ、VisualC++6.0でDirectX9.0です

61 名前:デフォルトの名無しさん :2006/01/02(月) 00:28:14
age

62 名前:デフォルトの名無しさん :2006/01/02(月) 01:32:54
>>59
つSetSamplerState

こういうのは、いろいろ調べたり、設定変えてみたりして楽しい部分なんだがなあ

63 名前:デフォルトの名無しさん :2006/01/02(月) 10:29:18
>>62
どうしてもうまくいきません。
g_lpD3DDevice->SetSamplerState(0, D3DSAMP_MAGFILTER, D3DTEXF_NONE);
こんな感じじゃだめなんですか?
他の値も試してみたんですが、変化がないです

64 名前:デフォルトの名無しさん :2006/01/02(月) 12:04:32
>>63
なるほど〜そんなところで詰まってたのか。
D3DSAMP_MINFILTER も 設定しないとだめなんだよ。
あと、NONEよりPOINTのが明確なんじゃないか?

65 名前:デフォルトの名無しさん :2006/01/02(月) 13:01:38
>>64
やっぱりだめみたいです・・・
g_lpD3DDevice->SetSamplerState(0, D3DSAMP_MAGFILTER, D3DTEXF_POINT);
g_lpD3DDevice->SetSamplerState(0, D3DSAMP_MINFILTER, D3DTEXF_POINT);

この部分は間違ってないですよね?

66 名前:デフォルトの名無しさん :2006/01/02(月) 13:05:54
>>65
それであってるはず。それでだめなら、画面のプロパティ詳細で
ドライバレベルで強制フィルタかかってるとかかなあ。

67 名前:デフォルトの名無しさん :2006/01/02(月) 13:19:45
>>66
あ、気のせいでした!できてました!
でも、所々ボケているみたいです。

68 名前:デフォルトの名無しさん :2006/01/02(月) 14:54:20
フルスクリーンだと問題ないのですが
ウインドウにすると画像がぼけるみたいです

69 名前:デフォルトの名無しさん :2006/01/02(月) 15:52:33
>>68
メインウインドウのクライアント領域サイズとレンダーターゲット(バックバッファ)の
サイズが一致してないから、ストレッチかかってるんだろうね。
キャプチャして計ってみたら?

70 名前:デフォルトの名無しさん :2006/01/02(月) 16:56:00
>>69
ありがとうございました。できました。
もう一つ質問なのですが、
CreateWindowで作成するウインドウのサイズは640*480で
バックバッファのサイズを320*240にして、
最終的に2倍で描画したいのですが、そうするとやはりぼけてしまいます。
どうすればいいでしょうか。

71 名前:デフォルトの名無しさん :2006/01/02(月) 17:57:44
>>70
方法はいろいろあるが、俺の場合だったら、IDirect3DSurface9インターフェイスにD3DTEXF_POINTで
一旦転送(※1)してクライアント領域にStretchBlt(GDI)する。
実際にやったことはないので保証はできん。

以下の点に注意が必要かもしれん。
IDirect3DSurface9インターフェイスは、D3DPOOL_SYSTEMMEMで作ったテクスチャから
GetSurfaceLevelで取り出す。
CreateDeviceに渡すD3DPRESENT_PARAMETERS構造体メンバーFlagsに
D3DPRESENTFLAG_LOCKABLE_BACKBUFFERフラグを設定しなきゃならないかもしれん。

72 名前:デフォルトの名無しさん :2006/01/02(月) 18:59:46
>>71
GDIを使うと処理が遅くなったりしないのですか?
ところで、>>70の方法で16*16を2倍にして描画するのと、
32*32を直接描画するのでは、どちらが速いですか?

73 名前:デフォルトの名無しさん :2006/01/02(月) 19:32:49
>>70
ああ、わかった。
フレームサイズを考慮に入れてない。

74 名前:デフォルトの名無しさん :2006/01/02(月) 20:47:08
>>73
クライアント領域のサイズではだめなんですか?

75 名前:デフォルトの名無しさん :2006/01/03(火) 13:47:02
>>72
自分で試せよ

76 名前:デフォルトの名無しさん :2006/01/22(日) 01:54:19
オレも>>59と同じところでハマった
たしかにGDI使ってDirect3Dの拡大縮小を使わなければ無問題なんだが
なんとか解決したい
なにか突破口ないか?

77 名前:デフォルトの名無しさん :2006/01/22(日) 09:12:45
>>76
なにそれ?
スプライト使わなければおきない問題なの?
例えばDrawPrimitiveで直接描画した場合とか、
で、フィルタってのは何を指してるの?
バイリニアフィルタとかそういうのがかかってるってこと?
じゃあ、1回DrawPrimitiveでフィルタ有と無のサンプル作って
実験してみてくんない?
そうしないと君の目でみたフィルタと俺が認識してるフィルタが同じものかってわからない。
このボヤケが拡縮の際につくちょっとしたゆがみならどうにもならないし、
フィルタをOFFにして納得のいく結果が出ればそれでいいんじゃね?

78 名前:デフォルトの名無しさん :2006/01/22(日) 13:35:25
3Dデバイスを経由すれば、どうステートをセットしようと結局ドライバの実装次第だから、
確実に同じイメージを作り出したければ、自分でピクセルを書いていくしかない。
全く同じものが作れたら、そもそも3DCGソフトのレンダラーなんかはハードウエアを使うのが標準になっていただろう。

79 名前:デフォルトの名無しさん :2006/01/22(日) 14:11:12
Direct3D上ではフィルタOFFでも、ドライバの方でフィルタが有効にされ(ry


80 名前:デフォルトの名無しさん :2006/02/05(日) 02:38:00
http://pc8.2ch.net/test/read.cgi/tech/1134388951/
このスレで誘導されたのでこっちで質問します。

ATLでCOMオブジェクトを作っています。
そのオブジェクトにIDirectSound8*を引数にとるメソッドを作りたいのですが、
IDLのコンパイル時に「そのような型は定義されていない」と怒られます。
dsound.hをincludeすると今度はULARGE_INTEGERなどの型が二重定義だと怒られます。

というわけでincludeがまともにできないんですが、
そのような状況でIDirectSound8のような定義を使うにはどうすればいいんでしょうか?
元スレの>>249さんが書いたのをコピペすると
interface hoge : IDispatch{
[id(1), helpstring("メソッド dohoge")] HRESULT dohoge([in] IDirectSound8 *hoge);
};
こういうことをしたいのですけれども。

81 名前:デフォルトの名無しさん :2006/02/05(日) 14:37:39
COMの話は向こうだろ。この発言が正解だ
糞コテなんか信用すんな

>246 名前: デフォルトの名無しさん [sage] 投稿日: 2006/02/04(土) 21:53:24
>これはたまたまインタフェイスがDirectXだったというだけじゃないんですか?

82 名前:デフォルトの名無しさん :2006/02/09(木) 19:16:59
DirectX SDK - (February 2006)
http://www.microsoft.com/downloads/details.aspx?FamilyID=edb98ffa-a59c-4c23-9b92-ba304f188314&DisplayLang=en

         ∧∧ ∧∧
キタ━━━━ (*゚∀゚) (∀゚*)━━━━━━!!!!!!!!!!!!
     彡 ⊂   つ⊂  つ  ミ
   ((   ⊂、 /   \ 〜つ   ))
     ミ   ∪  ≡  U′  彡


どうでもいい。

83 名前:デフォルトの名無しさん :2006/02/09(木) 21:04:50
今回はどんな使いもしない機能がお披露目されたのだろう


84 名前:デフォルトの名無しさん :2006/02/09(木) 23:33:47
てゆうか次のウィンドウズってマジでこれを標準装備なのか?
いままでのGUIは全部サポートできてんのかな?

85 名前:デフォルトの名無しさん :2006/02/10(金) 01:44:26
暇なヤツはとっとと中身をレビューしなさい。これは命令である。

86 名前:デフォルトの名無しさん :2006/02/10(金) 10:20:14
物好きにDirectX10でもチラ見せしてるだけじゃない?

87 名前:デフォルトの名無しさん :2006/02/10(金) 20:49:42
とりあえずエフェクトコンパイラの最適化に
進展はないみたい。
今の最適化では、Uniform引数に構造体を使った場合、不要なメンバの
トリミングをやってくれないもんだから、不用意に構造体使えないんだよなー。
なんとかしてよ、まったく。

88 名前:デフォルトの名無しさん :2006/02/11(土) 03:07:58
エフェクトクラスって遅いしもう使わないよな?

89 名前:デフォルトの名無しさん :2006/02/11(土) 13:05:55
>>88
めでたくD3DXからD3Dに昇格したみたいよ
どっちかっていうと、Effectがメインになってくと思う。
Effectコンパイルさえ通れば他は何でもいいみたいな。


90 名前:デフォルトの名無しさん :2006/02/12(日) 00:59:01
Uniform引数のトリミングの為に、悩んだ末やっと組んだのに
コンパイルが通らねー鬱だー
マジDX10なんていらないから、こっち力入れてよー
2〜3万ぐらいなら金出してもいいのにー

91 名前:デフォルトの名無しさん :2006/02/15(水) 03:41:39
D3DX10ってXPで動く?

92 名前:デフォルトの名無しさん :2006/02/18(土) 14:36:36
VISTA専用

93 名前:デフォルトの名無しさん :2006/02/19(日) 15:23:23
>>82
Windows2000にはインストールすらできないのか。。。

94 名前:デフォルトの名無しさん :2006/02/19(日) 15:33:31
OSに金出すの辛いねぇ
2000で何の不満もないんだけどな

まぁこんなのいらないかw
Vistaまで待とう

95 名前:あげますよ・・・ :2006/02/19(日) 23:02:28
VertexShaderからPixelShaderに
1本の正規化3Dベクトルを渡したいんだが
入出力レジスタは数の制限が厳しいので
xとyだけ渡して、z=√( 1 - (x*x+y*y))としようと思ったんだけど
VSからPSに渡した段階で、ベクトルの長さは1じゃなくなるよね?
この方法は使えないですか?

96 名前:デフォルトの名無しさん :2006/02/19(日) 23:08:22
>>95
>VSからPSに渡した段階で、ベクトルの長さは1じゃなくなるよね?
どういうこと?

97 名前:デフォルトの名無しさん :2006/02/19(日) 23:27:38
>>96
VSからPSへ渡されるレジスタの値は、
線形補間されます。

98 名前:デフォルトの名無しさん :2006/02/19(日) 23:47:09
>>95
線形補間でベクトルが短くなるのは誤差の範囲でええんでねえの。
大体、z=√( 1 - (x*x+y*y))←こんな計算しているぐらいだから、
PS2.0以上でしょ、無理せんでもテクスチャレジスタ8本、カラー
レジスタ2本(これは8bit精度だけど)つかえるから十分なよう気が
するけど。

PS1.xの時代は命令数とかの制限でベクトルを正規化できなくて、
仕方ないから正規化せずに線形補間で短くなる分は誤差という
ことで無視することもあったよ。データを圧縮すれば精度が犠牲
になるのは、トレードオフというのでは。


99 名前:デフォルトの名無しさん :2006/02/19(日) 23:57:01
>>95
ピクセルシェーダで正規化しなおせばいいんじゃないの

100 名前:98 :2006/02/20(月) 00:00:36
>>99
正規化しなおしても、ピクセルシェーダに渡される時点で
x,yの2次元ベクトルの長さが微妙に短くなるので、zの値
が微妙に長くなる。


101 名前:デフォルトの名無しさん :2006/02/20(月) 00:20:46
>>98
ピクセルライティングだと
1ライトにつき3〜4本消費します。
普通にやると、1pass1ライトでギリギリです。
そこで、圧縮して2ライトぐらい出来るようにしようと思ったのですが・・
でも小細工っぽくてあんまり良い方法には思えなくなってきたので止めます。
passを増やす方向で考えます。
アドバイスありがとうございました。

102 名前:98 :2006/02/20(月) 00:35:07
自分の中で1照明1passという固定観念があったので気がつかなかった。
ピクセルライティングだと1照明で確かに3、4本消費するね。



103 名前:デフォルトの名無しさん :2006/02/23(木) 23:19:35
質問です。
ロボットのキャラアニメ部分を製作中です。
D3DXFRAME と ID3DXAnimationController
1対1のアニメは成功しました。
最終的には4対1になるのですが、ID3DXAnimationController.CloneAnimationControllerで4対4にする方法しか思いつきません。
パフォーマンス的にそれは避けねばならない場合、どうしたら良いでしょうか?


104 名前:デフォルトの名無しさん :2006/02/23(木) 23:25:01
自前にして個別データと共有データを分離すれば?

105 名前:デフォルトの名無しさん :2006/02/23(木) 23:50:24
>>103
マルチは失せろ

106 名前:デフォルトの名無しさん :2006/02/24(金) 00:17:53
初心者の方かw

107 名前:デフォルトの名無しさん :2006/02/27(月) 01:23:32
頂点バッファレンダリング(Render To Vertex Array)ってのは、
Direct3D9では出来るの?
現状ではVertexBufferにD3DUSAGE_RENDERTARGETは指定出来ないみたいだけど

108 名前:デフォルトの名無しさん :2006/02/27(月) 02:03:07
実際に使えるかどうかはデバイスの問題でDirect3D9では対応している。

109 名前:デフォルトの名無しさん :2006/02/28(火) 02:41:15
>>108
Direct3D9では対応しているとは具体的にはどういうことですか?
VertexBufferをレンダターゲットにするんでしょうか?
それともテクスチャを頂点バッファとして使うんでしょうか?
自分のRadeon9700ですけど、対応してたら嬉しい。

110 名前:デフォルトの名無しさん :2006/02/28(火) 03:15:03
>>109
その意味がわからないことが信じられない。
Capsって何のためにあると思っているんだ。

111 名前:デフォルトの名無しさん :2006/02/28(火) 03:55:49
>Direct3D9では対応している
本当?

112 名前:デフォルトの名無しさん :2006/02/28(火) 12:54:40
DirectXのライブラリが対応してるのとデバイスが対応してるってのは
全然別の話って意味。大昔のビデオカードが刺さってるPCに
DirectX9を入れる事は可能だけどだからといって最新の
プログラマブルシェーダーが利用できるってわけじゃない

113 名前:デフォルトの名無しさん :2006/02/28(火) 13:26:08
>>112
頂点バッファレンダリングの実装例が
OpenGLのはあるけどDirectX9のが見つからないのよね。
だからもしかして対応自体してないんじゃないのって話。

114 名前:デフォルトの名無しさん :2006/03/14(火) 02:31:13
2006年後半にサンプル出荷が始まるDirectX 10世代GPU
http://pc.watch.impress.co.jp/docs/2006/0228/kaigai245.htm

115 名前:デフォルトの名無しさん :2006/03/16(木) 19:11:33
プログラマーが直にVRAMの再配置とかってできんの?

116 名前:デフォルトの名無しさん :2006/03/16(木) 21:26:17
もはや誰もそんなことは考えていないし、DirectX 10はもっと考えなくて済むようになってる。

117 名前:115 :2006/03/16(木) 23:17:13
私も考えたくない事ではありますが。。。

118 名前:デフォルトの名無しさん :2006/03/17(金) 14:37:27
だから考えなくていいんだってば。

119 名前:デフォルトの名無しさん :2006/03/17(金) 20:40:39
ガンガンに出し入れしても最適化される作りになっている。。。という感じでしょうか?
しつこくてすいません。


120 名前:デフォルトの名無しさん :2006/03/18(土) 21:41:13
ていうよりは再配置やらを意識したコードは「書いてはいけない」。

121 名前:デフォルトの名無しさん :2006/03/19(日) 12:45:25
VRAM容量はCPUのキャッシュ容量と同じくらいには気にしなくていい。
シロウトは何も考えずにコード書いとけ。問題など起こらん。

122 名前:115 :2006/03/19(日) 12:49:02
なるほど。  気にしなくて良いのは分かりました。
しかし、どうしても行いたい場合、どういった関数群を使用したら良いのでしょうか?

123 名前:デフォルトの名無しさん :2006/03/19(日) 12:50:54
>>122
違う。「出来ない」といってるの。
ウィンドウズですら管理できてないと思われる。
簡単にロストするしね。

124 名前:115,122 :2006/03/19(日) 13:09:50
>>123
なるほど。
VRAM容量調べてリソース突っ込んでいたのですが、
容量限界を突破しても登録できたので「変だな〜」とは思っていたんです。
容量限界を超えたらシステムメモリをVRAMとして勝手に割り当てちゃうみたいですね。

ありがとうございました。

125 名前:デフォルトの名無しさん :2006/03/19(日) 17:29:41
VRAMに置けば速くなるとでも思ってるのか?

126 名前:デフォルトの名無しさん :2006/03/19(日) 23:32:42
 

127 名前:115 :2006/03/20(月) 01:59:54
速くなるかどうかは分かりませんが、何らかのメリットはあると思ってます。


128 名前:デフォルトの名無しさん :2006/03/20(月) 03:31:34
テクスチャはすべて256x256x16bit固定にするとか
メモリはすべてD3DPOOL_DEFAULTにするとか
メモリの断片化を防ぐため、malloc/free/new/delete禁止で自前のメモリ確保関数を使うとか
c++を禁止し、cだけで書くとか
何らかのメリットはあると思ってます。


129 名前:デフォルトの名無しさん :2006/03/20(月) 07:21:30
それ、他の部分でのデメリット多そうだな

130 名前:デフォルトの名無しさん :2006/03/20(月) 11:28:55
>>115はVRAMとフレームバッファの認識がごっちゃになってる気がする。

131 名前:デフォルトの名無しさん :2006/03/20(月) 13:08:49
>>128
Win32でもこういう考え引きずってる人いるんだよな

132 名前:デフォルトの名無しさん :2006/03/20(月) 13:34:08
Win32っつーか2000以降だろ
やれるならやった方が良いだろ。
どっちかっていうとコンシューマあがりって感じに見える。

133 名前:デフォルトの名無しさん :2006/03/20(月) 13:43:04
日本はもう駄目かも分からんね。

134 名前:デフォルトの名無しさん :2006/03/20(月) 13:57:50
floatとdoubleみたいなものか

135 名前:デフォルトの名無しさん :2006/03/20(月) 15:36:42
>メモリはすべてD3DPOOL_DEFAULTにするとか

これはまだ有効なんじゃないの

136 名前:デフォルトの名無しさん :2006/03/20(月) 18:42:04
>>115を茶化す為に書いただけでしょ。
無効とは書いてないし。

137 名前:デフォルトの名無しさん :2006/03/20(月) 21:48:59
ヘルプには256x256が一番速いって書いてなかったかな

138 名前:デフォルトの名無しさん :2006/03/20(月) 23:25:58
>>137
詳しく

139 名前:デフォルトの名無しさん :2006/03/20(月) 23:45:12
ハードウエアによって最適な値は異なる。

140 名前:デフォルトの名無しさん :2006/03/21(火) 00:13:03
>>138
ヘルプつってんだからヘルプ読めよ基地外

141 名前:デフォルトの名無しさん :2006/03/21(火) 00:28:34
そんな怒んなくても良いではないでつか。
もしかしてアノ日?(・ω・)

142 名前:デフォルトの名無しさん :2006/03/21(火) 00:53:39
>>138=>>141
うぜぇ。
お前氏ね。

143 名前:デフォルトの名無しさん :2006/03/21(火) 00:56:10
いやおまいのがウザイ

144 名前:デフォルトの名無しさん :2006/03/21(火) 05:30:50
>>137

> できるだけ正方形テクスチャを使用する。ディメンジョンが 256 × 256 のテクスチャが最速である
http://msdn.microsoft.com/library/ja/DirectX9_c/directx/graphics/programmingguide/tutorialsandsamplesandtoolsandtips/tips/performanceoptimizations.asp?frame=true

コレだね。

145 名前:デフォルトの名無しさん :2006/03/21(火) 08:04:05
>>137
それはMSが想定した化石レベルな話。

> NVIDIA
> It doesn't influence a speed though it is probably 1024*1024 though it is probably 256*256.
256だろうが1024だろうが速度に関係ねーよボケ。

> ATI
> It is not the resolution of the texture to be high speed best. This MS256(256*256 is the fastest) age ended.
速度をあげるのはテクスチャ解像度じゃねぇ。MS256(256が一番速い)の時代は終わったんだよボケ。

146 名前:デフォルトの名無しさん :2006/03/21(火) 08:30:16
ヘルプを信じるなという良い例だなw

147 名前:デフォルトの名無しさん :2006/03/21(火) 13:52:57
これこそまさに鬱だ氏のう

148 名前:デフォルトの名無しさん :2006/03/21(火) 15:48:46
たぶんVRAMの容量が少なかった頃に誰かが適当に書いた一文なんだろうな。

149 名前:デフォルトの名無しさん :2006/03/21(火) 17:31:36
>>128
勘違いしちゃう人のためにかいておくけど>>128みたいなことは
全部OSが管理してるからやっても無駄。

150 名前:デフォルトの名無しさん :2006/03/21(火) 20:04:16
ハードウェアを特定せずに最適値のガイドラインを書いても
すぐ obsolute になってあまり意味があることには思えないよな。>MSのヘルプ
tips がどのハードを想定して書いたものなのか明確にしてほしいわな。

151 名前:デフォルトの名無しさん :2006/03/21(火) 20:34:54
>どのハードを想定して書いたものなのか
ヘルプ&チップスを書いたバイトの兄ちゃんが持ってるハード

152 名前:デフォルトの名無しさん :2006/03/21(火) 21:07:27
ソフトウェアレンダラの話とか

153 名前:デフォルトの名無しさん :2006/03/21(火) 21:17:10
もはや3Dですら同人ソフト程度なら大富豪プログラミングが可能。
いい世の中になったものだな。

154 名前:デフォルトの名無しさん :2006/03/21(火) 23:49:59
>>149
規模によると思うんだが、、、

嗚呼、、、叩かれそうな悪寒

155 名前:デフォルトの名無しさん :2006/03/21(火) 23:54:37
>>154
ん?規模によらないでしょ?
そもそも物理メモリってのはすでに俺等には触れない領域でな(以下略

156 名前:154 :2006/03/22(水) 01:04:28
いや例えばFF11はメモリ管理とか自前で色々やってそうでさ。。。

長時間安定動作を求められるものでも、
コンパクションをOSに任せっきりなのかなぁ。。。なんて。


157 名前:デフォルトの名無しさん :2006/03/22(水) 03:26:14
( ゚д゚)ポカーン

158 名前:デフォルトの名無しさん :2006/03/22(水) 04:54:41
floatは遅いから16.16固定少数をメインに使うってポリシーでDirect3Dのゲームを作ってる人も
各都道府県に1人くらいはいるかもしれない。

159 名前:デフォルトの名無しさん :2006/03/22(水) 09:19:10
>>158は過去からの旅人

160 名前:デフォルトの名無しさん :2006/03/22(水) 10:14:24
>>158
千葉県は俺だ。

固定小数点用のクラステンプレート作ったから
16.16 / 24.8 等もサクっと計算できるし、
キャスト用関数も用意したから、浮動小数点型へも簡単に変換可能だ。


まぁなんだ。


すまん。

161 名前:デフォルトの名無しさん :2006/03/22(水) 10:37:28
えーマジ固定小数! 固定小数が許されるのは小学生までよねーキャハハハ

最近まったく使ってないことに気づいた。
携帯Javaも浮動小数サポートしたしな。

162 名前:デフォルトの名無しさん :2006/03/22(水) 10:51:23
つい3年前まで固定少数ベースで組んでた
2D物しかやってなかったんでそれで十分だったのもある
D3Dに移行し時、3Dではそういう最適化は無意味だと気付いた

163 名前:デフォルトの名無しさん :2006/03/22(水) 10:56:33
>>152
結構当たってるんではないかと…
DirectXの実装自体が「ソフト屋の考え方」が根底にあるよな。

164 名前:デフォルトの名無しさん :2006/03/22(水) 12:01:58
もうインラインアセンブラでヘコヘコする時代は終わり?

165 名前:デフォルトの名無しさん :2006/03/22(水) 12:29:43
昔インラインアセンブラ使ってDirectDraw上で
MMXαブレンディングしたことあるが、
その時すでにDirectX7が登場してたからただの徒労だった

166 名前:デフォルトの名無しさん :2006/03/22(水) 12:37:44
石にはかなわん

167 名前:デフォルトの名無しさん :2006/03/22(水) 12:59:55
256*256なんて、アセンブリャー世代にはいかにも速そうに見えるサイズだろう。
でも今のボトルネックはメモリの帯域だしな。

168 名前:154 :2006/03/22(水) 13:57:33
すいません。
なんか自分自身、良く理解できてない気がする。。。
OSがコンパクションやるはずもなく。
言いたかったのはフラグメント対策です。

長時間安定動作を求められるものでも、
フラグメント対策をOSに任せっきりなのかなぁ。。。なんて。

なんか勘違い入ってる?俺。

169 名前:デフォルトの名無しさん :2006/03/22(水) 14:59:17
Javaで24時間稼動してるウェブサービスとかゴロゴロあるわけですが。

170 名前:154 :2006/03/22(水) 15:05:37
System.gc() を毎回呼んだ方が良いとか聞いた事があるんですが。。。

171 名前:デフォルトの名無しさん :2006/03/22(水) 17:14:07
ソースは何処だ?


…というか、スレ違いの話題だと思うんだな。

172 名前:デフォルトの名無しさん :2006/03/22(水) 17:31:40
・今のPCでは、断片化など気にせずガンガンnew/deleteしても24時間365日動きますし、
 パフォーマンス上の不利もありません。本当に気にしなきゃいけないのは日本全国で5人くらいじゃね?
 他はみんな自己満足野郎(言ってやった言ってやった

・ゲーム機のやや狭いメモリだと、PCよりも断片化による問題が起こりやすくなりますが、
 大抵は、一部の大きなリソースだけを固定したり、シーンごとにすべて強制解放してやれば解決します。

・それよりも、みみっちく手動でメモリ管理することによる開発効率の低下のほうが問題です。
 C++のメリットの大半を捨てることになるし、ライブラリも大部分が使えなくなるはずだけど、いいの?

・面倒なメモリ管理なぞランタイムやVMに委ねてしまって、何かあったらそのときに対処。
 実際にはまず問題など起こりません。この大雑把さが今流。富豪的プログラミング。

・どう見てもスレ違いです。本当にありがとうございました。

173 名前:154 :2006/03/22(水) 17:38:08
某ゲーム会社のサーバー周りを担当した会社のソースのコメントアウト
「毎フレームガベコレした方が良いのか!?」
って書いてあって驚いたw

174 名前:154 :2006/03/22(水) 17:42:28
ああ。。。やっぱり叩かれてしまった。

本当にありがとうございました。

175 名前:デフォルトの名無しさん :2006/03/22(水) 18:43:56
XNAダウンロードはじまたwktk

176 名前:デフォルトの名無しさん :2006/03/22(水) 19:09:12
172なら嬉しいが、なんらソースが無いからなぁ…

177 名前:デフォルトの名無しさん :2006/03/22(水) 19:14:21
154もどうかとは思うが172も楽天的過ぎ

>・今のPCでは、断片化など気にせずガンガンnew/deleteしても24時間365日動きますし、

昔と違って単にメモリ搭載量が増えたから問題が露見しにくくなっただけ
自力で再配置する必要は無いが、取得・開放の順ぐらいは気にしとけ

178 名前:デフォルトの名無しさん :2006/03/22(水) 20:55:00
>>172
パーティクルの粒一つ一つをnew/deleteした俺に謝れ

179 名前:デフォルトの名無しさん :2006/03/22(水) 21:33:14
ハード的にはMMU マッピングでメモリ断片化は
原理的に無くせるんじゃなかったっけ

180 名前:デフォルトの名無しさん :2006/03/22(水) 21:58:30
>>154
っていうかさ、OSがどうやってメモリを管理しているのか知らずに
必死で物理メモリいじってる気になってて馬鹿みたい。
あんた管理できないでしょ?
OS通すしかないのわからないの?
OSがどうやってメモリ管理してるか知らないで馬鹿みたいなことしないでくれない。

181 名前:154 :2006/03/22(水) 22:09:40
あー。。。まー確かに。。。

182 名前:デフォルトの名無しさん :2006/03/22(水) 22:25:23
>>178
つ メモリプール

183 名前:デフォルトの名無しさん :2006/03/22(水) 23:13:45
>>177
> 昔と違って単にメモリ搭載量が増えたから問題が露見しにくくなっただけ

メモリ容量が増えて十分に露見しなくなったら、問題は解決していると思うのだが。
ひとつのアプリを動かしつづけている限りは、ある程度断片化は起こしても
メモリ消費はそれなりのところで収束しないか?

てか、実際、問題が起こったことないしな。
よく考えてみれば俺Windowsのmallocの実装知らねーや。気にしたことないから。
68/98時代は自前のヒープ管理コード書いてたのだが、すっかりぬるぽか。

184 名前:デフォルトの名無しさん :2006/03/23(木) 06:49:15
ここは化石人類の宝庫ですか?

185 名前:デフォルトの名無しさん :2006/03/23(木) 12:48:38
MZ-2000使ってましたが何か質問ある?

186 名前:デフォルトの名無しさん :2006/03/23(木) 13:41:36
どんなテープだとエラーが出にくいですか?

187 名前:デフォルトの名無しさん :2006/03/23(木) 13:56:05
>>183
Windows の malloc とか Linux の malloc とかいうのは無いよ。
bcc の malloc とか vc の malloc とか glib の malloc とかがあるだけ。

188 名前:デフォルトの名無しさん :2006/03/23(木) 17:34:51
>>185
俺はMZ-80Bだったんだけど、80Bと2000って何が違うんだっけ?

189 名前:デフォルトの名無しさん :2006/03/23(木) 20:29:17
------ ビルド開始: プロジェクト: dx0, 構成: Debug Win32 ------
リンクしています...
d3dx9.lib(d3dx9dbg.obj) : error LNK2019: 未解決の外部シンボル __imp__RegCloseKey@4 が関数 "int __stdcall GetD3DRegValue(unsigned long,char *,void *,unsigned long)" (?GetD3DRegValue@@YGHKPADPAXK@Z) で参照されました。
d3dx9.lib(cpudetect.obj) : error LNK2001: 外部シンボル "__imp__RegCloseKey@4" は未解決です。
d3dx9.lib(d3dx9dbg.obj) : error LNK2019: 未解決の外部シンボル __imp__RegQueryValueExA@24 が関数 "int __stdcall GetD3DRegValue(unsigned long,char *,void *,unsigned long)" (?GetD3DRegValue@@YGHKPADPAXK@Z) で参照されました。
d3dx9.lib(cpudetect.obj) : error LNK2001: 外部シンボル "__imp__RegQueryValueExA@24" は未解決です。
d3dx9.lib(d3dx9dbg.obj) : error LNK2019: 未解決の外部シンボル __imp__RegOpenKeyA@12 が関数 "int __stdcall GetD3DRegValue(unsigned long,char *,void *,unsigned long)" (?GetD3DRegValue@@YGHKPADPAXK@Z) で参照されました。
d3dx9.lib(cpudetect.obj) : error LNK2001: 外部シンボル "__imp__RegOpenKeyA@12" は未解決です。
D:\c\vc2005\dx0\Debug\dx0.exe : fatal error LNK1120: 外部参照 3 が未解決です。
ビルドログは "file://d:\c\vc2005\dx0\dx0\Debug\BuildLog.htm" に保存されました。
dx0 - エラー 7、警告 0
========== ビルド: 0 正常終了、1 失敗、0 更新、0 スキップ ==========


190 名前:デフォルトの名無しさん :2006/03/23(木) 20:34:35
事故解決

191 名前:デフォルトの名無しさん :2006/03/23(木) 21:34:51
struct VERTEX2D
{
float x,y,z,w;
float tu,tv;

// 頂点FVF
enum { FVF = D3DFVF_TEX1|D3DFVF_XYZRHW};
};

入れる順番変えたら動かない
順番は 座標、UVって決まってるの?


192 名前:デフォルトの名無しさん :2006/03/23(木) 21:36:40
FVFは当然入れ替えても問題ない、ただの数値だからな。
ただFVFに対しての頂点データの順番は固定。
無論シェーダーで処理する場合は全て自分で定義できるので自由。

つまりドキュメントくらい見ろってこった。

193 名前:デフォルトの名無しさん :2006/03/23(木) 22:20:47
つーかいきなりレベルが...
いや何でもない

194 名前:デフォルトの名無しさん :2006/03/23(木) 23:37:47
ちょま!
俺の為に時よ止まれ!

>>145
ソースいただけないでしょうか?

195 名前:デフォルトの名無しさん :2006/03/24(金) 02:16:49
ここはDirectX初心者質問スレ【狼】だからな

196 名前:デフォルトの名無しさん :2006/03/24(金) 12:14:24
そもそもある程度のレベルに達した奴が2chなんかに質問しにくるんだろうか

197 名前:デフォルトの名無しさん :2006/03/24(金) 12:49:59
DirectXとは直接関係ないけどQuakeとかのBSPファイルに対応した
FPS作成可能な日本のライブラリって見かけないけどやっぱり国柄の問題?

198 名前:デフォルトの名無しさん :2006/03/24(金) 14:16:41
あっちはFPSのおかげで3Dとネットワークが飛躍的に発展したね
2Dの基本がシューティングゲームなら3Dとネットワークの基本はFPS
それすっ飛ばしてMMORPGばかり作るから技術が伸びない

199 名前:デフォルトの名無しさん :2006/03/24(金) 14:42:54
winnyのために回線速度は飛躍的に上がりましたってのはだめ?

200 名前:デフォルトの名無しさん :2006/03/24(金) 15:50:13
てことは、そのへんをDXライブラリやLunaあたりがサポートしてくれれば
フリーや同人あたりで出回ってきたりするのかもしれないね。

どっちも一人で作ってるみたいだから望み薄かもしれないけど。


201 名前:デフォルトの名無しさん :2006/03/24(金) 17:13:34
>>187
DirectXスレだからVCに決まってるじゃないか。

202 名前:デフォルトの名無しさん :2006/03/24(金) 17:21:51
餌がよくない

203 名前:デフォルトの名無しさん :2006/03/24(金) 19:23:58
>>200
敷居が下がっても増えるのは(ry

204 名前:デフォルトの名無しさん :2006/03/24(金) 19:35:09
大きなピラミッドを作るには下敷きになる人々がたくさん必要

205 名前:デフォルトの名無しさん :2006/03/24(金) 19:51:24
下敷きでもなれるならよいがな

206 名前:デフォルトの名無しさん :2006/03/24(金) 20:15:33
>>197
日本ではFPSは人気ないし、あまり需要がないだろう。
BSPやPVSは屋内のようにマップの大半が不可視の場合に
効率的だが、三人称視点はそういう地形に向いてない。

もっとも、一番のネックはプログラミング技術的なことよりも
レベルエディットだと思うけどね。

207 名前:デフォルトの名無しさん :2006/03/24(金) 23:02:28
PGでもなんでもない場違いな人なのですが・・・
漏れのPCで3Dmark05のデモを動かすと、D3DERR_DEVICELOST って言われて
しまうのですよ。

それでその言葉ググったらここのスレのpart8ってのが出てきて、分からないなりにザット
読んでみたのですが・・・

要するに、これ言われちゃう時はデバイスリセットするようにコード書かなきゃだめってことで、
バグって言っちゃっていいってことなのかしら?
漏れのハードがしょばいからって訳じゃなくて

208 名前:デフォルトの名無しさん :2006/03/24(金) 23:10:38
つまり本題は、このスレの住人のエスパーぶりを試すため、
そのしょっぱいハードウエア構成を当てろという挑戦状だな。

209 名前:デフォルトの名無しさん :2006/03/25(土) 00:32:37
日本は同人弾幕STGのおかげでパッド普及率が飛躍的に発展したね
それしか作られないから、3Dもネットも、ありとあらゆる方面で技術が伸びない

210 名前:デフォルトの名無しさん :2006/03/25(土) 01:25:05
3Dかぁ・・・
すげー作りたいんだけどデータの用意がしんどいんだよね。

今参加させてもらってる同人サークルでは進言して
3Dでって話を進めてるけどモデルデータに関しては
四苦八苦してる感じ。

DirectX用の最適なモデル作成ってのもまた面倒だしね。

ネットワークは必要とあれば対応ってそんな難しい気がしないけど。
サーバークライアント型しか作ったことないからP2Pだとまた難しいのかもしれないな。


211 名前:デフォルトの名無しさん :2006/03/25(土) 06:14:19
初学者が気軽に使える3Dモデラーがないよね
日本でモデラーといえばメッシュ作成までで、動きをつけられないのが当たり前

212 名前:デフォルトの名無しさん :2006/03/25(土) 06:31:36
>>211
そもそもキャラクターの動きそのものをどうやってつけるか?
って部分がテンプレ化してないから、よしんば、アニメーション+スキニング(スキミングではないw)ができたとしても
ぶつ切りアニメができるだけだしねぇ。

モーションA
モーションB
まではできるだろうよ。
でも、それにともなって必要になる
アクションA
アクションB
アクションA->B
までをやるのは至難の技だろうな。

それと最近の六角大王を使えばとりあえずアニメーション+スキニングまではつくぞ。
旧タイプのファイルで吐き出して、どっかのサイトに落ちてるフリーの変換ソフトでスキニングのXファイルが作れるんだ。
知らなかっただろ?

とりあえずできる環境はある。
でも、3Dゲーム作るならそんなところには拘らないで、とりあえずアニメーション無しの物体でも出して
3Dゲーム作ってみればいいとおもうんだけどなぁ・・・

213 名前:デフォルトの名無しさん :2006/03/25(土) 09:23:21
モーションなしでも見栄え的に問題ない
レイストームみたいなSTGとかですら作る人が滅多にいないのが現状・・・ってとこだね。

エロゲーの極限まで低スペックまで動作サポートは当たり前みたいな
風潮も足をひっぱってるのかもしれないね。

PS2からの移植(3Dあり)のサンプル作成時に
上司からMatrixG400&DirectX5&Pen2の200くらいで動くようにしろ
って言われたときは撃ち殺そうかと思った・・・。


214 名前:デフォルトの名無しさん :2006/03/25(土) 09:25:42
モーションを繋げるのは、モーションブレンドをかけるだけだから、
別に至難の業でも何でもないが。
不自然に繋がるなら基本姿勢を用意すればいいだけだし。

215 名前:デフォルトの名無しさん :2006/03/25(土) 09:37:22
モーションブレンドだとDirectX8で追加された新しいモーションタイプが癌になるでしょ。
全キーフレーム分のデータをマトリックスで持ってる形式のやつ。

計算を早くするための導入されたんだろうけど、
計算後のマトリックスしかないとブレンドは至難の技じゃない?


216 名前:デフォルトの名無しさん :2006/03/25(土) 09:45:23
>>215
別にゲーム作るのにXファイル完全対応する必要はないので、
自分のゲームでマトリクスキーは使わなければいいだけ

217 名前:デフォルトの名無しさん :2006/03/25(土) 12:44:41
そらそうか、、、普段ライブラリ作ってると全機能対応しなきゃならんとか思ってしまう・・・

218 名前:デフォルトの名無しさん :2006/03/25(土) 16:29:40
てか、マトリクスキーだって使いようでしょ?
回転とかで半回転とか1回転とかさせるデータを作らないで30度ぐらいで刻んでキーを打つようにしていけば
特に問題なく動くんじゃない?
って別に使わなきゃいけないって決まりも無いけどw
まあ、それでも動かすことはできるということで。

219 名前:デフォルトの名無しさん :2006/03/25(土) 21:53:16
だから問題点はスケールが掛かってると簡単には補間できないってことでしょ

220 名前:デフォルトの名無しさん :2006/03/25(土) 22:17:49
>>219
マトリックスの各要素をそのまま補間するだけでそれっぽくなると思うけど?

221 名前:デフォルトの名無しさん :2006/03/25(土) 22:52:40
じゃあ、任意のスケールと回転を合成済みの3x3行列が A、Bのふたつあるとして
それをxの割合で、そのまま補完する方法を教えてください



222 名前:デフォルトの名無しさん :2006/03/25(土) 23:58:15
なんだか急にレベルが・・・

223 名前:デフォルトの名無しさん :2006/03/26(日) 00:13:06
それって出来ないんじゃ無いっけ?


224 名前:デフォルトの名無しさん :2006/03/26(日) 00:30:15
答えられる人はここにいない

225 名前:デフォルトの名無しさん :2006/03/26(日) 00:34:41
回転の順番が固定されてる時のみ分解できるじゃないっけ?
回転の順番が固定されていなくて、さらにスケールまではいってるものを
分解なんてどう考えても無理な希ガス。

226 名前:デフォルトの名無しさん :2006/03/26(日) 03:54:11
>>221
普通にそれぞれの値を線形補間するしかないんじゃね?
分解はもう不可能だし。
それは回転や平行移動に関しても似たようなもんじゃね?
例えば、1回転な。もうこんなの確かにマトリクスじゃ無理っしょ。

だけど、あってるあってないはともかくとして状態Aのマトリクスと
状態Bのマトリクスを線形補間するんだから、あくまで「近似」だったらできると思わない?
それで十分な値の作り方もあるっしょ?

227 名前:デフォルトの名無しさん :2006/03/26(日) 09:06:14
2つの回転行列が合成された行列は分解不可能
1つの回転行列と1つの拡大行列なら分解できる

228 名前:デフォルトの名無しさん :2006/03/26(日) 10:52:05
その通り。

229 名前:デフォルトの名無しさん :2006/03/26(日) 10:56:58
まぁDirectX8で追加されたマトリックスキーはゴミってこったな。
面倒なことにSDK付属のプラグインで3DSMaxで出力したXファイルは
マトリックスキーしか吐き出さない。

230 名前:デフォルトの名無しさん :2006/03/26(日) 11:48:14
ごもっとも。

231 名前:デフォルトの名無しさん :2006/03/26(日) 18:21:37
>>229
だから、要は使いようだって、キーを小刻みに打てば一応使えるでしょ。

232 名前:デフォルトの名無しさん :2006/03/26(日) 18:30:34
いぁいぁ、、、モーションブレンドのときどうすんのよ?
って話さねぇ

233 名前:デフォルトの名無しさん :2006/03/26(日) 18:38:06
>>231
ブレンド相手のモーションとのスケールや角度の差が大きければ、
ねじ曲がったり潰れたりする。
中間姿勢まで大量に作るつもりなのか?

そんな無駄な苦労をするくらいなら、最初から行列で吐かなければいいだけ。
何故固執するのか分からん。

234 名前:デフォルトの名無しさん :2006/03/26(日) 19:20:39
頭が固いんだろ

235 名前:デフォルトの名無しさん :2006/03/26(日) 20:01:51
フォーマットくらいマトモなのが標準になってほしいもんだ。
COLLADAとかどうなるんだろ

236 名前:デフォルトの名無しさん :2006/03/27(月) 01:45:24
>>233
>何故固執するのか分からん
そういう方法があってもいいじゃん。
気に入らないならサポートしなければいいだけで。
ルーチン自体は至って単純だし、Tinyのサンプルもサンプルとして十分な動きで動いてるじゃん。
良い悪いは別として「使える」ってところは大きいと思うけどね。

この方法の方が都合いいことってのもなんかあるかもしれないわけだし。
DirectXの開発者がヘルプを変更してまで追加してみたフォーマットなんだからなんかいいことあんじゃないの?

俺がいいたいのは「あってもいいでしょ?」ってこと。

237 名前:デフォルトの名無しさん :2006/03/27(月) 02:21:19
否、都合良いことはないね。

可能性だのなんだの、お花畑PTAや厨房アニメの奇麗事みたいなこと言ってんな。
ないの。いいところは全く。

↓そうじゃないってんなら、思いつくのを書いてみろ


238 名前:デフォルトの名無しさん :2006/03/27(月) 02:38:26
Tiny女史は単純に大量のキーを吐いてるだけという
なんとも香ばしい状態でして、あれを実用するとなるとちょっと・・・

239 名前:デフォルトの名無しさん :2006/03/27(月) 02:44:39
ちょっと・・・?
ちょっと、何だよ?
言いたいことがあるならはっきり言ってみろってんだ。

240 名前:デフォルトの名無しさん :2006/03/27(月) 02:44:46
Tiny女史の4モーション入ってる奴は2.5MBあるしな・・・
そもそもMaxで出力された奴は時間の概念がおかしいからうっとうしい・・・

マトリックスキーで最大の欠点は任意のスピードの再生が出来ないことだな。
スローモーションとか補間できないからカクカクになる。
高速再生も整数倍でしかできないし。

241 名前:デフォルトの名無しさん :2006/03/27(月) 07:03:33
>>237
そんなのDirectXの開発者に聞けよ。
逆に聞くけど、Tinyのサンプルで何かまずいことあるの?
サンプルならあれで十分じゃないの?

242 名前:デフォルトの名無しさん :2006/03/27(月) 08:28:25
行列でしか吐けないMAXのプラグインを書いた奴が無能だっただけの話。

243 名前:デフォルトの名無しさん :2006/03/27(月) 11:44:07
>>237
お前もアニメの悪役みたいな台詞で必死になるなって
モーションブレンドが必要ない状況ならあれが高速で使いやすい。
問題はモーションブレンドが必要な時が多いのに行列キーしかサポートしてないって点だろ

244 名前:デフォルトの名無しさん :2006/03/27(月) 15:55:22
そういや大分昔の話だけど
ID3DXAnimationControllerだっけ?
あれがなかったころのskinnedmesh.cppの実装は
行列キーのは線形補完じゃなくて本当にコマ送り処理だったな

245 名前:デフォルトの名無しさん :2006/03/28(火) 12:51:46
ttp://www.4gamer.net/news/history/2006.03/20060327230253detail.html

各種ゲームスレで「XPなんですけどこれ動きますか?」が何回書き込まれるんだろう

246 名前:デフォルトの名無しさん :2006/03/28(火) 13:11:25
またライブラリ作るのかと思うとそれはそれでしんどいが、
なんだかんだで楽しそうでもあるな。

247 名前:デフォルトの名無しさん :2006/03/30(木) 15:11:43
D3DXMATRIXA16 matW;
D3DXMatrixIdentity(&matW);
static float g_rotY =0,x=0,z=0,big=1;
g_rotY +=0.1f;
D3DXMatrixRotationYawPitchRoll( &matW, g_rotY, 0,0 );

D3DXMATRIX matrix;
D3DXMatrixTranslation(&matrix,x,0,z);
x+=0.01;
//z+=0.5;
matW*=matrix;
D3DXMATRIX ScaleMat;
D3DXMatrixScaling(&ScaleMat,big,big,big);
matW*=ScaleMat;
big+=0.009;


ど〜ん^^

248 名前:デフォルトの名無しさん :2006/03/30(木) 15:22:25
すげー!!!
マジ感動した!!

249 名前:デフォルトの名無しさん :2006/03/30(木) 18:01:50
?、自演?

250 名前:デフォルトの名無しさん :2006/03/30(木) 20:30:33
みんな寄ってたかってマトリクスキー悪い子にしてるけど
これは元々ブレンドとか補間とかが必要でない状況に用意されてる物であって
その他の状況で使う物ではないのと思うのですよ.
例えばいわゆるポリゴンムービーとか決まり切ったモーションを
フレームベースで処理するときなどに使用するのではないかと.
ブレンドも補間も必要ないから他のキーでは無駄でしょ?そんな時に応えてくれるのがマトリクスキーです.
ブレンド云々言っている方は道具の使い方間違ってるだけでマトリクスキーを責めるのはお門違いだと思う.

まあマトリクスキーしか出力出来ないソフトはポリゴンムービーしか
想定してないということではないでしょうか...


■過去ログ置き場に戻る■ 1- 次250 最新50
DAT2HTML 0.33f Converted.