5ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  

■ このスレッドは過去ログ倉庫に格納されています

鬱だ氏のう DirectX (Part 7)

1 :名前は開発中のものです。:02/12/10 17:34 ID:tkEwMMYm
DirectXについてマターリと技術情報交換&雑談するためのスレッド。
初心者用相談室では扱わないような少し高度な話題も受け持つ。

■ 過去スレ
Part 1 http://piza.2ch.net/tech/kako/966/966655286.html (プログラム板)
Part 2 http://pc3.2ch.net/test/read.cgi/tech/997101556/ (プログラム板)
Part 3 http://game.2ch.net/gamedev/kako/1005/10051/1005119775.html
Part 4 http://game.2ch.net/gamedev/kako/1016/10162/1016276254.html
Part 5 http://game.2ch.net/test/read.cgi/gamedev/1027351925/
Part 6 http://game.2ch.net/test/read.cgi/gamedev/1033920036/

2 :名前は開発中のものです。:02/12/10 18:17 ID:hBDtdJ2C
2getzusa-

3 :名前は開発中のものです。:02/12/10 18:34 ID:Dd4Ue4un
ResetはD3D_OK返してます。

D3DPOOL_MANAGED以外は使ってないので、
各オブジェクトのReleaseもしてません。



4 :名前は開発中のものです。:02/12/10 18:45 ID:ZtlKmS92
前スレからのコピペだが......

MSのDirectX関連ページ

DirectX Home Page
http://www.microsoft.com/japan/windows/directx/default.asp

MSDN>DirectX
http://www.microsoft.com/japan/msdn/directx/default.asp

個人サイトはあんまり知らない・・・

DirectX Info Lib (デバイス情報のデータベース。すばらしい!)
http://www.netsphere.jp/dxinfo/

BBX(掲示板)
http://isweb8.infoseek.co.jp/computer/bbx/

spin
http://spin.s2c.ne.jp/

宇治社中改(3D基礎講座)
http://www.cc.rim.or.jp/~devilman/


5 :あぼーん:あぼーん
あぼーん

6 :1:02/12/10 19:02 ID:tkEwMMYm
>>4
フォローサンクス

7 :名前は開発中のものです。:02/12/10 22:41 ID:Yh8uDVWN
http://game2.2ch.net/test/read.cgi/game/1038243467/
M$のあの人が降臨して噂? 電波? まき散らしてます。DX9も。

8 :名前は開発中のものです。:02/12/10 23:16 ID:4d7wQ+to
DirectXAudioでデバイスの列挙をする関数を教えてください。

9 :名前は開発中のものです。:02/12/11 00:11 ID:JGGuGsUV
>>8
IDirectMusic8::EnumPort

関数じゃなくてメソッドだ罠

10 :名前は開発中のものです。:02/12/11 00:45 ID:nElzBzIF
>3

デバイスの設定が初期化されてんじゃないの?
具体的に何かは忘れたが、再設定してやらないといけなかったと思う。

識者よろしく

11 :あぼーん:あぼーん
あぼーん

12 :名前は開発中のものです。:02/12/11 08:15 ID:4B0/2BCo
>>7
2chブラウザによっては、リンク先のスレッド名を取得するのでバレバレというのをご存知か?

13 :名前は開発中のものです。:02/12/11 18:13 ID:dYtn0SwM
C言語ではfloatよりdoubleの方が計算が速いと言うのを聞いたことがあるのですが、
なぜDirectXは多くの場面でfloatを使うのでしょうか?
使用メモリ量の関係ですか?

14 :名前は開発中のものです。:02/12/11 18:27 ID:tvq6Mbgl
floatの方が早いに決まってるじゃねぇか

15 :13:02/12/11 18:42 ID:dYtn0SwM
float型の演算は内部でdoubleにキャストしてから行われるというのを何かで見たのですが、
それはVisualC++には当てはまらないのですか?

16 :名前は開発中のものです。:02/12/11 19:00 ID:8GcUuocM
>>15
コンパイラ依存ではなく
アーキテクチャ依存だと思われ

17 :名前は開発中のものです。:02/12/11 19:15 ID:2vYAZWWI
>>13
SSE,3DNowのためかと思ってたけどよく知りません

18 :名前は開発中のものです。:02/12/11 19:19 ID:2vYAZWWI
>>15
>float型の演算は内部でdoubleにキャストしてから
コプロ(内蔵してるが)使用するときはその様な感じになってると
聞いたことがあるような気がするがよく知りません

19 :16連続投稿スマソ:02/12/11 19:20 ID:8GcUuocM
使用メモリ量と帯域の影響だと思う。ちょっとくらいCPUが重くなっても
メモリから取り出すデータ量が減ったほうが効率がいいんじゃないかな?

20 :名前は開発中のものです。:02/12/11 20:14 ID:frs86VqQ
たしか浮動小数点の演算をするところがdoubleにあわせて作られてるとム板できいたことがある。
たしかにfsinfとかの関数をおってくと
floatでキャストしただけになってて最適化なんてやってくれそうもない。

21 :あぼーん:あぼーん
あぼーん

22 :名前は開発中のものです。:02/12/11 22:26 ID:wIFL56Nc
float dir = 0.5;
float vx = sin(3.141492 * dir)l;

↑これにはfloatからdoubleへの暗黙のキャストが隠れている。
それを避けたければこう。↓

float vx = sinf(3.141492f * dir);


23 :名前は開発中のものです。:02/12/11 23:18 ID:5cp9RTbD
だからそれってさあ、デバッガでおってくと強引にfloatでキャストしてあるだけだよ。

24 :あぼーん:あぼーん
あぼーん

25 :名前は開発中のものです。:02/12/12 00:20 ID:b6a4sQZk
>>23
> だからそれってさあ、デバッガでおってくと強引にfloatでキャストしてあるだけだよ。
それは最適化なしの場合だろ。
最適化ありだとFPU命令になるだけで
そもそも関数呼び出しにならないよ。
22 の場合もどっちも同じ命令にコンパイルされる。

26 :名前は開発中のものです。:02/12/12 00:23 ID:E1h2ul2n
そうなんだ関数呼び出しにもならなんだ。

27 :あぼーん:あぼーん
あぼーん

28 :あぼーん:あぼーん
あぼーん

29 :あぼーん:あぼーん
あぼーん

30 :13:02/12/12 10:27 ID:YYFVkYo6
>14-29
安心してfloat使ってよいと言うことですね(最適化ありで)。
ありがとうございました。

ソボークな疑問なんですけど、floatとFLOATって何か意味が違うんですか?
違いはなくても意味があって大文字のものと小文字のものがあるんですか?

31 :あぼーん:あぼーん
あぼーん

32 :名前は開発中のものです。:02/12/12 10:32 ID:Hn1bHLmY
>>30
ヘルプ嫁

33 :あぼーん:あぼーん
あぼーん

34 :名前は開発中のものです。:02/12/12 11:21 ID:smOf7KP3
http://www.theinquirer.net/?article=6640

ガセ?マジ?

35 :あぼーん:あぼーん
あぼーん

36 :あぼーん:あぼーん
あぼーん

37 :あぼーん:あぼーん
あぼーん

38 :あぼーん:あぼーん
あぼーん

39 :王様:02/12/12 17:08 ID:27oI7cTX
>>34
ソフトウェアのすばらしいサテンは、明日その心臓にある慈悲を感じて、そしてついにDirectX 9のための苦しめる待機を終えて、そしてそれを発表しそうです。
3つのベータと2人の解放候補者の我々がゆっくり見たバージョン、と確かにそのDirectXで、9は、本物のより幸福ないくつかの会社を助けて、そしてDirectX 9人の運転手を解放するだろう充分に羽がでるまで育てられた鳥になるところです。
それを支える唯一のカードを現在送ることは、Radeon 9700および9500のプロとアマチュアです、そして、それは多くがクリスマスツリーのもとできらきら輝いているのを見つけるでしょう。
Nvidiaは、本当に、そのDirectX 9支持者を贈りました、Geforce FXしかしこのカードは、大量に2月ほどにはすぐに利用できないでしょう。
ATIは、それが公式に発表されると同時に、彼らが9月と彼らが彼らの顧客にDirectX 9の全面的支援をもつフリーのドライバーを提供するだろう今の最終版からのDirectX 9ハードウェアを出荷しているので、誰より先にこれから利益を得るでしょう。
ATIは、9700および9500の世代のためにRC0にDirectX 9、そのファンシーなデモとドライバーのバージョンをすでに提供していて、しかし、約1日で、それは、その揺れ動いている役割の用意ができている最終の1があるでしょう。
開発者は、ついに彼らが遊ぶことができる本当のAPIを持つでしょう。μ



40 :名前は開発中のものです。:02/12/12 21:46 ID:Qr4JjMmi
>>39
>運転手を解放
ハイジャックかよ!

41 :名前は開発中のものです。:02/12/13 00:43 ID:1uA3wOfS
>>34
マジであってほしい・・・
そうならRadeon9700買う。

42 :名前は開発中のものです。:02/12/13 00:43 ID:1uA3wOfS
しかしGeForce5発表後とは予定通りだなあ。
やっぱりバランス取ってるのね。

43 :名前は開発中のものです。:02/12/13 14:38 ID:7xJaeg/e
fraps
http://www.fraps.com/
みたいに、他のDirectXソフトの画面に他アプリケーションが
重ね描きするのって、どうやればいいんでしょう?

どなたか、キーワードだけでも知らないですか?

44 :あぼーん:あぼーん
あぼーん

45 :名前は開発中のものです。:02/12/13 21:52 ID:mZ92GDES
          ☆ チン     マチクタビレタ〜
                         マチクタビレタ〜
        ☆ チン  〃  Λ_Λ   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
          ヽ ___\(\・∀・) <  DX9まだー?
             \_/⊂ ⊂_ )   \_____________
           / ̄ ̄ ̄ ̄ ̄ ̄ /|
        | ̄ ̄ ̄ ̄ ̄ ̄ ̄|  |
        | .佐賀みかん.  |/

46 :名前は開発中のものです。:02/12/14 00:28 ID:bU5z0g+9
MS DirectX 9 final version coming any day nowで検索すると
12日付けで結構引っかかるな。


47 :名前は開発中のものです。:02/12/14 17:31 ID:1VN/aEFO
>>45
( ´,_ゝ`)プッ

48 :あぼーん:あぼーん
あぼーん

49 :名前は開発中のものです。:02/12/14 22:03 ID:NabTMAnA
>19
それもあるが、プロセッサに載ってる命令セットの問題もある。

3D 演算では行列・ベクトルが多用されるわけだが、この処理を高速化するため
に載ってる命令が、単精度浮動小数点 * 4 の 128bit データを前提としてる。

IA-32 でも PlayStation 2 でも、この手の SIMD 命令を使う演算ユニットと、汎用
の浮動小数点演算用コプロセッサと両方持ってるんだが、行列演算では前者を
使わんと性能が一桁落ちる。

50 :16:02/12/14 22:32 ID:S4SiGzG1
>floatよりdoubleの方が計算が速い
ふと思ったんだけど、これって
for(int i;i<=1000000:i++,f++);
とかの命令を実行したとき、
fはfloat型よりもdouble型のほうが速いってことを言ってるんじゃないかな?
これだったらレジスタでバリバリ計算できるからメモリ読み出しは皆無
だからネイティブなdoubleのほうが速いんじゃないかな?

こういうことはあんまり詳しくないので詳しい人、解説きぼんぬ

51 :16:02/12/14 22:33 ID:S4SiGzG1
うわ、int iになってる・・・
とんでもなく恥ずかしいコードだ
int i=0でよろ

52 :名前は開発中のものです。:02/12/14 22:41 ID:opMbyaXl
単純にメモリ量が2倍になるとか。

53 :名前は開発中のものです。:02/12/15 00:49 ID:JrJSKr2Y
> 50
> だからネイティブなdoubleのほうが速いんじゃないかな?
ネイティブなdoubleってのがよくわからんのですけど
float も double もアセンブラレベルでは同じなんで
速さも変わらんでしょ。

逆にメモリへの読み書きが double の方が倍多くなるんで
double 使った方が遅くなるかも。

49 のとおり SSE やグラフィックボードも32ビット浮動小数点なんで
DirectX やるなら普通は float 使ってどうしても精度が問題になるときだけ
double にすべきでしょ。

54 :名前は開発中のものです。:02/12/15 01:59 ID:QBp3zywp
メモリアクセスもあるが、それよりもFPUを単精度モードに固定する
から速くなるんだろ。
DX7の頃はヘルプにもっと詳しく書いてあったんだが、DX8ではほとんど
説明が無くなってる。

55 :49:02/12/15 02:23 ID:GQA1dSUc
>50
> だからネイティブなdoubleのほうが速いんじゃないかな?
x87 FPU のレジスタは 80bit だから、レジスタ内部の型と一致するのは double
ではなく long double です。(型と内部表現の関係は厳密には処理系依存だけ
ど、大抵の IA-32 向け処理系では float = 32bit, double = 64bit, long double =
80bit としてる)。

ただ x87 ではメモリ上のビット表現の如何によらず、レジスタ・メモリ間でデータ
転送する際に「ハードウェアによって」型変換されます。この型変換のコストはゼ
ロですから、float でも double でも差はありません。

あと x87 を使う際に厳しいのは、レジスタの数が 8 本と少ないことと、スタック
アーキテクチャを採っているのでコンパイラによる最適化が利きにくいこと。
レジスタ 8 つといったら同次ベクトル 2 本で既に溢れてしまうわけで、計算以前
にメモリとのロード・ストアに忙殺されることになります。

56 :名前は開発中のものです。:02/12/15 04:00 ID:JrJSKr2Y
>54
> メモリアクセスもあるが、それよりもFPUを単精度モードに固定する
> から速くなるんだろ。
DirectX では単精度モードに固定はしてないよ。
FPUレジスタサイズと同じ拡張倍精度のままだよ。

単精度モードにしても内部では拡張倍精度で計算されて
丸め精度が単精度になるだけなんで速くなるとは思えない。

あとVisualC++だと double も long double も 64bit なんで
レジスタと一致する型はないですね。

57 :名前は開発中のものです。:02/12/15 09:08 ID:QBp3zywp
>>56
Direct3Dはデバイスを作成したときにFPUを単精度モード、FPU例外無効に
設定する。デバイス作成前と後で計算結果が変わるという報告もあるから、
これは間違いないかと。

たぶんD3DCREATE_FPU_PRESERVEを指定しないでデバイスを作成した後に
doubleを使ってもdoubleの精度では計算されていないと思う。

Direct3DはFPUの状態がデバイス作成時から変わらないことを前提に最適化
されているから、doubleを使うときはD3DCREATE_FPU_PRESERVEを指定するか
自分でモードを切り替える必要がある。
D3DCREATE_FPU_PRESERVEを指定すると、Direct3Dの関数呼び出しの前後で
FPUの状態を同じに保つようにするから、それがパフォーマンスに影響する。
…というのがMSの説明。

_controlfpとか使って手動で切り替えればいいのかも。

58 :56:02/12/15 15:59 ID:TrKuLw0B
>56
すいません、今確認してみたらたしかに単精度モードでした。
なんか DirectX とは関係ないライブラリの初期化時に
で倍精度モードに書き換えられてた。
CreateDevice 直後に見たら単精度モードでした。

でも Pen4 で実測してみたんだけど
単精度/倍精度に関係なくFPUの計算速度は同じだった。
Pen4 以前の CPU だと速くなったりするんですかね?

59 :名前は開発中のものです。:02/12/15 18:30 ID:/qOF98KW
精度であって速度ではないかと・・・

60 :名前は開発中のものです。:02/12/15 18:54 ID:T3iOSbyz
>>58
デバイス作成した後にDLLをロードするとリセットされるよ。

速度はFPUのモード切り替え以外ではほとんど差がないんじゃない?
三角関数なんかは精度によって速度が変わるかもしれないが。

61 :56:02/12/16 00:05 ID:LbANvt5G
>60
FPU 使ってなさそなやつだったんで
何でモード変えちゃってるか疑問だったんだけど
DLL ロードでリセットされるんですか。
納得です。

62 :名前は開発中のものです。:02/12/16 10:35 ID:QrSABSJY
確か精度で速度が変わるのはFDIVだけじゃなかったかな。

63 :56:02/12/16 13:07 ID:lLWQwiGl
>62
fdiv だとたしかに速度変わりますね。
しかも微妙にじゃなく結構豪快に変わった。
fmul と fsin しか調べてなかったよ・・・

64 :名前は開発中のものです。:02/12/17 04:03 ID:rBdu6F04
Microsoft postpones DirectX 9 for a week
The new "final date" is 19th of December,
http://www.theinquirer.net/?article=6744

65 :名前は開発中のものです。:02/12/18 18:56 ID:qPtEvAdZ
floatとdoubleの話なんだが、この話の原因である「doubleの方が早いのか」のヒントになりそうな文章を見つけたよ
その文章を抜粋すれば ()の中身は文章をわかりやすくするため漏れが付け加えました

>・floatの計算
>以前(ANSI C以前のC)はfloatはdoubleに変換されてから計算されていましたが、
>直接計算されるようになりました。
>そのため必要とする精度が少ないない場合は float を使った方が高速になりました。

↑なんだけど、doubleのほうが早いって言うのはANSI C以前のCについての記述じゃないかな?
漏れは詳しくないから良くわかんないんだけど、知っている人おしえてくらはい。

ソースはここ
ttp://member.nifty.ne.jp/Ryuz/c/about_ansi.html

66 :名前は開発中のものです。:02/12/19 09:42 ID:+qpAae3H
これからDirectX8勉強するんで、
講座ページ見つけたんですが
そこのサンプルを実行しても
「初期化に失敗しました」になってしまいます。
その原因がどうしてもわからないので
ご協力ください。

ttp://www.roy.hi-ho.ne.jp/pastel/home/index.htm
  ↑
講座ページ

ttp://www.roy.hi-ho.ne.jp/pastel/home/DirectX/DX8_kouza/HelloDX8.zip
  ↑
サンプル

ちなみにVC++6 DirectX8.1を使っています。

67 :あぼーん:あぼーん
あぼーん

68 :名前は開発中のものです。:02/12/19 14:38 ID:dDMU8wxm
>>66
CreateDevice判定を1回しかしてないので環境によっては失敗するのでは?
まあ、俺もDX8の勉強初めて一ヶ月ほどなんでえらそうな事は言えないが。

一応サンプル上げときます。
へっぽこソースだけど、よかったら眺めてやってくださいな。
ttp://www10.ocn.ne.jp/~kc39fgax/DirectX8_SKL.zip

69 :66:02/12/19 17:40 ID:+qpAae3H
>>68
ありごとうございます。
環境不足ですね。

サンプルソース激しく参考にさせていただきます。
お互い頑張りましょう。

70 :名前は開発中のものです。:02/12/21 00:21 ID:H0pabYy8
DirectX9 キタ━━(゚∀゚)━━ !!!!!

ttp://msdn.microsoft.com/library/default.asp?url=/downloads/list/directx.asp

興奮のあまり、旧スレに書いてしまったぜい。
誘導してくれた人、アリガトン。

71 :名前は開発中のものです:02/12/21 04:40 ID:aw46BnhU
>>70
ナイス
休みの暇つぶしが できそうだYO


72 :名前は開発中のものです。:02/12/21 10:57 ID:BdqHu3/h
Direct X9を入れてからDirect Audio8の挙動がおかしい
具体的にはDirectMusicPerformance8::CreateStandardAudioPathが失敗するようになった。
戻り値は0x88781226で、意味は
「パフォーマンス チャンネルがIDirectMusicPerformance8::AssignPChannel を使ってセットアップされたので、
パフォーマンスはオーディオパスをサポートできない。 」
なんだそうだ。しっかし、AssignPChannelを使った覚えはなく、自分のソースを検索しても見つからない(使っていない)
第一、今まで正常に動いていたのが動かなくなる理由にはならないし、
使い方が間違っていて偶然動いていたにしては、戻り値が明らかにおかしいし。
同じ症状の人いませんか?解決策はありますか?
このままだと今まで作ってきたソフトが全滅してしまうのです・・・

73 :72:02/12/21 11:22 ID:BdqHu3/h
うわ!Direct Music8のチュートリアル2まで動かなくなってるよ・・・
(\samples\Multimedia\DirectMusic\Tutorials\Tut2)
サウンドデバイスはUSBオーディオだからドライバもクソもないし・・・
こ・・・こりはDirect X9のせいにしてもよかですか?

74 :名前は開発中のものです。:02/12/21 11:35 ID:eiYZ1q8i
基本的なところでバージョン定数はちゃんと定義しましたか?

75 :あぼーん:あぼーん
あぼーん

76 :名前は開発中のものです。:02/12/21 15:13 ID:f6s/Xm4R
C#での使い心地はどうよ?

77 :名前は開発中のものです。:02/12/21 15:18 ID:0+pehiHA
プログラムは昔からやっているんだが、DirectXの勉強をしようと思う。
で、質問なんだがD3DってXファイル以外使えないの?

環境:Visual C++.net
Windows 2000 SP3

78 :名前は開発中のものです。:02/12/21 15:29 ID:WU56vZJB
>>77
いいえ、そんなことはないですよ。
ただXファイルなら読みこむ関数が用意されているので楽なのです、
ちなみにその関数はD3DではなくてD3Dを使いやすくするための付属ライブラリの
D3DXについてます。

市販ソフトや良く出来たフリーソフトは
独自形式データ&独自の読みこみルーチンが一般的です。

79 :名前は開発中のものです。:02/12/21 15:33 ID:0+pehiHA
>>78
なるほど、だから市販のソフトにはXファイルがないのか。
しかし、モデリングとかはどうするのかな?自分でプラグインとかをつくるの?

80 :名前は開発中のものです。:02/12/21 15:36 ID:WU56vZJB
>>79
モデラーからフォーマットが公開されている形式で出力させる

独自フォーマットへ

っていうコンバータ作るのが一般的かな?

81 :名前は開発中のものです。:02/12/21 15:39 ID:0+pehiHA
>>80
ありがとうございますた。最初はXファイルでやってみて実用的になったら
独自形式の方法もやってみます。

82 :名前は開発中のものです。:02/12/21 15:46 ID:CgoKZUqk
おいおい、C#のサンプルめっちゃ速えよ。十分すぎるほどだ。
どうせ使うつもりないけど、下手にC++にこだわって泥沼に入ってる
オレみたいなのには脅威かも。

83 :名前は開発中のものです。:02/12/21 16:13 ID:i7W/82mb
VISUAL C++ 6.0 WIN MEでやってるけど、
XPでも動くの?C++ 6.0は?

84 :名前は開発中のものです。:02/12/21 16:29 ID:0+pehiHA
>>82
C++とどっちが速いですか?
メモリ使用量も気になるが。

85 :名前は開発中のものです。:02/12/21 16:52 ID:f6s/Xm4R
>>82
 .\         オオオオオオ―――――ッッッッッ       .   /
   \.                                    /
      (゚∀゚) (゚∀゚) (゚∀゚) (゚∀゚) (゚∀゚) (゚∀゚) (゚∀゚) (゚∀゚) (゚∀゚) (゚∀゚)
     (゚∀゚)(゚∀゚)(゚∀゚)(゚∀゚)(゚∀゚)(゚∀゚)(゚∀゚)(゚∀゚)(゚∀゚)(゚∀゚)
    (゚∀゚)(゚∀゚)(゚∀゚) (゚∀゚) (゚∀゚) (゚∀゚) (゚∀゚) (゚∀゚)(゚∀゚)(゚∀゚)
   (゚∀゚) (゚∀゚) (゚∀゚) (゚∀゚) (゚∀゚) (゚∀゚) (゚∀゚) (゚∀゚) (゚∀゚) (゚∀゚)
 ( ゚∀゚)( ゚∀゚)( ゚∀゚ )( ゚∀゚ )( ゚∀゚ )( ゚∀゚ )( ゚∀゚ )( ゚∀゚ )(゚∀゚ )(゚∀゚ )
.( ゚∀゚)( ゚∀゚ )( ゚∀゚ )( ゚∀゚ )( ゚∀゚ ) ( ゚∀゚ )( ゚∀゚ )( ゚∀゚ )( ゚∀゚ )(゚∀゚ )
( ゚∀゚ )( ゚∀゚ )( ゚∀゚ )( ゚∀゚ )( ゚∀゚ ) ( ゚∀゚ )( ゚∀゚ )( ゚∀゚ )( ゚∀゚ )( ゚∀゚ )
────────────────────────────────

じゃぁ、C#でDirectXを始めよう!!

86 :名前は開発中のものです。:02/12/21 17:52 ID:cUrNSFms
ゲームルーチンを加えるとドンと重くなったりして。

87 :名前は開発中のものです。:02/12/21 20:16 ID:n7PDff7R
>>86
同感。
でも重くなる部分はunsafeで書けば何とかなるんじゃないかなぁ
と言ってみるテスト。
http://www.atmarkit.co.jp/fdotnet/csharp_abc/csharp_abc_021/csharp_abc05.html

88 :名前は開発中のものです。:02/12/21 22:18 ID:1u4LlFCS
>87
C#をunsageで使うぐらいならC++のほうがらくだ

89 :名前は開発中のものです。:02/12/21 23:18 ID:qv5/NQ3k
質問なんだけど、Managed DirectX って結局はDirect Xを扱うためのもう一つの方法なんだよね?
Microsoft.DirectX.DirectDraw.DrawEffects の項目を見てて、
相変わらずDirect Drawでα値を使えるみたいなこと書いてあるんだけど、
別に、使えるようになったわけじゃないんだよね?Direct Xの本体はおんなじ物なんだよね?

90 :名前は開発中のものです。:02/12/21 23:55 ID:BzlxTchV
今更そんなことを聞く理由が理解できない

91 :名前は開発中のものです。:02/12/22 00:11 ID:VTU8yluM
いろんな問題が起きそうなのでDrawは終了だろ?
グラボの方のサポートも怪しくなってきそうだし。

92 :あぼーん:あぼーん
あぼーん

93 :名前は開発中のものです。:02/12/22 06:16 ID:YI0WQzNU
おまえらひきこもんな


94 :名前は開発中のものです。:02/12/22 09:59 ID:6B/yK4Zz
DirectDraw使い = 引きこもり同人STG作者
終了

95 :Jumper⌒Y⌒Y⌒( ゚∀゚) ◆JumpZrpgkU :02/12/22 10:02 ID:/sB53JfV
HLSLの予約語。

−−−−−−−−−−−−−−−−−−−−
次のキーワードは未使用だが、予約されている。

asm* bool compile const
auto break case catch
char class const_cast continue
default delete dynamic_cast enum
explicit friend goto long
mutable namespace new operator
private protected public register
reinterpret_cast short signed sizeof
static_cast switch template this
throw try typename union
unsigned using virtual
−−−−−−−−−−−−−−−−−−−−

なんかclassとかありますな。
今のとこ使えないようだが、
シェーダもオブジェクト指向で書けるようになるわけですか。
シェーダプログラムの拡張がしやすくなってウマー…なのか?

96 :名前は開発中のものです。:02/12/22 10:14 ID:rCjzYQTs
C++ の予約語に合わせてみただけに一票。

97 :名前は開発中のものです。:02/12/22 10:20 ID:6B/yK4Zz
8.1からの移行で、いままでnvasmを使ってた人はdx9の dcl_position
どうするの?

98 :あぼーん:あぼーん
あぼーん

99 :名前は開発中のものです。:02/12/22 12:54 ID:6B/yK4Zz
この板はもうだめだと思いますが、
他にまともなDirectXのBBSありますか?

100 :名前は開発中のものです。:02/12/22 13:09 ID:tpBxr2+C
>>98
前から思っていたが、なんでこのすれは終わるんですか?

101 :名前は開発中のものです。:02/12/22 13:10 ID:6KQt+AoQ
>>99
directxで検索してみればあるでよ。

荒らしてるヤシはpcゲーム作りたいのだが、オカネが無い、
担当させてもらえない、技術ガナイ、英語が読めない、
リストラされて荒れてるだけだから、、、許してやってね。

102 :あぼーん:あぼーん
あぼーん

103 :名前は開発中のものです。:02/12/22 16:14 ID:mBDSZwTf
>>99
実はプログラム技術板にもDirectXスレがあったり…

鬱だ氏のう DirectX 2
http://pc3.2ch.net/test/read.cgi/tech/997101556/l50

104 :あぼーん:あぼーん
あぼーん

105 :名前は開発中のものです。:02/12/22 17:22 ID:sSsEI5R3
以前DirectX7で作ったノベルゲームをDirectX8で作り直そうと思いやってみたのですが、
テクスチャを使うと背景画像やキャラ画像が512x512になってしまいます。
やはりサーフェイスを使うべきでしょうか?
DirectX8のスプライト機能は重いって聞くけど、
ポリゴンにテクスチャを貼るようにしたほうがいいのでしょうか?

106 :名前は開発中のものです。:02/12/22 17:37 ID:IeNHUVjA
WinAPIで組むかテクスチャをよりでかいサイズを使うぐらいしか解決策がねぇな。
後は7以前で組むとか。

107 :名前は開発中のものです。:02/12/22 17:47 ID:ab12EPgU
DX9の2D描画系ではダメか

108 :名前は開発中のものです。:02/12/22 18:01 ID:sSsEI5R3
>>106
DX8の2D系はあまり良くないみたいですね。
もう少し弄ってみてダメそうなら諦めます。

>>107
DX9はまだ触ってないのでなんとも言えません。
触るのはもうちょと先ですね・・・

109 :名前は開発中のものです。:02/12/22 19:06 ID:Zc9XiYaJ
8は中途半端だから、俺はまだしばらく7を使うよ。
7なら大抵の環境で動くしな。1年後くらいに9に移行する。

110 :名前は開発中のものです。:02/12/22 20:55 ID:O6Yda65i
今から9やってそのまま一年経過させれば良いのでは?

111 :名前は開発中のものです。:02/12/22 23:33 ID:3R93okVP
DirectX8.1を使ってメッシュの頂点配列やマテリアルなどのオプション子データを
抜き出して、メッシュを表示しながらそれらを編集するプログラムを作って
います。
D3DXLoadMeshFromXofでメッシュを作ると、そのメッシュXfileDataの中に
あるマテリアルリストのデータやメッシュノーマルのデータ等の子データが
GetNextObjectで取得できなくなってしまいます。先にその子データを取得すると今度は
D3DXLoadMeshFromXofの方でエラーがでるため、多分この関数内でGetNextObjectを
やっているのだと思います。そのせいでこの関数が子を取得するとこのメッシュデータ
の子を自分で取得できなくなる、という風に考えているのですが、どうにかして
GetNextObjectでの子オブジェクトの参照カウントを元に戻す方法ってありますか?
AddrefやReleaseをしてみても何も変化はないです。教えて下さい。


112 :111:02/12/22 23:36 ID:3R93okVP
>先にその子データを取得すると今度は
>D3DXLoadMeshFromXofの方でエラーがでるため

間違えました。エラーはでないのですが、マテリアルリスト等の子データを
持たないメッシュができてしまい、表示がおかしくなります。

113 :あぼーん:あぼーん
あぼーん

114 :名前は開発中のものです。:02/12/23 13:40 ID:NO9DtWWS
なんでDX9SDKのC++のサンプルにはSkinnedMeshがあるのに、
Managed DirectX(C#とVB.NET)にはないんだろう。
単に省略しただけなのか、使えない理由があるのか。

115 :名前は開発中のものです。:02/12/23 15:55 ID:EfpKXfeu
Managedで書きにくいサンプルは全部はしょったとか。
あまりに遅くて泣く泣く削った… では無い事を祈る。

116 :名前は開発中のものです。:02/12/23 16:11 ID:qFc82hVW
DXチームにC#の熟達者がいないんだよきっと

117 :114:02/12/23 23:44 ID:NO9DtWWS
どーも
まー、たいした理由でないといいですな。

118 :名前は開発中のものです。:02/12/24 01:15 ID:JJdtC4Ut
DXチームにC#に興味ある奴がいないんだよきっと

やつらは3Dがやりたいんであって、C#やVBは上からのお達しで
仕方なくやってるdake



119 :名前は開発中のものです。:02/12/24 04:52 ID:U9xcR896
単純に労力の問題じゃないか?俺としては初めてC#対応したのにこれだけの
数のサンプルを用意してきた事に驚いたけど。

本音を言うと、C#のサンプルなんか用意するよりもD-MAPやMRTのサンプルを
作って欲しいんだが。毎度のことだけど、売りであるはずの新しい機能の
サンプルが無いんだよな。

120 :名前は開発中のものです。:02/12/24 06:10 ID:IMP3us1S
超初歩的な質問だけど、教えて。

DX9落としたんだけど、サンプルがコンパイル出来ません。
UINTPTRが未定義とか言われる。
basetsd.hてのに宣言されてるけど、エラー出ていてるヘッダファイル
D3D9.h(かな?)には、#includeそのものがない。
どうなってるんでしょうか?
同じエラー出た人います?
(オプション>ディレクトリのパスは通してます(C:\DXSDK\include))


121 :名前は開発中のものです。:02/12/24 06:18 ID:6zRcQ9qZ
>>120
そのディレクトリの検索順は一番上にageてあるか?

122 :名前は開発中のものです。:02/12/24 12:23 ID:RrtXDOZR
DX9キター


123 :名前は開発中のものです。:02/12/24 20:46 ID:CjExnJI6
>>105
テクスチャサイズは2の累乗にしなくちゃいけないんじゃなかったっけ?


124 :名前は開発中のものです。:02/12/24 20:51 ID:8FHlCXa7
DX9来てもマターリしてるなぁ。

125 :名前は開発中のものです。:02/12/24 22:14 ID:sve9Duu3
>>123
DX8から部分的にサポートされてるよ
ただし利用方法が激しく制限されてるので
2^nの一部を使ったほうがまだマシ

126 :名前は開発中のものです。:02/12/24 23:39 ID:wBChHQUX
>>125
どこが激しいのか疑問。
ミップマップ以外は制限とは言えない程度のささいな事じゃん。
2^nであってもCLAMPにしたらテクスチャラッピングは使えないから、
実質的に制限は2つだけ。

127 :名前は開発中のものです。:02/12/24 23:54 ID:sve9Duu3
>>126
使ったことないのに無理しないで。
あとサポートしてる環境を把握してる?

128 :名前は開発中のものです。:02/12/24 23:58 ID:nM8z+tpm
>>126
痛い香具師ハケーン

129 :名前は開発中のものです。:02/12/25 00:28 ID:5yYW1Zio
>>127
そういう自分こそ使ったことない&把握してないのでは?
あの制限のどこが問題になるのか説明してくれる?

130 :名前は開発中のものです。:02/12/25 00:41 ID:o5sX+mEC
DirectX8でフルスクリーンにして、最小化して、元に戻そうとすると、
戻らないのですが、元に戻すには何かしなければいけないのですか?

131 :名前は開発中のものです。:02/12/25 00:56 ID:C+V8gp8b
>>130
Resetが必要なんではないか。
詳しくはサンプルを参照。

132 :名前は開発中のものです。:02/12/25 01:06 ID:loF3ndqX
DX9 でも D3DX は dll じゃないの?

133 :名前は開発中のものです。:02/12/25 01:23 ID:MT7gu6YF
↑電波

134 :名前は開発中のものです。:02/12/25 03:30 ID:PtOPqJI+
>>130
D3Ddevice 作り直さないとだめなのよ〜ん(タブン)

135 :名前は開発中のものです。:02/12/25 03:44 ID:Km2eVg0y
んなこた〜ない

136 :あぼーん:あぼーん
あぼーん

137 :名前は開発中のものです。:02/12/25 07:41 ID:BoDn9JVh
5 REM
10 DEFINT A-Z:SCREEN 3,0,0,1WIDTH 80,25:CONSOLE 0,25,0,1:CLS 3
20 device = new Device(0, DeviceType.Hardware, this, CreateFlags.SoftwareVertexProcessing, presentParams);
30 RELEASE(device);


138 :あぼーん:あぼーん
あぼーん

139 :名前は開発中のものです。:02/12/25 10:23 ID:vBfJXHZb
最近、DirectX系のHPって見ないなぁ。
BBXも野郎BBSも閉鎖だし、ここはこんな風だし…

日本のアマチュアゲーム開発は終了だな。(´・ω・`)ショボーン

140 :名前は開発中のものです。:02/12/25 10:45 ID:N0hSeH2R
BBX閉鎖するの?

141 :名前は開発中のものです。:02/12/25 11:55 ID:ztzHsFBr
if氏のHPってなんで閉鎖したのかな

142 :名前は開発中のものです。:02/12/25 11:58 ID:srbFeJO+
>99
http://bbx.hp.infoseek.co.jp/cgi-bin/bbx.cgi

教えて欲しかっただけだろ?


143 :名前は開発中のものです。:02/12/25 11:58 ID:cEvsDgEI
BBXもif氏のとこも閉鎖してないぞ

144 :名前は開発中のものです。:02/12/25 12:06 ID:6xTmGeBz
[厨房法則]
調べることができない人間ほどBBSに頼りたがる
BBSに頼りたがる人間ほど移転しただけで閉鎖したと勘違いする
勘違いする人間ほど自分が頼るものを失った時点で全てのアマチュアプログラマが開発を終了したと思いこむ

145 :あぼーん:あぼーん
あぼーん

146 :あぼーん:あぼーん
あぼーん

147 :名前は開発中のものです。:02/12/25 16:10 ID:o5sX+mEC
DirectXAudioについて聞きたいことがあるのですが、いいでしょうか。

自分のプログラムでは、MIDIを再生すると、リバーブ等のエフェクトが
最大になってしまいます。一度再生すると、全てのMIDIとWAVがこうなってしまいます。

そこで、エフェクトを削除する方法がわかったので、SetFX(0, NULL, NULL)で
エフェクトを削除したら、すでに再生しているMIDIがとまってしまいました。

で、もう一度MIDIを再生しようとすると、またエフェクトがかかってしまうのです。

エフェクトを削除したら、再生しているMIDIがとまったというのは、
工学社のサンプルでもそうだったので(コードも同じでした)、そういうもんなのだと思ったのですが、
では、どうすればいいのでしょう。

そもそもMIDIを再生した時点でエフェクトがかかるのが間違いですか?

148 :あぼーん:あぼーん
あぼーん

149 :名前は開発中のものです。:02/12/25 18:50 ID:srbFeJO+
( `∀`)オマエガナー

150 :名前は開発中のものです。:02/12/25 20:54 ID:PzwC4Far
すつもん、よろしいでしょか?

メッシュにxファイルを読み込みたいのですが、
そのファイルはどこら辺に入れておいたらよいのでしょうか?
本を買って勉強しているのですが、その辺がどうもわからなくて、つい。

151 :名前は開発中のものです。:02/12/25 21:16 ID:NnnYhCf/
>>150
カレントデレクトリ

152 :あぼーん:あぼーん
あぼーん

153 :あぼーん:あぼーん
あぼーん

154 :名前は開発中のものです。:02/12/25 22:05 ID:PzwC4Far
>>151
 お返事ありがとう!
 …つまり、プロジェクトが入っているフォルダ?

155 :名前は開発中のものです。:02/12/25 22:09 ID:NnnYhCf/
>>154
VisualStudioから実行した場合はたぶんそうだけど
普通はexeファイルがあるところ、
カレントディレクトリをゲットする関数(Win32)とかもあるんで
調べてみたらいいかも?

156 :名前は開発中のものです。:02/12/25 23:29 ID:/fn3aOJD
DirectX8.1のSPRITE(LPD3DXSPRITE)を使って自分のライブラリを作ってるんだけど、
SPRITEで半透明ってできませんか?

157 :名前は開発中のものです。:02/12/25 23:29 ID:lmj/8fOx
>>150
カレントディレクトリはプログラムの実行の仕方や、実行中の操作で変化
するから、できればフルパスで指定した方がいいよ。
でも、大抵の場合はカレントディレクトリから読み込んで問題無い。

VisualStudioから実行した場合は、デフォルト設定のままならプロジェクト
のある場所がカレントディレクトリになるけど、プロジェクトの設定の
作業用のディレクトリで変更できる。

ちなみに、実行中にファイル選択ダイアログを使う場合は、このダイアログ
がカレントディレクトリを変更してしまうので要注意。

158 :_:02/12/25 23:34 ID:7ccBlzyE
>>154
どうやるのが一般的か知りませんが、自分は
char path[_MAX_PATH];
GetModuleFileName(hInst,path,_MAX_PATH);
で、exeファイルフルパスを取得したあと、邪魔なファイル名を削ってカレントディレクトリを取得しています。

実行ファイル名の削り方は、
char pDrive[_MAX_DRIVE+1];
char pDir[_MAX_DIR+1];
char pFname[_MAX_FNAME+1];
char pExt[_MAX_EXT+1];
_splitpath(path,pDrive,pDir,pFname,pExt);
でフルパスを分解してから、
string currentDirectory=pDrive+pDir;
currentDirectory+="\\";
くらいでいいのでは。

例えば、
Text.xというxファイルを、exeのあるフォルダにいれたとしたら、
ファイルを読み込むときに、
string filename=currentDirectory;
filename+="Test.x";
のようにかいて、それをファイルを読み込むメソッドの引数に入れるとか。
う〜ん、わかりずらいですね…。

159 :158:02/12/25 23:37 ID:7ccBlzyE
すまん。↑のコード
currentDirectory+="\\";
は必要なかった。

160 :名前は開発中のものです。:02/12/26 00:15 ID:IJOtQDAy
悪いことはいわない。
ぜぇっっってぇーフルパスにしとけ。
なにがなんでもフルパスを使うくせをつけろ。

161 :名前は開発中のものです。:02/12/26 00:18 ID:hDb5j8vT
>>156
テクスチャのα値をいじれば?

162 :名前は開発中のものです。:02/12/26 00:49 ID:ZW5MFsfx
>156
DirectX8のスプライトはあまり良くないので、ポリゴンでスプライトの代用した方が
自由度が高いよ。

163 :_:02/12/26 00:52 ID:p7bBeRQy
>>156
ID3DXSprite使ったこと無いけど、たぶん
ID3DXSprite::Drawの引数D3DCOLORのα値を指定するのかと。

例えば50%半透明なら、
D3DCOLORにD3DCOLOR_ARGB(128,255,255,255)を入れればいいと思う。

>>162
同意。ID3DXSpriteには、あまりいい噂はききませんね。


164 :名前は開発中のものです。:02/12/26 02:43 ID:8elQi3d2
フルパスマンセーの奴がいるが、正気か?
exeのある場所を最初にカレントにして、そこから相対パスってのが基本だろ。

165 :名前は開発中のものです。:02/12/26 02:49 ID:u+QTkfIN
> exeのある場所を最初にカレントにして、そこから相対パス

開発中はdebug\hoge.exeとかになってるぽ

166 :名前は開発中のものです。:02/12/26 03:48 ID:9RUwBm5s
>>164
コモンダイアログのファイル選択ダイアログを使ったことがあれば
フルパスマンセーになるぞ。
ゲームならあまり使わないかもしれないがツールだとまず確実に使う。

167 :名前は開発中のものです。:02/12/26 05:51 ID:AGlHM0EQ
>>166
ファイル選択ダイアログのフラグにOFN_NOCHANGEDIRつけとけばカレントディレクトリかわらないよ。

まあ、毎回元のディレクトリから始まるようになるので、
遠くのファイルを何回も選ぶ場合には面倒だけど。

嫌なら毎回ディレクトリ保存しておいて復元してもいいし。

168 :あぼーん:あぼーん
あぼーん

169 :名前は開発中のものです。:02/12/26 07:04 ID:ePwyo9mV
問題は開発の誰かがカレントを変更してしまうおそれがある。
ってのが一番面倒、ぶんなぐれ。
でかいツール作ってるときは誰がなにやってくれるかわからない。
ゲーム本体でもユーザーに保存場所を選ばせる場合だと必要になるから、いっそフルパスマンセーのが楽に逝ける。

170 :名前は開発中のものです。:02/12/26 07:08 ID:oxPiSeR2
VCを個人で使ってるなら作業ディレクトリ設定できるからカレント云々は困らないけどね。

171 :156:02/12/26 07:10 ID:h8wBSWcJ
>>161,>>162,>>163
お、ちゃんとα描画できました。
SPRITEの方が簡単に作れると思ったのですが、やはり普通に
ポリゴンで扱ったほうがいいみたいですね…。
ありがとうございました(・∀・)

172 :あぼーん:あぼーん
あぼーん

173 :名前は開発中のものです。:02/12/26 07:52 ID:f4uAG8Os
お、ディレクトリ管理の話ですか。標準でついてるExporterが
Xファイルのテクスチャをフルパスで吐き出すのが困りものなのよね。

 ところで、フルパスからカレントパスを作るのも意外とめんどい
んだけどなんか良い関数ないもんですかね?

174 :150:02/12/26 09:15 ID:ik1sR7sq
 答えてくださった方、ありがとう。
 こんなにレスがつくとは思いもよりませんでした。
 

 本当にありがとうございます!!
 では引き続き作業を頑張ります。

175 :名前は開発中のものです。:02/12/26 09:53 ID:8elQi3d2
nvidiaのサイトからcg_toolkitが落とせない。
どっか他にない?

176 :名前は開発中のものです。:02/12/26 11:22 ID:8ZNjq3av
>>175
ftpからはおとせたYO!
ftp://download1.nvidia.com/developer/cg/


177 :名前は開発中のものです。:02/12/26 11:34 ID:AGlHM0EQ
>>173
PathRelativePathToあたりどう?

環境(IEのバージョン?)によっては動かないかもしれないけど。


178 :名前は開発中のものです。:02/12/26 11:46 ID:Tz6MkjNI
DirectX初心者です。
現在.hackの様な視点の3Dゲームを作ろうとしているのですが、
周りの物体が妙に傾いたように描画されてしまいます。
プロジェクションマトリックスのセットはこんな感じです、
D3DXMatrixPerspectiveFovLH(&mProj, 60*PI/180 , 1.0f , 0.5f , 640.0f);
何か解決策は無いでしょうか。

179 :名前は開発中のものです。:02/12/26 12:12 ID:u+QTkfIN
引数三つ目のアスペクト比は1.0でいいの?
画面の縦横比をいれなきゃダメよ。

180 :名前は開発中のものです。:02/12/26 12:19 ID:Tz6MkjNI
アドバイスありがとうございます。
早速アスペクト比をWIDTH/HEIGHTで入れたのですが、
やっぱり画面端に行くにつれ、木などが傾いてしまいます。

181 :名前は開発中のものです。:02/12/26 12:34 ID:j+J1+fQK
1.0のところを変えてみたらどうでしょ。

ってか、連書き規制きびしすぎねえ?1時間以上経つのにかけなかったよ

182 :名前は開発中のものです。:02/12/26 12:40 ID:W0NkvfZI
そういえば、アスペクト比でDirect X7かなんかの本のサンプルが逆になってたな
640*480の解像度で1.33333fとか入ってるの。
0.75だろうが!って突っ込みたかった。

183 :名前は開発中のものです。:02/12/26 12:47 ID:+a+DZGj7
60*PI/180の60を減らしてみよう

184 :名前は開発中のものです。:02/12/26 13:18 ID:u+QTkfIN
DXは横を1とした縦のサイズだったかな。
あとはfloatにキャストしてないとか
int W = 320;
int H = 240;
D3DX...( ... , W/H, ...);
じゃあダメよ。

185 :あぼーん:あぼーん
あぼーん

186 :名前は開発中のものです。:02/12/26 16:50 ID:rNK9GIom
>144

ありがちだな


187 :名前は開発中のものです。:02/12/26 17:30 ID:Tz6MkjNI
みなさんのアドバイスを参考に、
D3DXMatrixPerspectiveFovLH(&mProj , 35.0f*PI/180 ,(float)WIDTH/(float)HEIGHT , 1.0f ,640.0f);
と、してみたところ結構マシになりました。
ありがとうございました。

188 :名前は開発中のものです。:02/12/26 17:39 ID:u+QTkfIN
>>187
おめでとう。
あと、WとHが逆だったかもしれん。

189 :名前は開発中のものです。 :02/12/26 18:25 ID:SuFqab0r
DirectX3Dにはフラットシェーディングとグーローシェーディング
があるそうですがどの関数で切り替えられれますか?

190 :189:02/12/26 18:38 ID:SuFqab0r
解決しましたが、フラットシェーディングとグーローシェーディング
では処理速度はフラットの方が速いでしょうか?

191 :名前は開発中のものです。:02/12/26 20:39 ID:bqU4KP+U
>190
試してみるのが一番だ。

192 :名前は開発中のものです。:02/12/27 07:45 ID:md1EDfNJ
>>190
激しく環境依存ってことも忘れずにね

193 :あぼーん:あぼーん
あぼーん

194 :名前は開発中のものです。:02/12/27 12:24 ID:7dHzV0a8
スプライトのBeginとEndの間に書ける処理って、
スプライトのDraw「だけ」なんですか?
ポリゴンを描画しようとすると、自分の環境では表示がおかしくなるのですが、
ほかにおかしそうなところが見当たらないので、そういうもんと認識しても
いいのでしょうか。

195 :名前は開発中のものです。:02/12/27 13:20 ID:vFPVFOou
>>147
パフォーマンスの初期化のところでデフォルトのオーディオパス・タイプをみて
DMUS_APATH_SHARED_STEREOPLUSREVERBになってませんか?
DMUS_APATH_DYNAMIC_STEREOにすればエコーがなくなります。


196 :195:02/12/27 13:22 ID:vFPVFOou
// パフォーマンスの初期化
hr = g_pPerformance->InitAudio(
NULL, // IDirectMusicインターフェイスは不要
NULL, // IDirectSoundインターフェイスは不要
NULL, // ウィンドウのハンドル
/*DMUS_APATH_SHARED_STEREOPLUSREVERB*/DMUS_APATH_DYNAMIC_STEREO , // デフォルトのオーディオパス・タイプ
64,// パフォーマンス・チャンネルの数
/*DMUS_AUDIOF_ALL*/NULL, // シンセサイザの機能
NULL); // オーディオ・パラメータにはデフォルトを使用
if (FAILED(hr))
{
DXTRACE_ERR("DirectMusicPerformance8の初期化に失敗", hr);
return FALSE;
}
参考書コードの修正後ソース・・・この方が分かりやすいかと・・・

197 :あぼーん:あぼーん
あぼーん

198 :名前は開発中のものです。:02/12/28 18:56 ID:pcScEEbX
レベル低すぎ

終了
おまえら首吊れ

199 :名前は開発中のものです。:02/12/28 21:55 ID:EVvwHmrD
シェーダ使えない環境でDirectX9のメリットってあるの?

200 :名前は開発中のものです。:02/12/28 23:48 ID:KFOt0L7z
>>195
うわぁ〜。すごいすごい。
その通りやったら見事直りました。

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

201 :あぼーん:あぼーん
あぼーん

202 :名前は開発中のものです。:02/12/29 04:51 ID:mxtUttMf
>>199
まともな製品作るならシェーダで突っ走るに決まってる。
糞ユーザーのためにシェーダ使わない選択するのは愚挙。
そういうときはソフトウェアで頂点シェーダ動かしてピクセルシェーダは放置


203 :名前は開発中のものです。:02/12/29 05:46 ID:YZiM0Z3W
俺はWinXPに標準で載ってる8.1を選ぶぜ。

それは別として、DirectX 9の日本語HTMLヘルプがウィンドウサイズ記憶してくれない……。
どうなっとるんでしょうかこれわ。8のはちゃんと覚えてくれるのに。

204 :あぼーん:あぼーん
あぼーん

205 :名前は開発中のものです。:02/12/29 09:23 ID:UWWAc8w/
シェーダーマンセーな人に悪いけどそんなのありえないからね。
まあ、大手でサポートバッチリならいいけど、
それ以外なら駄目よ。
だってグラボを自分でつけかえないかぎりピクセルシェーダなんてついてこねーだろ?
ドライバだってとってくるとは思えない。
バンプだってまともに動くもんがすくないぞ

206 :名前は開発中のものです。:02/12/29 10:39 ID:mxtUttMf
>>205
はいはい
別に使わなくていいよ

君はドライバ由来の不具合も自分の責任の範囲とする立派な方だ。
NECの98時代から受け継がれた日本の美徳だね。

207 :名前は開発中のものです。:02/12/29 11:25 ID:BImKIoRD
なにこの人つっかかってんだろう。
理想はそうかもしれんが、ユーザーにドライバの不具合がどうたら言ってもなあ。

208 :名前は開発中のものです。:02/12/29 11:45 ID:Yj/SuFlV
ピクセルシェーダが使えるビデオボード持ってるユーザー
日本にどのくらいいるんだろ…?
10万人いるのかな?
FF効果で結構増えたと思うが…。

209 :名前は開発中のものです。:02/12/29 12:02 ID:Rd+l9s3F
>>203
うちもなぜかDirectX9のヘルプがウィンドウサイズ記憶しないので、仕方なく
MSDNに統合して使ってるよ。
http://www.sofarts.com/computer/env-soft/windows/app_programming/vs/vs-dx-msdn2.htm


210 :_:02/12/29 12:14 ID:WzbQdq3y






http://freeweb2.kakiko.com/dengeki/indexe.htm






211 :名前は開発中のものです。:02/12/29 12:48 ID:mFB76vnS
PCでゲームやる人はビデオカードくらい買い換えるでしょ。
一般ユーザーはPCでゲームなんてやらない(特に洋ゲーなんて)から、
シェーダー使いまくっても問題ないんじゃね


212 :名前は開発中のものです。:02/12/29 13:46 ID:XzXpe3S+
>PCでゲームやる人はビデオカードくらい買い換えるでしょ。

どの程度買い換えると思うんだい。
ゲームだけのために何万円も出せるやつぁなかなかいないよ。
今ならGeForce2MXか4MXあたりで満足してるだろうな。

213 :名前は開発中のものです。:02/12/29 15:23 ID:ZUUThS54
ヘルプより抜粋なんですが、

> D3DX8.CreateTextureFromFileInMemory メモリ内のファイルからテクスチャを作成する。
>
> object.CreateTextureFromFileInMemory( _
> Device As Direct3DDevice8, _
> SrcData As Any, _
> LengthInBytes As Long) As Direct3DTexture8
>
> SrcData
> テクスチャの作成に使用するメモリ内のファイル。

このメモリ内のファイルとは、どうやって作成するのですか?

214 :名前は開発中のものです。:02/12/29 15:36 ID:ZUUThS54
抜粋する場所間違えました。
これのC++バージョンでお願いします。

215 :名前は開発中のものです。:02/12/29 15:42 ID:Z7eWPCRp
ああ、まだわかってないやつがいるね。
グラボがどういうものかなんてちゃんと認識してかってるやつなんていないんだよ。
大抵は知ったか野郎の馬鹿ばっかと考えて、まず間違いない、
GForce4MX買ってきて動きませんとかいう質問が何百件ときてその一人一人に説明すんだぞおめ。
サポートがしっかりしてればべつね。

216 :213:02/12/29 17:08 ID:ZUUThS54
解決しました。

217 :名前は開発中のものです。:02/12/29 17:09 ID:d5AOLlrA
普通はシェーダが使えなければそのぶん画質が悪くなるだけで
ゲーム自体が動かないようには作らない

218 :名前は開発中のものです。:02/12/29 17:30 ID:+snDuV4e
本当にそんなことが可能なのか?
もし、その機能がなかったらこの機能を代わりに使うということを逐一考えて作るのか?
判定をミスると透過やフォグの類は最悪だぞ、
ラデオン7000ではフォグがきかずユーザーの画面には白い板がでてたそうな。笑
ピクセルシェーダはどうなるんだ?
透過が入ってくると無ければ使いませんとはいかないだろ

219 :名前は開発中のものです。:02/12/29 17:41 ID:kj0kwrPh
同じルーチンを使いまわそうとするからいけないのでは?
手間はかかりますが有り無しを別々に作れば問題ありません
実際市販ゲームでは最低スペックの条件はあるにしても
最新機能の有り無しは速度と画質にしか影響してません

220 :名前は開発中のものです。:02/12/29 17:55 ID:YfCnAzDb
skinnedmeshを詳しく説明してる日本語
サイト知ってる人いますか?

221 :名前は開発中のものです。:02/12/29 18:11 ID:UWWAc8w/
一つ一つに手間をかけろということで?
でもそれなら、いっそ上はみないで低機能マシンでも動く範囲内で作りこんだほうが綺麗になるかも。
という結論になっちゃうよ。
だってモデルやテクスチャも動かないマシンむけと本物むけを用意しなくちゃいけないこともでてきそうだし。


222 :あぼーん:あぼーん
あぼーん

223 :名前は開発中のものです。:02/12/29 23:58 ID:fsGk3LPm
>>221
 言ってることが極端すぎないか?ようは低機能のマシン(といっても
限度があるだろうな。さすがにVirgeって事は無いはず)でちゃんと動く
ように作り、プラスアルファの部分として、ピクセルシェーダーのある
マシンなら使う部分がある、みたいにするんじゃないの?判定はできるんだし。

 ピクセルシェーダーの無いハードは、細かい機能の有無なんかチェック
しないで、低機能マシン汎用ルーチンで処理しちゃえばいいでしょ(もちろんこの
部分をちゃんと作る必要はあるんだが)。

 ちなみに頂点シェーダは、8.1までの機能なら、ノープロブレムで使えると
思ってる(CPUがちゃんとエミュしてくれる)けど、実際は問題があることも
あるのかな?個人レベルでは、そういう経験は無いんだけど。

224 :名前は開発中のものです。:02/12/30 00:58 ID:9z/BycTF
現在.hackの様な視点の3Dゲームを作っていて、
モデルの全面検索で当たり判定をとって、避け補正を付けたのですが。

面ががT型に交わっているところに斜めに進入すると、
その面の向こう側に垂直に立っている面とも当たり判定を取ってしまいます。
何か良い回避方法は無いでしょうか。

225 :名前は開発中のものです。:02/12/30 02:16 ID:q+UcSJ4d
低スペックマシン対応プラスαでピクセルシェーダをつけるのか
んな作業時間あるわけねーだす、大抵はプラスαをきって納品だす笑
頂点シェーダがどこまで可能かってのはやったことない。
やってみてくれ
もしを考えると恐くて使えないっす。無知ゆえの恐怖もあります

当たり判定は当たり自体のアルゴリズムをいじるより
判定をする当たりの絞り込み自体をなんとかしないとどうにもなりません。
一体自分の現在地からあたりうる当たりはどれだろう?、という判定に力をいれます。

226 :名前は開発中のものです。:02/12/30 04:27 ID:sZfvlTCt
実際結構考えずに買うオンボードチップのユーザーが多いからなあ。
っつーかDirectX7はいいよ。大抵動く。
シェーダーじゃないと表現できないような凝った事もしたいけれど
とりあえず売上重視だからね。

227 :あぼーん:あぼーん
あぼーん

228 :あぼーん:あぼーん
あぼーん

229 :名前は開発中のものです。:02/12/30 10:01 ID:0ibw0CFK
つまりお前らはcapsを調べないで出来る範囲でやりたいんだろ?
固定機能ではなにか追加するたびcapsを気にしなければならない。
「VS1.1で出来る範囲」とかにすれば、その方が圧倒的に楽だが。


230 :名前は開発中のものです。:02/12/30 11:43 ID:g0rhF4sT
いやそのcapsがあてにならねーときやできても結果が違うときが多すぎるから
いちいちたくさんのマシンでチェックしなきゃいけないのが嫌。
簡単なシェーダでONOFFですむならそれでいいんよ。
だけどその処理はできるんだけどこのマシンだとやらないほうがいいっていう結果になっちゃうことがあるでしょ。
速度の面とかでも。
アンチエイリアスも迂闊にかけられないよマジで。

231 :名前は開発中のものです。:02/12/30 13:47 ID:c0Wr5svx
デフォルトで最低機能で設定しておいて、オプションで設定できるようにしておけばいいだけでは?
市販ゲームでは対応が危なそうな機能はオプションで選択制になっていることが多い
少しは既製品を研究した方がいいのでは?

232 :名前は開発中のものです。:02/12/30 15:06 ID:uVOS/p5i
いや、一番の問題はその手間だよ。
どの機能がどうなるおそれがあってどういった対処が必要かって
調べてる時間もマシンもないんよ。
もっというと低スペック向け、高スペック向け両方用意してチェックしてる時間もない。
ここで金がからんでくるんよ。
果たして少数派の高スペックマシン向けの実装をさせるかさせないかってね。
で、開発側に対応におわれる時間の見積もりがくるけどわからないとしか答えようがないね。
そうすると上の決定は当然低スペックマシンに絞るようになる。
て、わけ。
ターゲットをしぼるってこういうことじゃない

233 :あぼーん:あぼーん
あぼーん

234 :名前は開発中のものです。:02/12/30 15:26 ID:yXyS1emC
     ∧_∧∩ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
    ( ´∀`)/<先生!こんなのがありました!
 _ / /   /   \___________
\⊂ノ ̄ ̄ ̄ ̄\
 ||\        \
 ||\|| ̄ ̄ ̄ ̄ ̄||
 ||  || ̄ ̄ ̄ ̄ ̄||
http://muryou.gasuki.com/mona/

235 :名前は開発中のものです。:02/12/30 20:29 ID:vC7TdZzh
DirectXについて、ここで語られてる言い訳は
世界的にも一般的なことなんですか?



236 :名前は開発中のものです。:02/12/30 20:32 ID:sZfvlTCt
市場の大きさがまるで違うからねえ

237 :名前は開発中のものです。:02/12/30 21:29 ID:vC7TdZzh
日本のPCゲームが韓国よりショボイのも仕方ないわけね。

238 :名前は開発中のものです。:02/12/30 21:45 ID:3ANQZMfG
>>237
んー。
韓国のゲームやったことある?

239 :名前は開発中のものです。:02/12/30 22:14 ID:iymMZc68
>>237
そうだよ。仕方ないんだよ。
 
PCゲーに関しては
韓国ではメジャー。
日本ではマイナー。
 
日本で国産PCゲーつったらエロゲ。確実に9割以上がエロゲ。
海の向こうと比較したらミジンコ級。でも、それはガイシュツの話。
だから、DirectXスレで3Dの話をするなら日本のPCゲーを
持ち出すのは不毛であり、実りナシ。洋ゲーを且黙セヨ。

240 :名前は開発中のものです。:02/12/30 22:18 ID:iymMZc68
× 且黙セヨ
○ 注目セヨ
 
バガボンド病

241 :名前は開発中のものです。:02/12/31 04:51 ID:oc5uE3wq
クソスレ探知機

242 :名前は開発中のものです。:02/12/31 04:53 ID:PbZ/vk0q
駄レス探知機

243 :あぼーん:あぼーん
あぼーん

244 :名前は開発中のものです。:02/12/31 10:47 ID:lszDRwtA
>>239
 つまり、国産ならエロ3Dゲーに注目せよ、と。汗ばんだ肌のしっとり感や、
汁のヌルヌルとした光具合なんかはピクセルシェーダの本領発揮だもんな。
単なるテクスチャだけじゃ、限界あるし(一方向ならともかく、動いた時に
対応でき無さそう)。

そこまで(リアルタイムで)やってるトコは無いけど。


245 :名前は開発中のものです。:02/12/31 11:07 ID:FV93/G5N
てゆうか高額グラボ小僧はネットゲにいりびたりなのでエロゲやりません。

246 :名前は開発中のものです。:02/12/31 14:29 ID:EmdLJTGn
http://www.illusion.jp/
ここはどうなの?

247 :名前は開発中のものです。:02/12/31 16:26 ID:lszDRwtA
>>245
ネットゲーやってるヤツは、エロゲには興味ないのかな、やっぱり。
>>246
 ムービーはともかく、リアルタイム部分はDX7世代じゃないか?デモの
「必要な環境」にもDirectX7って書いてあるし。おそらく頂点シェーダも
使ってないと思う。モデルとテクスチャの出来(要するにグラフィッカーの
働き)のおかげで見た目はそれなりだけど。

248 :名前は開発中のものです。:02/12/31 19:13 ID:1dSZw+e8
終了

249 :あぼーん:あぼーん
あぼーん

250 :名前は開発中のものです。:02/12/31 22:05 ID:BlKQMtOE
>>247
同意。
安全対策バリバリ。

251 :名前は開発中のものです。:03/01/01 00:24 ID:57dnHBJf
あけましておめでとう

252 :名前は開発中のものです。:03/01/01 01:01 ID:bTax8gXN
     (~ヽ            γ~)
     |ヽJ       .あ     し' |
     |  (~ヽ     .け  γ~)  |
   (~ヽー|ヽJ     ま   し' |ーγ~)
   |ヽJ  |  |   お .し   .|  |  し' |
   |  |  |―|   め .て   |―|  |  |
  ミリ(,,゚Д゚)彡  で    ミ(゚Д゚,,)ノ彡
  ミUミソ彡ミつ   と    (/ミソ彡ミU彡
   》======《   う      》======《
   |_|_|_|_|_|_|_|         |_|_|_|_|_|_|_|
     U~U            U~U

253 :名前は開発中のものです。:03/01/01 19:46 ID:e7Ne/kcW
C#からDirectXつかいたいのでDirectX 9.0 SDK for C#をダウソしようとおもいますが
これについているドキュメントって日本語でつか?

254 :名前は開発中のものです。:03/01/01 19:53 ID:x0kGC4ts
えい語でつよ

255 :名前は開発中のものです。:03/01/01 20:32 ID:tzGJprA4
>>253
http://www.microsoft.com/downloads/details.aspx?FamilyId=1419557B-95CB-475E-9ED1-6817B3B9CB0A&displaylang=en

#評判はあまりよろしくないようですが・・・

256 :あぼーん:あぼーん
あぼーん

257 :名前は開発中のものです。:03/01/02 14:42 ID:0pIs0I1Q
低レベルスレはウザイので終了です☆
ほんだすずな

258 :名前は開発中のものです。:03/01/02 17:21 ID:3R0Y5pkD
誰か高レベルな事かいてください。

259 :名前は開発中のものです。:03/01/02 17:27 ID:6N6JX0oa
フリフリ☆みゅーみゅー
について語りましょう

260 :あぼーん:あぼーん
あぼーん

261 :あぼーん:あぼーん
あぼーん

262 :名前は開発中のものです。:03/01/03 12:11 ID:cFgMZ44q
 ちょっと聞いていいスか?
ただ今3Dの格闘アクションゲームを作ろうかなと、色々算段している
ところなんスけど、なるべくただで作成できるように、フリーのツールを
探しているんですが(VisualStudioは買いました。.netではないけど)…。

 ゲームのキャラクターのアニメーションて、どうすれば良いでしょうか?
ちなみに、キャラクター自体はメタセコイアで作成しました。
それで、アニメーションですが、
ttp://macosx2.ncs.gr.jp/~masa/jpn/softs/animadio/
↑ここでアニメディオという作成ツールを拾ってきたんスけど、これで
作成したアニメーションをDirectX内で用いることは可能なんでしょうか?
ひょっとして無理なんでしょうか?
それとも、このツールの保存形式を読み込む処理を自分で作れば
どうにかなるのでしょうか(この読み込み処理自体も漏れにはまだ難しい)?

よろしくお願いします。

263 :名前は開発中のものです。:03/01/03 13:08 ID:oyTIoU9r
>>262
マニュアルにフォーマットが書いてあるからこれを元に読み込みルーチンでも作ればいいんでない?

…というかこれよさそうだな…ちょっと使ってみよ

264 :263:03/01/03 13:12 ID:oyTIoU9r
あ、というかレンダリングエンジンが公開されているな。

http://macosx2.ncs.gr.jp/~masa/jpn/kitty/index.html

265 :名前は開発中のものです。:03/01/03 14:45 ID:6cYETqCn
これってスーパーキティの人か
地道にやってるねえ

266 :262:03/01/03 15:35 ID:cFgMZ44q
>>263
 ルーチンという奴を作ればよいのですね?

 差し支えなければ>>264あたりについても教えてください。
 えーと、つまりライブラリをインクルードしてプログラムで
 書けば宜しいということですか?

267 :あぼーん:あぼーん
あぼーん

268 :  :03/01/03 20:10 ID:av/haVG8
メッシュを描画する時に、一度デバイスにセットしたマテリアルやテクスチャを
外すにはどうすればいいでしょうか?メッシュを描画した直後にそのメッシュの
バウンディングボックスを描きたいのですが最後のサブセットのマテリアルやテクスチャ
がこのボックスの線に描画されて頂点色が出ません。

269 :名前は開発中のものです。:03/01/03 20:20 ID:6cYETqCn
>最後のサブセットのマテリアルやテクスチャ
>がこのボックスの線に描画されて

意味不明だよもん

270 :名前は開発中のものです。:03/01/03 20:35 ID:uT+zdri8
pD3DDevice->SetTexture( 0, NULL );


271 :名前は開発中のものです。:03/01/03 20:43 ID:PrKndJzt
>>266

>>>263
> ルーチンという奴を作ればよいのですね?
>
> 差し支えなければ>>264あたりについても教えてください。
> えーと、つまりライブラリをインクルードしてプログラムで
> 書けば宜しいということですか?

壮絶だ。

272 :268:03/01/03 20:44 ID:av/haVG8
>>270
ありがとうございます!

273 :名前は開発中のものです。:03/01/03 22:34 ID:6v3Nw3Kt
>>271
いや、キティになぞらえた壮大なネタの可能性もある。可能性だけど。

274 :あぼーん:あぼーん
あぼーん

275 :名前は開発中のものです。:03/01/04 09:23 ID:XosybrCW
スーパーキティって聞いてなんて失礼なやつだ、と思ったら本当にそう書いてあるのね。

超キチガイage

276 :名前は開発中のものです。:03/01/07 01:17 ID:0XEP6pRY
DirectX8で質問です。
フレームバッファをテクスチャとして再利用したいのですが可能でしょうか?


277 :名前は開発中のものです。:03/01/07 01:18 ID:wrCCKt/y
SetRenderTarget

278 :あぼーん:あぼーん
あぼーん

279 :276:03/01/07 01:53 ID:0XEP6pRY
>>277
すみません。もう少し分かりやすく教えてください。
SetRenderTargetで新しいカラーバッファを設定しそのカラーバッファに
フレームバッファをテクスチャとして書き込み、SetRenderTargetで
フレームバッファを元に戻すということでしょうか?
テクスチャとして使うにはIDIRECT3DTEXTURE8形式になっていないといけない
思うのですが、IDirect3DSurface8形式であるフレームバッファをテクスチャとして
使う方法がわかりません。

拙い文章ですみません。よろしくお願いします。

280 :名前は開発中のものです。:03/01/07 01:55 ID:wrCCKt/y
SetRenderTargetを使ったサンプルを一つでも探してみたか?

と以前も書いた覚えがあるよ・・・

281 :名前は開発中のものです。:03/01/07 01:59 ID:w7CAyjD0
>>276
発想を逆にシロ。フレームバッファをテクスチャにするのではなくて
テクスチャをフレームバッファにする。

282 :あぼーん:あぼーん
あぼーん

283 :276:03/01/07 03:52 ID:0XEP6pRY
出来ました。ご助言ありがとうございました。

284 :あぼーん:あぼーん
あぼーん

285 :名前は開発中のものです。:03/01/07 07:23 ID:zXdjSHC1
ワンスキンモデルで複数のアニメーションが重なるときってどうすればいいですか?

286 :名前は開発中のものです。:03/01/07 08:19 ID:AgpCrBmV
>>285
1.ある時点の位置・回転・スケールと、新しい位置・回転・スケールの間で補完
2.tweening
3.併用


287 :名前は開発中のものです。:03/01/07 08:24 ID:1zV9RidK
レスありがとうございます。
補完はわかるけど、tweeningはわからないので調べてみます。


288 :あぼーん:あぼーん
あぼーん

289 :名前は開発中のものです。:03/01/07 12:16 ID:ayoee00I
DirectX9からソフトウェア シェーダっていう機能があるんですが、
これはリファレンスラスタライザのためにあるわけじゃなくて、
例えばGeForceTi4600でPixel Shader 3.0を使ったソフトを
作りたいときにPixel Shaderの部分だけをソフトウェア処理
してくれる機能なんでしょうか?

普通にPixel Shader 3.0のコードを書いてps_3_swとしても
使えなかったのですが・・・

290 :名前は開発中のものです。:03/01/07 12:27 ID:ETzkKDk4
>>288
テトラ版も作ってくれ

291 :あぼーん:あぼーん
あぼーん

292 :名前は開発中のものです。:03/01/07 13:54 ID:btJsLK01
>>289
Pixel Shaderのソフトウェア処理は非対応では?

293 :名前は開発中のものです。:03/01/07 23:48 ID:Qcb79TRA
スキンメッシュのサンプルのメニューにあるnonIndexってなんですか?

294 :あぼーん:あぼーん
あぼーん

295 :だんき:03/01/08 06:43 ID:bHt0t039
自称3D野郎の清水が、ドワンゴアメリカをクビになり帰国したらしいぞ。
あの本はそんなに通用しないことが分かったね。
結婚はちゃっかりしたらしい。
駄目な奴は、何をやってもだめ。

296 :あぼーん:あぼーん
あぼーん

297 :名前は開発中のものです。:03/01/08 13:09 ID:5NXIpoTt
>>295 スレ違い。
そんなに彼のことが気になりますか?w

298 :289:03/01/08 13:54 ID:9gTimowN
>>292
> Pixel Shaderのソフトウェア処理は非対応では?
そうなんですか?
ヘルプには思いっきり実装されましたって書いてあるんですが・・・

299 :あぼーん:あぼーん
あぼーん

300 :名前は開発中のものです。:03/01/08 17:48 ID:VgT7D31p
>>295
> 結婚はちゃっかりしたらしい。

これだけで勝ち組∧||∧

さて、18日のCマガは買う価値ありますかね…

301 :名前は開発中のものです。:03/01/08 19:50 ID:Sj92UHg5
なんで?

302 :あぼーん:あぼーん
あぼーん

303 :名前は開発中のものです。:03/01/08 23:42 ID:VgT7D31p
>>301
いや、単に特集があるみたいなんで
ttp://www.cmagazine.jp/contents/next.html

304 :名前は開発中のものです。:03/01/08 23:52 ID:Gb/PwN8T
>>298
>ヘルプには思いっきり実装されましたって書いてあるんですが・・・
ヘルプのどこらへん?
>>295
どうでもいい個人ネタは専用スレでもたててやってくれ

305 :名前は開発中のものです。:03/01/09 00:58 ID:10ew1uj2
298じゃないけど
DirectX Graphics > Reference > Shader Reference > Software Shaders

306 :あぼーん:あぼーん
あぼーん

307 :名前は開発中のものです。:03/01/09 09:10 ID:hbEz0lun
Cマガの特集なんて中途半端なのじゃなくてC#+DX9の
単行本キボンヌ。

おっさんが対象のストーカーは別のスレじゃなくて別の板でやってくれ。

308 :あぼーん:あぼーん
あぼーん

309 :あぼーん:あぼーん
あぼーん

310 :名前は開発中のものです。:03/01/10 03:50 ID:Waa3Hv3p
DirectPlay8


IDirectPlay8Server
IDirectPlay8Client
IDirectPlay8Peer
が、ありますが、

サーバ、クライアントクラスを自分で作る時
IDirectPlay8Serverオブジェクトと
IDirectPlay8Clientオブジェクトを使うのではなく、
IDirectPlay8Peerオブジェクトのクラスを、
サーバクラスとクライアントクラス(クラスのインターフェースで制限をつける)
に分けて継承させたほうが、
IDirectPlay8Peerオブジェクトを利用するだけなので
いいような気がしますが、

IDirectPlay8Server
IDirectPlay8Client
を使う理由ってありますか?


311 :あぼーん:あぼーん
あぼーん

312 :名前は開発中のものです。:03/01/12 00:36 ID:SrSwcqA8
>>310
PeerToPeerではディアブロはできないわけだ。わかるか?

313 :名前は開発中のものです。:03/01/12 00:39 ID:ZbUoW9PK
>>312
分かるわけが無い
問題なく作れる

314 :名前は開発中のものです。:03/01/12 00:54 ID:rXT4D81h
ディアブロはp2pじゃなかったか?あれ?

315 :名前は開発中のものです。:03/01/12 01:03 ID:1QEnlWyb
p2pだろ、ディアブ炉は

316 :あぼーん:あぼーん
あぼーん

317 :名前は開発中のものです。:03/01/13 18:10 ID:GYvkLB/v
ん。battle netはサーバーじゃないの?

318 :名前は開発中のものです。:03/01/13 19:13 ID:xmG0Tw+y
>>317 マッチングサービスって何なのか調べてきなさい

319 :310:03/01/13 22:03 ID:G2t52B6D
めんどかったけど、
IDirectPlay8Server
IDirectPlay8Client
をラップしてやることにしました。
分けてるには何か意味(処理速度的なものも)があるのだろうし
DirectPlay8初心者な俺には、
これがわかりやすくていいです。
>>312
俺が言いたいのは、サーバーはPeerを全員分、
クライアントの方は、サーバーだけのPeerを持つ
と言うことだ。
これをやると、IDirect8Peerをラップして派生するだけでいいから
Initialize等を2個分やらなくてすむからいいということだ。
Peer使ってるからって全員分ピアツーピアやるわけじゃないの。
わかるか?
>>313
禿同
>>314、315
ブロディアやったことないから知らん。



320 :あぼーん:あぼーん
あぼーん

321 :名前は開発中のものです。:03/01/13 23:25 ID:HWAeFM2s
ファンタシスターオンラインもp2pじゃないとか言い出しそうだな

322 :名前は開発中のものです。:03/01/14 00:43 ID:Be8ifeKj
ファンタシスターオンラインはチト特殊じゃなかったかなあ。
誰かプロトコル解析したひといる?

323 :名前は開発中のものです。:03/01/14 01:07 ID:wLGvPY11
まず、ロビーサーバーにつないで接続者を決め、
接続者1台のマシンをサーバーにしてそこに他の接続者がクライアントとして繋ぐ方式だったかな。

前といってることが違うな、俺、。

324 :名前は開発中のものです。:03/01/14 14:41 ID:urxEulpJ
>>323
クライアントはほかのクライアントのIPを知ることは無いってこと?

325 :名前は開発中のものです。:03/01/14 14:42 ID:urxEulpJ
「IP」 -> 「IPアドレス」に訂正。

326 :名前は開発中のものです。:03/01/14 18:09 ID:FTi46TJF
PSOはどっかのスレに開発者がいろいろ喋ってる記事へのリンクがあった。

327 :名前は開発中のものです。:03/01/14 19:32 ID:XJLigTq4
これか?
http://akiba.ascii24.com/akiba/game/interview/2002/02/24/633792-000.html

328 :名前は開発中のものです。:03/01/15 17:21 ID:+cfL67Sa
DirectX8とDirectShowの組み合わせを初めて使っています
MPEG1の動画をウインドウ全体に表示しようとしたのですが
IVideoWindowに任せるとフルスクリーン化しているときに動画が全く表示されません
ウインドウモードで表示しているときも毎フレームウインドウをInvalidateRect()
してやらないとうまく表示されないようです
仕方なく今はIVideoWindowを使わずにSampleGrabberを使って1フレームごとに
テクスチャに転送して表示しているのですがこれだと無駄が多くて重いので
何かもう少しマシな方法は無いでしょうか?
ビデオカードはGeForce2 MXです
動画の表示時にはDirectX8側の描画は行わないようにしています


329 :名前は開発中のものです。:03/01/17 09:55 ID:HWbMWlC6

         / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
  ∧w∧  <  オワリじゃ
__( ゚π ゚ )__  \________
\ y/ //
〈っ ==_cノ
(_†________)



330 :名前は開発中のものです。:03/01/17 21:09 ID:KDoilLF9
AppWizardで吐くソース(D3DApp.cpp等)をベースにやってる人と、
自作クラスでやってる人と、
どっちが多いんですかね?
一応参考までに。

331 :名前は開発中のものです。:03/01/17 22:03 ID:5rx/7XHp
DirectX8.0〜8.1bのDirect3Dって、カラーキー指定できんの?

332 :名前は開発中のものです。:03/01/17 22:46 ID:vcTFaW94
>>331
D3Dにカラーキーはない。でもアルファ値で透過率を変えられるんでそれ使ってやってみ。
一応カラーキー指定っぽい事をする関数もあったはず。

333 :あぼーん:あぼーん
あぼーん

334 :名前は開発中のものです。:03/01/18 11:15 ID:fwQsozHF
DirectXAudioで、外部音源を利用して音を出すプログラムを書きたいのですが、
ヘルプを見てもさっぱりわかりません。
サンプルプログラムを探してみたのですが、以前までのDirectMusicを使うやつなら
あったのですが、DirectXAudioのやつではありませんでした。
誰か方法を教えてもらえませんか?

335 :名前は開発中のものです。:03/01/18 11:18 ID:fwQsozHF
>>331
テクスチャをファイルから読み込むときに(CreateTextureFromFileだっけ?)
透過させたい色を指定することができますが、うちの環境では
透過させた部分と透過させない部分の境界が思いっきりボケたのでお勧めできません。
DDS形式でファイルを作ることが推奨されてるみたい。


336 :名前は開発中のものです。:03/01/18 11:59 ID:GvS2mo5W
さて、今日発売のCマガは買う価値あるのかな…

337 :名前は開発中のものです。:03/01/18 12:46 ID:uXLeECQM
もう18日か
年をとるごとに時間の流れが早くなるな
このままジジイ一直線か

338 :名前は開発中のものです。:03/01/18 15:51 ID:WObDYnlg
MS曰く、カラーキーよりはαを使うようにとのことでしたよ>>331

339 :名前は開発中のものです。:03/01/18 16:52 ID:uXLeECQM
Cマガ立ち読みしてきたけどDirectX9の解説は大したことが書かれていない
SDKが欲しいナローバンド利用者の専門誌

340 :あぼーん:あぼーん
あぼーん

341 :336:03/01/19 01:04 ID:AthUUo2G
>>339
あ、本当ですか〜。当方ちょっと入手が面倒な身なのですが、
それじゃ無理して買うことないかな。

342 :名前は開発中のものです。:03/01/19 06:01 ID:YHR0PqzQ
地平線ってどうしてますか?
自分の場合、まず最初に空の一枚絵をカメラ座標と注目点の差のベクトルを
テクスチャ座標数値に加工することで空が回ったりさせてます。
その後Zバッファをクリアしてその他オブジェクトを描画という感じです。
しかし、地平線がうまくいきません。タイルを並べるようにすると角度によって
尖ってるところとか、平坦な地平線になってしまったり。
多めに地面を書いておいて遠方のZ座標で切れるようにするのが
ベストなのでしょうか?

343 :名前は開発中のものです。:03/01/19 08:36 ID:9y/R38Jt
>342
>尖ってるところとか、平坦な地平線になってしまったり。
 地平線を部分的に尖らせたいの?ちょっとやりたいことが分かり
にくいんで、もう少し具体的に説明してくれた方がアドバイス
しやすいかも。
 カメラの位置がどういう範囲を動くのか(地上だけなのか、それとも
フライトものみたいなのかとか)によってもやり方(誤魔化し方でもいい)
かわるだろうし。

344 :金正男 Ver2003:03/01/20 12:39 ID:FVr6U2ea
(*´Д`*)ハァハァ

345 :あぼーん:あぼーん
あぼーん

346 :名前は開発中のものです。:03/01/22 19:32 ID:7dFMnuhZ
>>342
マップチップみたいにしてるのかな?
□□□□□□□□
□□□□□□□□
□□□□□□□□  Aの位置からOを見た場合は平らだけど、
□□□O □□□□  Bの位置からOを見るとぎざぎざになってしまうとか……
□□□□□□□□
□□□□□□□□  こういう場合なら俺は適当にfogかけてごまかすようにしてる。
□□□□□□□□
□□□A □□□B

347 :あぼーん:あぼーん
あぼーん

348 :名前は開発中のものです。:03/01/24 00:09 ID:4XYPiP4d
Zバッファーを使ってポリゴンを描画する時に、z値に関係なく
常に指定したポリゴンを手前に描画させる機能がD3Dにありますか?

349 :348:03/01/24 00:14 ID:4XYPiP4d
あ、書き忘れたけど、コード上でも先に記述していようが いまいが
常に手前という事も含みます。

350 :名前は開発中のものです。:03/01/24 01:03 ID:cORtJ2Ik
Z値を一番手前にしときゃいいじゃん。
rhwさえ正常ならZ値をいじっても見た目は変わらんよ。

351 :348:03/01/24 05:04 ID:gG+pDg+X
>>350
D3DLVERTEXには rhwが無いんですが・・
この場合はどうするんですか?

352 :名前は開発中のものです。:03/01/24 07:56 ID:XXQKdACr
>>348
Zバッファをいったん無効にすればよろし

353 :名前は開発中のものです。:03/01/24 13:50 ID:AyqJgxUO
>>348

Zバッファを無効にするか、VIEWPORTのZ幅を0.0f〜0.0fにする。

あるいは、Zバッファをクリアする。

普通はこのどっちかだろう。

354 :名前は開発中のものです。:03/01/24 18:07 ID:YMrIBv76
>>352, 353
ふむふむ、良く分かりました。
サンキュウです!

355 :348:03/01/24 18:13 ID:YMrIBv76
ちなみに自分は、まだDirectX7.0a使ってます。
ラッパークラスを前に作ってたので またver9で書き直すのが面倒なのです。
まあ、本格的に3Dゲーム作るときは、最新バージョン使いますが・・
他にも古いバージョン使ってる人 居ますか?

356 :名前は開発中のものです。:03/01/24 18:43 ID:1iodH+1D
これから2D作るんで、7使いますよ。
Direct3Dで2Dポリゴンだと、いろいろ面倒だし。

357 :348:03/01/24 18:55 ID:/3DHAAC+
>>356
ほほー 使ってますか。
やはりアルファとか、回転は 自分で計算しますか?
2Dでチクチクいじるのも楽しそうですね。
ちなみに自分は、D3Dで2Dポリゴンです。

358 :名前は開発中のものです。:03/01/24 20:30 ID:vNDJ6RIT
>>356
9になってからはサーフェイス間のコピーが容易になったので
ポリゴン経由しなくても2D描けるようになってるけどそれでも駄目なの?

359 :356:03/01/24 20:57 ID:3Ir1Qlvw
>>357
アルファや回転だけ2Dポリゴンにしようかとも考えてます。
アクションなので速度を重視したい。でも、これやると2Dなのに3Dカード必須になるけど。
>>358
9の2D機能についてwebでちょっと調べたけど、単純な矩形転送しか無さそうだから
やめてました。2Dどうなんですか?カラーキーで色抜いたり。(今更)パレットも使いたい。

360 :348:03/01/24 22:15 ID:7fK0WY2B
>>359
自分も最初、2Dのみで行くつもりでしたけど、
ちょっと凝った事をしようとすると、めんどいんでポリゴン使ってます。
まぁ、その分なんでも出来るポリゴンスプライトが出来ましたが。

DX9は、たしかカラーキーよりα値を使う事になっていたような気がしますが・・

361 :356:03/01/24 22:56 ID:Q2rmQbLw
そういえば、7時代に3D+2Dポリゴンでシューティングをちょっと作った時に
α値のためにDDSファイル使ってました。256x256とかで・・・
確か、D3DとDDを混ぜると遅くなる、てことで2Dもポリゴンにしたような気がします。
まぁgeforceとかなら、気にすることもないかな。
今回は2Dだし、遅いマシンでも遊べるように、やっぱり7にしようと思います。

362 :名前は開発中のものです。:03/01/24 23:14 ID:/cSarTnB
>>358
9は一般に普及してるの?
せいぜい8だと思ってたんだけど。

363 :名前は開発中のものです。:03/01/25 00:34 ID:pc7S7sw4
>>362
一般には9は普及してない
メーカー品のパソコンなんかはオンボードだから普及してるといえるのは7まで
本当に誰でもプレイできるゲーム作るなら3Dはまだしんどい
とはいえ研究、勉強なら最新のものに触れておいて損は無い
あと、ひっそりと公開してるのを探してくる連中はたいてい3Dボードは比較的新しいのつけてるから問題ないと思う
そういう場合、個人的には最低動作環境はGF2MXだとおもってる

364 :名前は開発中のものです。:03/01/25 01:42 ID:QkkrKYgM
GF2MXか。
こいつもドライバを更新してくれないと微妙な奴だったはず。
一応ポリゴン表示ができてアルファが使えます。以上。
みたいな。笑

365 :名前は開発中のものです。:03/01/25 01:45 ID:XoQ+trsO
αカラーテクスチャポリならTNT2で充分

366 :名前は開発中のものです。:03/01/25 02:23 ID:k9WFGzeD
TNT2もいいね。
OSはいくつまでサポートしてる?
そろそろ98系捨てようかと思ってるんだけど。

367 :名前は開発中のものです。:03/01/25 02:29 ID:GicUwGaa
半年後にリリースする予定なら、9が妥当。
すぐリリースするなら7or8が妥当。

ってとこかな。
9がWindows Update に出るのってやっぱ春だよな・・。

368 :名前は開発中のものです。:03/01/25 04:58 ID:wVD7bSgp
GF2MXか。

……俺のマシンだヽ(`Д´)ノウワアァァァァン

369 :名前は開発中のものです。:03/01/25 06:23 ID:BJIRtyJ9
GF2MXでDX9を使っていて、エラーで落ちた。
すると、「エラーをMSへ送信しますか?」というダイアログが出たので、
試しにYESを選んでみた。どうせ実験マシンで個人データも入ってないので。
すると、「ドライバを更新したらこのエラーは解消します」というメッセージと、
ドライバのダウンロードページへのリンクが表示された。
そのとおりに実行すると、エラーが消えた。

ちょっとMSを見直したよ。

370 :名前は開発中のものです。:03/01/25 06:23 ID:R7wixdCt
>>368
ィ`

既存の機能しか使わないなら、やっぱり9にするメリットはないのかな…。
それでもDXライブラリとか、やっぱりこなれてきてるのかなぁ…。

371 :名前は開発中のものです。:03/01/25 10:24 ID:DmUZxhDu
DX9はまだ要らないと思うよ。
俺自身は来年の夏までいらないと思う。
なんだかんだ言って欲しい機能はレイディオンでもエミュレートだし。
9世代が一般化するなんて今年中には無理だろう。

追加機能も便利といえば便利だけど、DX9で追加された機能がないと作れないなんて言う奴は初めから辞めちまえ。
あんなもん今ごろ追加したんか、って内容だよ。
っていうか8と手続きが変わっただけみたいなもんじゃねぇか。

DD使わないなら8でいいし、D3D使わないなら7で全然いいと思うぞ。

>>363 研究、勉強なら最新のものに触れておいて損は無い

結局、今研究してみたところで使う頃にはさらに新しいのが出ている罠
同人開発者さん? 達はこういう技術に惑わされないでおもろいゲーム作ってくだされ。

372 :名前は開発中のものです。:03/01/25 11:40 ID:XoQ+trsO
>>366
TNT2のドライバはnvidiaのunified driverだね
95/98/Me/2000/XPで動くみたい

単純なα・カラー・テクスチャポリならTNT2は現役スピードなんだがなー

>>371
ゲーム製作技術板とはいえ、
ゲームを作るのが目的という人ばかりではないと思う。

373 :名前は開発中のものです。:03/01/25 12:39 ID:bGIDYk1Q
GDIが使いやすくなったのでDX9にケテーイ

374 :名前は開発中のものです。:03/01/25 14:50 ID:DcbwXzYQ
>>373
8ではできなかったGDI収得できるようになったんだ

375 :名前は開発中のものです。:03/01/25 17:42 ID:5sgeCX1k
バージョン情報取得できるじゃん

376 :名前は開発中のものです。:03/01/26 09:32 ID:YQriuH5S
DirectX 8対応グラボとかいう場合、どの機能を満たせば対応っていえるの?

377 :名前は開発中のものです。:03/01/26 10:03 ID:XXwmeR7F
ドライバが対応してればOK。

378 :名前は開発中のものです。:03/01/26 12:04 ID:2M/EyQst
サンプルが全てHALで動けばOK

379 :名前は開発中のものです。:03/01/26 15:37 ID:AtmSkBLN
Maya4.5に対応したxexport.mllはいつ出ますか?

380 :名前は開発中のものです。:03/01/26 16:06 ID:JLmSZuF5
http://www.geocities.co.jp/Playtown-Spade/8161/index.html
ここ俺のサイト、みんなきてね。

381 :380:03/01/26 17:51 ID:jBIKlZDp
荒らさないでくださいね(^^)

382 :名前は開発中のものです。:03/01/26 18:21 ID:2M/EyQst
>>380
>>381
みえみえの荒らし依頼ウザイ

383 :名前は開発中のものです。:03/01/26 19:23 ID:GieoIa+/
前にも書き込みしたのですが。

DirectXAudioで、外部音源を利用して音を出すプログラムを書きたいのですが、
ヘルプを見てもさっぱりわかりません。
サンプルプログラムを探してみたのですが、以前までのDirectMusicを使うやつなら
あったのですが、DirectXAudioのやつではありませんでした。
誰か方法を教えてもらえませんか?


384 :名前は開発中のものです。:03/01/26 19:56 ID:+6+ahdkD
>>383
ほい。
ttp://www.gamedev.net/reference/articles/article1689.asp

385 :名前は開発中のものです。:03/01/26 21:38 ID:KqxlbMFP
>>379
自分でコンパイルしる!!

386 : :03/01/26 21:58 ID:tw6ZSSDO
台湾のエロ画像掲示板が今一番ホットと言えませんかね?

http://wossal.k-server.org/tw/



387 :名前は開発中のものです。:03/01/27 01:11 ID:eYMmnJAu
               ∧ ∧
              ( ̄ー ̄)
              (つ  つ
               ( ヽノ
               し(_)

         Now Thread Stoping. ...
         大変見苦しいスレでありました.
           スレストするまでお待ちください。。。ニヤリッ


388 :名前は開発中のものです。:03/01/27 20:51 ID:9Rd+1lq8
アラヤダ(゜д゜)
これっぽちも盛り上がってないんですね、DirectX9

っていうか新機能何一つわかんねぇよ=□○_
皆さん分かるのかなぁ…すごいなぁ…

せめて線のジャギとって来ます λ.......

389 :名前は開発中のものです。:03/01/27 21:15 ID:GZAmEW26
DirectX8.0からDirectDrawが無くなったということで、
Direct3D(Graphics?)を勉強しているのだが、
どうも2D物を作ろうとすると、テクスチャサイズの変な制限を受けて汚くなったり、
カラーキーの代わりのアルファなんたらが意味不明だったり・・・
俺、どうしよう・・・このままDirect3Dで行っていいんだろうか・・・

390 :名前は開発中のものです。:03/01/27 21:45 ID:7Kx1LYrP
ジャギとるって?
絵描きさん?

391 :名前は開発中のものです。:03/01/27 22:36 ID:aqFEywQY
>>389
無理せんでDirectDraw7のままでいいんでないの。
DirectX9環境だろうと使えるんだし。

392 :名前は開発中のものです。:03/01/28 00:16 ID:BuukEUTR
2Dならなおさら
アルファ使ったらカラーキーに戻りたくなくなると思うが・・・
いまどき画面とテクスチャは32bitで当たり前だろ



393 :名前は開発中のものです。:03/01/28 00:51 ID:qjGwDC4y

      い ま ど き

394 :名前は開発中のものです。:03/01/28 00:59 ID:KzZu9u6r
初心者ならDirectDraw7でもいいんでない?
2Dのパズルとかシューティングとか作って
物足りなかったら必然的にDirect3Dにいくし
挫折するならどっちでも同じことだし
ついでに言っておくと3Dでも2Dでも
上のほうでやることはそんなに変わらん
経験が薄いなら動かすまでに時間のかからない2Dから入るのは有効だと思う
あと、いまどきでも3Dのまともに動かない環境はごろごろしてる

395 :名前は開発中のものです。:03/01/28 03:31 ID:691HzMn8
SoundBlasterってメジャーな割には問題が出たって話をよく聞くけどなんで?

396 :名前は開発中のものです。:03/01/28 03:32 ID:q9IBHpbo
どんな問題?

397 :名前は開発中のものです。:03/01/28 03:38 ID:Z3NbETAG
>>395
IDワラタw
691Hz……

で、問題って?
参考にぜひ聞きたい。
(Windows9xでドライバが……とかそういう問題?)

398 :395:03/01/28 03:42 ID:691HzMn8
いや、いろいろなゲームメーカーのサポートページ廻ってると SoundBlasterで云々という
のが結構あるから、Voodooのテクスチャサイズみたいになんか問題あるのかと。


よくかんがえたらDirectXとは直接関係ないかも。
やっぱ691Hzの頭ではこのスレにふさわしくないみたいです。

399 :名前は開発中のものです。:03/01/28 04:46 ID:lCCqqo2q
>>398
Mがもう2文字ほど左にずれてればよかったのにね。

むしろSoundBlaster互換推奨は良く見るけど……
もしかしたら何か問題あるかもしれないので知ってる人いたら情報提供キボン。

400 :名前は開発中のものです。:03/01/28 05:43 ID:SKJigKKa
1997年頃が頂点だが、Creativeはドライバが糞で有名だった。
いまでもXpのSBLiveドライバとか糞だがな。

401 :名前は開発中のものです。:03/01/28 08:44 ID:93USF1I7
AWE64Gを頂点として、そこから下り坂なのは言うまでもない

402 :379:03/01/28 23:36 ID:YFXNvO3T
>>385
まさかと思ってやったらちょっと修正するだけでコンパイルできました。
前バージョンファイルでもソースに互換性あるんですね。
どうも。

403 :名前は開発中のものです。:03/01/29 00:17 ID:2DSWNUEU
DirectX9のメッシュビューワ、8より改良されててイイ!
ボーンしこんでMayaで吐かせたヤツを8で読み込んだら強制終了してたけど、今度はちゃんと読み込まれる。
DirectX9 SDK おすすめだね。

404 :名前は開発中のものです。:03/01/29 03:09 ID:hhhZsEDJ
そうなのか。
ちょっと使ってみようかなぁ。
Maya持ってないけど。

405 :名前は開発中のものです。:03/01/29 04:12 ID:mBZAZkjz
オフスクリーンサーフェスが作れるようになったみたいだけど
これのアルファ合成は無理ぽ…?


406 :名前は開発中のものです。:03/01/29 19:49 ID:nWa8l28z
DDCAPSでトータルVRAMが取得出来ますが、
プライマリーサーフェスと、ドライバが確保するキャッシュが引かれてますよね?
プライマリーサーフェスはあれとしても、
ドライバのキャッシュ量の方はどうやって取得しますか。

407 :名前は開発中のものです。:03/01/29 19:59 ID:CtmlCSOc
DirectX8.1SDKのSPLITEを使って自分のライブラリを組んでいるのですが
640*480のBMPファイルをD3DXCreateTextureFromFileを使用して読み込み
GetLevelDescでBMPファイルの詳細を見ると幅1024、縦512になってしまいます。
どうすればサイズをそのままにして読み込む事ができるのですか?

408 :名前は開発中のものです。:03/01/29 20:04 ID:Ez8IxRfx
>>407
2の階乗になってしまうのはハードウェアのせいだと思われ。

409 :407:03/01/29 20:21 ID:CtmlCSOc
んー…グラフィックボードはATI RADEON7500を使っています。
ゲフォ買うしかないのかな…(´・ω・`)

410 :名前は開発中のものです。:03/01/29 20:24 ID:v5kvZ2f2
>>407
テクスチャとして使用するので、どうしても2の階乗に固定されます。
スプライト用画像を512*512の画像に収まるようにしてみてはどうですか?
640*480で一枚の絵なら大きい領域で確保するしかないです。


411 :名前は開発中のものです。:03/01/29 20:29 ID:CtmlCSOc
>>410
なるほど。分かりました(・∀・)
ありがとうございましたー。

412 :405:03/01/29 20:32 ID:mBZAZkjz
>>406
DDCAPSとやらの仕様は知らないけど、そこまでわかってるなら
その値からプライマリの値を引けばいいと思うんだけどどうか。
640*480の16bitだとしたら600kbくらい。

>>407
こちらもD3DXSpriteの仕様は知らないがDirect3Dで作れるテクスチャサイズは
2の累乗じゃないとだめだったりする。そんなわけで読み込もうとすると
そのサイズを含むデバイスが作れるサイズに広げられてしまうとか
512*512とかのサイズに詰め込まれて、伸縮が発生する為に画像がぼやけてしまう。
解決策で一番安全なのは自動で256*256のサイズに分割するルーチンを組んでしまうこと。

413 :名前は開発中のものです。:03/01/29 20:43 ID:v5kvZ2f2
>>412
確かフラグの指定でフィルタリングさせない方法があったと思いますよ。
D3DX_FILTER_NONEだったと思いますが。


414 :405:03/01/29 22:27 ID:mBZAZkjz
>>412
それで解決できない状況が無かったっけ?
と言っても俺が412みたいな分割ルーチン書いたのDirectX5か6ぐらいの
頃だから記憶があいまいなのよね…。今はそれで問題無いんだったらゴメソ。

で、DX9になってオフスクリーンサーフェス復活、しかもカラーキーとかアルファが
指定できるみたいだからこの辺の問題がサクっと解決して初心者にも
2DゲームでもDirectX9が良いよ、とか言えるようになったかなと思って
いろいろやってみた訳なんだけど、いまだにアルファどころかカラーキーすら
効かないありさまだったりする。UpdateSurfaceとStretchRect以外に転送方法あるのかな?
カラーキーの部分が黒で塗りつぶされるだけになってしまう。(環境はGF3デトネタ4019)
RenderStateもそれらしいのみつからないし。
やっぱりテクスチャに転送しない限りこの辺は有効にならないのかな。

415 :405:03/01/29 22:29 ID:mBZAZkjz
× >>412
>>413
レス番ミスってるし…連投すまん

416 :406:03/01/29 22:42 ID:nQW2MsuD
>>412
もちろんプライマリーサーフェスのサイズを引けば良いのは分かります・・
問題は、ドライバが確保するキャッシュの方です。

トータルメモリ += サーフェスサイズ

と、計算してもドライバのキャッシュ分足りないのです・・
ドライバごとに確保するキャッシュサイズが違うので、
足りない分を勝手に足す訳にもいかないのです。

417 :名前は開発中のものです。:03/01/29 22:44 ID:nQW2MsuD
age

418 :406:03/01/29 22:48 ID:nQW2MsuD
ああ・・
良く見たら412は、サーフェスサイズを引いてと書いてあった・・

えっと、どちらにしてもドライバごとに確保するサイズが違うので
足りない分を足すだけではダメみたいです。

419 :名前は開発中のものです。:03/01/29 23:05 ID:v5kvZ2f2
>>415
うーん……。結局アルファを使うにしろステンシルにしろ、
やっぱり基礎知識が要るので、初心者さんにならカラーキーでできるDX7を私なら薦めますよ。

>分割ルーチン書いたのDirectX5か6ぐらいの
なつかしいね。当時は必須っぽかた気も。Voodoo多かったしね(GLIDE本気にやらなくてよかった…)。

>UpdateSurfaceとStretchRect
これはアルファとかサポートしていないただの転送だと思いますよ。
DirectDrawのように使うためにあるメソッドではないと思いますが…

Spriteじゃだめなの?
結局アルファにしろステンシルにしろ
Direct3Dのラスタライザを通さなければ駄目です。
確かにD3DX9はまた…中途半端にサポートされてますが、
やはりDirectDrawユーザーに進められるものではないと思いますよ。


420 :405:03/01/30 01:13 ID:xdIz9k41
やっぱそうなのね…。・゚・(ノД`)・゚・。
最初ヘルプ眺めてて見つけた時はMSに紙が降臨したのかと思ったが…
ライブラリの8>9移行ついでにもうちょっと遊んでみよう。

421 :名前は開発中のものです。:03/01/30 02:14 ID:SuI7xxzp
よっし!いっちょDirectX9で簡単な2D描画ライブラリでも組みますか!

422 :名前は開発中のものです。:03/01/30 02:17 ID:L8+k5MAr
>>421
おお、期待。初心者がとりあえずDirectX始められるようなのがいいね。

423 :名前は開発中のものです。:03/01/30 03:31 ID:jEmNkGyn
>>421 期待して良いのか分からないけど、応援しておこう。

424 :凄いサイト見つけました:03/01/30 04:51 ID:fICqPKaz

http://home9.highway.ne.jp/cym10262/


425 :名前は開発中のものです。:03/01/30 05:25 ID:Lzu43Gsx
(。・_・。)ノhttp://homepage3.nifty.com/digikei/ten.html

426 :名前は開発中のものです。:03/01/30 06:58 ID:JQ9GRIy/
ポイントスプライトの縦横比が画面幅に合わせて伸縮しちゃうんですけど
一定の縦横比で固定するにはどうすればいいですか?

427 :名前は開発中のものです。:03/01/30 07:04 ID:zHVLpj9S
http://www6.ocn.ne.jp/~endou/index2.html
      ★こんなサイト見つけました★

428 :名前は開発中のものです。:03/01/30 08:47 ID:VhhqZnNP
スプライトなんて使おうとしないで、はなっから3D使えよ。

429 :名前は開発中のものです。:03/01/30 09:04 ID:vxgq1fWo
http://www.agemasukudasai.com/bloom/

430 :名前は開発中のものです。:03/01/30 09:06 ID:To8yZeYF
3Dでもポイントスプライトは使うよー

431 :名前は開発中のものです。:03/01/30 09:16 ID:IIdghGiy
>>426
パースペクティブを勉強しなさい。
これは人に説明を聞くより自分で学んだ方がよいよ。

432 :名前は開発中のものです。:03/01/30 11:11 ID:wqDSiMFS
            o.
            /  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ /
           /   このスレは無様に .  /
           /  終了いたしました    /
          / ありがとうございました  /
          /                /
         /    モララーより     /
         / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄/
  ∧_∧  /                /∧_∧
 ( ・∀・) /                /(・∀・ )
 (    )つ               ⊂(    )
 | | |                   | | |
 (__)_)                  (_(__)

433 :名前は開発中のものです。:03/01/30 20:15 ID:VhhqZnNP
どうせ分母と分子がひっくりかえってるのにきづかないんだろ?

434 :421:03/01/31 01:20 ID:1k5hi3pC
やったぞ!ついに念願のライブラリが完成したぞっ!
スプライトつかった。カラーキーとアルファブレンドと回転拡大縮小だけできる。
初心者がとりあえずDirectXはじめられるようにはなっていると思う。
アプローダが腐っててアップできないけど。

435 :名前は開発中のものです。:03/01/31 01:52 ID:t8hxtjpP
ジオシティとか借りればよろしい。

436 :名前は開発中のものです。:03/01/31 02:10 ID:4EXFic4+
カラーキー厨 = ゲームを作れないゲームライブラリ野郎。
DirectX7の時代から今までずっとライブラリ作ってたのか?
お前見込みねーよ


437 :名前は開発中のものです。:03/01/31 04:47 ID:pEIXGlpQ
>>436
( ´,_ゝ`) プッ
妬みですか?

438 :名前は開発中のものです。:03/01/31 06:50 ID:b7wblacq
>>436
実感こもってるなぁ。自分の事?w

>カラーキー厨
って……。DX7で作りつづけている人もいるんじゃないの?


439 :名前は開発中のものです。:03/01/31 08:55 ID:V5x9gbA9
ここにいますが何か?
中身のないデモばかり作って最新技術のみを追い求めるヤシよりはまし。

440 :名前は開発中のものです。:03/01/31 09:07 ID:PNxBsMdG
価値なんて人それぞれだろ

441 :名前は開発中のものです。:03/01/31 10:21 ID:6VWpyBYm
まあでも、いまだにカラーキーにこだわるのはどうかと思うんだけどな。
今まで2Dゲー作ってて不便感じなかったのかと。
アンチエイリアスかかった文字描画とか。

442 :名前は開発中のものです。:03/01/31 10:45 ID:XKk8Mtcg
>>アンチエイリアスかかった文字描画とか
なぜこれが出てくるのかが疑問

443 :名前は開発中のものです。:03/01/31 11:16 ID:S5WfGp15
紙芝居エロゲー作ってんだろ

444 :名前は開発中のものです。:03/01/31 11:34 ID:6ynLwhZo
納得

445 :名前は開発中のものです。:03/01/31 11:36 ID:b7wblacq
>>442
カラーキーでまずぶつかるところだからでしょ?

>>441
確かに一度無くなった概念といえばそうだしね。
というかアルファチャネルはいっぺん使うともう離れられなくなるわな。

446 :名前は開発中のものです。:03/01/31 11:55 ID:Oks/Mlfb
443氏の軽蔑して止まない紙芝居ゲーでさえ、
カネを取ろうと思ったら、GDIで文字をべた書きで満足せずに
半透明を使った美しい処理を行うのはすでに常識じゃないの?

GDIで文字をべた書きでも右下に少しずらした場所に黒で文字を書いてから
正しい場所に白で文字を書くとほーら影付き文字、とか
そういう小技が出来ないわけじゃないけれど。

それより個人的に過去の遺物にしたいのはMMXを使った半透明処理。
確かに作ってて楽しいけど、DirectX の思想から考えると、
GPUにお任せする方向に移行していかなくちゃいけないんじゃ…?
どうなんだろ。
識者の意見を待つ。

447 :名前は開発中のものです。:03/01/31 12:16 ID:S5WfGp15
俺もそう思う。
いいかげん、GPUでやってくれっつー気もする。
クソ環境でも動かしたいのもわかるが、いつまでたってもユーザー環境が成長せん。
まあ、紙芝居にはもともと必要ないのか。

448 :421:03/01/31 14:14 ID:1k5hi3pC
http://www.geocities.co.jp/SiliconValley-PaloAlto/5515/dynlib.zip
まぁ僕はライブラリにはしないでプロジェクトにソースコード・ヘッダ両方取り込んで使うんですが。
中には噴飯モノの処理をしているところもあるかもなので僕の今度のために教えてね!

449 :名前は開発中のものです。:03/01/31 16:38 ID:b7wblacq
>>448
スプライトってやっぱ大量に描画してなんぼって気もするよね。
とりあえずできたという点は良し。

もっと使い勝手の良い環境が欲しい、という人のために
画像を統一管理して、そのDynamicDrawInfo?の中にpageってのを用意して、それで一意にアクセスできるようにするとかね。

スプライトにrx,ryはあまり使わないということであれば、シェーダーを使うと高速で且つ帯域も少なくやれるけど、
それはちょっと上級かな? 説明大変だし…。

>>446
昔はハードでできる事でも、対応してないかも、と言う理由で自前でやったりもしたけど、
今はもうそんな時代ではないよね。
ハードの進歩は早すぎる。いろいろなルーチンをハードが対応してくれるようになった。
ここまできたらあっさりと過去の知識は捨てて、次の時代に乗らなければならない。
それがこの業界に生きる者の辛いところだね。
過去の苦労が水の泡になっていくのは辛いよ。

でも世の中がそういう風に進んでいるからにはしょうがない。
PCユーザーに関して言えば、上と下の差が激しすぎる。
もう下は切り捨てて行かなければならないと私は思うよ。
海外メーカーはもうそのつもりなのに、日本人はやさしいのか、狡いのか…。

エロゲー業界にしてもどうなのかな? 私はわからないけど、そろそろ改革の時期でしょうか?
最近は3Dのエロゲも見かけるしね。若者をターゲットにするなら、今まで以上にゲーム性を考えることになるんでしょうね。

何、長文書いてんだオレ……やべぇ。さいなら。

450 :名前は開発中のものです。:03/01/31 17:05 ID:Rbm5bElj
       〈 ̄ヽ
 ,、____|  |____,、
〈  _________ ヽ,
 | |             | |
 ヽ'  〈^ー―――^ 〉   |/
    ,、二二二二二_、
   〈__  _  __〉
      |  |  |  |
     / /  |  |    |\
 ___/ /  |  |___| ヽ
 \__/   ヽ_____)


451 :名前は開発中のものです。:03/01/31 21:13 ID:2ZzIvrax
エロゲでもアンチエイリアス描画、半透明重ね合わせはもう
アタリマエみたいだねえ。最近知った。

452 :名前は開発中のものです。:03/02/01 00:07 ID:PG2XqJ1K
ポイントスプライトって、どのへんが便利になるんですか?
というより、画像を一枚表示するのと、どこが違うのですか?

453 :名前は開発中のものです。:03/02/01 01:14 ID:cAF40l0I
ポイントスプライトは便利というより、普通にポリゴンで描くよりも速いのが利点。
その分自由度はかなり低いが。

454 :名前は開発中のものです。:03/02/01 01:56 ID:blncN5Wg
スプライトが相当小さくない限り、フィルレートがネックになって、
頂点4つ用意する場合とほとんど速度が変わらなくなる罠。

455 :名前は開発中のものです。:03/02/01 03:10 ID:xwWC0Jem
            o.
            /  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ /
           /   このスレは無様に .  /
           /  終了いたしました    /
          / ありがとうございました  /
          /                /
         /    モララーより     /
         / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄/
  ∧_∧  /                /∧_∧
 ( ・∀・) /                /(・∀・ )
 (    )つ               ⊂(    )
 | | |                   | | |
 (__)_)                  (_(__)

456 :名前は開発中のものです。:03/02/01 10:56 ID:2fuADtqt
ポイントスプライトって、頂点を送る回数を1/4にするためのもの
と考えてええの?

457 :名前は開発中のものです。:03/02/01 22:35 ID:X2Cx4OAm
tiny.xに抜群のセンスを感じる。

458 :名前は開発中のものです。:03/02/01 23:22 ID:nA0Z1UvR
スキンメッシュ研究してたらtinyで起つようになりました・・・(鬱

459 :406:03/02/02 01:22 ID:8xiGQDVW
どうでもいい事ですが・・
DDCAPSで得られるトータルメモリにサーフェスサイズ分のデータ量を足して、
メガバイト単位に変換して、整数値に切り上げてやる事にしました・・
サーフェスサイズを足してやると、だいぶ値が近くなるのでどんな環境でも大丈夫と思うんだけど・・
それに、VRAMのトータル量なんて区切りの良い数値ばかりだし。

460 :名前は開発中のものです。:03/02/02 06:45 ID:s+peL14u
>>458
そ れ は 病 気 で す

461 :名前は開発中のものです。:03/02/02 13:29 ID:Yh8sRLf0
DX8で2Dを表示しているサンプルとか無いですかね?

462 :名前は開発中のものです。:03/02/02 13:30 ID:5CjL988Z
>>461
ありますよ

463 :名前は開発中のものです。:03/02/02 13:49 ID:Yh8sRLf0
>>462
何処にありますか?

464 :名前は開発中のものです。:03/02/02 14:48 ID:G7p0fJLT
>>463
それくらい自分で探せ。
Googleで検索すりゃでてくる。

465 :名前は開発中のものです。:03/02/02 15:04 ID:5CjL988Z
>>463
あなたの開発に使っているマシンの中にあります

466 :名前は開発中のものです。:03/02/02 15:14 ID:6i0/vwvm
頂点バッファって使うとどんないいことがあるのですか?
頂点バッファを使わなくてもとりあえず実装はできるので、使ってない
ですが、使うと便利なら切り替えてみます。
というか、そもそも頂点バッファってナンデスカ?

467 :名前は開発中のものです。:03/02/02 15:25 ID:s+peL14u
>>466
VRAMに頂点データを置いたり、ストリームソースとか、まぁ色々使うけど、
D3Dを2D感覚で使用するつもりなら使わんでもいいだろう。

>>461
基本も知らずにスプライトか?
……まったく、D3DX無くせよMSさんよ……。こういう手合いが増えるだけだろ。

468 :名前は開発中のものです。:03/02/02 15:40 ID:y3lc9XV6
>>454
この相当小さいっていうのは、具体的にどのくらいなのでしょうか。
やっぱりビデオカード依存だと思いますが…。

469 :名前は開発中のものです。:03/02/02 17:16 ID:fhT0wplm
>>466
>頂点バッファって使うとどんないいことがあるのですか?
速くなる
Lockしまくったら逆に遅くなるが…
>というか、そもそも頂点バッファってナンデスカ?
頂点バッファを使わないときは頂点データは通常のメモリに
あるで描画のたびに全部(頂点サイズ×頂点数)送らなきゃいけない
頂点バッファを使うと先にVRAMに送ってるので
描画の時は場所(使用する頂点バッファ)を指定するだけなので
速いって感じ
まぁドキュメントなり解説サイトなり読んでちゃんと理解して使え

470 :名前は開発中のものです。:03/02/02 17:21 ID:xcAANMPX
>>466
頂点バッファを使う利点は速度。頂点バッファをVRAMに作れば頂点データを
遅いAGPバスを通さなくて済むし、システムメモリに作ってもCPUとの排他
アクセスができるからDMA使って転送できる。(AGPバスってのは意外と遅い)
頂点バッファを動的に書き換える場合でも、DMAの終了を待たずに書き換える
ことができるから速い。(実際には新しいバッファを確保しているんだが)

>>468
ポイントスプライトは火花みたいなエフェクトくらいしか使い道ないから
面積はあまり気にしなくていいかと。
(火花でも1フレームで数千、数万の単位になるとさすがに厳しいが)
一般的なビルボードとして使うにはあまり向いてないよ。

471 :名前は開発中のものです。:03/02/02 20:23 ID:047/xv5q
Xファイルを使わない場合、アニメーションって自分でスキニングしてるんですか?
僕はD3DXUtilityのソースを流用してメッシュをアニメーションさせているのですが、これらを自分でやるってかなり難しくないですか?

472 :名前は開発中のものです。:03/02/02 21:10 ID:9DYxK8lo
シコシコやってればそれなりのモノになるよ。
事例は沢山あるので、自分で調べて自分なりに実装してみれば、
理解が深まって、応用が利くようになるよ。

あ、ライブラリで済ますことを否定してるわけじゃないよん。

473 :名前は開発中のものです。:03/02/02 22:38 ID:dqWXQSHP
質問age
(僕はゲ製やってません=初心者)
板違いスレスレでゴメソ。
WB3DEMOやったら、DirectXが使えないとかで(+д+)マズーでした。
どうやらnv3.dllが古い(?)とかなんとか。
製造元によって提供されている最新のものか確認してください
だそうですが・・
誰か教えてください!

474 :名前は開発中のものです。:03/02/02 22:39 ID:9DYxK8lo
>>473
板違いと判っているなら来るなボケ。Windows板にでも逝け。

475 :>>473:03/02/02 22:44 ID:G3FgB81u
そこまで分かっとんならメーカーサイト行ってドライバ落とせ。

476 :名前は開発中のものです。:03/02/03 00:17 ID:+YBIu/It
インストール時のCustom Setup→DirectX Utilitiesに
DirectX Extensions for Visual Studio .NETの項目そのものが出てこないんだが…
俺だけ?
シェーダ デバッガが使えなくてもたいして問題は無いんだが、何か損した気分。

477 :名前は開発中のものです。:03/02/03 01:44 ID:vHg9QqdB
>>476
VS.NETいれてる?
ちなみにうちでもその項目は出てこない。VS6.0だからだと思うが。

478 :名前は開発中のものです。:03/02/03 04:39 ID:MPvK+jme
>>476
VS.NETいれてるけどウチも出なかった


479 :468:03/02/03 06:07 ID:9sa58WUG
>>470
レスありがとうございます。素直に今まで通りでやっていくことにします。

480 :名前は開発中のものです。:03/02/03 08:06 ID:KyW3cjZS

 ̄ ̄ ̄ ̄ ̄ ̄ ̄○ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
           O 。
                 , ─ヽ
________    /,/\ヾ\   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
|__|__|__|_   __((´∀`\ )< というお話だったのサ
|_|__|__|__ /ノへゝ/'''  )ヽ  \_________
||__|        | | \´-`) / 丿/
|_|_| 从.从从  | \__ ̄ ̄⊂|丿/
|__|| 从人人从. | /\__/::::::|||
|_|_|///ヽヾ\  /   ::::::::::::ゝ/||
────────(~〜ヽ::::::::::::|/        = 完 =

481 :age:03/02/03 09:46 ID:yH0659nv

祭りがはじまるぞ〜
未承諾広告送信業者をたたく祭りだ!
早くしないと乗り遅れるぞ
http://jbbs.shitaraba.com/news/938/

482 :名前は開発中のものです。:03/02/03 10:37 ID:Xix4LbM3
tinyのウェイトってどういう感じになってるんですか?LWのようなツール
持ってないんで解析結果が正しいのか確認できないっす。
自前だとメチャクチャなとこにウェイトが出るんで間違ってるとは思うんですけど。
もものボーンなら正直にももの周りにだけウェイトがあるのかな・・・?

483 :名前は開発中のものです。:03/02/03 12:36 ID:XO+rE9H3
>>482
どうなってるもなにも

> template SkinWeights {
> <...>
> STRING transformNodeName;
> DWORD nWeights;
> array DWORD vertexIndices[nWeights];
> array FLOAT weights[nWeights];
> Matrix4x4 matrixOffset;
> }

とtiny.xにテンプレートが書いてあるんだが…。


484 :名前は開発中のものです。:03/02/03 12:51 ID:MPvK+jme
>もものボーンなら正直にももの周りにだけウェイトがあるのかな・・・?

うん。


485 :名前は開発中のものです。:03/02/03 13:16 ID:OcEz8SkM
ボーンのあるモデルの読み込みはボーンが使えるモデリングソフト買う気が無い人はやらないほうがいいよ。
Xファイルで練習する人いるけど俺はおすすめしないぞ

486 :名前は開発中のものです。:03/02/03 13:52 ID:AJCGdyXN
ボーンのウェイトってどうやって決めるの?

487 :名前は開発中のものです。:03/02/03 14:23 ID:X9Re3WeQ
マジレス:
モデラーのアーティステイックな判断で決める。

488 :名前は開発中のものです。:03/02/03 14:57 ID:y4Lcllg8
               o.
               /  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ /
              /   このスレは無事に .  /
              /  終了いたしました    /
             / ありがとうございました  /
             /                /
            /   ペイピッポォより     /
            / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
           /
         . /
   __(^^) ../
  /__ \/
  | |   |  |
  (_) (__)


489 :名前は開発中のものです。:03/02/03 15:35 ID:9sa58WUG
困った困った・・・どなたか8.1のSDK落とせる場所
御存知ないでしょうか・・・自分で探すのがすじですが時間がなくて・・・TT

490 :名前は開発中のものです。:03/02/03 15:44 ID:Nz7lRMEr
このページの下のほうにあるよ。
http://msdn.microsoft.com/library/default.asp?url=/downloads/list/directx.asp

491 :名前は開発中のものです。:03/02/03 15:50 ID:9sa58WUG
>>490
神よ仏よ490様よ!
本当に感謝です、ありがとうございました。
あなたに良いことが起こりますように!

さ、さぁ、いそがな・・・・・

492 :名前は開発中のものです。:03/02/03 16:54 ID:vD1EWFpK

 ̄ ̄ ̄ ̄ ̄ ̄ ̄○ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
           O 。
                 , ─ヽ
________    /,/\ヾ\   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
|__|__|__|_   __((´∀`\ )< というお話だったのサ
|_|__|__|__ /ノへゝ/'''  )ヽ  \_________
||__|        | | \´-`) / 丿/
|_|_| 从.从从  | \__ ̄ ̄⊂|丿/
|__|| 从人人从. | /\__/::::::|||
|_|_|///ヽヾ\  /   ::::::::::::ゝ/||
────────(~〜ヽ::::::::::::|/        = 完 =


493 :名前は開発中のものです。:03/02/04 12:03 ID:f4NjRERM
Xファイルって使ったことないので使ってみたいのですが、
Xファイルを吐き出させるソフトで、フリーのやつがあれば教えてください。

494 :名前は開発中のものです。:03/02/04 13:30 ID:2D6+phaA
>>493
http://www.google.com/search?q=%E3%83%95%E3%83%AA%E3%83%BC+X%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB+%E3%83%A2%E3%83%87%E3%83%AA%E3%83%B3%E3%82%B0

495 :名前は開発中のものです。:03/02/04 13:48 ID:SLEVhkkt
吐き出すだけならいくらでもあるけど、テクスチャも貼れて
モーションデータまでつけられるので、良いのないよねぇ…。

Animadioに期待してたけど…
データ周りはばっちりですが、肝心の使用感が…_| ̄|○

496 :名前は開発中のものです。:03/02/04 14:54 ID:ggL3gKHF
Maya買え

497 :名前は開発中のものです。:03/02/04 17:17 ID:pDuEwNTu
DirectX初心者です。
現在製作中のゲームで、フィールドと建物のレンダリングに最遠方距離
だけ違うプロジェクションマトリクスを使っているのですが。

マウスのスクリーン座標をワールド座標に変換するときにかける
プロジェクションマトリクスの逆行列は、この場合別々にしないと
いけないのでしょうか。

498 :名前は開発中のものです。:03/02/04 20:32 ID:9HW8vBr4
                                 ∧ ∧   ∧ ∧
   /⌒~~~⌒\                       (   ,,)   (,,・Д・)
 / ( ゚>t≡ )y─┛~~                〜(___ノ  〜(___ノ ,γ_
(_ ノγ U  ∩_∩)   THANK YOU 2ch     ┌───────┐   \
  α___J _J         and          (| ●        ● |      ヽ
  / ̄ ̄ ̄ ̄\  GOOD-BYE 2ch WORLD! /.| .┌▽▽▽▽┐ .|____|__||_| ))
 /     ●  ●、                   ( ┤ .|        | .|□━□ )
 |Y  Y       \ またどこかで会おうね  \.  .└△△△△┘ .|  J  |)
 |.|   |       .▼ |                 | \あ\      | ∀ ノ
 | \/        _人|∧∧∩゛冫、 .∧_∧      |    \り.\     . |  - ′
 |       _/)/)/( ゚Д゚)/ `  . (´∀` )..ヽ(´ー`)ノ  \が\ .   |  )
 \    / 〔/\〕 U  / ∩∩ (    ) (___)    \と.\ .|/
  | | | c(*・_・)  |  |ヽ(´ー`)ノ_|  |  | |   |〜 /\.\う\| (-_-)
  (__)_) UUUU /∪∪ (___)(_(__) ◎ ̄ ̄◎─┘ .└──┘.(∩∩)

499 :名前は開発中のものです。:03/02/04 21:10 ID:TpzMECPx
>>493
http://www.doga.co.jp/ptdoga/

500 :名前は開発中のものです。:03/02/05 00:30 ID:BDykyC1l
>>497
遠方クリップ面の視点からの距離の違いは見え方には影響しないと思うがどうか。
Z値をフレームバッファから取り込むんなら話は違うけど。

501 :名前は開発中のものです。:03/02/05 00:52 ID:N+d6L0pq
ちょい聞きたいんだけど、いわゆるインデクスリスト、DrawIndexedPrimitiveで
表示すんのとトライアングルストライプをDrawPrimitive で表示すんのはどっちが
ええのん?

D3DXMeshに振り回されるのも飽きてきたのでどちらかに絞りたいのだけど。

502 :名前は開発中のものです。:03/02/05 01:06 ID:6CAPKd5a
>>501
頂点キャッシュ意識しつつDrawIndexedPrimitive

503 :名前は開発中のものです。:03/02/05 02:42 ID:OmM2oqc6
「Xファイルからメッシュに読み込む」
の日本語の意味が分からないのですが、Xファイルとメッシュって
別物だったんですか?Xファイルってメッシュとどう違うのですか?

なんか言葉の問題ですが、分かったような分からないような
気持ち悪い感じなのでだれか教えてください。

504 :名前は開発中のものです。:03/02/05 02:57 ID:UI6dIE/V
Xファイルは、ファイル
メッシュは、ポリゴンを格納する箱のこと。





505 :名前は開発中のものです。:03/02/05 03:23 ID:t7RKM9gf
               o.
               /  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ /
              /   このスレは無事に .  /
              /  終了いたしました    /
             / ありがとうございました  /
             /                /
            /   ペイピッポォより     /
            / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
           /
         . /
   __(^^) ../
  /__ \/
  | |   |  |
  (_) (__)

506 :名前は開発中のものです。:03/02/05 03:25 ID:45qMK1H4
>>501
トライアングルストライプって何?
縞模様のテクスチャを貼った三角形?

507 :名前は開発中のものです。:03/02/05 06:47 ID:+GmCcNpR
三角形ストリップ(D3DPT_TRIANGLESTRIP)のことじゃねーの?

508 :497:03/02/05 08:07 ID:asHOMshy
>>500
アドバイスありがとうございました。解決しました。

質問ばかりで申し訳ありません。
Xファイルから読み込んだメッシュから頂点座標を1ポリゴン(3点)ずつ取得したいのですが、上手くいきません。
自分ではこれで合っているような気がするのですが・・・

models[mdl].pMesh -> LockVertexBuffer (D3DLOCK_READONLY,&pVertices);
models[mdl].pMesh -> LockIndexBuffer (D3DLOCK_READONLY,&pIndices);

for( i=0 ; i<models[mdl].dwNumFaces ; i++ )
{
pVertices += ( models[mdl].dwVertexSize * (*(pIndices))) ;
v1 = *(D3DXVECTOR3*)pVertices;
pVertices -= ( models[mdl].dwVertexSize * (*(pIndices))) ;
pIndices ++;

pVertices += ( models[mdl].dwVertexSize * (*(pIndices))) ;
v2 = *(D3DXVECTOR3*)pVertices;
pVertices -= ( models[mdl].dwVertexSize * (*(pIndices))) ;
pIndices ++;

pVertices += ( models[mdl].dwVertexSize * (*(pIndices))) ;
v2 = *(D3DXVECTOR3*)pVertices;
pVertices -= ( models[mdl].dwVertexSize * (*(pIndices))) ;
pIndices ++;
  処理
}
アンロック
※dwNumFaces 面数 , dwVertexSize 頂点サイズ

509 :名前は開発中のものです。:03/02/05 09:14 ID:C8LBuEyA
>>508
v2へのベクトルの代入が2回あるよ
最後はv3の間違いでは

510 :名前は開発中のものです。:03/02/05 11:26 ID:WNKlFOrl
>>508
pVerticesの型は問題無い?
それと余計なお世話かもしれないが、いちいちpVerticesの値を書き換える
のはどうかと思うが。

511 :名前は開発中のものです。:03/02/05 11:43 ID:Rpyfjb59
VC++6.0、DX8.1SDK使って開発してるんですが
VCの機能で、構造体がstだとするとst.と打つと変数がズラっと出てくるのですが
DXの場合でてきません(;´Д`)
たとえばこんば場合
lpD3DDEV-> この場合だとメンバがズラっと出てきてもおかしくないはずでは…?

512 :名前は開発中のものです。:03/02/05 12:18 ID:79QNGJq6
>>503
ニュアンスとしては「テキストファイルから文字配列に読み込む」と似たようなもんだ。

>>511
DirectXに限らずいつの間にか出なくなってるのはよくあることさ。
VC終了させてncbファイルを削除してリビルドすると直ることがある。

513 :名前は開発中のものです。:03/02/05 14:33 ID:pCUaxWgd
            o.
            /  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ /
           /   このスレは無様に .  /
           /  終了いたしました    /
          / ありがとうございました  /
          /                /
         /    モララーより     /
         / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄/
  ∧_∧  /                /∧_∧
 ( ・∀・) /                /(・∀・ )
 (    )つ               ⊂(    )
 | | |                   | | |
 (__)_)                  (_(__)


514 :名前は開発中のものです。:03/02/05 14:45 ID:VhnI0t6f
>>512
DirectX関係のヘッダファイルを
メニューの「プロジェクトに追加」から追加すれば すべて表示される様になるよ。

515 :名前は開発中のものです。:03/02/05 14:48 ID:VhnI0t6f
上は>>511へね。

516 :497:03/02/05 15:56 ID:Px3YyVPb
>>509
すみません、コピぺミスでした。
プログラムの方は3になっています。

>>510
pVerticesはBYTE*型で宣言しています。

517 :名前は開発中のものです。:03/02/05 20:05 ID:33SsFAZ7
VisualBasic環境でDirectXを解説しているホームページがあったら
教えて下さい。
ほとんど、C/C++環境しか載ってませんでした。

518 :名前は開発中のものです。:03/02/05 20:16 ID:79QNGJq6
>>517
http://www.google.com/search?lr=lang_ja&q=VB+DirectX+DirectGraphics
http://www.google.com/search?lr=lang_ja&q=VB+DirectX+DirectInput
http://www.google.com/search?lr=lang_ja&q=VB+DirectX+DirectAudio
http://www.google.com/search?lr=lang_ja&q=VB+DirectX+DirectPlay

519 :名前は開発中のものです。:03/02/05 20:17 ID:79QNGJq6
あ、DirectXってキーワードは要らないか……

520 :あぼーん:あぼーん
あぼーん

521 :名前は開発中のものです。:03/02/05 22:45 ID:gmQcAvyI
>>508
pIndicesってBYTE*?
インデックスってunsigned short(2バイト)だよね。
>pVertices += ( models[mdl].dwVertexSize * (*(pIndices))) ;
これだとDWORDにcharを掛けることになるんじゃない?


522 :名前は開発中のものです。:03/02/05 23:03 ID:j4N+VLbo
インデックスは16bitの場合と32bitの場合があるよ。

523 :名前は開発中のものです。:03/02/05 23:18 ID:gmQcAvyI
>>521
>models[mdl].pMesh -> LockIndexBuffer (D3DLOCK_READONLY,&pIndices);
でもここでエラーが出るよ。これってエラー回避できたっけ?


524 :497 508:03/02/06 00:06 ID:OnKQhdzM
アドバイスありがとうございます。
参考に、いろいろと調べながら改良したところ上手くいったのですが。
pVerticesは自前の頂点フォーマットなので、Xファイルの頂点フォーマットが変わったら対処出来なくなりますよね・・・

models[ObjInfo[obj_num].mdl_num].lpVertexBuffer -> Lock(0,0,(BYTE**)&pVertices,D3DLOCK_READONLY);
models[ObjInfo[obj_num].mdl_num].lpIndexBuffer -> Lock(0,0,(BYTE**)&pIndices,D3DLOCK_READONLY);

for(i=0;i<models[ObjInfo[obj_num].mdl_num].dwNumFaces;i++)
{
indx0 = *pIndices++;
indx1 = *pIndices++;
indx2 = *pIndices++;

v1.x = (pVertices+indx0)->x;
v1.y = (pVertices+indx0)->y;
v1.z = (pVertices+indx0)->z;

※以下v2,v3はindx0をindx1とindx2にする。

525 :名前は開発中のものです。:03/02/06 00:14 ID:PXQKBNV4
>>524
CloneMeshFVF()


526 :名前は開発中のものです。:03/02/06 00:18 ID:h7fxXUIR
DirectXで文字列を描画するのにCreateFontを使っているのですが
文字の出来栄え(?)がよく見えません…。
もっと自然に見せるのはどうしたらいいですか?

527 :名前は開発中のものです。:03/02/06 00:48 ID:XOPRT3wt
暇なお方!このサイトをガンガン荒らしてください!
変態がイパーイいるサイトでつ!ヨロシク!!

http://homepage2.nifty.com/tikan/

528 :名前は開発中のものです。:03/02/06 02:03 ID:uf/6vI/u
最近、エイジオブミソロジーをやったのですが
あのゲームの海岸の処理が綺麗でちょっと興味が…。
あれって具体的にどうやってるんでしょうかね?
海岸線を記憶しておいて、半透明テクスチャを多重に重ねてるだけ?

529 :あぼーん:あぼーん
あぼーん

530 :497 508:03/02/06 10:37 ID:GRrNUBHf
何とか解決しました、ありがとうございました。

そう言えば、色々な所でD3DRS_LIGHTINGは重いので自前で計算するというのを見かけるのですが。
どれくらい違ってくるのでしょうか。
また、自前で計算するとすれば頂点から光源までのベクトルと、法線ベクトルとの角度が
大きくなるにつれ、頂点色を黒に近づければ良いのでしょうか?

531 :あぼーん:あぼーん
あぼーん

532 :あぼーん:あぼーん
あぼーん

533 :あぼーん:あぼーん
あぼーん

534 :あぼーん:あぼーん
あぼーん

535 :あぼーん:あぼーん
あぼーん

536 :名前は開発中のものです。:03/02/06 20:32 ID:pjoIkZid
>>528
あー、AoMの表現は繊細やねー。
2Dエンジンの頃の「味」を3Dエンジンで再現してやろう
みたいな開発者の姿勢に惚れたよ。
 
海岸線の技法はごく普通の頂点α&テクスチャUVのアニメーションの
マルチパスレンダリングかと思われ。

537 :名前は開発中のものです。:03/02/06 23:47 ID:uf/6vI/u
>>536
なるほど。テクスチャアニメーションですか。
海岸線を割り出すのが面倒そうですが、
理論的にはできそうですね。ちょっと試してみますw

538 :名前は開発中のものです。:03/02/07 00:42 ID:WYEzYilN
>>530
>そう言えば、色々な所でD3DRS_LIGHTINGは重いので自前で計算するというのを見かけるのですが。
点光源や複数光源は確かに重いですね
光源計算を自前ってシェーダーでってことでしょう
でもVertexShaderをソフトウェア処理すればもちろん重いです
まぁ点光源を使わず平行光源1〜2個程度なら重くはないと思いますが…

539 :名前は開発中のものです。:03/02/07 02:13 ID:cVuOSA76
重いか?
てか、そいつらちゃんとライトのクリッピングしてるのかな?
単純に考えて描画されない範囲はライトの計算はない。
さらにその中でライトの影響があるものに絞れるわけだから結構糞みたいなもんだと思うのだが。
そうでもない?

540 :あぼーん:あぼーん
あぼーん

541 :名前は開発中のものです。:03/02/07 02:54 ID:vOLsbN51
シェーダってなんですか?
自前で作るシェーダってどういうことですか?

542 :名前は開発中のものです。:03/02/07 03:47 ID:d8M6ISnC
>>541
http://www.google.com/search?q=%E3%82%B7%E3%82%A7%E3%83%BC%E3%83%80

543 :名前は開発中のものです。:03/02/07 05:01 ID:q+CKg/Cp
DirectX8.1 SDKを使ってゲーム開発を行っているのですが、
フルスクリーンにした際にメニューバーが見えてしまうのでメニューバーを隠したい
のですが、メニューバーを隠すにはどうしたらいいですか?

544 :名前は開発中のものです。:03/02/07 05:55 ID:XjdSy754
>>543
SDKのサンプルを見ろ。HMENUで検索すればすぐ見つかるよ。

545 :あぼーん:あぼーん
あぼーん

546 :あぼーん:あぼーん
あぼーん

547 :名前は開発中のものです。:03/02/07 13:52 ID:q7wZvQmW
>>530 >>538-539
そこそこ新しいグラボだったらそんなに重くない気がする
>>530の言ってるのがどんな方法かわからんのだが
>>538の言ってる方法は古いグラボと新しいグラボの差を広げるので
使いにくいのではないかなぁ。
光源固定の場合にはマップなど動かないオブジェクトのライティングも固定なので
最初に一回だけ計算しておいてライティング済頂点として描画、
という方法なら、状況によってはそこそこ速くなるんでない?

548 :530:03/02/08 00:16 ID:r5v2mdj8
アドバイスありがとうございます。
今使っているのは、平行光源とAMBIENT(全体の明度?)なので大丈夫そうですね。

549 :あぼーん:あぼーん
あぼーん

550 :530:03/02/08 05:53 ID:tP3Uar1n
現在製作中(とは言ってもいろいろと実験しながらですが・・・)のゲームは、
フルスクリーン動作を前提に作っているのですが。
マウスカーソルを画面上の方に持っていくとタイトルバーに常駐するアプリが、
表示はされていないのですが反応してしまいます。

市販のゲームではこう言う現象は起きないのですが、どうやって回避すれば良いのでしょうか?
詳しい方ご教授お願いします。

551 :530 550:03/02/08 06:07 ID:tP3Uar1n
連続書き込みすみません。
ちなみに、問題のアプリはコレです。

http://www.vector.co.jp/vpack/browse/pickup/pw4/pw004591.html

552 :名前は開発中のものです。:03/02/08 07:55 ID:wHa+Kz3S
タイトルバー無くせば?

553 :名前は開発中のものです。:03/02/08 08:29 ID:vaToSwV1
一旦終了させれば?

554 :名前は開発中のものです。:03/02/08 08:30 ID:kW0mtyec

ウィンドウスタイル = WS_POPUP

分からないところが出る度にこうやって聞きにくるつもりかな?
自分で調べる力がないとゲームを作る上で大きな障害になるぞ。

555 :Newbie:03/02/08 10:54 ID:tP3Uar1n
ありがとうございました。解決しました。
WS_POPUPでは無理だったので、ウィンドウを生成する直前で

long nStyle = GetWindowLong ( hWnd, GWL_STYLE );
nStyle &= ~WS_BORDER;
SetWindowLong ( hWnd, GWL_STYLE, nStyle );
SetWindowPos(hWnd, NULL, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOSIZE | SWP_NOZORDER | SWP_FRAMECHANGED);

としたところ、上手くいきました。

>>554
googleでいろいろ検索しているのですが、情報があまりにも少なかったり
いろいろな方法があったりと、ここで聞くと最良の方法がわかりそうで
ついつい質問してしまいます。
頑張って質問は3日に一回くらいにします。

と言うかコテハンにします(・∀・ )

556 :名前は開発中のものです。:03/02/08 14:25 ID:kW0mtyec
>>555
ウィンドウ位置 = CW_USEDEFAULT

これまで書かなきゃいかんかったのかな。
あと行数多い上にWS_BORDERは必要ないぞ。
前の質問も見てみたけど、ポインタの意味も理解できてないようだから
ttp://www.kumei.ne.jp/c_lang/
ここを紹介しておく。よ〜く理解を深めてからDirectXを始めるといい。

557 :Newbie:03/02/08 18:29 ID:Lgzi6Y2E
いろいろ試したところ、
SetWindowPos(hWnd, NULL, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOSIZE | SWP_NOZORDER | SWP_FRAMECHANGED);
だけでいけるようです。

WS_POPUP等は真っ先に試したのですがだめでした。
どうやら、Direct3Dデバイスを初期化した後にクライアント領域を上書きする
必要があるようです。


558 :名前は開発中のものです。:03/02/08 19:03 ID:RpJY5FZv
WS_EX_TOPMOSTとかSetCapture関数とかは?


559 :名前は開発中のものです。:03/02/08 19:35 ID:kW0mtyec
>>557
??? ちょっとソース見せてみ。

560 :Newbie:03/02/09 02:21 ID:h8vA8e3L
>>559
こんな感じです。一応ウィンドウモードに切り替えることも考慮してます。

RECT rect;
SetRect(&rect, 0, 0, WIDTH, HEIGHT);
DWORD style = (FULLSCREEN) ? WS_POPUP :(WS_CAPTION|WS_SYSMENU|WS_BORDER|WS_MINIMIZEBOX);
AdjustWindowRect(&rect, style, FALSE);
int width = rect.right - rect.left;
int height = rect.bottom - rect.top;

WNDCLASS wc;
ZeroMemory(&wc, sizeof(WNDCLASS));
wc.hbrBackground= (HBRUSH)GetStockObject(BLACK_BRUSH);
wc.hCursor = LoadCursor(NULL,IDC_ARROW);
wc.hInstance = hInst;
wc.lpfnWndProc= MsgProc;
wc.lpszClassName= CAPTION;
if(RegisterClass(&wc) == 0) return 0;

HWND hWnd = CreateWindow(CAPTION,CAPTION,style,CW_USEDEFAULT,CW_USEDEFAULT,width,height,NULL,NULL,hInst,NULL);
if(hWnd == NULL) return 0;

if(FAILED(InitD3D(hWnd))){return 0;}

if(FULLSCREEN)
{
SetWindowPos(hWnd, NULL, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOSIZE | SWP_NOZORDER | SWP_FRAMECHANGED);
}
ImmAssociateContext(hWnd,0);
ShowWindow(hWnd, SW_SHOW);
UpdateWindow(hWnd);

561 :名前は開発中のものです。:03/02/09 07:50 ID:JOf4tO9W
>>560
環境は?DXバージョン、OSとグラフィックカード、メモリ容量も書いて。

562 :名前は開発中のものです。:03/02/09 09:18 ID:fW4IKGf/
DX9だと、どんなウィンドウの設定にしてもキレイにフルスクリーンになるみたいよ。
あとはアホな組み方してもCPU使用率が100%にならないんだけど」ウチだけ?
デフォルトでPresentにSleepが入るようになったんかな。
自前で制御してるからいらんのだが、無効にするやり方がわからん・・・
まぁ特に害は無いから良いんだけど。

563 :名前は開発中のものです。:03/02/09 10:05 ID:EhDX4MWW
>>562
それだけで9に移行したくなった、へたれグラマがここに…

564 :名前は開発中のものです。:03/02/09 16:56 ID:3OGaUPxJ
GFTi4200 + Athlon2200+XPでも遅いな。遅すぎる。もっと早くなれ。

565 :名前は開発中のものです。:03/02/09 17:05 ID:uxVt/yIf
アルゴリズムが悪いとかじゃなくて?

566 :名前は開発中のものです。:03/02/09 17:12 ID:3OGaUPxJ
そうかな。
アニメーションする700ポリぐらいのXファイルを10個ばかり連続して描いたら遅くなるんだが。

567 :名前は開発中のものです。:03/02/09 19:51 ID:QY+T3Yh8
アルゴリズム(=お前の書いたソース)が悪いな、それは。

568 :名前は開発中のものです。:03/02/09 20:10 ID:nYwSnCHE
俺もそう断言しとく。

569 :Newbie:03/02/09 20:28 ID:l8jF+XK3
>>561
環境は、
DirectX8, OS Win2000pro , CPU P4 1.6Ghz, RAM ddr512MB, VideoCard Radeon9000pro, VRAM 128MB です。

>>562
9に移行したくなりますた。
でも、とりあえず8で基本押さえて一本完成させてからにします。

検索しても見つからなかったので、ここで質問させて下さい。
現在建物との当たり判定は、自キャラから一定距離以内のモデルの全面検索(一応いろいろ絞り込んでますが)
で取っているのですが。
フレーム毎に頂点バッファをロックして頂点座標を取得するのと、
マップを作るときに予め頂点座標のみ取得しておき、それを使うのではどちらが良いのでしょうか。
ロックアンロックは重いというのをちらほら見かけたし、予め格納するなら結構無駄にメモリを食いそうで悩んでます。

570 :名前は開発中のものです。:03/02/09 20:30 ID:yUWb7xod
何も考えずにそうやったらそれくらいで頭打ちになるよ。
テクスチャ等の切り替え回数を減らすとか工夫しないと。

571 :名前は開発中のものです。:03/02/09 21:08 ID:JOf4tO9W
>>569
Windows98SE AthlonXP1500+DDR512MB+GFMX400(VRAM64MB) DirectX8.1では
正常に表示されるんだがな。win2000では無理って事か。ふむふむ・・・。

>フレーム毎に頂点バッファをロックして頂点座標を取得するのと、
>マップを作るときに予め頂点座標のみ取得しておき、
>それを使うのではどちらが良いのでしょうか。

どちらがいいでしょうか、ってそりゃソフトの使い道や環境によって自分で決めれば
いいことだろう。必ずこっち、という解答があるわけではない。
>>569の環境だとグラフィックカードがよさげなのでバッファロックも特に問題なさそう
だが、速度重視ならソフトでバッファを持てばいい。建物(直方体)ならそれほどメモリ
を食わないので普通ゲームを作る場合はこちらの方法で速度を上げる。
あと分かってないみたいだが当たり判定というのはあらかじめバウンでィングボックス(もしくは球)
を作ってそれを使い衝突判定をする。いちいち全部の頂点・面を判定に使用するのは
地形接触判定以外ではやらない。オブジェクトごとにそんな事をしていたらロック無しでも
アホみたいに遅くなる。バウンディングボックスという言葉は分かるよな?


572 :名前は開発中のものです。:03/02/09 21:08 ID:0kXKwYwr
>>569
よほど複雑だったり数が多くなければ、後者ならそんなにメモリ食わないと思うけど。
計算してみた?

573 :Newbie:03/02/09 22:08 ID:l8jF+XK3
アドバイスありがとうございます。
>>570
計算してみます・・・

>>571
バウンディングボックスは最初考えていたのですが、家の中に入ったり家の中の
階段を上ったりするので。家の中をどうするかを考える時点で挫折しますた・・・
全面検索だと、この辺は簡単にいけるのですが。

>>572
建物はかなりローポリで作ってテクスチャでごまかしてます。
今のところ小さい家で、頂点数118(GetNumVerticesで取った値)
2階建ての家で390くらいなので、恐らくこれから追加するモデルも500は越えないと思います。

人やモンスター等、複雑な形状になる物体には周りにエフェクト貼り付け用の透明な六角柱を用意して
それと当たり判定を取る予定です。

574 :名前は開発中のものです。:03/02/09 22:34 ID:JOf4tO9W
>>573
>バウンディングボックスは最初考えていたのですが、家の中に入ったり家の中の
>階段を上ったりするので。家の中をどうするかを考える時点で挫折しますた・・・
>全面検索だと、この辺は簡単にいけるのですが。

クリッピングもできないみたいだな・・・。ポインタもよく分からないのだから
この辺が限界か。ま、頑張れ。


575 :Newbie:03/02/09 23:10 ID:l8jF+XK3
>>574
クリッピングはバウンディングボックス使ってスクリーン座標から8頂点全部
はみ出したら描画しないようにしているのですが、ダメなのでしょうか・・・

576 :名前は開発中のものです。:03/02/09 23:25 ID:JOf4tO9W
>>575
笑 家のモデルはたしか頂点数118の単一モデルだったよな?
家の中もそのモデル内に作ってあるとすればお前の仕様だと家に入ると家の内部を
いちいち全て描画することになる。
家の外装と内装(部屋、廊下、ドア、階段、壁)をそれぞれ
家のオブジェクト内に存在する子オブジェクトとして持てば描画範囲からあたり判定、
個別の仕様変更にも耐える設計となる。無論自作エディタも必要になってくるがな。
まぁ、ちいちゃい箱庭作って遊んでる程度なら気にしなくてもいいよw。

577 :名前は開発中のものです。:03/02/09 23:35 ID:fW4IKGf/
>>Newbie
こんなことを言ってしまうと元も子もないが、はっきり言ってどうでもいい。
メモリを鬼のように食おうが泣けるほど重かろうが、とにかくまず動くものを。
今のおまいの話は完成後(ここ肝心)に速度その他に疑問をもったら聞きに来ればいい。
迷わず進めでFA。

578 :Newbie:03/02/09 23:37 ID:d++7OTj6
>>576
なるほど、かなり参考になります。
そうなった場合、いかにバウンディングボックスを作るかが問題になりますね。
まだLightWaveではき出したXファイルをメッシュ単位で描画している程度なので、
そのレベルまでの道のりは遠そうです・・・

連続投稿規制はじめて食らいますた・(ノД`)・゜

579 :Newbie:03/02/09 23:39 ID:d++7OTj6
>>577
はい、とりあえずいろいろ割り切って進めてみます。


580 :名前は開発中のものです。:03/02/10 00:15 ID:iTDKJLi8
>>573
>>バウンディングボックスは最初考えていたのですが、家の中に入ったり家の
>>中の階段を上ったりするので
普通は別にコリジョン用のモデルを準備しとく
家ならさらにローポリで単純な形のモデル
表示しないのでテクスチャ、マテリアル、頂点カラーも不要
メモリも表示用モデルに比べれば小さくてすむし

581 :名前は開発中のものです。:03/02/10 00:20 ID:Pol7gVJ3
>>577
いいこというねぇ。
とりあえず動くものができてからだよね。

582 :DirectPlay:03/02/10 02:44 ID:Oiatng7o
DirectPlayで、ロビーサーバーを使用しない接続で、
「セッションの場所」という、接続を検出する先のホストを入力するためのダイアログボックスが、
自動的に起動してしまうのですが、これは、ロビーに対応しないでは抑制するのは不可能なのでしょうか?

また、擬似的でもなんでもいいので、見えなくする、とか、なんでも方法を知っている方がいらっしゃいましたらご教授くださいまし。。


583 :名前は開発中のものです。:03/02/10 02:54 ID:h4+lH33U
点の可視判定をどう実装しようか迷ってます。
カメラ座標系の行列mCamera,透視座標系の行列mPersを
DirectXにある演算でD3DXMATRIXとして作って
点の座標をD3DVECTOR3型のpointで宣言して

pointDst=point*mCamera*mPers;
としたときに、その点がx[-1,1] y[-1,1] z[0,1]の
中に入っていなかったらその点は見えないと言えるのでしょうか?

実際には、8X8の64ボックスのエリアからなる街を効率よく
レンダリングするために、4分木にして可視判定を行っていこうと
おもっています。上記のことで正しいならば、実行半径と軸にして
それを行おうと思っているのですがどうなんでしょうか?


584 :あぼーん:あぼーん
あぼーん

585 :名前は開発中のものです。:03/02/10 18:45 ID:hZsKS2a4
>>582
オレがいじってたのはDirectX5のトキなのだが、
そんときはダイアログ無しでアプリ側から「TCP/IPでホストになる」とか
「123.45.56.78に接続」とかできたよ。当然今のバージョンでもできるはず。
でもやりかたほとんど覚えてない。
ダイアログから得られる情報を使って次の接続処理をしていると思うのだが、
その情報を自前で生成して接続する...ってカンジだったよーな...
スマソ。いろいろ調べてみてくれ

586 :名前は開発中のものです。:03/02/10 20:30 ID:nRuciNwT
NT系で動いたDirectPlayのソースが9x系で動かないです。

クラサバからピアのセッションを張るときに
コールバック内からいろんな処理やったのがまずかったのかも

クラサバとピアのセッションって同時に張れますよね?

もう一度ちゃんとしたコードで書き直そうと思っているんですが
原因も知りたいので、知ってる人いたら教えて欲しいです。

リファレンスにある
「DirectPlay では、Windows 2000 上で動作するときに I/O 完了ポートを使用する。」
↑これよくわかんないんですが関係ありますか?


587 :名前は開発中のものです。:03/02/10 22:00 ID:umxyvTXI
>>586
どこでエラー起こってるか書いてみ

588 :586:03/02/10 22:36 ID:nRuciNwT
エラーというより反応がないんです。

9xのコールバックがマルチスレッドじゃないとしたら
そんな動きかな?って感じでした。


589 :名前は開発中のものです。:03/02/10 23:24 ID:hzpYDER/
DirectPlayよくしらんが、コールバックではフラグを立てるとか
Eventをシグナルするとかメッセージを投げるとかそれくらいに
しといたほうがいい気がする。

590 :名前は開発中のものです。:03/02/11 01:27 ID:u2o+UQ0a
質問です。
DirectPlay8の PeerToPeerで
接続している プレイヤーすべてのDPNIDは取得できるのですが
起動させている自分自身のDPNIDはどうやって特定するのでしょうか?



591 :あぼーん:あぼーん
あぼーん

592 :名前は開発中のものです。:03/02/11 06:28 ID:KQOMDYQi
>>569
その環境でその負荷は、ありえないよ。
コリジョンつっても、数が全然少ない。
(とりあえず、CPU使用率確認すべし。表示とアニメだけなら、
CPU使用率5%以下の筈。全部HWなら)

多分、小さい頂点バッファを沢山描画してると思うんだが?
ストールしまくるよ。


593 :Newbie:03/02/11 13:29 ID:ANuI3/is
>>580
アドバイスありがとうございます。
なるほど。参考になりますた。

>>583
D3DXVec3Projectという便利なモノがあります。
範囲はD3DVIEWPORT8で宣言した値で決まります。

>>592
566さんへのレスでしょうか?
俺の方は今のところ可視範囲を家で埋め尽くしても全然軽いです。
この先アニメーション付きの人物とか追加していくと不安ですが・・・

594 :あぼーん:あぼーん
あぼーん

595 :1/2:03/02/11 18:44 ID:iYhjkWBr
Win2000SP3 DirectX8.1 GeForce2MX VC++6.0SP5

640*480の画面いっぱいに同サイズのbmpファイルを表示させようとしてるんですが、
ぼやけてしまうのはなぜでしょうか?(表示はできてるんですが)


#define FVF_CUSTOM (D3DFVF_XYZRHW | D3DFVF_DIFFUSE | D3DFVF_TEX1)
struct CUSTOMVERTEX
{
    FLOAT x, y, z, rhw;
    DWORD color;
    FLOAT tu, tv;
};

〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜

596 :名前は開発中のものです。:03/02/11 18:44 ID:iYhjkWBr

m_vtx[0].x = -0.5f;m_vtx[0].y = -0.5f;m_vtx[0].z = 0.0f;
m_vtx[1].x = 639.5f;m_vtx[1].y = -0.5f;m_vtx[1].z = 0.0f;
m_vtx[2].x = 639.5f;m_vtx[2].y = 479.5f;m_vtx[2].z = 0.0f;
m_vtx[3].x = -0.5f;m_vtx[3].y = 479.5f;m_vtx[3].z = 0.0f;
m_vtx[0].rhw = 0.5f;m_vtx[0].color = 0xffffffff;
m_vtx[1].rhw = 0.5f;m_vtx[1].color = 0xffffffff;
m_vtx[2].rhw = 0.5f;m_vtx[2].color = 0xffffffff;
m_vtx[3].rhw = 0.5f;m_vtx[3].color = 0xffffffff;
m_vtx[0].tu = 0.0f;m_vtx[0].tv = 0.0f;
m_vtx[1].tu = 1.0f;m_vtx[1].tv = 0.0f;
m_vtx[2].tu = 1.0f;m_vtx[2].tv = 1.0f;
m_vtx[3].tu = 0.0f;m_vtx[3].tv = 1.0f;

〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜

m_pd3dDevice->SetVertexShader(FVF_CUSTOM);
m_pd3dDevice->SetTexture(0, m_pTexture);
m_pd3dDevice->DrawPrimitiveUP(D3DPT_TRIANGLEFAN, 2, m_vtx, sizeof(CUSTOMVERTEX));

597 :3/2:03/02/11 18:46 ID:iYhjkWBr
他の環境ないので試せませんが、ビデオカードの仕様だったら泣いてさしあげます

598 :名前は開発中のものです。:03/02/11 19:03 ID:oc2BIV/D
640x480のテクスチャって作れたっけ?
1024x512のが拡大縮小されてる余寒。

599 :名前は開発中のものです。:03/02/11 19:19 ID:iYhjkWBr
>>598
内部的には1024*512作ってるので、どうしてもぼやけてしまうんでしょうか?

600 :名前は開発中のものです。:03/02/11 19:37 ID:oc2BIV/D
うは、そりゃボケるべ。
1024x512の、640x480の部分(たとえば左上)にBMPを転送して、
テクスチャの頂点位置を調節しろ。

601 :_:03/02/11 19:40 ID:jSG2fsEs
>>596

for(i=0;i<4;i++)
{
m_vtx[i].x-=0.5f;
m_vtx[i].y-=0.5f;
}

たぶん、描画前これを入れるとうまく行くと思う。


602 :_:03/02/11 19:42 ID:jSG2fsEs
すまん。すでに、0.5f引いてたのね…

603 :595:03/02/11 19:57 ID:WEOw/ne+
>>600
だよね、640*480なんてありえないよね。
D3DXCreateTextureFromFileでおかしな大きさのテクスチャでも作れてたから、
それをそのまんま使ってた。
512*512で試したらボケもなく表示されました。
お騒がせしました。

ああ、ボケてるのは画像じゃなくて自分の頭だ……
メシ食って歯磨いてオナニして風呂入って寝よう。

604 :あぼーん:あぼーん
あぼーん

605 :名前は開発中のものです。:03/02/11 21:53 ID:XJp4wK9H
>>595
D3DXのテクスチャ作成サポート関数で画像をロードすると、
デフォルトではサイズを2の階乗に合わせてフィルタリングを行います。
読み込みの際にフィルタリング設定でD3DX_FILTER_NONEを設定して、
頂点のuvに(imgが640*480 テクスチャが1024*512として)
u = 0.625; v = 0.9375;
と入れれば正常に描画できると思いますよ。

>メシ食って歯磨いてオナニして風呂入って寝よう。
メシ食ったら風呂場で歯磨いてオナニすればよかろう…
って人生も最適化始めたら人間おしまいよね(笑)

606 :名前は開発中のものです。:03/02/12 03:03 ID:1pSK5fDw
DirectInput8を使用しているのですが、ジョイスティックを接続して、
ジョイスティックからの入力を受け取ろうとプログラムを実行すると、
ある特定のキーが押しっぱなしになった状態で起動しまうと何件か
報告されました。

自分の環境ではないので(自分の環境では大丈夫でした)、デバッグを
することが難しいのですが、どのへんがあやしそうかを教えてください。
ちなみに、起動時に何もキーなどは押していないそうです。

607 :あぼーん:あぼーん
あぼーん

608 :名前は開発中のものです。:03/02/12 03:34 ID:0lnWkCvL
>>606
「ある特定のキー」ってのが十字キーなら、少し遊びを持たせてみるとか。

609 :名前は開発中のものです。:03/02/12 03:38 ID:eRbhd0f3
>>606
> どのへんがあやしそうかを教えてください。

方向キー押しっぱなしなら一回以上キャリブレーションを行う。
homeキーに割り当てる、という手もある。で、怪しいと思ったときにユーザが押す。
いや、これはどの解説書にも書いてあることだから
98%すでにキャリブレーションを行っていると思いますが…。

あとはユーザの環境に問題があるケース。
ジョイスティック関連は自分の環境をアプリケーションのせいにする輩が
非常に多いことで有名なので…。
「パッド付属のユーティリティで正しく設定しろ」以上の対処法は無い。

610 :名前は開発中のものです。:03/02/12 04:30 ID:ghj8DsVG
コントロールパネルで パッドの設定が正しくできてないぐらいしか
おもいつかん


611 :DirectX 9.1 to be introduced at GDC 2003 :03/02/12 07:32 ID:WFauWlhs
http://www.theinquirer.net/?article=7721


612 :DirectX9.1!!:03/02/12 11:28 ID:Mvenkz0O
DirectX9.1!!

613 :名前は開発中のものです。:03/02/12 11:38 ID:aUdjBjb9
コンパネで調整してもニュートラル位置が安定しないパッドはあったよ。
十字キーを押した状態を1.0の強さとすれば、押してなくとも 0.3くらい偏ってるような糞パッド。
入力の遊びを大きくとるしかない。


614 :名前は開発中のものです。:03/02/12 14:43 ID:zfh0sZJ7
糞というか、サウンドカードのゲームポートを使用するコントローラの
場合は細かく位置を特定することが不可能なんでしょうがないかと。
(サイドワインダーのようなデジタル接続の物は別)

615 :あぼーん:あぼーん
あぼーん

616 :名前は開発中のものです。:03/02/12 16:10 ID:HUarmbXk
>>613
いくつかプレステのパッドをつなぐコンバータを持ってるが、
海外の輸入物はほんとに駄目なものが多いよ。
ニュートラルでも動く動く。即効ゴミ行きさ。

少々高くても日本でパッケージされている程のものはまず大丈夫の模様。

617 :616:03/02/12 16:11 ID:HUarmbXk
俺のはUSB接続の物の話ね

618 :名前は開発中のものです。:03/02/12 17:32 ID:Auvbtkqn
スマートジョイパッドがダメダメなのを確認しますた(他の安物も同じだった)
ひょっとして変換機じゃなくてPSコントローラのほうがダメなんじゃないかと

619 :名前は開発中のものです。:03/02/12 17:46 ID:wldWHlKz
>>618
どうだろうね。
PSのコントローラー自体が判定シビアなんじゃない?
デュアルショックで試したけど、思いっきり倒して元に戻すと±0.1位残ることもある。
(もちろんうまくやれば0になる。)
だから俺は>>613のように遊びを作って調整してる。

620 :あぼーん:あぼーん
あぼーん

621 :616:03/02/13 00:07 ID:o+He/HHX
うちにスマートジョイパッド3が二つばかりあるけど、
十字キーはデフォルトで特に問題なし。
アナログは確かに少しずれてる。ブルブルするってことはさすがにない。
キャリブレートすると十字キーの方に影響出るから結局やってないや。
いやまあアナログは使わないから別にいいけど。

622 :名前は開発中のものです。:03/02/13 01:56 ID:vSad8oY+
スマートジョイパッド3+DUALSHOCK2(PS2のコントローラー)使ってますが、十字キー
大丈夫です。スティックはずれてますが、デッドゾーン指定すれば問題ないみたいです。

クラスを3段階に定義しており、
#include"cb.h"
class CA{
CB cb;
};

#include "cc.h"
class CB{
CC cc;
};

class CC{
};

とインクルードファイルを3つに分けているのですが、ビルドすると
error C2011 class型の再定義と出てしまうのですが、これは何なのでしょうか?

623 :名前は開発中のものです。:03/02/13 04:29 ID:blhLE+oa
>>622
なんだかよくわかんない。
どこかでinclude間違ってんじゃない?

624 :名前は開発中のものです。:03/02/13 06:58 ID:YY2ER2Mm
>>622
漏れ全く同じ使い方してる。プリプロセッサに再定義させない指定してるけど。
cc.hなら例えば

#ifndef __CC_H__
#define __CC_H__
〜ヘッダの内容〜
#endif

多分これで回避できると思う。


625 :名前は開発中のものです。:03/02/13 18:55 ID:c9ym2P+W
アドバイスどうもです。解決しました。
クラスCBのメソッドを収容してあるファイル
cb.cpp
の最初に
#include"cc.h"
と書いてしまったため、まさしく再定義されたようでした。

626 :名前は開発中のものです。:03/02/13 21:57 ID:T2BpaXoT
DirectX 8と9、両方のDirectPlayに携わった方、よろしければ質問お願いします。

DirectPlay8から9にかけて、たとえばDirect3DからDirectGraphicsに
移行したときの様な、大幅な変更はありましたでしょうか。
また、少々無理してでも9の方を学ぶべき、理由などございますでしょうか。

障害として、9のsdkを入れると、動かなくなるアプリがある事情がありまして…。
初歩的な質問で恐縮ですが、よろしくお願いします。

627 :あぼーん:あぼーん
あぼーん

628 :名前は開発中のものです。:03/02/14 00:25 ID:xilLUCvM
DirectInput8でキャリブレーションをする関数を教えてください。
キャリブレーションで調べても全然見つからない…
他のキーワードかなんかあるんですか?

629 :名前は開発中のものです。:03/02/14 00:29 ID:T9kWfjsm
VC++ & DirectInput8を使っていて、
パッドの数を取得して、
0〜複数を自動で認識したいんですが、
流れとしてはどうやるんでしょうか?

とりあえず、パッド一個を動かす事はできています。



VB+DirectX7の時は
Set EnumDevice = DInput.GetDIEnumDevices(DIDEVTYPE_JOYSTICK, DIEDFL_ALLDEVICES)
で、EnumDev.GetCountに何個パッドがあるか出てきて、

Set PadDeviceInfo(i) = EnumDev.GetItem(i + 1)
Set PadDevice(i) = DInput.CreateDevice(PadDeviceInfo(i).GetGuidInstance)
で、一個ずつ割り当てていったんですが・・・

630 :あぼーん:あぼーん
あぼーん

631 :名前は開発中のものです。:03/02/14 01:37 ID:s/e0+1Mp
>>628
そんな関数無かったと思うけど…
ジョイスティックのセンタ合わせなどはその製品のドライバ、ツールがやるべきことで
アプリケーションの仕事ではないでしょう。

それとも絶対座標軸で正確な中心を取る方法とかいう話ですか?
どうしてもというなら相対座標で受け取れば、なんとかなる場合もあるんじゃないでしょうか?

>>629
……一つ作成できてるなら、それと同じ方法を繰り返すだけでよくないですか?
列挙した時にGUIDが入った構造体が与えられるので、それに使って作成していけばよいはずです。

マニュアルのようにインターフェイスをグローバルで与えたくなければ、
列挙する時にLPVOID型の転送用の引数がありますので、
そこにインターフェイスを与えればよいと思いますよ。

632 :629:03/02/14 01:59 ID:T9kWfjsm
>>631
回答\(・∀・)/ アリガトン

使用するコールバック関数がイマイチ分かってませんでした。
取得に成功したら、DIENUM_STOPを返してて、次に行かないようになってました。
忠告されるまでLPVOID型の引数を無視してました。(笑)
これを使ってもう少しいいように作ってみます。

ためになりました。

633 :626:03/02/14 02:04 ID:e3XCNwxz
くぅ、小粋なPlayBoyはいらっしゃらないのか(´Д⊂
もう一度上げさせてください

634 :名前は開発中のものです。:03/02/14 02:39 ID:63yL1klM
>>633
わずかな機能追加とバグフィクスが変更の中心です。
大きな変更はありません。

635 :あぼーん:あぼーん
あぼーん

636 :名前は開発中のものです。:03/02/14 03:02 ID:e3XCNwxz
>>634
ありがとうございます!おかげで心おきなく8Playの猛勉強開始できます。
これで安心して眠れます…本当に感謝です。

今日はきっとあなたの日ですよ(*´Д`)ノ◆パッ

637 :名前は開発中のものです。:03/02/14 08:02 ID:+4PY8YS3
>>628
>>631の言うとおり、アプリ側でやることじゃないと思う。
もしやるなら、うんこハード、ドライバ用に十字キーの閾値の設定くらいかな。

638 :名前は開発中のものです。:03/02/14 19:24 ID:tJTzQwc9
変換行列で、頂点座標を変換するにはどうやって計算しますか?
要するに、変換後の頂点座標が取得したいのですけど・・

639 :名前は開発中のものです。:03/02/14 20:36 ID:DzHm3TpR
>>638
pD3DDevice->SetTransform(D3DTS_WORLDMATRIX(0),&Matrix);
のMatrixを保存しておいて、変換後の座標が必要なときに
座標に掛けてあげればOK。


640 :名前は開発中のものです。:03/02/14 22:27 ID:FTji8okw
DirectX7で、描画先ウィンドウを変えたいんだけど
8以降にある Presentに渡すウィンドウハンドル見たいに
途中で転送先ウィンドウを変えたいんだけど・・・
7では無理ですか?

641 :638:03/02/14 22:33 ID:fnvvsKQl
>>639
レスどうも。

頂点座標にマトリクスの各配列を
どういう形で掛ければ良いのですか?
検索でも出てこないもので・・

642 :名前は開発中のものです。:03/02/14 23:01 ID:DzHm3TpR
>>641
D3DXVec3TransformCoord関数で一発
あんまり難しく考えないようにね

643 :638:03/02/14 23:50 ID:NpYIeDIA
>>642
そいった物が・・
さっそく使ってみます〜 どうも〜

644 :あぼーん:あぼーん
あぼーん

645 :名前は開発中のものです。:03/02/15 02:42 ID:iI0jLvcO
Direct3D8を使ってるんですけど、
現在フレーム毎に、全部描き直してますが、
DirectDrawで別のSurfaceに書き残すみたいに、
描画した情報をどこか他のものに残す事はできないでしょうか?
IDirect3DDevice8::CreateImageSurface()なるものはあるようなのですが、
これも作っただけで、どう使えばいいか分かりません・・・

646 :名前は開発中のものです。:03/02/15 03:14 ID:ruB4cEsX
ジョイスティックの遊びを設定できるようにしたいのですが、
あの遊びの値というのは、一般的に使われている式があるのですか?

なんか漏れが見たゲームの設定だと、1〜1000で設定できるように
なってたんだけど、これが一般的なのですが?

647 :名前は開発中のものです。:03/02/15 03:25 ID:6ruvhBdO
>>645
8はよく知らないんだけどスワップチェインをFLIPじゃなくCOPYで
作成すればバックバッファには常にフロントと同じ内容が残るのでは?
要はWindowモード時と同じ処理。
D3DSWAPEFFECT_FLIP,D3DSWAPEFFECT_COPY<このへんがキーワードかな。

648 :あぼーん:あぼーん
あぼーん

649 :名前は開発中のものです。:03/02/15 03:52 ID:7eiV5nPW
>>645
IDirect3DDevice8::SetRenderTarget はどうかな?
ちょっとズレてるかもしれんけど。

650 :名前は開発中のものです。:03/02/15 04:20 ID:B2h4zgOk
━━━━━( ・∀・)=終)´Д`(了=(・∀・ )━━━━━

651 :名前は開発中のものです。:03/02/15 04:29 ID:6ruvhBdO
>>646
1〜1000ってのはユーザーに判り易く変換してるだけだと思う。

652 :名前は開発中のものです。:03/02/15 07:01 ID:ruB4cEsX
軸の傾きって、一番ひどいパッドでどれくらいずれてますか?

653 :名前は開発中のものです。:03/02/15 07:03 ID:IQxlefuQ
>>645
それはスナップショット的な物が欲しいということ?
それだったらGetBackBuffer()でサーフェイスを取得しておいて、
レンダリングが終了してたときにCopyRectsで用意しておいたサーフェイスに
転送すれば、描画されたイメージを取得できるよ。


>>646
それはアプリケーションが決めればいい事ですよ。好きにやったらいい。
遊びって大体10%〜30%くらいじゃないのかな?

654 :名前は開発中のものです。:03/02/15 09:35 ID:2CJAwmu6
>>643
おいおい、数学的処理や意味を知らずに使うのはマズイだろ。
簡単に
struct VECTOR
{
float x, y, z;//同時座標じゃなくても出来る
};

struct MATRIX
{
float _11, _12, _13, _14;
float _21, _22, _23, _24;
float _31, _32, _33, _32;
float _41, _42, _43, _44;
};

で、ベクトルと行列の掛け算はで得られる結果X1, Y1, Z1は
X1 = x*_11 + y*_21 + z*_31 + _41;
Y1 = x*_12 + y*_22 + z*_32 + _42;
Z1 = x*_13 + y*_23 + z*_33 + _43;
//左手系、ベクトル×行列の順で、同時座標でいうwは常に1を補うとする。

簡単だろ、各回転行列やなんかは分るだろ?
で、_41, _42, _43が平行移動成分ってのも。

655 :654:03/02/15 09:40 ID:2CJAwmu6
タイプミス
>同時座標
同次座標

656 :638 :03/02/15 11:12 ID:7dXkqCa/
>>654
どうも、為になります。

確かに意味も分からずに作って行くと、
後で行き詰まるのは、目に見えてますが・・
どうしても、試したかった事がありまして。
D3DXなんかが有るので、3Dの知識が貧しくてもどうにかなっていたものでして。
一段落したら、3Dの勉強をじっくりしたいですねぇ。

657 :名前は開発中のものです。:03/02/15 13:50 ID:a0UzeSQB
               ∧ ∧
              ( ̄ー ̄)
              (つ  つ
               ( ヽノ
               し(_)

         Now Thread Stoping. ...
         大変見苦しいスレでありました.
           スレストするまでお待ちください。。。ニヤリッ

658 :名前は開発中のものです。:03/02/15 22:35 ID:v4BGs1G4
単純にD3DXVECTOR4で宣言した変数と
行列を
vec4=vec4*matrix;
って感じで頭の3つを取り出せば座標が出ますよね。


659 :名前は開発中のものです。:03/02/16 01:52 ID:3xyVlE7Z
ウィンドウ内でゲームが動いている時、セーブとかオプションを変更する為に
右クリックしてポップアップメニューを出したいのですが、どのようにして出せばいいですか?
環境はVisualC++6.0、DirectXSDK8.1です。

660 :名前は開発中のものです。:03/02/16 02:01 ID:82lNxtkf
 _、,_
(  _!_  )

661 :名前は開発中のものです。:03/02/16 02:48 ID:uicgqHLM
なあ?
バンプマップはわかるんだが、ディスプレースメントマップってなんのためにあるの?
モデリングでつくっときゃいいじゃん

662 :名前は開発中のものです。:03/02/16 03:14 ID:By3z7WHs
ttp://masafumi-t.cool.ne.jp/directx9/ready/ready02.htm

[スマートポインタ]
は、自動開放をしてくれるとの事で、早速使ってみたいのですが、
こちらのサイトからの情報だけではいまいち理解できまへんでした。

どこかにシンプルで簡単なサンプルコードはありませんか?
とりあえずIDirect3D9をスマーティ〜に作ってみたいのですが。
4〜5行で済むことなら直接書いていただくのもアリかな:-)






663 :名前は開発中のものです。:03/02/16 03:33 ID:qivgoxYo
>>662
そこだけじゃなくて他のサイトも見て理解してください。

664 :名前は開発中のものです。:03/02/16 03:34 ID:I55/V1zD
>>659
「猫でもわかるプログラミング」ってサイトにいろいろ詳しく
掲載されてるっぽ。検索してみれ。

665 :名前は開発中のものです。:03/02/16 04:00 ID:ZVOz3UrZ
DirectXは、バージョンをあげても動くというのが建前ですよね。

しかし、実際には動かないゲームやアプリがあります。
うちのWinFastという古いアプリもそうですし、FFもそんな噂を聞きます。

これの原因は何なのでしょうか?
単にコードの冒頭でバージョンを定義してないせいとか…、
いやそんな単純じゃないですよねぇ…。よろしければご教授を。

666 :名前は開発中のものです。:03/02/16 04:07 ID:I55/V1zD
ドライバやOSも関係してくるから一概に言えない

667 :名前は開発中のものです。:03/02/16 04:08 ID:ZVOz3UrZ
>>666
ありがとうございます。ではコーディングする側としては
どうしようも無いんですね。ある意味ほっとしました。

668 :あぼーん:あぼーん
あぼーん

669 :名前は開発中のものです。:03/02/16 05:24 ID:qivgoxYo
他にもOSの種類を9x系に限定したりとかが原因で動かなかったり。

670 :名前は開発中のものです。:03/02/16 09:05 ID:8zpaisS3
>>661
例えば、バンプマップで表現した面を、ライティングで壁に影として映し出そうとした場合。
バンプだと描画のみなのでポリゴンの形の影になるが、
ディスプレースメントならポリゴンも変形してるので、その描画されている形の影が落ちる。

そんな感じか。

671 :名前は開発中のものです。:03/02/16 10:06 ID:LdkrBz+N
DirectSound は同時に演奏できる数に制限はないんですよね。
WDMドライバの場合の WaveOut も同時演奏数に制限はないから、
結局 同時演奏数に制限が加わるのは vxdドライバで WaveOut を使ったときだけなんですね。


672 :名前は開発中のものです。:03/02/16 11:19 ID:PYI2iM28
>>661
よくわからんけど、LODが実装しやすいんじゃなかろーか。

673 :名前は開発中のものです。:03/02/16 11:29 ID:8GBF26gb
>>671
制限はある。CAPSをチェックしろ。

674 :名前は開発中のものです。:03/02/16 11:52 ID:kG6Gu6Lz
>>661
何のために使うか分からなければ使わないでいいと思うよ。
使う時が来たら使えばいい。
だいたいDX9が一般に広がるのっていつの頃だよ……。来年?

675 :名前は開発中のものです。:03/02/16 12:39 ID:U1Dr21mj
DirectX9が広まる心配などする必要ない。
問題は、DirectX9対応(というか使いたい機能を持った)ハードウェアがいつ広まるかだ。
前者はこちら側の対処でどうにでもなる。
後者は難しい。

676 :名前は開発中のものです。:03/02/16 13:52 ID:kG6Gu6Lz
>>675
いや、そういう意味で言ったんだけどね。
だって俺もまだDX8世代のカードで我慢してるし。ゲームやる友達のパソコンも
酷い奴はまだDX7世代だもん。

1,2年前のメーカー品使ってる連中が買い替え始める時期がいつか……。

変な話、シェーダー3.0に完全対応したカードが出てくれないと
俺はビデオボード変えないかも(笑)

677 :名前は開発中のものです。:03/02/16 14:45 ID:8GBF26gb
ん?ゲームする人の論理?

678 :あぼーん:あぼーん
あぼーん

679 :名前は開発中のものです。:03/02/16 15:10 ID:lNvw3jDD
670-677レスありがとうございます。
なんか微妙な用途ですね。
地面につかうとでっぱったポリゴンがキャラにめり込むし。
うーん、誰か効果的な使い方を発見してくれるのをまつことにします。

680 :名前は開発中のものです。:03/02/16 15:38 ID:kG6Gu6Lz
>>677
いや、DX9で定義された仕様を全部サポートしてくれた製品じゃないと嫌だなぁって話。

>>679
ディスプレースメントマップをハードでサポートなんて最高じゃんか。
使いまくれ!
ほら、6面体で焼けて膨らむ餅が表現できるぞ(笑)

それより俺はボリュームを何とかして欲しいなぁ……

681 :名前は開発中のものです。:03/02/16 16:54 ID:tDr+jqjf
プログラム内でスクリーンショット機能を付けたいのですが、
どういう手順でやればいいですか?
環境はVB6.0+DIRECTXでお願いします。

682 :名前は開発中のものです。:03/02/16 17:22 ID:3FlUVw2p
VBは知らないのでC++の例。ウィンドウ枠が可変でプライマリバッファからコピーの場合
  LPDIRECT3DSURFACE8 tmp;
  D3DLOCKED_RECT lock;
  d3ddevice->CreateImageSurface(::GetSystemMetrics(SM_CXSCREEN), ::GetSystemMetrics(SM_CYSCREEN), D3DFMT_A8R8G8B8, &tmp);
  d3ddevice->GetFrontBuffer(tmp);
  tmp->LockRect(&lock, NULL, 0);
  RECT rc;
  GetClientRect(hwnd, &rc);
  int w = rc.right - rc.left;
  int h = rc.bottom - rc.top;
  ClientToScreen(hwnd, (POINT*)&rc);
  BYTE *buf = new BYTE[sizeof(DWORD) * w * h];
  for (int i = 0; i < h; i++){
    CopyMemory( buf + sizeof(DWORD) * w * i,
      (BYTE*)lock.pBits + lock.Pitch * (rc.top + i) + rc.left * sizeof(DWORD),
       sizeof(DWORD) * w);
  }
  delete[] buf;
  tmp->UnlockRect();


683 :名前は開発中のものです。:03/02/16 18:34 ID:A+y5e3fj
>>681
>>645から読み直せ

684 :あぼーん:あぼーん
あぼーん

685 :名前は開発中のものです。:03/02/17 00:13 ID:9vsIryvv
>>673
DirectSoundではサウンドの同時処理は処理速度が許すかぎりいくらでもできる。
CAPSはハードウェアで処理できる限界であってソフトウェアの限界ではない。

686 :名前は開発中のものです。:03/02/17 04:19 ID:WS9BVvAx
3Dを背景とした2Dゲームって、二つの頂点の定義を作っておいて、
毎フレームごとに切り替えるんですか?

つまり、1フレームごとに、座標変換ありの頂点と座標変換なしの頂点を
交互に描画するんですか?

687 :名前は開発中のものです。:03/02/17 04:43 ID:mWd91DKT
>>686
うん

688 :名前は開発中のものです。:03/02/17 05:09 ID:hdzUUYWw
>>686,687
なんだそりゃ?

689 :名前は開発中のものです。:03/02/17 05:25 ID:aOw8ezq9
少々わかりにくいが間違いはなさそうだが

690 :名前は開発中のものです。:03/02/17 07:19 ID:hdzUUYWw
ああ、背景は座標変換あり、2Dオブジェクト郡は座標変換ありってだけのことか。
だがな、用語が変だぞ。

691 :名前は開発中のものです。:03/02/17 07:55 ID:vF3bZenv
あり?

692 :名前は開発中のものです。:03/02/17 08:04 ID:hdzUUYWw
2Dは「なし」だな。すまん。もうこない

693 :名前は開発中のものです。:03/02/17 08:23 ID:jFMHe3lL
逃げちゃ駄目だ!

694 :名前は開発中のものです。:03/02/17 08:58 ID:dBcKYU7J
http://www.agemasukudasai.com/bloom/

695 :名前は開発中のものです。:03/02/17 09:34 ID:tG/PvClA
普通、同じフレーム内に座標変換あり、なし両方書き込むぞ。
なんだ、交互にって?テレビのインターレースかいな。

で、その頂点座標変換あり、なし混在の場合、
頂点変換なし(2D)描画が常に画面の手前になってしまう。

背景(3D)のobjectと何かしら処理が絡むなら(objectをくぐるとか)
自キャラ(2D)もビルボード使って
板ポリで、頂点変換ありでやった方が良いんでない?

696 :名前は開発中のものです。:03/02/17 10:48 ID:E/qUSJ/7
座標変換無しでもポリゴンは描画できるよ。

697 :あぼーん:あぼーん
あぼーん

698 :名前は開発中のものです。:03/02/17 16:57 ID:k1lu5QbB
なんか半年ぶりくらいにこの板キタ。

3Dを背景とした2Dゲーって言われてもピンと来ないのよね…
地形が3Dで2Dのビルボードを使ったゲームなのか、
背景は3Dだが見た目は完全に2Dなのか。
前者ならビルボードだけど後者だとスプライト。

699 :名前は開発中のものです。:03/02/17 17:43 ID:mWd91DKT
ややこしくするなよ。ビルボードならこんな質問するわけないだろ。

700 :名前は開発中のものです。:03/02/17 18:07 ID:lk5pRAb1
3D背景の2Dゲーなら、ゲーセンにカプコンの格ゲーがいくらでもあるじゃん。

701 :名前は開発中のものです。:03/02/17 18:26 ID:KxwQBCAS
>3Dを背景とした2Dゲー
>>700のほかにも、
サターンの初期にクロックワークナイトってゲームがあったけど、
あれが確かそういうタイプのゲームだったような。

702 :名前は開発中のものです。:03/02/17 20:26 ID:k7503aDO
横やりで申し訳ないですが、パワーゲージとか
残り時間の表示とかは座標変換無しでそのままやりますよね。

まあ、Zバッファ切ってから最後に描画するんでしょうけど。

703 :名前は開発中のものです。:03/02/17 22:59 ID:68dkEVgw
Zバッファ斬る?
なんで?いいじゃん描いちゃえよ。

704 :名前は開発中のものです。:03/02/17 23:04 ID:HE1lwuh3
>>703
Zバッファ切らないで描画したら上書きされないの?
>>702
座標変換なしで描画したら解像度変わった場合大きさが変わらない?

705 :名前は開発中のものです。:03/02/17 23:21 ID:hdzUUYWw
このスレの人間が高解像度対応なんて
ちょっとでも気の利いたことするわけないじゃん。

640x480x16bpp 60fps固定 FSAAなし
以外選べないゲーム作ってる奴らだからな。


706 :名前は開発中のものです。:03/02/18 00:17 ID:9ivC/Ath
>>704
解像度変わったらそれに合わせた座標にすりゃいいじゃん。
っていうか、ほとんどのゲームで2Dアートワークってサイズ固定で、
高解像度にすると小さくならない?

707 :名前は開発中のものです。:03/02/18 00:20 ID:2XDOY6wz
てか、何いってるのかわからないけど。
解像度は3:4をまもっとけば後からでも変更はいくらでも効くでしょ。
Zバッファはそもそも座標変換ありのものもなしのものも違いないでしょ。
ちなみに2D座標の場合のZの値は1.0が最前面だった気がする。
まあ、前面に描くものはα物だらけだと思うが。

708 :704:03/02/18 00:22 ID:qi2fP5U0
>>706
>ほとんどのゲームで2Dアートワークってサイズ固定で、
>高解像度にすると小さくならない?
それはカコワルイと思うけどなぁ

709 :名前は開発中のものです。:03/02/18 00:24 ID:G8QFcNbI
3Dアニメーションのモーションつくるのどうしてる?

710 :名前は開発中のものです。:03/02/18 00:58 ID:7nhEB5ou
>>707
その違いが無い、座標変換ありと無しの
無しの方Zの値をどうやって決める?

ワールド上を自由に動くオブジェクトやカメラの場合、ワールド変換、カメラ変換、ビュー変換
して座標変換ありの頂点は、Z値を持つ訳だ。

そのZバッファに、変換無しの頂点のZ値を、どう対応させる?
まさか、前面描画なんて言うなよ。

それと、α物とZバッファの関係が分ってないようだね。
もしα物が画面奥にあって、その周りを何か物体が回っているなんて場合
君のやり方じゃ、実装不可能だろ。

711 :名前は開発中のものです。:03/02/18 00:59 ID:r2vh2WJc
trueSpaceの60000円ぐらいするやつ。

712 :あぼーん:あぼーん
あぼーん

713 :名前は開発中のものです。:03/02/18 01:10 ID:HS6mmhB0
>>709
LightWave使っとります。

714 :名前は開発中のものです。:03/02/18 01:14 ID:KGJUoVgY
>>713
そういうのって10マンぐらいするよね。
やっぱ買うわけ?

715 :名前は開発中のものです。:03/02/18 01:19 ID:SbwOx8MJ
ポケットを叩くとビスケットは2つの原理です。

716 :名前は開発中のものです。:03/02/18 01:19 ID:HS6mmhB0
>>714
当たり前でしょ。あと値段、30万近くするって。

717 :名前は開発中のものです。:03/02/18 01:30 ID:KGJUoVgY
高杉・・・。
>>715
タイホー。

718 :名前は開発中のものです。:03/02/18 02:36 ID:Ahzziud7
ドングルもなんとかできるもんなの?

719 :あぼーん:あぼーん
あぼーん

720 :名前は開発中のものです。:03/02/18 02:45 ID:THIYqgow
モーションをしっかり勉強したいんだけど
それを専門に扱った本がみつからないんですよね。
何かありますか?

721 :名前は開発中のものです。:03/02/18 02:57 ID:HS6mmhB0
>>720
http://pc.2ch.net/cg/
こっちで聞いたほうがいいと思うが。

722 :名前は開発中のものです。:03/02/18 04:28 ID:THIYqgow
アドバイスありがとうございます。
ところでみなさん、浮動小数点の絶対値を求めるときどんな関数を使ってますか?
fabsだとdouble型対象となってるので他に何かいいのあったら使いたいのですが。

723 :名前は開発中のものです。:03/02/18 04:56 ID:HS6mmhB0
>>722
0より小さければ−1をかける、でいいのでは


724 :名前は開発中のものです。:03/02/18 08:02 ID:QS9PEt6s
>>722
fabsf・・・結局はdoubleだけどさ・・・。

725 :名前は開発中のものです。:03/02/18 09:19 ID:5aGkziqd
VC++6.0でスクリプトエンジンもどきを作成しているのですが
strcmpで"}"を文字列比較をする時に、lpStringに"てすと"等の違う文字列が
入っていても1(true)が帰ってきてしまいます。

例:
int tmp;
tmp=strcmp(lpString,"}");

しかし、上記で1がtrueと言っていますがMSDNを見ると0が帰ってくるとtrueらしいのです(;´Д`)
0なんて帰ってきた事なんてありませんし…。
どなたかアドバイスお願いします

726 :名前は開発中のものです。:03/02/18 09:39 ID:QS9PEt6s
r=strcmp(a,b);

 ↓

if (a<b) r=負の数;
if (a==b) r=0;
if (a>b) r=正の数;

727 :名前は開発中のものです。:03/02/18 09:53 ID:7nhEB5ou
>>725
なんだかな。ココはDirectXスレな訳で。
Cの構文なら、プログラム板にでも…。

アスキーコード知ってるかい。
文字は全て、数字が対応してるのよ。
strcmpは内部で減算してるだけ。
つまり同じ文字列なら、減算の結果が0で、戻り値が0な訳だ。
だから、戻り値が0なら同時な文字列であろうって感じなだけで
それがtrueな分け無い。

728 :名前は開発中のものです。:03/02/18 10:32 ID:5aGkziqd
アドバイスありがとうございました。
ということは、これでいいわけですね(・∀・)

if(lpString[0]=='>'){
}


729 :名前は開発中のものです。:03/02/18 10:33 ID:9TfHrH9k
数行のプログラムで実験すらできないのか?

730 :名前は開発中のものです。:03/02/18 12:21 ID:3N95F/Cv
次は'\'と比較して全角二バイト目とぶつかる罠、だな
つかDirectXと全然関係ないやん

731 :名前は開発中のものです。:03/02/18 13:58 ID:VIlmLJi8
>>707
>解像度は3:4をまもっとけば
3:4以外にも対応するべし。1280*1024は5:4なんだなこれが。
2D表示部分はタスクバーのように画面の端にくっつくようにプログラムを組むべし。

>>708
今までサイズ固定じゃないゲームを見たこと無いんだが。
まあquake2を高解像度でプレイしたときの文字の小ささはアレだと思ったが。

732 :名前は開発中のものです。:03/02/18 14:11 ID:HePtHIHl
>>解像度は3:4をまもっとけば
>3:4以外にも対応するべし。1280*1024は5:4なんだなこれが。

ついでに最近のメーカー製PCはワイド画面が増殖中ッスよ。
こんな感じで↓
http://pcweb.mycom.co.jp/pcbuyers/review/2002/combine/
いちおう考慮しておいたほうがよいやも。

733 :名前は開発中のものです。:03/02/18 14:25 ID:BxcSfeKF
テクスチャ画像のサイズってどうしてますか?
私が以前 DirectDraw でプログラムしていた時は
640x480(画面サイズ)の画像にチップを詰めてたのですが
Direct3D の場合は普通はどういう感じなんでしょうか。

同じように比較的大き目の画像にチップを詰めるのか、
各チップ(パターン)毎に1ファイルずつとか。
サイズはよく256x256というのを聞きますが
となるとやはりパターン毎に(最大256x256の)ファイルにするんでしょうか。
普通はこのぐらいのサイズまでなら大丈夫なんじゃない? という基準とか
あったら教えてください。


734 :名前は開発中のものです。:03/02/18 14:38 ID:TzLAjW+F
2^nのサイズが良いと言われますね。
256 x 256 (2^8 x 2^8) 推奨というのはそのへんから来ているのではないかと。

735 :あぼーん:あぼーん
あぼーん

736 :名前は開発中のものです。:03/02/18 15:18 ID:heSsomrk
普通にテクスチャデータを作ろうとすると、
DirectXの場合は1X1までミップマップをつくってくれちゃうんでしたよね。

737 :名前は開発中のものです。:03/02/18 15:53 ID:3N95F/Cv
>>733
最大256x256が無難といえば無難。
あと、ファイルをそのままテクスチャにしなければならない、
という決まりはないと思う。

>>736
ミップマップを作成しないこともできるけど?

738 :名前は開発中のものです。:03/02/18 16:48 ID:f7hIAHrT
>>733
自分は、テクスチャーを作る時に
ハードウェアの制限調べて(最大サイズとか、2の累乗のみとか、正方形のみとか)、
それにしたがって、内部で分割したり、正方形に修正したりしてるよ。
今のカードだと、制限もだいぶ無くなってきたけど、
Voodooとかだと、最大256*256 & 正方形のみ & 2の累乗のみ
とかの制限に全部引っかかったりするので。

739 :733:03/02/18 18:29 ID:BxcSfeKF
>>734
そうですね。
4:3に慣れてしまったので違和感がありますが、、

>>737
256x256だと Voodoo も含めOKと。

>>738
それって難しくないですか?
絵を貼り付けた板を移動するときとか
今は一枚なのか二枚なのか意識しなくちゃならないし
自分がヘタレなだけかもしれませんけど。

最近の市販ゲームだと Voodoo には対応してません
と明記してあるやつが多いですけどそういうやつは
どのぐらいのサイズで作ってるのかなと。
と思ったら >>4 のサイトで調べられますね、、、
Rage Mobilityやi810ですら 1024x1024 いけるんですね。
不勉強でスミマセンでした。

740 :738:03/02/18 18:58 ID:PMYVEmVG
>>739
難しくないよ。
スプライトクラスとかを作っておいて、
そのスプライトクラスのメソッド
例えば、CSprite::Load()とかで、テクスチャーを作成する時
ハードの制限等を調べて、分割なり、修正なりすればよい。
描画する時は、描画メソッド
例えば、CSprite::Draw()とかで、テクスチャーの修正情報に従って、修正描画すればよい。
1回スプライトクラスを作っとけば、使う時は何も考えずに使えるよ。
自分は大体こんな感じでやってるけど、みんなは違うのかな?

741 :名前は開発中のものです。:03/02/18 19:19 ID:BxcSfeKF
>>740
なるほど。
Spriteクラスは1枚以上の板から成っている、と。

私がこの間3D始めてやっとこさ作ったSpriteクラス(Billbordクラス?)は
1インスタンス = 1枚という感じだったので、、
勉強になります。


742 :あぼーん:あぼーん
あぼーん

743 :名前は開発中のものです。:03/02/18 20:29 ID:OmAR/C8b
>>740
俺もラッパークラス作って使いまわしてるよ。

744 :名前は開発中のものです。:03/02/18 21:17 ID:VM4ycalO
DirectAudio(DirectX8)って、どうやって始めればいいんですか?
ヘルプを見て、いきなり
>1. COM の初期化
>DirectMusic オブジェクトを作成するためのヘルパー関数はないので、
>CoInitializeEx を呼び出して COM を初期化する必要がある。

この関数(CoInitializeEx())の使い方、意味、次への繋げ方がもう分からんのですが。
      [定義されてない識別子です。]
ヘルプ通り、objbase.h ってのIncludeしたのに!!!ヽ(`Д´)ノ

745 :名前は開発中のものです。:03/02/18 21:34 ID:3N95F/Cv
なぜサンプルから当たらない?

746 :名前は開発中のものです。:03/02/18 21:36 ID:oY4uuy6q
>>744
COMのこと知らないみたいだからCOMの勉強すれば。
あとはサンプルやウィザードが吐くコードを見るとか。

747 :名前は開発中のものです。:03/02/18 23:57 ID:SbwOx8MJ
Voodooはドライバ更新ないんじゃないの?
そもそもDirectX8で動くんか?


748 :名前は開発中のものです。:03/02/19 04:01 ID:3HHIicMN
http://www.microsoft.com/japan/msdn/directx/techart/directx9devfaq.asp

749 :名前は開発中のものです。:03/02/19 04:34 ID:K2W4Cmx9
ケースバイケースだとは思うのですが、皆さんはモーションデータを
どのクラスに保持させていますでしょうか?

とりあえずDirectX8のサンプルにあるフレームやメッシュと同じ感覚で、
モーションデータをパーツ毎に持たせてみました。
しかし、これでは動作がボトムアップといいますか…一元的に管理できない感じで…。

かといって、モーションクラスを作り、トップダウンに個々の
パーツを管理するのも、主体が2重になりそうで…。

言ってることが曖昧ですいません。要するにモーションデータの管理について
悩んでいまして…なにか示唆をいただければ幸いです。

750 :あぼーん:あぼーん
あぼーん

751 :名前は開発中のものです。:03/02/19 06:34 ID:b63auc8G
あーやだやだ設計厨は。

752 :名前は開発中のものです。:03/02/19 06:49 ID:athMsZgq
>>749
上位では階層化メッシュクラスのサブクラスで
アニメーションメッシュクラスを作って管理してます。

内部では各フレームごとにモーション情報を持たせてます。
自分的にはシーングラフには内部の詳細は不要なので、
混乱せずに扱えて便利だと思ってるです。


753 :749:03/02/19 10:38 ID:K2W4Cmx9
>>752
レスが遅れて申し訳ありません。ついウトウトと…。

おお!フレーム毎に持たせてらっしゃるのですね。
私も内部の詳細は一切触らず(触れず)に、ただ状況に合わせて
アニメーションさせるだけなんです。やっぱり分かりやすいのが一番ですよねぇ…。

ただ初めての3Dということもあって、もしかしたらこういうのは
トップダウンの方が把握しやすのかなぁと、不安になりまして…。
おかげで安心しました。レスありがとうございました。

754 :名前は開発中のものです。:03/02/20 01:00 ID:aBMYS0Zf
 みなさん、8.1でシェーダってどうやって管理していますかねぇ?
ブレンド数やライトやらスペキュラを自由にOn/Offしようとすると
かなり破綻しそうなんですけど…。
 9.0のフラグメントナントカって使えるかなー?

755 :名前は開発中のものです。:03/02/20 01:16 ID:CqEeT/jM
>>754
マテリアルとかうまく管理しているならそれとよく似た方法で管理すれば問題ないはず。
# というか、シェーダーだけそんなに特別か?

756 :あぼーん:あぼーん
あぼーん

757 :名前は開発中のものです。:03/02/20 05:22 ID:kkYbtpSU
みなさんはDirectXが返したエラーをなにで処理していますか?
例外を返していますか?

758 :名前は開発中のものです。:03/02/20 07:46 ID:9HTvRHMZ
なにで、って、普通にif文で処理してるよ?(C++ね)
そもそもDirectXで例外ってあんまりみたことない。
(経験不足名だけかもしれないけれど)
DirectXのエラーを例外で処理するメリットが見当たらない。

759 :名前は開発中のものです。:03/02/20 09:27 ID:E8JYbNB2
例外を使ったほうが圧倒的に実装がすっきりする。
C++つかってるのに例外を使わないなんて考えられない。

760 :名前は開発中のものです。:03/02/20 10:16 ID:qrgwODJk
DirectXだろうが何だろうが、実行時エラーは基本的に例外。
予測可能かつ対処可能な失敗コードなら復帰を試みるけど。

DirectXが戻り値でエラーを通知するのはかなり限られた
ケースなんで、ほとんどの場合は例外になると思う。


761 :名前は開発中のものです。:03/02/20 11:26 ID:weLWt0f5
アセンブラコード見ると例外ってかなり重い気が。

762 :名前は開発中のものです。:03/02/20 11:35 ID:E8JYbNB2
>>761
関数一つ一つをtry catchで包むわけじゃないのでトータルすればif elseより速くなる(場合もある)。


763 :名前は開発中のものです。:03/02/20 11:37 ID:deJb/6Zd
|・ω・`)
メインループをtryで包んで、対処不能なエラーとか出たら
例外投げて終了するようにしてるんですがダメでしょうか…。

764 :名前は開発中のものです。:03/02/20 11:55 ID:weLWt0f5
>>762
まあそりゃそうだがね。
1つずつ包む(w)なんて使いかたしなきゃコードも見やすくなるし利点は大きいわな。

765 :名前は開発中のものです。:03/02/20 13:59 ID:tbIY2ozE
俺は例外アレルギーだから使わないなぁ
なんかどこでエラー起こったか良く分からないこと多いし

自作のエラー処理ならどのファイルの何行目で起こったか一目瞭然だし。。。


766 :名前は開発中のものです。:03/02/20 14:09 ID:v3dcluNU
講義よく聞いていなかったから詳しく覚えていないけど(汗)
JAVAの例外処理は遅くならない形で実装されている…らしい。
そもそも単にエラーを検出するための手段が本筋のプログラムの動作に影響していたら本末転倒だしね。
もしその発想がC++の設計思想にもあるのなら、エラー検出以外にも使わないのは損じゃない?

767 :名前は開発中のものです。:03/02/20 15:03 ID:RfvJUoXO
>>765
むしろ例外使わないほうが破局に至ると思うが。
どこで起こったかわからないって、そら適切にキャッチしてないからやろ。

768 :765:03/02/20 16:40 ID:tbIY2ozE
そうかなぁ・・・
STLとか使ってるとたまに例外出るけど
どこでそれが起こったのかさっぱり分からん(英語で何やら書かれているけど・・・


769 :名前は開発中のものです。:03/02/20 19:45 ID:sNEDXPjV
>>766
もともと遅いからあんまり気にならないだけ。

770 :名前は開発中のものです。:03/02/20 21:44 ID:iMrHJGZq
うろ覚えの知識をひけらかして叩かれてみるテスト

Javaとか.NETのようなGC環境では、throw後スタックを
リワインドする時に破棄すべきオブジェクトを識別しなくて
いいからちょっとだけ速いと。

C++とかは、tryの時点で、throwされた後に破棄する
オブジェクトを区別する仕掛けをセットアップするので
ちょとだけ重いと。

C++なら、DirectX呼出し毎にtryやthrowしてては大変なので
せめてtryは大局的に使おう。と。

キーボードにマヨネーズが飛んだからこの辺で。と

771 :名前は開発中のものです。:03/02/20 22:53 ID:zbgoXdj/
はじめまして。
みなさん、C++なんですか?

772 :名前は開発中のものです。:03/02/20 23:04 ID:Xe8g5iFj
いえ、オレは大内ですけど。

773 :名前は開発中のものです。:03/02/20 23:50 ID:zbgoXdj/
むしろ、大馬鹿さんかと。

774 :名前は開発中のものです。:03/02/21 01:32 ID:gtRtCCD/
DirectX8を使っているのですが、
7以前の、DltFastみたいに、画像の(10,10)から(100,120)を表示するにはどのような関数を使えばよいのでしょうか?

775 :名前は開発中のものです。:03/02/21 01:42 ID:gnTzXupS
Bltじゃないの?
Bltなら、CopyRectsが相当するのでしょうか?
Helpで検索して見てよ。
でも、クリッピング、カラーキー、拡大縮小、αブレンドは対応してないと思ったけど。
8だと、Spriteが推奨されてるよ。

つうか、DirectX9に切り替えれば?
Blt復活してますよ。

776 :あぼーん:あぼーん
あぼーん

777 :名前は開発中のものです。:03/02/21 02:00 ID:gtRtCCD/
まじで?
Blt復活?
今手元には、I/O別冊DirectX8.03Dアクションゲーム・プログラムだけあるんだけど、概要だけの本なのでちとつらい。
自分で調べようと思って、ヘルプを今見ていたんだが、どうせヘルプで1からやるなら9がいいかなと思っていた。
9に以降しまつ。
おすすめHPなど教えてください。

778 :名前は開発中のものです。:03/02/21 02:35 ID:gnTzXupS
>>777
USAのマイクロソフトのDLから
SDKと日本語HELPが落せた筈。
HELP最強。
日本語HELP最高に手っ取り早い。

…日本をサポートしてるのか、馬鹿にしてるのか分らん。
お得意さま言語HELPって意味なのか、
お前等、英語も読めないんだろ?なのか…

後、WEBサイトも、そこからリンクしてるデベロッパー系は
良い感じだよ。勿論、英語サイトだけど。


779 :あぼーん:あぼーん
あぼーん

780 :名前は開発中のものです。:03/02/21 08:15 ID:ELxn+ZjC
>>778
なぜかDirectXだけは日本語ヘルプもすぐ出るんだよねー。
他は間違えが何年も修正されずに放置されていたり、
英語版のみとかも多いのに

781 :名前は開発中のものです。:03/02/21 11:35 ID:gKZl/37S
仮にもゲーム大国日本の開発者をないがしろにするわけにはいくまい。
将来的にはないがしろにされるかもだけど。

782 :名前は開発中のものです。:03/02/21 13:06 ID:dNbvFHWg
意味不明な英語で質問攻めされたくないから。

783 :あぼーん:あぼーん
あぼーん

784 :名前は開発中のものです。:03/02/21 13:54 ID:XXQkdBhC
日本のゲームわぁぁぁーーー世界一ぃぃぃーーーー

785 :名前は開発中のものです。:03/02/21 14:27 ID:6qw0d6w5
D3Dの質問なんですが、
インデックス付頂点の扱いに困っております。
テクスチャ座標まで共有してしまうので、テクスチャが猛烈に貼りにくいの
ですが、どうすればいいんでしょうか?
きめ細かくテクスチャを貼るには、インデックスを使わない方がいいのでしょうか?

あと、 ペイピッポォ てなんですか?

786 :あぼーん:あぼーん
あぼーん

787 :名前は開発中のものです。:03/02/21 18:26 ID:kpJPL22d
手前のドアの陰になるのでその後ろのポリゴンは描画する必要がない〜みたいな判断は
自分でやるよりもビデオカードに任せたほうが速いとおもうんだが。

788 :名前は開発中のものです。:03/02/21 18:30 ID:tmDKHZRL
>>787
ドアが10000個ある地平線までまっすぐな廊下があったとして、それを常に
全て描画するのか?

789 :あぼーん:あぼーん
あぼーん

790 :名前は開発中のものです。:03/02/21 20:32 ID:VSou5xSw
>>787
半分半分でやるのが一番いいんだよ

791 :名前は開発中のものです。:03/02/21 20:35 ID:QwtlXNtB
>>785
その質問はDirect3DでもOpenGLでもFAQかもしれん。
結論からいうと、頂点を重複させ、テクスチャ座標と一対一にするしかない。

しかしそうすると形状アニメーションが面倒になる
(重複させたことを覚えておく必要がある)

形状アニメーションするのなら、indexをあきらめる。
形状アニメーションしないのなら、重複させる。

ところで、形状アニメしない(=静的な形状)のなら、
ビデオメモリ上に頂点データを置けるから、indexにしてもしなくても
パフォーマンス的にあんまり変わらんと思うがどうか。
超ハイポリかつtriangle stripがウマくできてる、なら解らんでもないけど。

792 :名前は開発中のものです。:03/02/21 20:39 ID:QwtlXNtB
>>787
軽くエリアに分けて、見えない、あるいは遠くのエリアの描画を省く、
ぐらいはやったほうがいいと思うズラ。
エリア内の描画については、荒い単位(ポリゴンでなくオブジェクトとか)
でソートして、手前から描いてあげるのがZバッファ方式上、有利。

793 :名前は開発中のものです。:03/02/21 22:51 ID:I6GtB43N
手前から描くのはヘルプにも書いてるぐらいの定石だな。


ポリゴンを描かないのが最速だとも書いてあるが。


794 :名前は開発中のものです。:03/02/22 01:57 ID:CQoZjhp0
>>787
可視判定とZバッファを混同してないか?
間単に説明すると、Zバッファ処理をしてる時点でアウチ。
つまり、描画を減らすというのは、
Zバッファ処理するまでも無く、描画しないって判定する事。

2Dで例えると、640×480でやってるときにx,y (1000, 1000)のピクセルを
描画しても無駄だろ?
それと同じ。つまり、一番簡単なカメラ視錐台カリング(ニア、ファーを含む)をして
更に、壁や他オブジェクトに隠れて丸々見えなから描画しないって処理をして
画面に見えるだろ物だけ、描画する。
この判定を、ハード実装してるグラボなんて無いと思ったが…

795 :名前は開発中のものです。:03/02/22 02:30 ID:UI8UEUuI
>>787
実際にやってみな。
手前にドア(板ポリ)つくって、その後ろに100000個くらいの立方体置いたりとか。

796 :名前は開発中のものです。:03/02/22 08:26 ID:j5AJmFEF
WM_PAINTで再描画が必要な範囲を得るには
BeginPaint()
EndPaint()
をいちいち呼び出さないと駄目なんですか?

797 :名前は開発中のものです。:03/02/22 10:12 ID:qCupw7ul
いちいち自分でチンタラとヘボイ可視判定するよりも
いいからビデオカードよお前描いてみろっつったほうが速い場合はあるかもな。

798 :名前は開発中のものです。:03/02/22 10:52 ID:hOkqwskM
オブジェクト単位の可視判定のコストは、
それを描画しようとするコスト
・テクスチャやマテリアルのセットアップ
・頂点バッファのセットアップ
・描画コマンド送信
に比べれば遥かに小さい

799 :名前は開発中のものです。:03/02/22 11:19 ID:LP9w95za
しかし可視判定はきちんと作っておくこと。
漏れはキャラクタの首が見えなくなるバグを作ってしまった。
(オブジェクトごとに判定してなかったのがいけなかったんだが)

800 :名前は開発中のものです。:03/02/22 12:18 ID:CQoZjhp0
>>799
何気に凄い処理ですね。
メッシュを、首と体別々に持っていたのでしょうか?
一つのメッシュを、分割表示なのですか?

気になりますね。自分の場合、そのメッシュのボリューム判定が
少しでも視錐台にかかるなら、
例えメッシュの極一部しか見えないってなっても、描画としています。

801 :名前は開発中のものです。:03/02/22 12:27 ID:UUoLrIYq
数日前までDirectX8.1でやってきたんだけど、
昨日重い腰をあげてDirectX9にしたんですね。

やってることは水面シミュ(KanoさんのデモのTLWaterみたいなやつ)。
時間の大半は水面の更新なのでDirectXとはあまり関係なさそう。
ソースコードも〜〜8って奴を〜〜9に変更するくらいしかしてない。
多分一番大きな変更がシェーダをvs1.0から1.1に書き換えたくらい。

で、そのようなコードなのにDirectX9に移植しただけで速度が半減。。
ほんとに不思議でしょうがないです。
DirectX9に移植したときに重くなった人ってほかにいません?

802 :名前は開発中のものです。:03/02/22 14:51 ID:MaM2JdGh
D3DPRESENT_PARAMETERSのPresentationIntervalを
D3DPRESENT_INTERVAL_IMMEDIATEにするとかじゃないすかね?

803 :名前は開発中のものです。:03/02/22 15:14 ID:UUoLrIYq
>>802
ありがとうございました。今やってみました。
なんか微妙にCPU負荷率が落ちてる気がしました。

なんというか、実行するたびに負荷率がだいぶ変わってて、
これだ!という原因がつかみにくいっす。
もうちょい色々テストしてみたいと思います。。

804 :名前は開発中のものです。:03/02/22 18:28 ID:pnxUDlK2
俺はマクロ等でいつでもDirectX9/DrectX8でビルドしなおせるようにしてるけど
どうもDirectX9が若干重い。
vsync切って 同じ場面で DirectX8で180fpsでるのが 140fps位に落ちる。

知らないうちに高い負荷に変わった何かがあるのか
ドライバがこなれてないだけにも思えるし・・・どうなんだろ

環境は WinXp P4-1.8G GeForce3 Det-v41.09




805 :名前は開発中のものです。:03/02/22 20:03 ID:i/hNL3SR
DX9の方が頂点シェーダの切り替えは重そう。
それだけでそこまで重くなるとは思わないが。

806 :あぼーん:あぼーん
あぼーん

807 :名前は開発中のものです。:03/02/22 23:03 ID:YJQ3/Z0M
>>804
俺もGeForce4Ti4600だがDX8の方が速い。
どうせごく一部除いて出来ることは変わらないのだし、
DX9ハードでない限りはDX8のままの方が良い、という判断。

ちなみに>>804に聞きたいことがある。
大抵のDX8->9変更箇所はマクロで対応できるけど、
シェーダおよびその管理部分はどうしてる?
俺は仕方ないから全部書き直したよ、数百個のシェーダを(w

808 :804:03/02/23 08:06 ID:jmiZ+vZf
シェーダはインクルードファイルで差異を吸収。
ゲーム側はアセンブル済みの*.vso *.psoを読み込んでる。
DX8用はnvasmでやってる。



809 :名前は開発中のものです。:03/02/23 13:36 ID:zQF/wWtG
>>800
つまり、首から上と首から下の目主をいくつか用意して
組み合わせることによりキャラクタのパターンを増やそうとしたわけで・・・
(2Dのころの考えに支配されていたわけね)

最初のころ空中に首が浮くバグもありました。

810 :名前は開発中のものです。:03/02/23 13:43 ID:jr18wf/o
DirectInputでキーボードの状態取得するとき
GetDeviceStateで直接取得するのと
キーボード・バッファからデータを取得するのとありますが
どちらを使うべきですか?


811 :名前は開発中のものです。:03/02/23 13:49 ID:VqWTKByv
VCで float型 sin con計算するときって結局 doubleに型変換してから計算して
再度 float型に変換されるんで効率悪いなあ。

812 :名前は開発中のものです。:03/02/23 13:52 ID:5OVLhKi6
>>810
DirectInputを使いましょう。
GetDeviceStateは遅くなる、…気がしました(笑)。
キーボードバッファから取得する場合、微妙なタイムラグが生じないとも限りません。

813 :名前は開発中のものです。:03/02/23 14:52 ID:DZwsf0lm
>>811
効率がいい方法があるの?

814 :名前は開発中のものです。:03/02/23 15:30 ID:d99B5g5x
>>811
ネタですか?

815 :名前は開発中のものです。:03/02/23 15:30 ID:KI1SEAxf
コプロがそうなっているんだからどうしようもないと思うが

816 :名前は開発中のものです。:03/02/23 15:55 ID:d99B5g5x
質問
P2Pのネットワークゲームをつくたいんですけど、
ロビーサーバって 自前で 専用サーバー立てなきゃいけないんでしょうか?

無料ホームページでCGIを使って作ることはできますか?

チャット、IP取得、ゲームグループ管理ができればいいのですが。
その場合は、perl ruby なんかで作成できますか?

クライアント側は、WinSock or DirectPlayを 使うつもりです。



817 :名前は開発中のものです。:03/02/23 17:20 ID:sdUsP92z
>>812
意味分からん

818 :名前は開発中のものです。:03/02/23 19:37 ID:VqWTKByv
>>813
全部 doubleで計算して最後に floatに変換するとちょっとだけ速くなるよ。
もっとも、俺は普段はテーブル使うけど。

819 :名前は開発中のものです。:03/02/23 20:53 ID:Ghw0OMuy
float型で返してくれる
sinf,cosf,powf,sqrtfを俺はずっと使ってきたのだが、それは間違いだったのか?


820 :名前は開発中のものです。:03/02/23 21:15 ID:EYrNDjwT
sage

821 :名前は開発中のものです。:03/02/23 21:15 ID:EYrNDjwT
あ、書き込めた。
Yahoo規制解除かな?

822 :名前は開発中のものです。:03/02/23 21:32 ID:VqWTKByv
>>819
きみのマシンのCPUはなんだね?

823 :◆TPeOraQid2 :03/02/23 21:57 ID:Lpml15wc
>>821
ここは規制を免れた数少ない板です

824 :名前は開発中のものです。:03/02/23 23:40 ID:2Vs9uH0j
Managed DirectX 9.0 のドキュメントを読むには、Microsoft Visual Studio .Net が必要です。Managed ドキュメントのインストールの前に
Microsoft Visual Studio .Net をインストールする必要があります。

VC++6.0しかないんだが・・・

どうすればいいのだ・・・

マジで教えてください

825 :名前は開発中のものです。:03/02/24 00:00 ID:NAL5jQF5
>>824
Managed DirectX 9.0 ってなに?
リファレンスとはちがうの?
もしそうなら
C:\DXSDK\doc\DirectX9\DirectX9_c.chm


826 :名前は開発中のものです。:03/02/24 00:30 ID:GMktSEEl
>>824
VC++6.0からManaged DirectX 9.0は使えないから
そのドキュメントを読む必要は無いと思われ

827 :名前は開発中のものです。:03/02/24 00:49 ID:45UBPIAm
要するに日本語ヘルプがほしいんだが・・・
C:\DXSDK\doc\DirectX9\DirectX9_c.chm
のディレクトリは作られてなかった

dxwebsetup.exeとdx90_sdkextras_jpndocs.exeをインストールしたんだが、なんかたんない?

http://www.microsoft.com/japan/msdn/directx/downloads.asp
から日本語ヘルプダウンロードすんだよね?

*日本語ヘルプ=DirectX9関数の意味とか乗っているやつ

828 :名前は開発中のものです。:03/02/24 02:33 ID:uTM8GmS8
インストールすると.NETのヘルプと合体するんだなこれが

829 :Leliel(れりえる):03/02/24 03:37 ID:/oQQqKmF
>>827さん
dx90_sdkextras_jpndocs.exeを実行した後(展開先)に、単独でDirectX9_c.chm(JPN)があると思いますが、如何でしょう?
ちなみに、Visual Studio .NETに統合(関連付け)する場合には、****.msiを実行してインストールすると思ったけど...


830 :あぼーん:あぼーん
あぼーん

831 :名前は開発中のものです。:03/02/24 09:01 ID:O2UwAQOZ
>>829
一度、検索をかけてみるのがいいと思われ

832 :名前は開発中のものです。:03/02/24 14:52 ID:/Ss8nDaB
>>819
きみのマシンのCPUはなんだね?

この質問の意味がマジでわからないんですけど。
ちなみにP4の2.23ですが。

833 :Leliel(れりえる):03/02/24 15:22 ID:/oQQqKmF
>>831さん
> 一度、検索をかけてみるのがいいと思われ
「問題の趣旨を間違っているよ」という意味でしょうか?

>>827さん
Managed DirectXですが、ヘルプに以下のように書かれていましたので、利用は無理かと...

以下、抜粋です。
> 問題点
> Managed DirectX ドキュメントは、Visual Studio .NET IDE ヘルプ システム経由でのみ利用可能である。

参考までに、多分DirectX9_m.Hx*がヘルプ(chm)相当になると思います。
まぁ、問題点らしいので、DirectX9.1SDK位の時には、直るのではないかと言ってみるテスト(w


834 :名前は開発中のものです。:03/02/24 17:12 ID:WlBHZJfX
>>832
ヘッダファイルぐらい読めよ。

Alphaとかじゃなくてx86つかってるならsinf(x) は (float)sin((float)x)
そもそもfloat型命令がCPUにないんだから仕方がないことなので
気にする必要なんてないがな。

835 :あぼーん:あぼーん
あぼーん

836 :名前は開発中のものです。:03/02/24 22:43 ID:Le/4D7YY
DirectX9 D3DDEVTYPE_HAL は成功するのに D3DDEVTYPE_REF が失敗する。
というか、Device Type が HAL しかない。なぜだろう?

837 :名前は開発中のものです。:03/02/24 22:51 ID:eNzJcwmh
REFが対応してないようなステンシルバッファを指定してるとか?


838 :836:03/02/24 23:07 ID:Le/4D7YY
d3dpp.SwapEffect = D3DSWAPEFFECT_DISCARD;
d3dpp.BackBufferFormat = D3DFMT_UNKNOWN;
d3dpp.Windowed = TRUE;
で他は 0 なんですが。
もちろん D3DCREATE_SOFTWARE_VERTEXPROCESSING です。

839 :名前は開発中のものです。:03/02/25 00:43 ID:UKMPV8OC
>>829さん、その他大勢の方

DirectX9_c.chmありました
ありがとう
とりあえず、これから3時ぐらいまでヘルプ見て勉強します。
初期化、表示取得までどのくらいかかりますかね?

840 :名前は開発中のものです。:03/02/25 01:21 ID:2wZvxBs2
チュートリアルのサンプルコード見ればすぐに出来るよ
やることと言えば変数を自分の好みの形に変えるくらいか(藁

841 :名前は開発中のものです。:03/02/25 01:21 ID:UKMPV8OC
Microsoft DirectMusicR は、DirectMusic Producer で作成した波形、MIDI サウンド、または動的コンテンツに基づく
音楽サウンドトラックや音楽以外のサウンドトラックの両方に使える、完全なソリューションである。

ソ、ソリューション?

842 :名前は開発中のものです。:03/02/25 06:06 ID:omdCBu9L
>>836
普通にインストールしただけだとリファレンスラスタライザは
無効になってるよ。

843 :名前は開発中のものです。:03/02/25 07:37 ID:C4nGeM8Z
  |         |  |
  |         |  |_____
  |         |  | ̄ ̄ ̄ /|
  |         |  |   / /|
  |        /\ |  /|/|/|
  |      /  / |// / /|
  |   /  / |_|/|/|/|/|
  |  /  /  |文|/ // /     ∧∧
  |/  /.  _.| ̄|/|/|/      /⌒ヽ) スデニオワッテタヨ・・・
/|\/  / /  |/ /       [ 終 _]    ∧∧
/|    / /  /ヽ         三____|∪   /⌒ヽ) クソスレダッタネ・・・
  |   | ̄|  | |ヽ/l         (/~ ∪    [ 了 _]
  |   |  |/| |__|/       三三      三___|∪
  |   |/|  |/         三三       (/~∪
  |   |  |/         三三      三三
  |   |/                    三三
  |  /                    三三
  |/                    三三

844 :844:03/02/25 16:25 ID:5gCUJNuo
質問です

中学入学祝にGF4とHTPen4を買ってもらって
VS 6.0Proもお年玉で買って何かを作ってみようと思い

簡単な3Dオブジェクトを動かすだけのコードを書いてみたくなりました。
完全に初心者なのでちょっとわからないのですが
一般的にDOOM系のゲームに出てくる3Dオブジェはどのように書かれているのでしょうか?
友人に聞いたところDirectXのメッシュファイルを作成してテクスチャを張るのが一番簡単と聞いたのですが
このメッシュファイルの作成方法がわかりません
何かツールを使うのでしょうか?

初心者なので見当違いな事を言ってるかもしれませんがよろしくお願いします。


845 :名前は開発中のものです。:03/02/25 16:38 ID:kAqrm1HN
>>844
http://www.google.co.jp/

846 :名前は開発中のものです。:03/02/25 16:57 ID:0G2Uk19e
>>844

>初心者なので
初心者ならこの言葉は使わないほうがいいと思うよ。
レス付ける人にとってはあなたが初心者か否かってことは関係ないから。
風当たりが強くなるだけ。

847 :844:03/02/25 17:07 ID:5gCUJNuo
>>845
どうもすみません、もう少し自分で調べるべきでしたね

>>846
なるほど・・・
これから気を付けます。


848 :名前は開発中のものです。:03/02/25 17:09 ID:nzU/kS9Z
>>844
まぁそうあせらずもう少しゲームして遊んでなさい。
その内どういう仕組みで動いてるのか分かってくるから。

849 :名前は開発中のものです。:03/02/25 17:10 ID:Op/TV79I
初心者なので、と書かなかったらもっとひどいことを言われると思うが>>846

>>844
「3Dオブジェクトを作る」という言葉の意味がいまいち通じてないのだが、

「.Xファイル(DirectXで使うメッシュ)を作る」という意味なら、
メタセコイアなどのモデラを使って出力しなさい。

「すでにある.Xファイルを空間内に配置し、表示する」という意味なら、
そういうサンプルを穴が開くほど読むように。
DirectX9あたりのSDKをダウンロードしてくれば、そういったサンプルは
付いているぞ。

850 :849:03/02/25 17:17 ID:Op/TV79I
・・・・ていうか、漏れもわけの分からんこと書いてるな。
斜め読みでレス書いたよ。スマソ

>>844
とりあえず、幾つかの無料のモデラでも.Xファイルは出力できるから、
それでも使うといいよ。VisualStudioそのものにはそういう機能は全く無い。
んで、それらを自力で表示したくなったら、DirectXのサンプルを読め。


851 :846:03/02/25 17:40 ID:0G2Uk19e
>>844
中身について何も触れてなかったスマソ。
中学入ったばっかだと三角関数・ベクトル・行列とか
わからんだろうからゲーム作りたいなら先に
2Dでゲームの仕組みの方を勉強した方がいいと思う。

ただ3Dで動かしたいってだけなら最初は板を表示するところから
やった方がいんでないの。
あとは>>849と同じ。

852 :名前は開発中のものです。:03/02/25 19:23 ID:Scz91y4i
□□□□■□□□□□■□□□□□□□□□□□□□□□□□□□□□
□□□■■□□□□□■□□□□□□□■■■■■■■■■■■■□□
□□■■□□□□□■■■■■■□□□□□□□□□□□□□■■□□
□■■□□■□□□■□□□□■□□□□□□□□□□□□■■□□□
□□■□■■□□■■■□□■■□□□□□□□□□□□■■□□□□
□□□■■□□■■□■■■■□□□□□□□□□□□■■□□□□□
□□■■□□□□□□□■■□□□□□□□□□□□■■□□□□□□
□□■□□□■□□□■■■■□□□□□□□□□□■□□□□□□□
□■■■■■■□□■■□□■■□□□□□□□□□■□□□□□□□
□□□□■□□□■■□□□□■■□□□□□□□□■□□□□□□□
□□■□■□■□□□□■■□□□□□□□□□□□■□□□□□□□
□□■□■□■□□□□□■■□□□□□□□□□□■□□□□□□□
□■■□■□■□□□□□□□□□□□□□□□□□■□□□□□□□
□■□□■□□□□■■■□□□□□□□□□□□□■□□□□□□□
□□□□■□□□□□□■■■□□□□□□□□□□■□□□□□□□
□□□□■□□□□□□□□■■□□□□□□■■■■□□□□□□□

853 :名前は開発中のものです。:03/02/26 06:11 ID:MsmoxyDU
845Gのグラフィックス性能はすばらしいですな。
ほとんどの機能がOFFになりやがるので、対応させるのにかなり苦労しますよハッハッハ。
テクスチャも1枚だけだしストリームも1つだし。

ところで「終了」の連打が一気にあぼーんしましたな。削除人さんご苦労様です。

854 :名前は開発中のものです。:03/02/26 17:01 ID:yeaM7L/j
                                 ∧ ∧   ∧ ∧
   /⌒~~~⌒\                       (   ,,)   (,,・Д・)
 / ( ゚>t≡ )y─┛~~                〜(___ノ  〜(___ノ ,γ_
(_ ノγ U  ∩_∩)   THANK YOU 2ch     ┌───────┐   \
  α___J _J         and          (| ●        ● |      ヽ
  / ̄ ̄ ̄ ̄\  GOOD-BYE 2ch WORLD! /.| .┌▽▽▽▽┐ .|____|__||_| ))
 /     ●  ●、                   ( ┤ .|        | .|□━□ )
 |Y  Y       \ またどこかで会おうね  \.  .└△△△△┘ .|  J  |)
 |.|   |       .▼ |                 | \あ\      | ∀ ノ
 | \/        _人|∧∧∩゛冫、 .∧_∧      |    \り.\     . |  - ′
 |       _/)/)/( ゚Д゚)/ `  . (´∀` )..ヽ(´ー`)ノ  \が\ .   |  )
 \    / 〔/\〕 U  / ∩∩ (    ) (___)    \と.\ .|/
  | | | c(*・_・)  |  |ヽ(´ー`)ノ_|  |  | |   |〜 /\.\う\| (-_-)
  (__)_) UUUU /∪∪ (___)(_(__) ◎ ̄ ̄◎─┘ .└──┘.(∩∩)

855 :名前は開発中のものです。:03/02/27 03:32 ID:kDkZ+grY
DirectX9をインストールしてしまったのですがアンインストールする方法はないでしょうか?
以前のDirectX8.1に戻したいのです。

OSはwindowsXP homeです。
DirectXアンインストーラーはXPに対応してないと書いてあったので・・・。
いったいどのようにすれば宜しいのでしょうか?

OSのクリーンインストールorデータバックアップなどは出来ない状態です。

お知恵をお貸しください・・・!

856 :名前は開発中のものです。:03/02/27 03:49 ID:ENRyvO+E
>>855
結論から言うと、無理。
http://www.microsoft.com/japan/windows/directx/downloads/drx90.asp
DirectX 9.0 ランタイムは、アンインストールできません。Windows Me と Windows XP ユーザーには、インストール前に「システムの復 元」を利用することを推奨します。

857 :名前は開発中のものです。:03/02/27 04:19 ID:Dfv+mAot
>>842
リファレンスラスタライザを有効にするにはどうしたらよいのでしょうか。
ユーザー環境で Redist\DirectX9\dxsetup.exeでインストールするだけでは駄目なんですよね?


858 :名前は開発中のものです。:03/02/27 04:23 ID:WmvRf0a2
            o.
            /  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ /
           /   このスレは無様に .  /
           /  終了いたしました    /
          / ありがとうございました  /
          /                /
         /    モララーより     /
         / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄/
  ∧_∧  /                /∧_∧
 ( ・∀・) /                /(・∀・ )
 (    )つ               ⊂(    )
 | | |                   | | |
 (__)_)                  (_(__)


859 :名前は開発中のものです。:03/02/27 06:43 ID:Z0p7v5N5
DirectX7を手に入れたいんだけどどこにありますか?

860 :名前は開発中のものです。:03/02/27 07:39 ID:ENRyvO+E
>>859
ランタイム
http://www.microsoft.com/downloads/results.aspx?productID=9C954C37-1ED1-4846-8A7D-85FC422D1388&freetext=&DisplayLang=ja
SDKならここ
http://www.microsoft.com/japan/msdn/directx/downloads.asp

次からは自分で検索しようね。

861 :winmainを隠蔽してみた:03/02/27 09:51 ID:JfZFQlLW
directxをインストールしたばかりなんだけど、
関数のパラメーターとか自動で表示されるやつって
directxには適用されないの?

862 :名前は開発中のものです。:03/02/27 09:57 ID:Ica0knkC
何の話だ?

863 :winmainを隠蔽してみた:03/02/27 10:07 ID:JfZFQlLW
たとえば、
nanntara->
と入力したときに、メンバリストがでない。
Direct3DCreate9(
といれたときに、引数がでないとか。

864 :名前は開発中のものです。:03/02/27 10:11 ID:ijmN7E21
d3d9.hとかをプロジェクトに追加しる

865 :winmainを隠蔽してみた:03/02/27 10:14 ID:JfZFQlLW
メンバは出たけど、引数の方は出てこなかったッす、、、

866 :名前は開発中のものです。:03/02/27 12:37 ID:lgKStMoo
>>855
ランタイムは無理だけど、SDKは9と8.1別のフォルダに入れれば共生できるんちゃうかな。

867 :名前は開発中のものです。:03/02/27 13:31 ID:58ylrgvU
>863

それやるとメチャ重くならない?
1回やってみたんだけど、重すぎて、俺はやめたよ。



868 :名前は開発中のものです。:03/02/27 13:42 ID:zKU+aj/I
>>867
>それやるとメチャ重くならない?
そうかな、全然重くないけど・・・
DirectX関係のヘッダをプロジェクトに全部追加してるよ。
うちは、Pen4 2GHzで、Win2000 + VC6.0だけど。
そっちは?

869 :名前は開発中のものです。:03/02/27 13:53 ID:ENRyvO+E
俺は867じゃないが……
PenII400/320MB/Win2000/VC6だけど重いと感じたことはないよ。

ncbファイルを消したりclwファイルを消したりしてVC起動後にリビルドすると直ってたりするとかしないとか。
ヘッダファイルをプロジェクトに追加→いったん保存とかいう手もあるらしい。
全部未確認(´Д`;

870 :名前は開発中のものです。:03/02/27 14:26 ID:WQZ5vssb
DirectX9ではリファレンスデバイスがデフォルトでつかえないなら DirectX8で
CreateDeviceでやってた "HAL作れなかったら REFで"ってテクニックが意味ないわけだ。

871 :名前は開発中のものです。:03/02/27 15:34 ID:JFJsO4Yu
そもそもREFで実用的速度が出せるのかかなり疑問なので、
X8以前でも潔くエラーメッセージ出して終了するのがよろしいかと

872 :名前は開発中のものです。:03/02/27 16:04 ID:iBpOZbjn
□□□□■□□□□□■□□□□□□□□□□□□□□□□□□□□□
□□□■■□□□□□■□□□□□□□■■■■■■■■■■■■□□
□□■■□□□□□■■■■■■□□□□□□□□□□□□□■■□□
□■■□□■□□□■□□□□■□□□□□□□□□□□□■■□□□
□□■□■■□□■■■□□■■□□□□□□□□□□□■■□□□□
□□□■■□□■■□■■■■□□□□□□□□□□□■■□□□□□
□□■■□□□□□□□■■□□□□□□□□□□□■■□□□□□□
□□■□□□■□□□■■■■□□□□□□□□□□■□□□□□□□
□■■■■■■□□■■□□■■□□□□□□□□□■□□□□□□□
□□□□■□□□■■□□□□■■□□□□□□□□■□□□□□□□
□□■□■□■□□□□■■□□□□□□□□□□□■□□□□□□□
□□■□■□■□□□□□■■□□□□□□□□□□■□□□□□□□
□■■□■□■□□□□□□□□□□□□□□□□□■□□□□□□□
□■□□■□□□□■■■□□□□□□□□□□□□■□□□□□□□
□□□□■□□□□□□■■■□□□□□□□□□□■□□□□□□□
□□□□■□□□□□□□□■■□□□□□□■■■■□□□□□□□

873 :867:03/02/27 16:16 ID:58ylrgvU
>ncbファイルを消したりclwファイルを消したりしてVC起動後にリビルドすると直ってたりするとかしないとか。
>ヘッダファイルをプロジェクトに追加→いったん保存とかいう手もあるらしい。

おお! 良い事を聞いた。
なんか問題が発生して重かっただけなのねん。

早速ヤッテミマス




874 :名前は開発中のものです。:03/02/27 16:54 ID:HWipojuc
DirectX8でもデフォルトではREFなんて使えないが?

875 :名前は開発中のものです。:03/02/27 17:22 ID:fGHwPAkb
>>857
レジストリの
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Direct3D\Drivers の
EnumReferenceの値をゼロ以外の DWORD 値に設定する

876 :名前は開発中のものです。:03/02/28 00:13 ID:FCMoDyEN
C#とManagedDirectXでプログラムかいて公開したんだが。
「動きません」のメールが大量に来やがる。
Direct X9と.NETフレームワークの両方がインストールされている必要があるためなんだろうけど、
ここまで浸透していないとは思わなかった。

877 :名前は開発中のものです。:03/02/28 01:03 ID:+tLuIqMU
Xファイルには面法線という項目がありますが、面法線ってDirectXでは頂点法線から割り出して使うから
意味ないですよね?

878 :名前は開発中のものです。:03/02/28 01:40 ID:KEn2AUec
うん

879 :名前は開発中のものです。:03/02/28 01:43 ID:dpYg4FGB
何で意味ないの?
面法線使いたいときは必要じゃん。

880 :名前は開発中のものです。:03/02/28 01:52 ID:ts2K0BuQ
>>877
それを言うなら、頂点法線だって
ポリゴンを形成する頂点座標から割り出して使うから意味無いよですよね?
(フラット、グローシェーディングでも)

ってなるだろ、普通に使うならXfile読み込み処理。
使わないなら、自前で割り出す。それだけだろ。

881 :名前は開発中のものです。:03/02/28 02:02 ID:tSkXT/sy
計算で割り出せないような使い方をしたいときは必要。
あるいは、計算する時間が惜しいか、だな。

882 :名前は開発中のものです。:03/02/28 02:59 ID:Djjhowa6
□□□□■□□□□□■□□□□□□□□□□□□□□□□□□□□□
□□□■■□□□□□■□□□□□□□■■■■■■■■■■■■□□
□□■■□□□□□■■■■■■□□□□□□□□□□□□□■■□□
□■■□□■□□□■□□□□■□□□□□□□□□□□□■■□□□
□□■□■■□□■■■□□■■□□□□□□□□□□□■■□□□□
□□□■■□□■■□■■■■□□□□□□□□□□□■■□□□□□
□□■■□□□□□□□■■□□□□□□□□□□□■■□□□□□□
□□■□□□■□□□■■■■□□□□□□□□□□■□□□□□□□
□■■■■■■□□■■□□■■□□□□□□□□□■□□□□□□□
□□□□■□□□■■□□□□■■□□□□□□□□■□□□□□□□
□□■□■□■□□□□■■□□□□□□□□□□□■□□□□□□□
□□■□■□■□□□□□■■□□□□□□□□□□■□□□□□□□
□■■□■□■□□□□□□□□□□□□□□□□□■□□□□□□□
□■□□■□□□□■■■□□□□□□□□□□□□■□□□□□□□
□□□□■□□□□□□■■■□□□□□□□□□□■□□□□□□□
□□□□■□□□□□□□□■■□□□□□□■■■■□□□□□□□

883 :名前は開発中のものです。:03/02/28 03:16 ID:a4NM2ktj
XFILE自体必要ない。
と、思う。
貧相な感じだし。

884 :名前は開発中のものです。:03/02/28 03:50 ID:BcmXYmEO
たしかに製品に*.Xファイルが入ってると萎えるよな。


885 :名前は開発中のものです。:03/02/28 05:15 ID:ThQh6bQy
□□□□■□□□□□■□□□□□□□□□□□□□□□□□□□□□
□□□■■□□□□□■□□□□□□□■■■■■■■■■■■■□□
□□■■□□□□□■■■■■■□□□□□□□□□□□□□■■□□
□■■□□■□□□■□□□□■□□□□□□□□□□□□■■□□□
□□■□■■□□■■■□□■■□□□□□□□□□□□■■□□□□
□□□■■□□■■□■■■■□□□□□□□□□□□■■□□□□□
□□■■□□□□□□□■■□□□□□□□□□□□■■□□□□□□
□□■□□□■□□□■■■■□□□□□□□□□□■□□□□□□□
□■■■■■■□□■■□□■■□□□□□□□□□■□□□□□□□
□□□□■□□□■■□□□□■■□□□□□□□□■□□□□□□□
□□■□■□■□□□□■■□□□□□□□□□□□■□□□□□□□
□□■□■□■□□□□□■■□□□□□□□□□□■□□□□□□□
□■■□■□■□□□□□□□□□□□□□□□□□■□□□□□□□
□■□□■□□□□■■■□□□□□□□□□□□□■□□□□□□□
□□□□■□□□□□□■■■□□□□□□□□□□■□□□□□□□
□□□□■□□□□□□□□■■□□□□□□■■■■□□□□□□□


886 :名前は開発中のものです。:03/02/28 07:29 ID:+SvimdoM
>>880
頂点法線ってポリゴンの頂点座標から割り出せるの?

887 :名前は開発中のものです。:03/02/28 07:55 ID:LjVvJzq/
うん

888 :名前は開発中のものです。:03/02/28 08:08 ID:+SvimdoM
どうやって割り出すんですか?法線が2つに絞られたところから教えて下さい。

889 :名前は開発中のものです。:03/02/28 08:12 ID:6LX7AMhK
自分が関わってる面のホウセンをすべてたして正規化。
ってやってるけどちがう?

890 :名前は開発中のものです。:03/02/28 08:21 ID:+SvimdoM
でもそれって面法泉がいりますよね。それだと頂点法線がないと出ないって
書いてありましたけど・・・。

891 :名前は開発中のものです。:03/02/28 08:28 ID:d+1j6U8A

面のホウセンは頂点からだして、頂点のホウセンは面からだすと思われ。

892 :名前は開発中のものです。:03/02/28 08:41 ID:+SvimdoM
面から頂点法泉を出すのと頂点座標から面法泉割り出すのとでは法泉が2つ出ますよね。
裏表ってどうやって割り出すんですか?

893 :名前は開発中のものです。:03/02/28 08:57 ID:JnJywKSZ
面ホウセンから頂点ホウセンをだすんでした。
すみません

894 :名前は開発中のものです。:03/02/28 09:11 ID:N7CGQpBA
質問!
voodooってD3Dの初期化のやり方が違うんすか?
sdkのサンプルをビルドしても初期化できないっす。
create deviceがnot availableを返すんですけど。
引数が違うんでしょうか?

895 :名前は開発中のものです。:03/02/28 09:47 ID:z2gmOGX9
http://www.agemasukudasai.com/bloom/

896 :名前は開発中のものです。:03/02/28 10:18 ID:BcmXYmEO
>>894
DirectXのバージョンくらい書いとけ。
せめてvoodooドライバがどのDirectXまで対応してるかドキュメント読め。

初代VoodooでもOmega DriverならDirectX8いけるんだっけ? 詳しい人いる?


897 :名前は開発中のものです。:03/02/28 10:42 ID:N7CGQpBA
voodoo3と、directX 9.0です。
ドライバが対応してないって事はないんですよ。
サンプルプログラムは動かないんですけど、
AppWizardで作ったやつは動くんですね。
だから、初期化のコードが問題だとおもうんですけど。
voodooは他のビデオカードと違うって言うのをどっかで見たことがあるんで。
とりあえず、CreateDeviceの引数をAppWizardのと同じにしただけだと動かないです。

898 :名前は開発中のものです。:03/02/28 11:15 ID:1bpV3DUD
Voodoo3は16bitカラーしか使えないのと、テクスチャが256*256以下しか
使えないくらいしか制限は知らないな。
Voodoo1/2になるとまた話は別なんだが。
っていうか、Voodoo3なんて燃えないゴミの日に出した方がいいよ。

899 :982:03/02/28 13:24 ID:QQP01RY2
質問です。
*.xファイルを実行ファイルに埋め込みたいのですが
これに詳しい解説サイトは無いですか?
あと、DX9SDKで作ったプログラムはDX8までの機能しか使って無くても
利用者はDX9のランタイムを入れないと駄目なのでしょうか?
初歩的な質問でスマソ・・・


900 :名前は開発中のものです。:03/02/28 13:38 ID:noUxi+c2
「データー調査」の信用情報機関
電話番号から住所 年収 財産 結婚暦
暗証番号 旧住所〜新住所 ブラックリスト
生存 行方 本名 などなど
初恋の人 思い出の人に逢えるかも・・・・?
http://www.tyousa.com


901 :クラッシュ ◆zmflhpEGDw :03/02/28 13:54 ID:93F9uYpQ
>>899
サイトは知らないけどリソース(.rc)にバイナリデータを作って、
Xファイルをバイナリで開いて全コピー&ペースト。
バイナリリソースデータの作り方は、リソースの追加>カスタム>
リソースの種類を例えば"XFILE"にする。
リソースデータへのアクセスはWinAPIのLoadResource、FindResource、
MAKEINTRESOURCE あたりを調べてみよう。
D3DX使うなら、D3DXLoadMeshFromXResourceなんかをサンプルから
検索すればいいかも。

あとインクルードファイルに"d3d8.h"とかを使ってるならランタイムは8で
いいはずです。

902 :三国志板住民:03/02/28 14:01 ID:x/gzBWA3
ホウセンとカタカナで書かれると、いちいち呂布が頭に浮かぶんだよな。
どうでもいいけど。

903 :クラッシュ ◆zmflhpEGDw :03/02/28 14:20 ID:93F9uYpQ
面の法線の求め方だけど、
面を定義する頂点ベクトルを時計回りにa,b,cとすると
(b-a)と(c-a)の外積(D3DXVec3Cross関数など)で求められる・・・
気がする((b-a)と(c-a)の順番は逆かも知れない)。


904 :982:03/02/28 14:24 ID:QQP01RY2
>>901
どうもありがとうございました。
これで安心してSDK9を入れられます。。

905 :名前は開発中のものです。:03/02/28 14:35 ID:+tLuIqMU
メッシュって遅いわりにカスタマイズが効かないので好きになれないんだが
みんな結構使ってんの?メッシュとシェーダって併用可能?

906 :名前は開発中のものです。:03/02/28 15:05 ID:nvyjy38i
            o
            /  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ /
           /   このスレは無事に  /
           /  終了いたしました    /
          / ありがとうございました  /
          /                /
         /   モララーより      /
         / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄/
  ∧_∧  /                /∧_∧
 ( ・∀・) /                /(・∀・ )
 (    )つ               ⊂(    )
 | | |                   | | |
 (__)_)                  (_(__)


907 :名前は開発中のものです。:03/02/28 16:30 ID:7/pJFALY
>>899
詳しいも何もリソースに組み込めばふつーに読めるだろう。

908 :名前は開発中のものです。:03/02/28 16:37 ID:N1fx6NPj
      ∧ ∧   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
     ( ・∀・) < 今がその時だ!!逝くぞ2号!!
     ./ つ つ  \_____________
  〜(_⌒ヽ      (´⌒(´
     .)ノ `J≡≡≡(´⌒;;;≡≡≡
         (´⌒(´⌒;;

OK!!わかってるぜ1号!!
 ̄ ̄ ̄ ̄ ̄∨ ̄ ̄ ̄ ̄      (´´
     ∧∧   )      (´⌒(´
  ⊂(・∀・⊂⌒`つ≡≡≡(´⌒;;;≡≡≡
        ̄ ̄  (´⌒(´⌒;;
      ズザーーーーーッ

            o
            /  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ /
           /   このスレは無事に  /
           /  終了いたしました    /
          / ありがとうございました  /
          /                /
         /   モララーより      /
         / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄/
  ∧_∧  /                /∧_∧
 ( ・∀・) /                /(・∀・ )
 (    )つ               ⊂(    )
 | | |                   | | |
 (__)_)                  (_(__)


909 :名前は開発中のものです。:03/02/28 19:42 ID:DHLoTL1B
>>905
DX9なら普通に併用可能。
DX8ではDrawPrimitive使わないと駄目。

910 :名前は開発中のものです。:03/03/01 00:21 ID:LU7CqVC4
>>903
それが、頂点法線の求め方。
その話で言うと、頂点aの法線の求め方。

後、裏表なんて言ってる方は、最初からやり直しですよ。
右手系か、左手系と、頂点の並びの順番で、裏表は決定できます。
でだ、皆勘違いしてるようだが、先ず形成するポリゴンから頂点の法線ありき、なの。
そして、共有頂点の法線処理をして、最終的頂点法線から面法線を求めるのですよ。

みんな逆に考えてないか?Xfileに法線情報があるからって
法線ありきじゃ無い。頂点で形成するポリゴンがないと法線は求まりませんよ。
(ポリゴンとは面の意味では無く、頂点の並びと言う意味な)

フラットシェード、グローシェード、フォンシェードって分らないだろ?
そんな事言ってるようじゃ。

911 :クラッシュ ◆zmflhpEGDw :03/03/01 01:21 ID:ozKr9qTh
>>910
面と頂点の法線、言ってることが逆に思えるんだが・・・
DirectX9のヘルプにはこうある

面法線ベクトルと頂点法線ベクトル
--------------------------------------------------------------------------------
メッシュの各面には、垂直の法線ベクトルがある。法線ベクトルの方向は、頂点が定義されている
順序と、座標系が左手座標系か右手座標系かによって決まる。面の法線ベクトルは面の前面から離
れる方向に向く。(この文のあとに図解があり、頂点法線ベクトルと書いてあるがミスプリだと思う)

Direct3D は、グーロー シェーディング、ライティング エフェクト、テクスチャ エフェクトの
制御に頂点法線を使う。

912 :名前は開発中のものです。:03/03/01 01:23 ID:1fMHGpBA
おお!まともそうな方が。
この機会にちと質問なんですが、
頂点の順番がバラバラのモデルの表裏判定のやりかたしりませんか?
ある面をひとつとって、そいつのホウセンを基準にして、
となりの奴から連鎖的に面のホウセンを決めてるんですが。
この方法だと裏か表かのにたくが全く手がかりありません。
誰かタスケテ

913 :912:03/03/01 01:38 ID:7K3Mhdwx
すいません頂点の順番がバラバラというのは一つの三角形を構成する頂点の並びがということです。

914 :クラッシュ ◆zmflhpEGDw :03/03/01 01:46 ID:ozKr9qTh
>>912
頂点の順番がバラバラというのがどういう状態かわからないけど・・・
面を定義する頂点ベクトルを時計回りにa,b,cとすると
(b-a)と(c-a)の内積(D3DXVec3Dot関数など)が正の数なら
って感じかな・・・自信はないw

915 :912:03/03/01 02:00 ID:JknjQlEm
頂点がバラバラというのはCWで描いてもCCWで描いても
ホウセンが逆方向をむいてしまう三角形が存在するということです。
まわりの人間からは不可能といわれてしまいました。
うう、モデル1000個以上あるのに・・・
目で確認するんか。笑

916 :名前は開発中のものです。:03/03/01 02:04 ID:4hMcm0Kb
>>910
xファイルにある面の頂点配列は順番込みだから法線情報は求まる。
実際、面法線リストを削除してもMeshViewで読めるし。

>>911
面法線は結局どこで使うんだ?

>>912
頂点の順番をバラバラじゃなくする。

917 :クラッシュ ◆zmflhpEGDw :03/03/01 02:05 ID:ozKr9qTh
>>915不可能

918 :名前は開発中のものです。:03/03/01 02:12 ID:IRyJxHJx
>>911
ミスプリじゃないよ。
法線ベクトルは、方向を示すものであって
位置ベクトルとは違う。
ポリゴンの面から伸びてるが、あれはどう考えても頂点ベクトル。

ポリゴン一枚だけだから、フラットシェードと同じ考え。
頂点の法線を、面の法線とする。
つまり、あのポリゴンの面法線は、頂点の法線を求めて
それ(頂点法線)を、面法線とするから、ああ書いてある。
つーか、英語版読めよ。NormalVectorってしか書いてない。
訳者が、わざわざ3D理論を分らない人用に、頂点ベクトルってしてくれたんだろうが、逆効果だな。

そもそも外積を式じゃ無く、理論で分っているのかな。
二つのベクトルに、互いに垂直になるベクトルが求まるんだよ。
外積は不可逆だから、かける順序に意味がある。これがポリゴンの裏表。
因みに、単位化したベクトルで外積を取れば、単位ベクトルが求まる。
これが意味する物は、そのままのベクトルで外積から求めたベクトルの大きさはポリゴンの面積の大きさを表す。

話は元に戻して、二つのベクトルとは、頂点と頂点を結んだベクトルだ。
911は自分で、(b-a)×(c-a)って、頂点か算出したベクトルで外積取った式を書いてるじゃん。
で、共有頂点が無い一枚ポリなら、それが面の法線だろ。

919 :名前は開発中のものです。:03/03/01 02:14 ID:KboLdtOH
DirectX8.1SDKを使用してゲームを開発してるのですが
DXで描画中にダイアログボックスを表示しても表示されません。
しかし、GDIを使用して描画している時は普通に表示されます。
DirectX使用時にダイアログボックスを表示させるにはどのようにしたらいいでしょうか?

920 :名前は開発中のものです。:03/03/01 02:15 ID:9utVQAN0
凸のモデルなら外側が表だってわかるんじゃないの?
1000個のうち凸のモデルがほとんどなら、やってみると作業量減らせるかも。
ちゅーかなんでそんなことになっちゃったのよ

921 :名前は開発中のものです。:03/03/01 02:33 ID:IRyJxHJx
>>912
>>915
ですから、貴方も3Dが分ってない。
左手系だと時計周り、右手系だと反時計周りで形成されるポリゴンで
裏表が決定されるのです。理論で決まっている事を
無視して裏表を自分の理論で求めてはいけません。

つまり、裏表の判定をして、自分に都合の悪い裏表は逆にするって処理がしたいのか
判定がしたいだけなのか、言ってる事から分らないんですよ。
ですから申し訳ないが、分ってないと決め付けました。

922 :912:03/03/01 02:35 ID:jjke4YoR
凸は串さしてはじめもしくは終わりにささった面のホウセンを優先的にやってます。
はじめとおわりが食い違うようなものは危険物として隔離しておいてます。
しかし、これではあと300個ぐらいどうにもなりません。
なんでこうなっちゃったかは私がききたいぐらいです。
てか、なんのデータなんでしょうね。

923 :912:03/03/01 02:49 ID:mh+YM4On
おそらく空間にある適当な点を三つずつまとめただけのデータな感じ。

924 :名前は開発中のものです。:03/03/01 03:21 ID:IRyJxHJx
>>912
基本を書くぞ。

右手系なら、三角形を形成する頂点の並ぶ順番と、
(a,b,cの順番で形成されるのか、a,c,bで形成されるのか)
右手で同じ方向になぞった時に親指側が表。
左手系は、左手で同じ事をする。

モデルとはMeshで良いのか?
Meshとは、閉じた空間を形成するポリゴンモデルの事。
つまり、三角形の裏表と、閉じた空間に対しての裏表を
混同してるとしか思えない発言しかしてませんよ?って事だ。

閉じた空間に対して、法線が外側を向く様に
変換するアルゴリズムが知りたいのか?可能だぞ。
LightWave使いなもんで、
LightWaveの話で悪いが、その機能があるからね。

ぱっと、アルゴリズムは考え付かないが、
自分なら、描画して(任意の回転、平行移動可能)
ポリゴンクリッピングして、指定のポリゴンを裏返すって
ツール作る。


925 :名前は開発中のものです。:03/03/01 03:31 ID:UIOVZYpz
CWでもCCWでも矛盾が起きる物体はそんなやわな方法じゃ無駄だと思われ。
DXF?

926 :名前は開発中のものです。:03/03/01 03:44 ID:IRyJxHJx
まあ、ココはDirectXスレだから言ってもしょうが無いけど
描画エンジン以外使わないで居るもんで
つまり、自前でデータ読み取り、データ変換、データ構造、データ処理や算術演算
勿論、独自Mesh形式だし、その位やってれば只の、アルゴリズム処理→データ変換だろ。

つーか、LightWaveでクリック一発で出切るんだから
DirectXの用意した環境、関数しか使ってない奴ならともかく
1日、2日の仕事だろ。そんな物。

927 :名前は開発中のものです。:03/03/01 03:44 ID:crw1XJF8
数学的な話題で盛り上がってるところ申し訳ないんだが、
フルスクリーンプログラムが終了した後にウィンドウが左上に集まってしまう現象を
対策するプログラムの手段って何かないでしょうか?
SetWindowPosとか何かを駆使して対策取れないかなぁ…

928 :名前は開発中のものです。:03/03/01 03:45 ID:3aUNx0UC
君の方法を聞きたい

929 :名前は開発中のものです。:03/03/01 03:50 ID:SCvhJiOz
亜斗武

930 :名前は開発中のものです。:03/03/01 04:17 ID:crw1XJF8
1)適当に一つ三角形ABCを選択してそいつを基準に。
2)その三角形と辺を共有している三角形ABDを探し出す。
3)そいつの頂点順序がABDだったらDBAにしてやる。
4)あとは再帰的に。

隣接する三角形の頂点の並び順を一定方向にするっていうだけっす。
ていうか簡単なアルゴリズムすぎて逆に怖すぎるんですけど余裕で間違ってたりする?

931 :名前は開発中のものです。:03/03/01 04:23 ID:crw1XJF8
>>930>>912からのお話へのレスです

>>928
正直検討つかないんで… 真面目に分かりません。

自分AoKよくやってるんだけど、nVidia系VGAのときは大丈夫で、
最近ATi系VGAにしたらその現象が起きるようになってしまった。
って訳でドライバも原因の一つになってるような気もします。

ちなみにDia2とかだと、GFだろうがRADEONだろうが問答無用でそうなる。

DPSっていうプログラム(対策するプログラムらしい)を入れてみたんだが、
AoKはそれで直ったけどDia2はそれでもダメでした。

932 :名前は開発中のものです。:03/03/01 05:56 ID:n5oFAiRP
            o
            /  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ /
           /   このスレは無事に  /
           /  終了いたしました    /
          / ありがとうございました  /
          /                /
         /   モララーより      /
         / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄/
  ∧_∧  /                /∧_∧
 ( ・∀・) /                /(・∀・ )
 (    )つ               ⊂(    )
 | | |                   | | |
 (__)_)                  (_(__)

933 :名前は開発中のものです。:03/03/01 08:06 ID:W/Ec3yb3
EnumWindowsでウインドウを調べ上げて位置を取得して保持。
終了時に全てのウインドウを元の位置に戻す。

934 :名前は開発中のものです。:03/03/01 11:48 ID:xcgOgsTR
>>919
DX8.1では無理だと思ってくれ(できなくもないが)。DX9なら可能。
というわけで移行を勧めるよ。

>>920
全て両面ポリゴンで扱うモデラだと、出力するデータの面の向きが
統一されてないことが多いよ。このスレにはそんなモデラの存在すら
知らない奴が多いようだが。

935 :名前は開発中のものです。:03/03/01 15:15 ID:IRyJxHJx
>>934
>全て両面ポリゴンで扱うモデラだと、出力するデータの面の向きが
>統一されてないことが多いよ。このスレにはそんなモデラの存在すら
>知らない奴が多いようだが。

そんな、バグまがいのソフトなんて知る必要も使う必要も無い。
つーか、両面ポリでも裏表はある。
それを統一しなのは、ソフトじゃなくて”デザイナー”(モデリングする人間)だと思うが?
そのソフトのデータ出力分ってるの?

936 :名前は開発中のものです。:03/03/01 15:20 ID:XyiRWfFs
>>934
両面でもテクスチャを張れば一発で分かるが、そのモデラーの具体名は?
とりあえずニゲルナヨ?

937 :名前は開発中のものです。:03/03/01 15:36 ID:V1qhSJbE
                                 ∧ ∧   ∧ ∧
   /⌒~~~⌒\                       (   ,,)   (,,・Д・)
 / ( ゚>t≡ )y─┛~~                〜(___ノ  〜(___ノ ,γ_
(_ ノγ U  ∩_∩)   THANK YOU 2ch     ┌───────┐   \
  α___J _J         and          (| ●        ● |      ヽ
  / ̄ ̄ ̄ ̄\  GOOD-BYE 2ch WORLD! /.| .┌▽▽▽▽┐ .|____|__||_| ))
 /     ●  ●、                   ( ┤ .|        | .|□━□ )
 |Y  Y       \ またどこかで会おうね  \.  .└△△△△┘ .|  J  |)
 |.|   |       .▼ |                 | \あ\      | ∀ ノ
 | \/        _人|∧∧∩゛冫、 .∧_∧      |    \り.\     . |  - ′
 |       _/)/)/( ゚Д゚)/ `  . (´∀` )..ヽ(´ー`)ノ  \が\ .   |  )
 \    / 〔/\〕 U  / ∩∩ (    ) (___)    \と.\ .|/
  | | | c(*・_・)  |  |ヽ(´ー`)ノ_|  |  | |   |〜 /\.\う\| (-_-)
  (__)_) UUUU /∪∪ (___)(_(__) ◎ ̄ ̄◎─┘ .└──┘.(∩∩)

938 :名前は開発中のものです。:03/03/01 15:54 ID:kTpKLr9W
934はにげだした

939 :名前は開発中のものです。:03/03/01 17:11 ID:8wgVl4QN
きっとワイヤフレーム用のデータだんったんだよ。


940 :名前は開発中のものです。:03/03/01 17:22 ID:yW3dcXSK
             /ヽ       /ヽ
            / ヽ      / ヽ
  ______ /U ヽ___/  ヽ
  | ____ /   U    :::::::::::U:\
  | |       /○     ○   ::::::::::::::|
  | | このスレ | ├──┤    U :::::::::::::| オワッチャッタ・・・
  | |   終了い..|U |   |      ::::::U::::|
  | | ありがと ..|  └―┘ U.....:::::::::::::::::::/
  | |____ ヽ     .....:::::::::::::::::::::::<
  └___/ ̄ ̄      :::::::::::::::::::::::::|
  |\    |           :::::::::::::::::::::::|
  \ \  \___      ::::::         〜 終 了 〜



941 :名前は開発中のものです。:03/03/01 18:06 ID:oKmaEm7k
六角大王という定番があるじゃないか>面の向きがバラバラ

942 :名前は開発中のものです。:03/03/01 18:58 ID:9utVQAN0
>>941
六角ってそうだったのか!
俺は912じゃないけど、ちょっと気になってたナゾが解けた気がする。ありがとう

943 :名前は開発中のものです。:03/03/01 19:13 ID:W/Ec3yb3
>>936 = ID:XyiRWfFs はアホでした。完

944 :名前は開発中のものです。:03/03/01 19:42 ID:8wgVl4QN
6角つかったことなかったけど糞だったんだな

945 :名前は開発中のものです。:03/03/01 19:52 ID:kTpKLr9W
六角わけわからん。
俺はまともに形すら作れない

946 :名前は開発中のものです。:03/03/01 20:14 ID:dcJ1eT+h
>935

934>統一されてないことが多いよ。このスレにはそんなモデラの存在すら
934>知らない奴が多いようだが。
935>それを統一しなのは、ソフトじゃなくて”デザイナー”(モデリングする人間)だと思うが?
935>そのソフトのデータ出力分ってるの?

そーいや中堅メーカーに居た頃、
マンピーだかミソピーだかいうソフツで妙なデータを作ってくる、自信過剰な女デザイナーがいた。
sin,cosを酷使してモデルを作ったとか言ってたのだが、、
世間にはいろいろなモデラーがあるなと思った22の早春。



947 :名前は開発中のものです。:03/03/01 21:47 ID:V68MYbHv
頂点バッファもテクスチャもメインメモリ上にとればデバイス消失しなくなりますか?

948 :名前は開発中のものです。:03/03/01 22:35 ID:XyiRWfFs
リソースをメインメモリーにとることと、デバイスの消失は無関係

949 :912:03/03/02 01:23 ID:alKpiLZ4
( ̄□ ̄;)!!
そうだったんだ。
面の向きって統一されてないことって結構多いんだ。
仕事だからにげらんないしノイローゼになるよ。

あとねそんな馬鹿なって思ってる人へ
いまねゲーム会社も色んな分野に手をだしてるから
会社入ってもor移っても思い通りの仕事は回って来ないかもよ。
まさかそんなものがってカルチャーショック多すぎ。
例えば頂点の数だけで100MBこえちまうようなデータでその用途に裏も表もないなら
確認用のホウセンなんて邪魔でしかない。

950 :912:03/03/02 02:32 ID:Y7rDLHtY
あっそうだ。
これも苦労したからかいとこ。
同じ苦労をしょってしまった人の為に。

UV座標もないときはないです。
なんでも、UV座標でやると頂点数が増えると役に立たないからだそうです。
計算方法のインデックスと式の係数があるだけです。
私がなんとかできたのが平行投影と円柱と極座標のはりかただけでした。
難しいですね。

951 :名前は開発中のものです。:03/03/02 03:37 ID:Whb98VQi
             /ヽ       /ヽ
            / ヽ      / ヽ
  ______ /U ヽ___/  ヽ
  | ____ /   U    :::::::::::U:\
  | |       /○     ○   ::::::::::::::|
  | | このスレ | ├──┤    U :::::::::::::| オワッチャッタ・・・
  | |   終了い..|U |   |      ::::::U::::|
  | | ありがと ..|  └―┘ U.....:::::::::::::::::::/
  | |____ ヽ     .....:::::::::::::::::::::::<
  └___/ ̄ ̄      :::::::::::::::::::::::::|
  |\    |           :::::::::::::::::::::::|
  \ \  \___      ::::::         〜 終 了 〜


952 :名前は開発中のものです。:03/03/02 06:30 ID:HxCzt9jE
画面の更新のせいでマウスカーソルがちらついてしまうのはどうしようもないんでしょうか。
SDKのサンプルとかでもちらついているんですが。

953 :名前は開発中のものです。:03/03/02 08:10 ID:0GKW9Gmy
>>952
自前で描画するとちらつかない。(当たり前か)

954 :名前は開発中のものです。:03/03/02 12:05 ID:fyBel80j
マウスの形状を特殊な物に変更せず、ハードウェアで描画される物を使う
標準状態でちらつくのならビデオカードが腐っている

955 :名前は開発中のものです。:03/03/02 12:12 ID:A72hLkfs
前に試したときは
ATi のは特に問題なかったけど
S3 と Matrox のカードは画面のプロパティで
ハードウェアアクセラレーションを少し下げないと
ちらついてました。

956 :名前は開発中のものです。:03/03/02 12:47 ID:+CkqHHXo

 | ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄|
 |  ここでおしまい  |
 |________|
    ∧∧ ||
    ( ゚д゚) ||
    / づΦ

957 :名前は開発中のものです。:03/03/02 13:48 ID:hQuaX2Cx
ときにそろそろ次スレかと。

958 :名前は開発中のものです。:03/03/02 21:11 ID:RsWqBRzJ
>>912
以下、面の向きがどうのいってる奴は、全然分ってない。
頂点の並びで、向きが決定されるって何度言えば分るんだ?
之は、DirextXだろうが、OpenGLだろうが、Mayだろうが、LigthWaveだろうが
関係無い、3Dの前提なの。(あるのは、左手系、右手系のZ軸の向き)

それを、管理できないソフトウェア(それを扱う人間含む)は
三流以下、おとなしくDirectXのフォーマットでやってなさい。

因みに、
1000byte = 1kbyte
1000kbyte = 1Mbyte
100Mbyte = 100000000byte
まあ、テキストで扱ってる事は無いとして(テキスト扱いなら、情報Sizeの大きさを出す時点でDQN)
各、XYZ情報をfloat型つまり、4byte * 3 = 12byte
でカンマあたりで区切っていたとしても +2byte
1頂点あたり14byte使用としても、700万頂点オーバー
三角ポリゴンで換算すると、233万ポリゴンオーバー

マジで言ってるなら、是非、是非、
御社のお名前を知りたい。
そんなバリバリの会社なら転職したいです。

959 :名前は開発中のものです。:03/03/02 21:22 ID:EBxiwDX5
3Dの人たちは10進で数える文化があるのか。
ちょっと勉強になった。

960 :名前は開発中のものです。:03/03/02 21:24 ID:A72hLkfs
ネタだよな?

961 :名前は開発中のものです。:03/03/02 21:27 ID:1P3l/mXh
>>959
細かい誤差はどうでもいいんだろね。不思議だけど。

962 :名前は開発中のものです。:03/03/02 21:36 ID:HxCzt9jE
918は最近外積を学校で習ったばかりの工房

963 :名前は開発中のものです。:03/03/02 21:42 ID:RsWqBRzJ
1024byte = 1kbyte
の事いってるか?細かい事言うなよ。
今の時代のハードで、912は衝撃の、200万ポリゴンモデルを仕事で使っているんだぞ?
230万ポリだろうが200万ポリだろうが、漏れは
どちらも手が出ないレベルの、ちんけな仕事場です。

30万ポリが、どうでも良く感じられる200万ポリゴンのモデルですよ?

964 :名前は開発中のものです。:03/03/02 21:48 ID:A72hLkfs
>>958
>まあ、テキストで扱ってる事は無いとして(テキスト扱いなら、情報Sizeの大きさを出す時点でDQN)
>各、XYZ情報をfloat型つまり、4byte * 3 = 12byte
>でカンマあたりで区切っていたとしても +2byte

バイナリなのにカンマで区切るのか?


965 :名前は開発中のものです。:03/03/02 21:48 ID:RsWqBRzJ
>>962
そうなの?
最近の高校数学要項では、外積あるんだ。
漏れの時代は、大学の線形代数からだったよ。
ゆとり教育とやらの、しわよせか?

966 :名前は開発中のものです。:03/03/02 22:27 ID:p0R0rDol
ちょっと質問

たとえば、RPGのマップの頂点データをVertexBufferに入れておいて、
MAPに橋がかかっている場合のIndexBufferと
MAPに橋がかかっていない場合のIndexBufferを作っておけば、
それらを切り替えることによって橋がかかったりするような
2Dのころのパレットみたいな処理が出来るって解釈でよろしいのですか?

967 :名前は開発中のものです。:03/03/02 22:56 ID:76vPxjV6
うん、そういう解釈でいいと思う。

でも、複数持つくらいだったら、
使用範囲を切り替えたほうが経済的かもしれんが。


968 :名前は開発中のものです。:03/03/02 23:07 ID:TfKrSdZl
>>966
地形のLODとかもできるにょ。

969 :名前は開発中のものです。:03/03/02 23:51 ID:feL7pdRt
>>966
DirectXの場合は、座標変換をソフトウェアで行うと常に全ての頂点を
座標変換してしまうから、その方法はやめた方がいいかも。
(Indexで参照していない頂点も変換する)
単純に橋があるかないか程度なら問題には、大した問題ではないけれど。

それよりも、そういう動いたり消えたりするオブジェクトは、敵やアイテム
と同じようにマップとは独立した物として扱った方がいいよ。
2Dの頃で例えると、地形はBGで乗ると落ちる床はスプライトみたいな感じ。

970 :名前は開発中のものです。:03/03/03 01:49 ID:zO95E7dP
CoUninitialize を呼び出して COM を初期化する必要がある。
CoInitialize を呼び出したら、対応する CoUninitialize を呼び出さなければならない。
COM を明示的に初期化する必要があるアプリケーションでは、スタートアップ ルーチンで COM を初期化し、
クリーンアップ ルーチンで初期化されていない状態に戻すのが一般的である。

ヘルプのCOMオブジェクトの作成の分なんですが、
1行目は、initializeなのではと思うのですが、どうなんでしょうか?


971 :名前は開発中のものです。:03/03/03 07:29 ID:ynRUiZGb
            o
            /  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ /
           /   このスレは無事に  /
           /  終了いたしました    /
          / ありがとうございました  /
          /                /
         /   モララーより      /
         / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄/
  ∧_∧  /                /∧_∧
 ( ・∀・) /                /(・∀・ )
 (    )つ               ⊂(    )
 | | |                   | | |
 (__)_)                  (_(__)

972 :名前は開発中のものです。:03/03/03 08:59 ID:WWwQDBSK
>>970 もちつけ

973 :名前は開発中のものです。:03/03/03 09:33 ID:Q0URcY8K
>>963
おそらく912が言ってる100MB近くのデータってのは、モデル一体についてじゃなくて、
パックされたデータのこと言ってんじゃないの?

974 :名前は開発中のものです。:03/03/03 09:56 ID:3HqzghH3
>>973
真面目に考えるなって。
頂点データが与えられて、それの裏表が関係無いって言ってるんだぞ?

どう考えても、3Dを仕事にしてるとは思えない。
裏表は純然と在って、それを使わないのは自身や会社の勝手だが
そのデータがもともと表裏の統一が為されてないデータとは思えない。
自社コンバーターなりで、飛ばしちゃってるじゃんないの?

そんなデータにしがみついて云々してるなんてナンセンス。
それ以外に方法が無いなら。責任問題物だろ。
こんな3D分って無い奴に、データ修正させようとする会社在る訳ない。

975 :名前は開発中のものです。:03/03/03 14:46 ID:1NsvQPOm
そろそろ次スレの必要を感じますが。
うちからは作れないので誰か作りませんか?

976 :名前は開発中のものです。:03/03/03 15:02 ID:mayOyhGa
                                 ∧ ∧   ∧ ∧
   /⌒~~~⌒\                       (   ,,)   (,,・Д・)
 / ( ゚>t≡ )y─┛~~                〜(___ノ  〜(___ノ ,γ_
(_ ノγ U  ∩_∩)   THANK YOU 2ch     ┌───────┐   \
  α___J _J         and          (| ●        ● |      ヽ
  / ̄ ̄ ̄ ̄\  GOOD-BYE 2ch WORLD! /.| .┌▽▽▽▽┐ .|____|__||_| ))
 /     ●  ●、                   ( ┤ .|        | .|□━□ )
 |Y  Y       \ またどこかで会おうね  \.  .└△△△△┘ .|  J  |)
 |.|   |       .▼ |                 | \あ\      | ∀ ノ
 | \/        _人|∧∧∩゛冫、 .∧_∧      |    \り.\     . |  - ′
 |       _/)/)/( ゚Д゚)/ `  . (´∀` )..ヽ(´ー`)ノ  \が\ .   |  )
 \    / 〔/\〕 U  / ∩∩ (    ) (___)    \と.\ .|/
  | | | c(*・_・)  |  |ヽ(´ー`)ノ_|  |  | |   |〜 /\.\う\| (-_-)
  (__)_) UUUU /∪∪ (___)(_(__) ◎ ̄ ̄◎─┘ .└──┘.(∩∩)

977 :名前は開発中のものです。:03/03/03 16:27 ID:bb2JYtGF
新スレ作りました

鬱だ氏のう DirectX (Part 8)
http://pc2.2ch.net/test/read.cgi/gamedev/1046676308/l50

978 :名前は開発中のものです。:03/03/03 17:17 ID:dVTtHS0/
>>977


979 :名前は開発中のものです。:03/03/03 17:21 ID:+w8Knjdr
必死な人がいるな。

980 :名前は開発中のものです。:03/03/03 17:51 ID:KpRKr+CK
必死埋め。

981 :名前は開発中のものです。:03/03/03 18:53 ID:aZrofejA

      \∧_ヘ     / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
 ,,、,、,,, / \〇ノゝ∩ < 1000とり合戦いくぞゴルァ!!       ,,、,、,,,
    /三√ ゚Д゚) /   \____________  ,,、,、,,,
     /三/| ゚U゚|\      ,,、,、,,,                       ,,、,、,,,
 ,,、,、,,, U (:::::::::::)  ,,、,、,,,         \ ぶーぶーぶー /
      //三/|三|\              タリー
      ∪  ∪     (\_/)タリー    タリー   まだ早えよ〜
                (  ´Д)    タリー  タリー
                /   つ  (\_/)  (\_/)ノ⌒ヽ、
               (_(__つ⊂(´Д`⊂⌒`つ(´Д` )_人__) ))


982 :982:03/03/03 23:24 ID:MpW4oaEi
982

983 :名前は開発中のものです。:03/03/03 23:26 ID:zO95E7dP
d3d9.h
ってありますか?
何をするときにインクルードするものなんでしょうか?

検索したら、1件しか出てこなかった・・・

984 :名前は開発中のものです。:03/03/04 00:02 ID:9wTm6BfG
>>983
ネタだよね?
ネタだよね??

985 :名前は開発中のものです。:03/03/04 00:18 ID:1ax8YLw6
以下、ネタで1000とり合戦です

986 :名前は開発中のものです。:03/03/04 02:25 ID:kr4Bo4Ho
COBOLで DirectX を使うにはどうしたらいんですか。

987 :名前は開発中のものです。:03/03/04 02:32 ID:bG7SY2I3
COBOL.NET を使う

988 :名前は開発中のものです。:03/03/04 04:26 ID:QQsTlKyn
びる毛ってどこの毛ですか?

989 :名前は開発中のものです。:03/03/04 06:27 ID:QOVRGpvr
λ......         λ......       λ......
  λ......            λ......
 λ......      λ......
        λ......                  λ......
    λ......             λ......
                λ......
 λ......       λ......          λ...... このスレ、終了だって カエロッカ…

990 :名前は開発中のものです。:03/03/04 06:45 ID:lcBXDtM7
>>988
それは100ドル札の事です


ところで私はSDK収集マニアなんですが、DirectX4SDKが見つかりません。
お持ちの方、私の持っているレアなSDKと交換しましょう。
希望するSDKを言ってください。


991 :名前は開発中のものです。:03/03/04 08:24 ID:ziD2dMR5
>>990
DX4のSDK? たしか5年くらい前のバージョンだよね。
それなら本の付録でついてきたものが、たぶん探せばまだ手元にあると思う。
問題は、部屋が散らかりすぎて探す気にならないこと。

992 :名前は開発中のものです。:03/03/04 08:58 ID:NLVhNl43
>>991
DirectX4のSDK持ってんのか。
すげぇな、アンタ

993 :名前は開発中のものです。:03/03/04 09:02 ID:d6l7qWOu
4ってあったっけ...

994 :名前は開発中のものです。:03/03/04 10:08 ID:1ax8YLw6
なかったような…

995 :名前は開発中のものです。:03/03/04 10:11 ID:2bQFR+eG
DirectX4はドリカス専用だね。知らない人多いと思うけど
まだ使ってるとこは使ってる。
最後に見たバージョンは4.5bだったかな。今どのくらいだろう。

996 :名前は開発中のものです。:03/03/04 10:44 ID:lcBXDtM7
>>993 994
ラストはネタで終わらすんでしょ?

実はDirectX9の中の人はOpenGLである

997 :名前は開発中のものです。:03/03/04 12:48 ID:igT6HEUy
>>996
そうか、DirectX9がWin32sで動くのはそれでか!!

998 :名前は開発中のものです。:03/03/04 14:06 ID:OdcgEmHM
DirectXも9で終わりなんだってね。
ついに待ちに待ったDirectXIがリリースでつね!

999 :名前は開発中のものです。:03/03/04 14:17 ID:lcBXDtM7
>>998
な ぜ そ れ を 知 っ て い る ?
知っていても書くなよ。守秘義務があるだろうに……


まぁ、DirectXPよりはマシだよなぁ

1000 :名前は開発中のものです。:03/03/04 14:24 ID:5gDarpwS
今だ!1000ゲットォォォォ!!
 ̄ ̄ ̄ ̄ ̄∨ ̄ ̄ ̄       (´´
     ∧∧   )      (´⌒(´
  ⊂(゚Д゚⊂⌒`つ≡≡≡(´⌒;;;≡≡≡
        ̄ ̄  (´⌒(´⌒;;
      ズザーーーーーッ


1001 :1001:Over 1000 Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。

268 KB
★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50

read.cgi ver 05.04.00 2017/10/04 Walang Kapalit ★
FOX ★ DSO(Dynamic Shared Object)