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


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

【C++】 DirectX初心者質問スレ Part10 【C】
1 名前:デフォルトの名無しさん :2006/07/25(火) 21:38:16
※回答する人も、質問する人も必ず読んでください

これらに当てはまる人のための質問スレです。
1.C/C++は多少理解している。
2.最近DirectXを始めたばかり
3.SDKを見ても、Googleで検索しても、いまいち理解できない人
4.余計な雑談は不要ですよ

【 回答してくださる方 】
・ できるだけ優しく質問に答えてあげてください。
・ 優しく教えるのが嫌でしたら、解決するためのヒントだけでも結構です。
 「ググれ」「SDK見れ」以外の回答でおながいします。
・ 神ですら理解不能な質問は無視して下さい。

【 質問する方 】
・ どんな事で躓いているのか明確にしよう。
・ 長くならないなら躓いている部分のコードを晒してみれ。
・ 解決した場合、お礼を言うのは当然だが、何をどうしたら解決したかを明確に書こう。
・ 回答して貰ったら、出来るだけお礼もしよう。

前スレ
【C++】 DirectX初心者質問スレ Part9 【C】
http://pc8.2ch.net/test/read.cgi/tech/1144878498/

2 名前:デフォルトの名無しさん :2006/07/25(火) 21:38:56
【関連サイト】

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

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

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

DXライブラリ置き場
ttp://homepage2.nifty.com/natupaji/DxLib/

Lamp:ゲーム開発とその学習をサポートするミドルウェア
ttp://lamp.sourceforge.jp/

TWINTAIL LOVERS.
ttp://www.twin-tail.jp/

Pastel's Laboratory
ttp://www.roy.hi-ho.ne.jp/pastel/home/index.html

GamDevPukiWiki - DirectX総合スレ (過去ログ等)
http://gamdev.org/w/?%5B%5BDirectX%C1%ED%B9%E7%A5%B9%A5%EC%5D%5D

GamDevPukiWiki - 3DCG製作ソフト (過去ログ等)
http://gamdev.org/w/?%5B%5B3DCG%C0%BD%BA%EE%A5%BD%A5%D5%A5%C8%5D%5D

ゲームを作るための素材を集めよう まとめサイト
http://paw.my-sv.net/index.html

3 名前:デフォルトの名無しさん :2006/07/25(火) 21:58:16
頂点バッファのLockについて質問です。
ポリゴン1つ分の領域(頂点3つ分)をLockして、DrawPrimitiveで描画するとうまくいくのですが、
メッシュ全部のポリゴンを一度にLockして描画すると、うまくいきません。
IDirect3DVertexBuffer9::Lock()はD3D_OKを返しているのですが、
確保した領域に書き込もうとするとなぜか落ちてしまいます。
VRAMもメインメモリも十分にあると思うんですが、
何か原因に心当たりのある方いましたらレスください。

4 名前:デフォルトの名無しさん :2006/07/25(火) 22:08:19
・頂点バッファのバイト数が合ってない
・変なフラグを指定している
・ポインタを渡すところで、変な値をキャストして無理やり渡してる


5 名前:デフォルトの名無しさん :2006/07/25(火) 23:32:19
DXGetErrorDescription9のお返事が英語なの、
日本語でお話出来るようにならないかな?かな?

6 名前:デフォルトの名無しさん :2006/07/25(火) 23:38:05
アドベンチャー作りたいならDirectXいじる必要ないんじゃね

7 名前:デフォルトの名無しさん :2006/07/25(火) 23:39:15
サウンドのミキシングやフェードはDirectSoundじゃないと面倒だけどなぁ

8 名前:デフォルトの名無しさん :2006/07/26(水) 00:23:32
>>5
翻訳エンジン組み込む

9 名前:デフォルトの名無しさん :2006/07/26(水) 00:47:38
CreateGame〜陸海空オンライン〜
日本NO1、MMO製作プロジェクト始まる!
http://www112.sakura.ne.jp/~kaientai-project/creategame.htm

10 名前:デフォルトの名無しさん :2006/07/28(金) 01:48:05
かなり困ってます、読み込んだwaveファイルを同時にならしたいんだけど、どうしても毎回ずれます
↓今は以下のようにしてます、なんかほかに方法ないですかね?

for( int i = 0; i < m_iIndexMax; i++ )
{
m_pSecSndBuf[ i ]->Play( NULL, NULL, NULL );
}

11 名前:デフォルトの名無しさん :2006/07/28(金) 01:50:09
元々合成したwavファイルを作っとく。

12 名前:デフォルトの名無しさん :2006/07/28(金) 02:06:00
>>10
ダブルバッファリング

13 名前:デフォルトの名無しさん :2006/07/28(金) 02:08:06
ttp://www13.plala.or.jp/kymats/study/MULTIMEDIA/waveOut_multibuf.html
ttp://www13.plala.or.jp/kymats/study/multimedia.html


14 名前:デフォルトの名無しさん :2006/07/28(金) 02:21:54
el.hと>>2のDXライブラリ置き場のライブラリを両方使おうとすると、やはり複数宣言で怒られます。
両方を組み合わせて作りたいのですが、なんとか回避できないでしょうか

エラー E2238 C:\borland\test\DxDirectX.h 2822: 'LPDIENVELOPE' の宣言が複数見つかった
エラー E2344 C:\Program Files\Microsoft DirectX SDK (June 2006)\Include\dinput.h 219: 一つ前の 'LPDIENVELOPE' の定義位置

15 名前:デフォルトの名無しさん :2006/07/28(金) 02:36:42
ソースを二つに分ける

16 名前:デフォルトの名無しさん :2006/07/28(金) 03:00:03
別のcppで#include "DxLib.h"以下を記述して、
本体のcppの方でincludeしてみましたが、同じエラーでした。

やってること違うのかな・・

17 名前:デフォルトの名無しさん :2006/07/28(金) 05:03:47
あほか

18 名前:デフォルトの名無しさん :2006/07/28(金) 06:53:18
それ二つ併用するのはいかれてる。作者も想定してないだろ。


19 名前:デフォルトの名無しさん :2006/07/28(金) 10:35:24
同時に使う意味がわからなさすぐる

20 名前:デフォルトの名無しさん :2006/07/28(金) 10:48:03
同時にっていうか両方を使いたいんです。

21 名前:デフォルトの名無しさん :2006/07/28(金) 10:58:49
だから何で?

22 名前:デフォルトの名無しさん :2006/07/28(金) 11:11:44
うるせーな、両方使いたいって言ってんだろーが。

23 名前:デフォルトの名無しさん :2006/07/28(金) 11:21:04
おおかたDxの2DにELの3Dを合わせたいってところなんだろうな

24 名前:デフォルトの名無しさん :2006/07/28(金) 12:13:52
昨夜の併用の人です。16以降は偽者です。
elをメインに今まで進めてたんですが、最近になってDxを知って、Dxの関数も使えたら楽だなぁ・・と。
とりあえず詰まってたところはなんとか解消出来たので、Dxに移行する事も視野に入れてまた考え直してみます。

25 名前:デフォルトの名無しさん :2006/07/28(金) 12:36:00
つーかELなんて終わってるだろw
とっくにwww
作者死んじまったんじゃねぇのwwwww
つーわけで俺はLUNAを薦めるね

26 名前:デフォルトの名無しさん :2006/07/28(金) 12:39:24
Dxも開発は現在進行形で進んでるんじゃないの?

27 名前:デフォルトの名無しさん :2006/07/29(土) 02:39:31
空気を読まずに質問。

時々見かけるラッパーライブラリに、
SetRendeState()に与える値を自前で控えておいて、
直前に与えた値と違いがなければ実際のSetRenderState()の呼び出しを
行わないとか、DrawPrimitive()の手前でまとめて実行するようにしてたりするのだけど、
こんなんを自前で実装する意味ってあるのかな?

たとえばこう。

DWORD m_RSLighting = TRUE;
...

HRESULT
SetLight(ID3DDevice& device, DWORD state)
{
if(m_RSLighting == state)
return S_OK;

m_RSLighting == state;
return device.SetRenderState(D3DRS_LIGHT, state);
}


GetRenderState()等がある以上、D3DDevice()内部でもステートは管理してるのだろうし
SetRenderState()のカラ呼び自体はパフォーマンスに影響するとは思えないのだけど…。
いや、確かめてないからわからないんだけどね。

28 名前:デフォルトの名無しさん :2006/07/29(土) 07:05:56
GetRenderState()ってそもそもピュアデバイスだと使えないんじゃ?

29 名前:デフォルトの名無しさん :2006/07/29(土) 08:15:33
自分でキャッシュする場合はPUREDEVICE前提じゃないの?
まあ計測結果を知りたいなあ





30 名前:デフォルトの名無しさん :2006/07/29(土) 10:03:21
>>27
デバッグ出力レベルを最大に上げてみ
「同じステートをまた設定してるYO」というwarningが出まくるから

warning出すくらいだから、多少はパフォーマンス落ちるんじゃね

31 名前:デフォルトの名無しさん :2006/07/29(土) 10:29:05
つーか、>27は最早「へたなコードスレ」行きだと思うんだ。
まぁ、>30もくだらない間違いを書いてないで素直に指摘するべきだったな。
そんな警告は絶対に出ないからね。

32 名前:デフォルトの名無しさん :2006/07/29(土) 10:46:03
どんだけドライバがうんこでも
そもそもSetRenderStateの呼び出し自体はランタイムの領域なんだから
無駄にDrawPrimitive時にステート変更命令なんて送らないと思うけど。

33 名前:デフォルトの名無しさん :2006/07/29(土) 10:51:25
>>31
お前も試してから書けよ
Ignoring redundant SetRenderState

34 名前:デフォルトの名無しさん :2006/07/29(土) 10:56:15
31は、コンパイラ側の警告レベルを上げて試し、得意げになっていたに一票

35 名前:デフォルトの名無しさん :2006/07/29(土) 11:07:46
いや、>31>>27が間違っていると指摘したついでに余計なことまで書いたって落ちか。
そもそも、>>27のコードと>>30の指摘とは直接関係がないしな。

36 名前:デフォルトの名無しさん :2006/07/29(土) 11:26:19
>>31 >>35が何を言っているのかわからん。

37 名前:35 :2006/07/29(土) 11:51:54
>>36
>>27のコードが間違っているってのは理解できる?

38 名前:デフォルトの名無しさん :2006/07/29(土) 11:59:09
36じゃないけど、==のことだったらそれこそ明らかに誤植で
くだらない指摘だと思うんだが

39 名前:デフォルトの名無しさん :2006/07/29(土) 12:03:17
>>38
31は本質じゃない指摘を上から見下ろしてする、何の役にも
立たないレスってわけか。

40 名前:デフォルトの名無しさん :2006/07/29(土) 12:22:00
凄い自作自演臭

41 名前:27 :2006/07/29(土) 13:16:21
>36じゃないけど、==のことだったらそれこそ明らかに誤植で
>くだらない指摘だと思うんだが

誤植マジごめん。
m_RSLighting = state;
こうね。


いや、自分で書いてるわけじゃないんだけど、行く先々でこんなコードを見かけるんだ。
あまりにもあちこちで遭遇するので、なんかそういう宗教でも流行ってんのかと思ったくらい。
俺の世間の狭さについては、この際置いといてもらって、

えーと、いらないでFAだよね?
「これがDirectXの常識です」くらいの指摘があったりすると、それはそれで助かるのだけれど。

42 名前:デフォルトの名無しさん :2006/07/29(土) 13:21:13
うちはチェックするまでも無く明らかに変わらないステートが
ほとんどだからそういうコードは書いてない。

ラッパーの実装が気になってきた時点でそんなもん卒業だと
思うんだけどな

43 名前:デフォルトの名無しさん :2006/07/29(土) 13:26:10
>>41
いやだから同じステートを指定すると警告が出ると言う指摘は無視なのか
自分に都合の良い結論出てるなら聞かなきゃいいのに

44 名前:デフォルトの名無しさん :2006/07/29(土) 13:28:17
>>41
つまり>>30>>33なわけ

45 名前:デフォルトの名無しさん :2006/07/29(土) 13:44:08
例え無視できるようなのでも、デフォでwarningでるようなライブラリを公開する奴はアフォだし、
warning出さないための処理を宗教だなんて言う奴はもっとアフォだな

46 名前:デフォルトの名無しさん :2006/07/29(土) 14:26:43
>>41
どれくらい意味があるか知りたいなら自分でベンチするしかない。
「なぜそのように書く人が多いのか」なら結論は出てる

47 名前:デフォルトの名無しさん :2006/07/29(土) 14:27:56
また、アフォがわいてきたぞ。

48 名前:27 :2006/07/29(土) 14:32:59
ごめん、自分で書いてみてた。
Direct3D9: (WARN) :Ignoring redundant SetRenderState
(余分なSetRenderStateを無視しました)
が出るんだね。

疑問に思ったのは、DirectX内部でも同等の処理をやっているのは確実だろうに、
これをその外側でもチェックするようにするのは定石なのかってこと。
もちろん同じステートの設定を繰り返し呼び出すことに意味なんかないに決まってるが、
誰もがご丁寧にSetRenderStateのラッパーを書くような事態は、正直少し異常に感じる。
この警告は減らすように努めるべきではあるけど、根絶を目指すほどのものでは無い様にも
思えるんだけど、どうなんだろうか。

49 名前:デフォルトの名無しさん :2006/07/29(土) 14:38:09
ttp://www.gamedev.net/community/forums/topic.asp?topic_id=397317

ここだと

>However, it would be advisable to keep track of these yourself,
>so that you can avoid the overhead of making a useless D3D call.
>The memory and processing footprint of doing this should be really low, anyways.

いらんD3Dの呼び出しを回避するために、自分で追っかけたほうがいいよ。
そのためのコストなんて小さなもんなんだし、

という人もいれば、

SetRenderState( A, valueA ) // set on device
SetRenderState( A, valueB ) // set on device
SetRenderState( A, valueA ) // set on device
SetRenderState( A, valueB ) // set on device - only value that gets used
DrawSomething()

こうなるので、PureDeviceでないなら単純に描画の手前でまとめて処理するように
心がければそれで終了と言ってる人もいる様に思える。

単純にSetRenderStateだけを自前でラップしたところで
SetRenderState( A, valueA ) // set on device
SetRenderState( A, valueB ) // set on device
SetRenderState( A, valueA ) // set on device
は防げないし。
ステートの変更を自前で控えておいて、Draw〜系の呼び出し時に
まとめて迎撃するのは意味がある様にも思えるけど、
これはD3Dの内部で同じことをやってくれてないのかなあ。

50 名前:デフォルトの名無しさん :2006/07/29(土) 14:46:43
警告が出ると言うことは内部でもチェックを行って回避している。
つまり自前でやれば二重にチェックが出来る。
これで安全確実。
無駄だけどな。

51 名前:27 :2006/07/29(土) 14:49:39
>>49は漏れが書きますた。

言葉が足りなかったけど、要は疑問に思ってるのは、
階層持ったモデルの描画とかを自分で処理してて、必要ないステート類の変更を
しちゃったりしないよう心がけるのはまあ当然としても、DirectXの関数を1対1で
直接ラップするような仕掛けは必要なのかということ。

Drawの発行すべてで迎撃しようとおもったら、DirectXの描画関連を全部自前で
ラップしなおして、状態を自前で控えなきゃって話になっちゃうと思うんだけど、
こんなの処理する居場所として相応しいのはDirectXのDrawXXX系の内側であって、
ユーザー側が責任持つのは不自然な気がするんだが、どうなんだと。
ラッパーの動作を崩さないためには、ラッパー外でのD3D系の関数の呼び出しは
一切禁止しなければならないだろうし、そこまで徹底したラッパーが求められるとすると、
DirectXのAPIの存在意義に関わるような。

いや、DirectXはそういうものですってんなら、それはそれで構わないんだ。
定石としてはどうなんだってところが知りたいと。

性能考えたら「自前の管理はするべき」がFA?
好きにしろで終了?

52 名前:デフォルトの名無しさん :2006/07/29(土) 15:07:28
>>49
つステートブロック

最後のやつもステートブロックなら最適化される

53 名前:デフォルトの名無しさん :2006/07/29(土) 15:11:14
って52だけだと誤解されるか。
同じステートブロック内なら最適化されるけど、異なるステートブロックを
連続で適用した場合には、同じステートの変更はたぶん最適化されない。

54 名前:デフォルトの名無しさん :2006/07/29(土) 15:13:53
フィルターを掛けるものと、フィルターを掛けずインライン関数で素通しさせるもの
自分のエンジンでどっちがパフォーマンスが良いのか、
それは計測してみないと分からないから、そういうフィルターを実装してる人がいるんだろう。

しかし27は楽をしたがり、「いいから結論を教えろ」と威張っているのだ。

55 名前:27 :2006/07/29(土) 15:50:28
>>53
理解しますた。ありがとう。
どっちかっていうとステートを塊で管理するためのものだよね。


>>54
ずばりその通りだ!
で、どうなの?
どうなのよ。

いや、本当のところ言うと、とっくに計測されつくされて
答えは出てるものかとばっかり思ってたんだ。
けど、実際にこの種の仕組みを組み込んでる人に聞いても、
潔癖症的な理由の方が先行してて(つまり自分で書いたコード以外は信用できないという)、
あまり実測に基づいてるってわけじゃないケースが多かったのさ。

自分で試した限りでは、関数呼び出しのオーバーヘッド回避くらいにはなるけど、
回避コードが増える分、長い目で見たらトントンかマイナス収支な感じっぽいし。
GPUの足を引っ張るので無いなら、少々の(少々なら)CPU上の負担は無視する選択があるだろうし。

この種のフィルターを実装したくなる人の気持ちはわかるのだけれど、
それが本当に意義のあることなのかどうか、先達の皆様の声を拝聴したいだけなんです。

56 名前:デフォルトの名無しさん :2006/07/29(土) 15:53:36
だから自分で調べろっつってるだろうがこのド低脳がぁーー!

57 名前:デフォルトの名無しさん :2006/07/29(土) 15:59:22
>>55
デバッグのときズラズラーっと警告がでると邪魔だから対処してるだけなんだが
今時関数呼び出しだのifだので処理速度気にするバカはいないだろ

58 名前:デフォルトの名無しさん :2006/07/29(土) 16:00:43
はいはい定石定石

59 名前:27 :2006/07/29(土) 16:20:10
>>56
初心者質問スレで質問して何が悪いんだー!
そう申し上げたい。

>>57みたいな理由でやるのはわかるけど、そのためにデバイスのステート変更を
全部自前で控えといて対処ってのは、明らかに話が大きすぎると思う。
自前SetRenderStateの中でGetRenderStateして、値が同じだったらセットしないで
警告を回避するとかでもいい気がするし。

>>55で書いたみたいな、自前SetRenderStateで処理してる人が何を主眼としてるのか、
それが知りたいわけですよ。
>今時関数呼び出しだのifだので処理速度気にするバカはいないだろ
は俺もそう思うけど、変に増えると読みづらくてかなわないじゃん。
もちろん、もし仮に自前チェックが意味無いならの話なんだけどさ。

60 名前:デフォルトの名無しさん :2006/07/29(土) 16:35:21
SetRenderStateで同じものをセットしてもパフォーマンスに差は無いよ。
これでいい?

61 名前:デフォルトの名無しさん :2006/07/29(土) 16:41:30
ソースは?

62 名前:デフォルトの名無しさん :2006/07/29(土) 16:48:06
http://www.bulldog.co.jp/

63 名前:デフォルトの名無しさん :2006/07/29(土) 16:48:48
8月はヘルシー豆腐ハンバーグかー。


誰か作ってくれ。

64 名前:デフォルトの名無しさん :2006/07/29(土) 16:53:26
自分で作れよ。

65 名前:デフォルトの名無しさん :2006/07/29(土) 16:57:43
嫁さん欲しいな。

66 名前:デフォルトの名無しさん :2006/07/29(土) 16:58:33
関東モンはこれだからなぁ。
ttp://www.otafuku.co.jp/

67 名前:デフォルトの名無しさん :2006/07/29(土) 17:06:25
大阪だとDirectXのことダクトって呼ぶってほんと?

68 名前:デフォルトの名無しさん :2006/07/29(土) 23:44:02
通天閣9
Windows阪神

69 名前:デフォルトの名無しさん :2006/07/30(日) 00:15:48
↑この笑いのセンスはどこ地方?


70 名前:デフォルトの名無しさん :2006/07/30(日) 00:54:02
よく吉本のお笑いが全然笑えないって言う人いるじゃんか。
俺住之江に済んでるけどそいつらにすごく共感できるんだよ。
「にいちゃんこれなんぼ?」「百万円」
これだけでぎゃはぎゃは笑える吉本ファンの脳みそはホント理解不能。
そんな俺があえて言おう!>>68はシベリア。

71 名前:デフォルトの名無しさん :2006/07/30(日) 01:46:31
えーと、>70の笑いどころはどの辺?

72 名前:デフォルトの名無しさん :2006/07/30(日) 02:02:41
吉本新喜劇の笑いどころは、笑点や水戸黄門に通じるところがあると思う。
いつも同じ単純なギャグや行動をすることで、見ている人が安心できるんじゃないかな。

73 名前:デフォルトの名無しさん :2006/07/30(日) 02:30:27
あー、条件反射?
つーか、頭使うことを放棄してパターンに浸る安心感か?

74 名前:デフォルトの名無しさん :2006/07/30(日) 03:36:59
専門的には条件反射でなく予定調和と言います


75 名前:デフォルトの名無しさん :2006/07/30(日) 14:39:59
DirectX風にギャグ言ってくれよ

76 名前:デフォルトの名無しさん :2006/07/30(日) 14:44:38
突発的なのもあるけど
導入部分が大事なものも多い

77 名前:デフォルトの名無しさん :2006/08/01(火) 00:43:24
win2kでSDKを導入しようしてるんですけど公式サイトの
どのバージョンも未サポートみたいでインストールさえうまくいきません。

どのバージョンならインストールできたんでしょうか?お願いします


78 名前:デフォルトの名無しさん :2006/08/01(火) 11:19:34
Update Octorber 2004がVC6サポートのラスト
Update December 2004がWin2000サポートのラスト

79 名前:デフォルトの名無しさん :2006/08/01(火) 13:34:12

アニメ BEST100
ttp://www.animedepot.biz/DVDlist/2005years_best.htm

1位
http://www.animedepot.biz/DVDlist/title/KVDVD0542.htm
2位
http://www.animedepot.biz/DVDlist/title/KVDVD0518.htm
3位
http://www.animedepot.biz/DVDlist/title/A18D2492.htm
4位
http://www.animedepot.biz/DVDlist/title/KVDVD0533.htm
5位
http://www.animedepot.biz/DVDlist/title/A18D2480.htm
6位
http://www.animedepot.biz/DVDlist/title/KVDVD0512.htm
7位
http://www.animedepot.biz/DVDlist/title/KVDVD0502.htm
8位
http://www.animedepot.biz/DVDlist/title/KVDVD0521.htm
9位
http://www.animedepot.biz/DVDlist/title/KVDVD0505.htm
10位
http://www.animedepot.biz/DVDlist/title/KVDVD0508.htm

80 名前:77 :2006/08/01(火) 14:21:41
ありがとうございます。インストールすることができました

81 名前:デフォルトの名無しさん :2006/08/01(火) 14:36:30
>>78
簡潔にして最良のコメント
これはテンプレに入れるべきだな
過去スレでも何度か質問されてたし・・・

82 名前:デフォルトの名無しさん :2006/08/05(土) 01:00:27
ワールドトランスフォームで拡大縮小する方法は分かったんだけど、ちょっと違う気がして質問。
Xファイルからメッシュを拡大縮小して呼ぶ方法ってない?もしくはそれに類似する方法教えてください。

83 名前:デフォルトの名無しさん :2006/08/05(土) 01:06:02
いや、それでいいだろ。
普通にスケーリングしたマトリクス乗算して描画しようよ。

変更後のサイズが固定で、法線正規化のコストを避けたいってんなら
読み込みの時に頂点加工するのも手だけど、ボーンとかまで書き換えなきゃならんし
面倒で意味ねーずらよ。

84 名前:デフォルトの名無しさん :2006/08/05(土) 01:56:27
苦労して吐かせたxファイルがやたらと大きくて、他のxファイルとサイズが果てしなく違う・・・
それで個別に拡大縮小したかったわけです。

85 名前:デフォルトの名無しさん :2006/08/05(土) 02:09:01
あー、わかった。
1モデル描画する都度、使うマトリクスは切り替えなさいな。

86 名前:デフォルトの名無しさん :2006/08/05(土) 02:37:18
Xファイル中のトップの行列を縮小して保存し直せば?

87 名前:デフォルトの名無しさん :2006/08/05(土) 09:48:07
ゲームなんですけど
DirectInputでキーボードのAcquire()に失敗した場合
ループまわして成功するまでAcquire()してみるですか?
それともスキップして次のフレームに委ねるですか?

88 名前:デフォルトの名無しさん :2006/08/05(土) 11:04:23
DXTraceはリリースビルドでも有効?

89 名前:デフォルトの名無しさん :2006/08/05(土) 23:06:14
fScaleをThingのメンバにしたらいけました。

90 名前:デフォルトの名無しさん :2006/08/06(日) 00:04:31
>>88
有効。
消したい場合は

#define DXTRACE_MSG(str) DXTrace( __FILE__, (DWORD)__LINE__, 0, str, FALSE )
#define DXTRACE_ERR(str,hr) DXTrace( __FILE__, (DWORD)__LINE__, hr, str, FALSE )
#define DXTRACE_ERR_MSGBOX(str,hr) DXTrace( __FILE__, (DWORD)__LINE__, hr, str, TRUE )

を使う。
_DEBUGがdefineされてない場合消えてくれる。

91 名前:デフォルトの名無しさん :2006/08/06(日) 13:49:26
ほー

92 名前:デフォルトの名無しさん :2006/08/06(日) 16:30:24
覚えたての初心者です
今やっと色々ポリゴンを表示させてテクスチャを貼ることが出来たのですが
今の所は手順を
頂点バッファに頂点データを送る
SetStreamSourceする
SetTextureする
DrawPrimitiveで描く
という風にやってます。

これは毎回そうしないといけないんですか?
それとテクスチャは必ず描画の前にやらないといけないんでしょうか
もしかしたら何か効率的に出来るのか色々悩んでいます


93 名前:デフォルトの名無しさん :2006/08/06(日) 17:50:22
>>92
VRAMに送るのは一回でえぇょ。。。

94 名前:デフォルトの名無しさん :2006/08/06(日) 19:36:59
頂点バッファに〜は一回でいい場合がほとんど。
SetTextureはサンプルみたいな極小なプログラムならともかく
実際ゲームを作る段階になればガンガン切り替えることになるだろ

95 名前:デフォルトの名無しさん :2006/08/06(日) 21:13:45
>>92
ステートマシン、という言葉を覚えておくんだ。
DirectXの描画器は、常に最新の設定状態を覚えてる。
設定を変えないで描画を続けられるなら、それが一番低コストだけれど、
変えなきゃいけないところは変えるしかない。

効率よく変更を最小限にとどめるようにする努力は怠らない方がいいけど、
そうは言っても変えるしかない状況なんていくらでもある。
まずは気にしないでガンガン書くのがいいと思うよ。

96 名前:デフォルトの名無しさん :2006/08/06(日) 21:22:27
>>93-95
なるほど確かに頂点バッファに転送するのは最初にやればいいみたいですね
と言う事は、今はまだ3個くらいしか表示させてないサンプルなので
そのまま表示させてますが
実際は
変更があれば、頂点バッファの変更内容の変更
表示したいテクスチャのオブジェクトのポインタを渡して
SetStreamSource
SetTexture
DrawPrimitive
をループさせてたくさん表示させるってことでしょうか

少しわかってきました
これから複数の画像ともっとたくさん表示させて色々やってみます
ありがとうございました

97 名前:デフォルトの名無しさん :2006/08/07(月) 00:34:27
SDKをインストールしようとしているものなのですが
英語なので不安があり、おわかりになる方に相談したいのですが
dxdsk_jun2006.exeを
アメリカのサイトからダウンロードして
ダブルクリックすると
こんどは解凍の画面になって
Unzip
を選択して任意のフォルダに解凍して
インストーラーが起動すると思うのですが
解凍後のファイルは削除しても大丈夫なのでしょうか?
それとも何か意味あるんでしょうか?
教えていただけると幸いです。

98 名前:デフォルトの名無しさん :2006/08/07(月) 00:46:49
大丈夫ない

99 名前:デフォルトの名無しさん :2006/08/08(火) 03:21:12
D3DXVec3Project関数を使用して三次元空間の座標からスクリーン座標への変換を試みたのですが、
スクリーンの中心から離れれば離れるほど変換後の座標がズレていってしまいます。
なぜなんでしょうか?

ちなみにシューティングゲームを作っていて、自機や敵を3Dオブジェクトにして、弾をスプライトという風にやっています。
弾を発射するとき、弾の初期位置を決めるときに…アレ?…と言う感じです。

100 名前:デフォルトの名無しさん :2006/08/08(火) 03:33:39
つ[ 電卓 ]

101 名前:デフォルトの名無しさん :2006/08/08(火) 18:32:36
デスクトップの画像を拡大縮小表示するようなプログラムで、
CPU負荷を軽減するためにDirectDrawを使用しているのですが、
マルチモニタ環境下でデスクトップからサーフェイスにBitBlt
しようとすると激しく重いのです。
シングルモニタ時は秒間30回転送してもCPU使用率は0%で、
マルチモニタ時は秒間30回でCPU使用率100%に達しました。
マルチモニタ時には、DirectDrawサーフェイスはBitBltの
アクセラレーションが効かないようなところに確保されるのでしょうか?
それともまた別の原因があるのでしょうか?

試した事
・ビデオカードはG550とGeforceFX5600で試したが何れも同じ結果
・2つのモニタには同じ解像度と色数を設定した
・デスクトップ→(BitBlt)→DDBではモニタを跨いでもアクセラレーションは効いていた
・全てプライマリモニタに置いても状況変わらず

デスクトップ
↓(BitBltでコピー:ハードウェアアクセラレーション効いてない)
DirectDrawサーフェイス
↓(Bltで拡大縮小:ハードウェアアクセラレーション効いてる)
DirectDrawサーフェイス
↓(BitBltでコピー:ハードウェアアクセラレーション効いてない)
DDB

102 名前:デフォルトの名無しさん :2006/08/08(火) 18:46:09
最近DirectXに興味をもったものです。
まずはDirectXを初期化(?)して、
ウィンドウを黒で塗りつぶすところからはじめようと思い、
単なるウィンドウを表示するだけのプログラムをいじり始めました。

ソース2つ、ヘッダを1つの構成で、
1つ目のソースは、WinMain関数とウィンドウプロシージャ、
それからLPDIRECT3DDEVICE9のClearとBegin〜EndSceneをしている関数。
もうひとつは、DirectXを初期化する関数です。
これはメッセージループに入る前に呼び出しています。

ヘッダはLPDIRECT3D9 pDevice、LPDIRECT3DDEVICE9 pD3d、D3DPRESENT_PARAMETERS d3dppを
定義して、二つのソースでインクルードしているのですが、
コンパイル時はエラーを吐かないのですが、
リンク時に既に定義されているというエラーが出てしまいます。

具体的には、
Main.obj : error LNK2005: "struct IDirect3DDevice9 * pDevice" (?pDevice@@3PAUIDirect3DDevice9@@A) は既に InitD3D.obj で定義されています。
Main.obj : error LNK2005: "struct _D3DPRESENT_PARAMETERS_ d3dpp" (?d3dpp@@3U_D3DPRESENT_PARAMETERS_@@A) は既に InitD3D.obj で定義されています。
Main.obj : error LNK2005: "struct IDirect3D9 * pD3d" (?pD3d@@3PAUIDirect3D9@@A) は既に InitD3D.obj で定義されています。
Debug/007_Direct3D最小コード.exe : fatal error LNK1169: 1 つ以上の複数回定義されているシンボルが見つかりました。
と出ます。

Main.cppでもInitD3D.cppでもこれらを定義した覚えはないのですが、
ヘッダファイルをインクルードしただけで定義されてしまうのでしょうか?
ご教授いただけるとうれしいです。

103 名前:デフォルトの名無しさん :2006/08/08(火) 19:39:38
外部リンケージの変数を2重定義してんだからそりゃエラーになるだろ。

104 名前:102 :2006/08/08(火) 20:57:55
103さんありがとうございます。

ヘッダの中身をexternにして、別のソースファイルに実体を書いたところ、
リンクまできちんと通りました。
しかし、「アクセスが拒否されました。」と出て、プログラムは起動されませんでした。
フォルダの中を見てみるとexeファイルが出来ていたので、試しにクリックすると実行することができました。
Visual C++ 2005 Express Editionを使っていますが、何が原因なのでしょう?


105 名前:デフォルトの名無しさん :2006/08/08(火) 21:17:34
うあ・・・
微妙質問するなぁ・・・
そんなのわかったところでDirectX云々違うかもしれんそうかもしれんし、特定しにくいってばよ。
はじめはサンプルとか、チュートリアルとか確実に動くモンを改造しながらやってくれ。
当然動くべきサンプルが動かないとかいうならそりゃエラーをのっけりゃある程度原因はわかるけど
独自コードで「変なんです」言われてもソース眺めてみなきゃわかんねーよ。
過去に同じ問題に直面しました。って人ならわかるかもしれんけど。

106 名前:102 :2006/08/09(水) 01:54:32
103さん、105さんありがとうございました。
PCを再起動してもう一度ビルドしたところ普通に動作しました。
最近PCの調子がおかしかったのでそのせいかと思います。


107 名前:デフォルトの名無しさん :2006/08/09(水) 05:03:50
恐らくPCを再起動しなくても
開発環境を開きなおすだけでよかった予感

108 名前:デフォルトの名無しさん :2006/08/09(水) 08:02:35
再起動しました=お祓いをして貰いました


109 名前:デフォルトの名無しさん :2006/08/09(水) 18:44:56
質問です
マウスの座標(つまり2次元のプロジェクション座標?みたいな)に応じた
画面上のZ値(Zバッファなどの)を取得する関数などはありませんか?


110 名前:デフォルトの名無しさん :2006/08/09(水) 20:24:55
>>109
カーソル位置のZバッファを参照すればいい

111 名前:デフォルトの名無しさん :2006/08/09(水) 21:04:11
質問です。DirectX9 SDKのaugust2006が出たようですが、
誰の役に立ってるんでしょうか


112 名前:デフォルトの名無しさん :2006/08/09(水) 21:22:58
>>111
あれだ。
最新の環境で開発してる会社がどうしても治らない不具合をMSにわざわざ報告するんだ。
んで、DirectXの不具合が治ってそれに対応したら出荷する。
どっかMSと蜜にやりとりできるところがあんじゃねぇのかな?

113 名前:デフォルトの名無しさん :2006/08/09(水) 21:50:55
いまだに2003Summerですがなにか?

114 名前:デフォルトの名無しさん :2006/08/09(水) 23:29:41
>>111
実質DX10のベータだよ
DX9の更新はない
色々新しいもん入ってたけどXbox360の開発環境に興味がある奴が触るぐらいじゃね

>>113
DX9SDKもかなり頻繁に出たけど、スプライトぐらいしか目ぼしい更新なかったよな
使わないけど

115 名前:デフォルトの名無しさん :2006/08/09(水) 23:41:58
>>114
コアは更新されないから目ぼしい更新がないのは当然。
基本的に機能に変更があるのはD3DXだけ。

116 名前:デフォルトの名無しさん :2006/08/09(水) 23:50:54
変更で一番いたいのは引数の変更だな
順番と数が変わるとかライブラリとしては基地外に近い
つか、残せよ。。。

117 名前:デフォルトの名無しさん :2006/08/10(木) 00:55:34
>>116
禿同。
ほんのマイナーチェンジでまったくビルドが通らなくなっててビビるのはもうやだ。
あまつさえ同名の関数仕様が滅茶苦茶に変わってて、単に引数あわせるだけじゃ
どうにもならなかったりすることすらあるし…。
D3DXはほんまやりたい放題やでーフフフハーハーハー

118 名前:デフォルトの名無しさん :2006/08/10(木) 03:49:37
ブヒヒヒヒすいません

119 名前:デフォルトの名無しさん :2006/08/10(木) 07:18:56
さりげなくサポート対象OSにWindows2000が復活してる気がする。

120 名前:デフォルトの名無しさん :2006/08/10(木) 07:35:08
( ゚,_・・゚)ブブブッ

121 名前:デフォルトの名無しさん :2006/08/10(木) 10:50:04
少し趣が違うかもしれませんが、初心者がゲームプログラミングをdirectxではじめる時、
これを読めばいいぞっていう本がありませんか?
アマゾンなどを覗いてもなかなか賛否両論でして…(ここでも賛否両論でしょうが、人数が多いのでこちらの方が良いかと)
よろしくお願いいたします。


122 名前:デフォルトの名無しさん :2006/08/10(木) 11:42:09
賛否両論です。

123 名前:デフォルトの名無しさん :2006/08/10(木) 13:49:54
>>121
ここでも向こうでも賛否両論だとわかっているのなら
聞かずに自分で判断しろ。

124 名前:デフォルトの名無しさん :2006/08/10(木) 18:40:14
フルスクリーンのゲームで
スプライト使ってテクスチャを直接描画してるとき、
ウィンドウをAlt+Tabとかで非アクティブにしたら
スプライトのEnd()でアクセス違反が起こるんだが
対処法知らない?

DEVICELOSTとかは処理してるつもり。
スプライトなしの場合はうまく動く。


125 名前:デフォルトの名無しさん :2006/08/10(木) 19:07:54
DEVICELOST時の処理で
スプライトの OnLostDevice
デバイスの Reset
スプライトの OnResetDevice
の順に処理してる?


126 名前:デフォルトの名無しさん :2006/08/10(木) 19:20:33
>>125
してる。

TestCooperativeLevelって
エラー起こらなくても毎回呼ぶもの?


127 名前:124 :2006/08/10(木) 19:39:40
TestCooperativeLevel毎回最初に呼んで調べたら
うまくいったっぽい。

でもバグが出にくくなっただけかもorz


128 名前:デフォルトの名無しさん :2006/08/10(木) 20:43:51


質問!
モデルのツブツブ頂点FVF?が書いてるデータを取得したいのだがどうすればいい?
判定用に。

XFILEの読み込みはそこらへんに落ちてたアニメクラス使っている。


129 名前:デフォルトの名無しさん :2006/08/10(木) 20:49:36
GetVertexBuffer
事故解決

俺って天才うおぉぉぉおおー!

130 名前:デフォルトの名無しさん :2006/08/10(木) 21:24:56
うおぉぉぉおおー!

131 名前:デフォルトの名無しさん :2006/08/10(木) 23:58:58
>>119
マジだ!
早速インスコしてみる

132 名前:デフォルトの名無しさん :2006/08/11(金) 00:26:32
---------------------------
Setup - Microsoft DirectX SDK
---------------------------
This version of the Microsoft DirectX SDK is not supported on this Operating System.
---------------------------
OK
---------------------------
ダメだぁあああああああああああ!!!!!!!

133 名前:デフォルトの名無しさん :2006/08/11(金) 02:18:43
ただの記入ミスかよ。
MSめ、ぬか喜びさせやがって。

134 名前:デフォルトの名無しさん :2006/08/11(金) 06:01:12
うおぉぉぉおおー!うおぉぉぉおおー!

135 名前:デフォルトの名無しさん :2006/08/11(金) 06:05:55
>>131
なんだ?

インスコ

って?下手糞な自分用語使うなクズ野郎。
よしんば、インストールの略にしてもインストじゃねぇのか?

136 名前:デフォルトの名無しさん :2006/08/11(金) 06:42:27
おー、すれてない人発見。

>>135
そういう言い回しが少なからず流布しているのだよ。
まぁ、間違って覚えている香具師も多いけどな。
#インストロールとかインストゥールとかインストオールってのもあったな。

137 名前:デフォルトの名無しさん :2006/08/11(金) 06:43:13
ポリゴンが大量にある2D図面を表示するプログラムを作ってるのですが,
凹多角形があるので凸多角形分割したんです.
すべて凸多角形なのでTRIANGLEFANで描画したのですが,
同じ関数を通っているのに,描画されない図形がいくつか出てしまいました.

たとえば
多角形A
x = -1437.273804, y = 15712.901367
x = -1444.715088, y = 15713.530273
x = -1437.696411, y = 15711.789063
多角形B
x = -1437.273804, y = 15712.901367
x = -1437.696411, y = 15711.789063
x = -1433.636719, y = 15713.075195
x = -1434.369751, y = 15713.475586

が描画されません.
裏表を間違えているのかと思い描画順を逆にしたりしてみたのですが
意味がありませんでした.
頂点はカラーと座標しか持っていないものです.
どういったことが考えられるでしょうか...どなたかお願いします.

138 名前:デフォルトの名無しさん :2006/08/11(金) 06:50:14
「インスコ」なんて言葉を使う奴は十中八九初心者。

139 名前:デフォルトの名無しさん :2006/08/11(金) 07:28:24
>>136
ちがうじゃん。
ずっと昔の誤表記からそう言ってるアホがいるだけじゃん。
http://d.hatena.ne.jp/keyword/%A5%A4%A5%F3%A5%B9%A5%B3

池沼みたいなノリか?
会社で使ったらキチガイ確定物だな。

140 名前:デフォルトの名無しさん :2006/08/11(金) 07:39:17
>>139
「ちがう」とまでは言えないべさ。
>136は語源に言及していないのだし。
実際、(余り知らずに)2ch語を使いたがる高校生辺りがよく使っているよ。
Googleでも434千件も引っかかるしね。

141 名前:デフォルトの名無しさん :2006/08/11(金) 07:45:29
>>140
なにそれ?
池沼もGoogleでのヒット件数が多いからよく使うとか言っていいわけ?w

142 名前:デフォルトの名無しさん :2006/08/11(金) 08:02:46
>>141
池沼はそれ単体でヒットしても本来の意味の可能性もあるから一概には言えないんでない?
音で聞いても本来の文字の積もりかもしれないわけだし。

で、それはさておき何粘着しているの? 正直どうでもいいじゃん。
>136>138が間違っているってことでもないんだし。
#そもそもDirectXに全く関係ないことは言うに及ばず。

143 名前:デフォルトの名無しさん :2006/08/11(金) 08:05:00
関係ないことをわざわざ長文で・・・

144 名前:デフォルトの名無しさん :2006/08/11(金) 10:00:53
お前らそろそろどこが縦読みか教えてくれませんかよ?

145 名前:デフォルトの名無しさん :2006/08/11(金) 10:09:53
インスコは普通に言うし、通じるしな。

146 名前:デフォルトの名無しさん :2006/08/11(金) 10:16:12
リアルならともかく2chでインスコに突っ込む奴が居るとは思わなかった
壮大な釣りか

147 名前:デフォルトの名無しさん :2006/08/11(金) 12:18:40
DIRECTINPUTの GetDeviceData したら DIERR_NOTBUFFERED がかえって来たんだけど、なんか順番抜かしてた?
その対処法というかやるべきことみたいのとかググっても全然出て来ないし、教えてエロい人。

148 名前:デフォルトの名無しさん :2006/08/11(金) 12:20:34
「間違えた奴がそう思わせたいだけ」ってどっかに元ネタあったっけ

149 名前:デフォルトの名無しさん :2006/08/11(金) 13:48:00
インスコに突っ込まれるとはおもわなんだ。
誰もが突っ込みたくなる釣り。プロだな。


150 名前:デフォルトの名無しさん :2006/08/11(金) 14:06:38
インスコって2ch用語でおkだよね?
俺釣られてる?

151 名前:デフォルトの名無しさん :2006/08/11(金) 14:09:53
>>150
おk。釣られてる。


152 名前:デフォルトの名無しさん :2006/08/11(金) 14:11:35
っていうか
infファイル書き換えれば (たった数文字書き加えれば)

2000だろうが95だろうが
インストールできるようになるでホンマに



WMP9をWindows98SEにインストールする手順とまったく同じ。

153 名前:デフォルトの名無しさん :2006/08/11(金) 14:13:32
まあこういうアホもいるよ

「インストールとは、ソフトウェアをOSで使用できるように格納することである」


これは明確な無知。
インストールというのは据え置くと言う意味で、
ハードウェアの取り付けにさえインストールと呼ぶ。


無知バカはソフトだけだと思ってる。

154 名前:デフォルトの名無しさん :2006/08/11(金) 14:32:54
>>153
そか。よかったな。

155 名前:たまには、釣られてみるか。 :2006/08/11(金) 16:00:19
>>153
ソフトだけだろ。

ここは日本で、インストールと install は違うということは、
覚えておいたほうがいい。

156 名前:デフォルトの名無しさん :2006/08/11(金) 16:12:19
>>155
「インストール」は日本語で
`install'は英語

とでも言いたいのか?

157 名前:デフォルトの名無しさん :2006/08/11(金) 16:41:59
漏れの目の前には「演算プロセッサボードインストールマニュアル」なるものがあるのだが。
いつから演算プロセッサボードをソフトウェアと言うようになったんだ?

158 名前:デフォルトの名無しさん :2006/08/11(金) 16:43:19
きっと >>153 みたいなアフォが書いたんだよ。(w

159 名前:デフォルトの名無しさん :2006/08/11(金) 16:44:18


Xファイル表示どうするんですか?

160 名前:デフォルトの名無しさん :2006/08/11(金) 17:48:23
金曜夜9時にチャンネルを10に回せば表示されるよ

161 名前:デフォルトの名無しさん :2006/08/11(金) 17:51:15
ソフトだけだと思ってたバカが図星突かれるとこうなるということだよw

無知すぎ

162 名前:釣られすぎですかぁ? (w :2006/08/11(金) 18:25:45
http://ja.wikipedia.org/wiki/%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB

> なお、英語の install は「設置する」「取り付ける」といった意味であり、
> コンピュータやモニタを設置すること、周辺機器を接続すること、拡張カー
> ドを取り付けることなど、ハードウェア全般についても用いるが、日本語で
> はもっぱらソフトウェアを導入する意味にのみ用いる。

163 名前:デフォルトの名無しさん :2006/08/11(金) 18:36:43
Wikipediaがどうかしたの?

164 名前:デフォルトの名無しさん :2006/08/11(金) 19:13:18
結局ハードも対象なんじゃん(プ

165 名前:デフォルトの名無しさん :2006/08/11(金) 19:17:11
ま、これに懲りたらサル未満のバカが人間様に口応えするなんていうバカをやめてもらいたいもんですなw

サル未満の出来損ないはとっとと消えろ(プ

166 名前:デフォルトの名無しさん :2006/08/11(金) 19:40:19
>>152
それで問題は出てない?
本当は動くのに単にバージョンチェックで弾いているだけってことでOK?

167 名前:デフォルトの名無しさん :2006/08/11(金) 20:48:26
>>163
いや別に、>>153 以外の一般的な意見だなぁと思ってね。

>>164-165 は、「日本語では」と言う意味が理解できていないみたいだけど。(w

168 名前:デフォルトの名無しさん :2006/08/11(金) 20:59:15
アパートに住んでいると言ったら、金持ちなんだとわざとらしく驚くような人種なんだろう。

169 名前:デフォルトの名無しさん :2006/08/11(金) 21:00:22
アパートに住んでいると言ったら、金持ちなんだとわざとらしく驚くような人種なんだろう。

170 名前:デフォルトの名無しさん :2006/08/11(金) 21:12:52
>なお、英語のinstallは「設置する」「取り付ける」といった意味であり、コンピュータやモニタを設置すること、周辺機器を接続すること、拡張カードを取り付けることなど、ハードウェア全般についても用いるが、日本語ではソフトウェアを導入する意味に用いる事が多い。

???

171 名前:デフォルトの名無しさん :2006/08/11(金) 21:27:56
>>152
infファイルなんて添付されて無いぞぉおおおおおおおおおお!!!!

172 名前:デフォルトの名無しさん :2006/08/11(金) 21:59:27
>>170
インストールの履歴
(最新版) (前の版) 2006年8月11日 (金) 12:12 125.100.229.66 (ノート) (→概要)

これすれ見て慌てて書き換えたんだろ。(w

173 名前:デフォルトの名無しさん :2006/08/11(金) 22:53:10
infでなくてなんだっけ

何かあるんだよ
メモ帳で開くといんすころーのれバージョンが書いてあるやつ



174 名前:デフォルトの名無しさん :2006/08/11(金) 23:13:27
そう言われてみればいんすころーのれバージョンが書いてあるやつあったな。
なんだっけ?

175 名前:デフォルトの名無しさん :2006/08/11(金) 23:29:25
添付されてるサンプルがかなり変わってるな

176 名前:デフォルトの名無しさん :2006/08/11(金) 23:46:43
俺の腹のバージョンがボストロールです。

177 名前:デフォルトの名無しさん :2006/08/11(金) 23:50:18
>>153より可哀相な子が何人もDirectXに関わってる事に衝撃を受けた

178 名前:デフォルトの名無しさん :2006/08/12(土) 00:00:44
>>177
はぁ?何いってんの?可哀想なのはお前だろプゲラwwwwww

179 名前:デフォルトの名無しさん :2006/08/12(土) 00:15:36
バージョン書いてるファイルなんてどこにも無かったぜ
dx_setenv.cmdかと思ったら違うっぽいしな

180 名前:デフォルトの名無しさん :2006/08/12(土) 00:24:48
>>179
何?君?ワレようと必死なの?
ソフトなんてワレてもどうせ覚えるの面倒で使わないぞw
会社でmax xsi lw maya のライセンスを買ってもらっておきながら
ついに起動するのすら面倒で(ライセンスキー打ってユーザ登録する画面から滅入るw)退職した
俺がいうんだ。間違いないw

181 名前:デフォルトの名無しさん :2006/08/12(土) 00:33:59
クビか

182 名前:デフォルトの名無しさん :2006/08/12(土) 00:38:14
>>181
いや、普通に激務で嫌になったw

183 名前:デフォルトの名無しさん :2006/08/12(土) 07:35:07
LWはハードウェアのドングルじゃないのか?
ほかは知らんがせいぜい一度登録したら終わりだと思うんだが……
毎回入力するなら自動化すればいいのに

184 名前:デフォルトの名無しさん :2006/08/12(土) 11:29:27
ニートの不安から精神を病むことは多い。
空想上の激務と空想上の退職を本当の記憶と思いこんでいるのだろう。

185 名前:デフォルトの名無しさん :2006/08/12(土) 13:12:13
デスマーチで精神おかしくなった結果
起動するのすら面倒に感じるようになってしまった
と考えればつじつまが合う

186 名前:デフォルトの名無しさん :2006/08/12(土) 13:48:27
そういやこの手のツールって全然.NETみないな

187 名前:デフォルトの名無しさん :2006/08/12(土) 23:24:52
ドングルころころ
ドングルこー
oh yeah(c'mon baby) にハマってさあ大変


188 名前:デフォルトの名無しさん :2006/08/12(土) 23:34:23
>>187に対する爆笑レス

189 名前:デフォルトの名無しさん :2006/08/12(土) 23:55:53
ドジョウが出てきて、はいどうじょ↓

190 名前:デフォルトの名無しさん :2006/08/12(土) 23:57:03
|     ∧_∧
|.     (・ω・` )スルー
|スス… /J   J
↓   ,,, し―-J


191 名前:デフォルトの名無しさん :2006/08/13(日) 01:57:27
ティーポットは表示できたんだけど、これをアニメ調(トゥーン)表示にするにはどうすれば良い?

192 名前:デフォルトの名無しさん :2006/08/13(日) 02:14:21
シェーダ使いなさいな。
固定機能だけでも、スペキュラを極端な値に設定してやるとかで
ある程度までなら対処できる。
環境マップでも可。
インキング(縁取り)は拡大&反転でイナフだ。

193 名前:デフォルトの名無しさん :2006/08/13(日) 03:56:53
Zバッファ有効にしてるから拡大してもう一つ表示しても大差ないってことですか
light.Diffuse.r = 2.5f;
light.Diffuse.g = 2.5f;
light.Diffuse.b = 2.5f;
でちょうど良くなった

194 名前:デフォルトの名無しさん :2006/08/13(日) 04:37:29
ウィンドウサイズが1:1のときは普通にxファイルは表示されるのですが、2:1などの1:1じゃないときは拡大縮小されて表示されます。
ウィンドウサイズに関係なくそのまま表示するにはどうしたら良いでしょうか?

195 名前:デフォルトの名無しさん :2006/08/13(日) 04:55:22
>>191
固定機能でトゥーンシェーディングやりたいなら、D3DTSS_TEXCOORDINDEXと
D3DTSS_TEXTURETRANSFORMFLAGSを設定してトゥーン用のテクスチャを
セットすれば簡単にできるが、シェーダを使った方が簡単だと思う。

196 名前:デフォルトの名無しさん :2006/08/13(日) 05:44:13
xファイルの中に入ってるアニメーションを再生する方法がワケワカメorz

197 名前:デフォルトの名無しさん :2006/08/13(日) 06:19:03
>>194
D3DXMatrixPerspectiveFovLH の Aspect を
(float)width / height ね。

198 名前:デフォルトの名無しさん :2006/08/13(日) 09:31:15
>>196
TWIN TAIL LOVERS か
ウマイハナシ でググればソースがあるぞ。

SDKよりは判り易いかと
自分は野村XX(ウマイハナシ)さんの奴を、改造しまくって使ってるでよ。

199 名前:デフォルトの名無しさん :2006/08/13(日) 13:49:36
DirectSoundBufferのRestoreっていままで気にも留めなかったけど、
使ったことないのに気づいた。これが必要になるようなバッファのロストって本当に起こるの?


200 名前:デフォルトの名無しさん :2006/08/13(日) 15:57:31
>199
ハード上に専用メモリを持っているサウンドカードを使っている奴って本当にいるの?

201 名前:デフォルトの名無しさん :2006/08/13(日) 21:04:00
DirectShow is no longer recommended for game developmentということらしいですが、
それなら何にすればいいんでしょうか?

202 名前:デフォルトの名無しさん :2006/08/13(日) 21:05:31
まんどいから全部メインメモリに置いてる。
どうせストリームがほとんどだから大して使わないし。

203 名前:デフォルトの名無しさん :2006/08/14(月) 01:15:11

いうかよお------------------------------------------------------------------------------------------


なんでよお-----------------------------------------------------------------------------------------
DXやってる奴というのはよお--------------------------------------------------------------------------

「ファイル」というと「データファイル」
としか思い浮かべられねえんだ?あ?コラ。オウ。

「ファイル」といえば「キーボード」も含むよな?あ?コラ。オウ。
理由は言わんでもわかりますね。

204 名前:デフォルトの名無しさん :2006/08/14(月) 01:23:48
>>203
file:///C|/con/con

205 名前:デフォルトの名無しさん :2006/08/14(月) 03:24:58
>203
DXってDirectX?で「キーボード」といえば「DirectInputDevice」でウッドボール。

206 名前:デフォルトの名無しさん :2006/08/14(月) 22:34:18
>>203
本当に頭のいい人間は誰にでもわかりやすい表現を使う。
君みたいにトリビアに頼らなくても普通のすごいの俺等はw

207 名前:デフォルトの名無しさん :2006/08/14(月) 22:44:55
本当に頭のいい人間はとっくに自殺している。

208 名前:デフォルトの名無しさん :2006/08/14(月) 23:01:10
>>207
そのネタはやめれw

209 名前:デフォルトの名無しさん :2006/08/14(月) 23:32:18
詳しく

210 名前:デフォルトの名無しさん :2006/08/15(火) 03:31:54
kwsk

211 名前:デフォルトの名無しさん :2006/08/15(火) 07:56:30
なんのお?

212 名前:デフォルトの名無しさん :2006/08/15(火) 08:10:26
本当に頭のいい人はとっくに自殺している件。

213 名前:デフォルトの名無しさん :2006/08/15(火) 11:50:40
XNAハジマタ\(^o^)/~

214 名前:デフォルトの名無しさん :2006/08/15(火) 19:24:36
DirectXをダウンロードしようと思っているのですが
http://www.microsoft.com/japan/msdn/directx/downloads.aspxのどれ
をダウンロードすればいいですか?DirectX 9.0 SDK Update (June 2006)を
ダウンロードしましたが正しく起動しませんでした
ちなみに私のPCはWindows98です

215 名前:デフォルトの名無しさん :2006/08/15(火) 19:28:32
>>214
http://www.microsoft.com/downloads/details.aspx?familyid=b7bc31fa-2df1-44fd-95a4-c2555446aed4&displaylang=en

216 名前:デフォルトの名無しさん :2006/08/15(火) 19:28:41
まずはOSをXPに入れ替えるところから始めろ。

217 名前:デフォルトの名無しさん :2006/08/15(火) 19:51:27
>>215
ありがとうございました
>>216
それがベストなんですが諸事情がありますて

218 名前:デフォルトの名無しさん :2006/08/15(火) 20:03:21
金がない学生とか、よく古い環境でなんとかしようと四苦八苦してるけど、
その時間をバイトして金を貯めた方が早くないの?


219 名前:デフォルトの名無しさん :2006/08/15(火) 20:05:52
どうでもいい

220 名前:デフォルトの名無しさん :2006/08/15(火) 20:12:55
どうせ新しい環境で四苦八苦することになる。

221 名前:デフォルトの名無しさん :2006/08/15(火) 23:46:21
//--------------------------------------------------------------------------------------
// File: DXUT.h
//
// DirectX SDK Direct3D sample framework
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//--------------------------------------------------------------------------------------
#pragma once
#ifndef DXUT_H
#define DXUT_H

#ifndef UNICODE
#error "The sample framework requires a Unicode build. If you are using Microsoft Visual C++ .NET, under the General tab of the project properties change the Character Set to 'Use Unicode Character Set'."
#endif


DXUT.hをインクルードしてコンパイルすると、13行目の「#error "The 〜Set'."」でerror C1189が出るんだが、どうにかならない?
正直なんでここでエラーが出るか分からないorz

222 名前:デフォルトの名無しさん :2006/08/15(火) 23:51:37
ヒント:エキサイト翻訳

223 名前:デフォルトの名無しさん :2006/08/15(火) 23:52:13
ユニコードが必要って書いてあるままじゃん

224 名前:デフォルトの名無しさん :2006/08/15(火) 23:52:22
ちなみに、
The sample framework requires a Unicode build. If you are using Microsoft Visual C++ .NET, under the General tab of the project properties change the Character Set to 'Use Unicode Character Set
この通りにUnicodeセットでプロジェクトを変更すると、鬼のごとく参照エラーが・・・鬱だしのう

225 名前:デフォルトの名無しさん :2006/08/15(火) 23:53:39
そっちのエアーを晒せ。

226 名前:デフォルトの名無しさん :2006/08/15(火) 23:54:09
エラーだorz

227 名前:デフォルトの名無しさん :2006/08/15(火) 23:56:22
解決したいものを解決したい粒度で情報開示せよ

228 名前:デフォルトの名無しさん :2006/08/15(火) 23:56:51
もう解決したから

229 名前:デフォルトの名無しさん :2006/08/15(火) 23:57:23
>>228
そう。

230 名前:デフォルトの名無しさん :2006/08/16(水) 00:00:52
main.cpp
error C2440: '初期化中' : 'const char [13]' から 'LPCWSTR' に変換できません。
指示された型は関連がありません; 変換には reinterpret_cast、 C スタイル キャストまたは関数スタイルのキャストが必要です。
error C2664: 'CreateWindowExW' : 2 番目の引数を 'const char [13]' から 'LPCWSTR' に変換できません。
指示された型は関連がありません; 変換には reinterpret_cast、 C スタイル キャストまたは関数スタイルのキャストが必要です。
error C2664: 'UnregisterClassW' : 1 番目の引数を 'const char [13]' から 'LPCWSTR' に変換できません。
指示された型は関連がありません; 変換には reinterpret_cast、 C スタイル キャストまたは関数スタイルのキャストが必要です。


231 名前:デフォルトの名無しさん :2006/08/16(水) 00:01:41
CDirectX9.cpp
CD3DXObject.cpp
error C2259: 'CAllocateHierarchy' : 抽象クラスをインスタンス化できません。
次のメンバが原因です :
'HRESULT ID3DXAllocateHierarchy::CreateFrame(LPCSTR,LPD3DXFRAME * )' : 純粋仮想関数は定義されていません。
d:\Program Files\Microsoft DirectX 9.0 SDK (October 2004)\Include\d3dx9anim.h(134) : 'ID3DXAllocateHierarchy::CreateFrame' の宣言を確認してください。
'HRESULT ID3DXAllocateHierarchy::CreateMeshContainer(LPCSTR,const D3DXMESHDATA *,const D3DXMATERIAL *,const D3DXEFFECTINSTANCE *,DWORD,const DWORD *,LPD3DXSKININFO,LPD3DXMESHCONTAINER * )' : 純粋仮想関数は定義されていません。
d:\Program Files\Microsoft DirectX 9.0 SDK (October 2004)\Include\d3dx9anim.h(168) : 'ID3DXAllocateHierarchy::CreateMeshContainer' の宣言を確認してください。
error C2664: 'D3DXLoadMeshHierarchyFromXW' : 1 番目の引数を 'char *' から 'LPCWSTR' に変換できません。
指示された型は関連がありません; 変換には reinterpret_cast、 C スタイル キャストまたは関数スタイルのキャストが必要です。
error C2039: 'GetMaxNumMatrices' : 'ID3DXAnimationController' のメンバではありません。
d:\Program Files\Microsoft DirectX 9.0 SDK (October 2004)\Include\d3dx9anim.h(687) : 'ID3DXAnimationController' の宣言を確認してください。
error C3861: 'SAFE_RELEASE': 識別子は、引数依存の照合を使用しても見つかりません。


232 名前:デフォルトの名無しさん :2006/08/16(水) 00:02:13
error C3861: 'SAFE_RELEASE': 識別子は、引数依存の照合を使用しても見つかりません。
error C2440: '初期化中' : 'int' から 'D3DXPRIORITY_TYPE' に変換できません。
列挙型への変換には static_cast、C スタイル キャストまたは関数スタイル キャストが必要です。
error C2259: 'CAllocateHierarchy' : 抽象クラスをインスタンス化できません。
次のメンバが原因です :
'HRESULT ID3DXAllocateHierarchy::CreateFrame(LPCSTR,LPD3DXFRAME * )' : 純粋仮想関数は定義されていません。
d:\Program Files\Microsoft DirectX 9.0 SDK (October 2004)\Include\d3dx9anim.h(134) : 'ID3DXAllocateHierarchy::CreateFrame' の宣言を確認してください。
'HRESULT ID3DXAllocateHierarchy::CreateMeshContainer(LPCSTR,const D3DXMESHDATA *,const D3DXMATERIAL *,const D3DXEFFECTINSTANCE *,DWORD,const DWORD *,LPD3DXSKININFO,LPD3DXMESHCONTAINER * )' : 純粋仮想関数は定義されていません。
d:\Program Files\Microsoft DirectX 9.0 SDK (October 2004)\Include\d3dx9anim.h(168) : 'ID3DXAllocateHierarchy::CreateMeshContainer' の宣言を確認してください。
error C3861: 'SAFE_DELETE_ARRAY': 識別子は、引数依存の照合を使用しても見つかりません。
error C3861: 'SAFE_RELEASE': 識別子は、引数依存の照合を使用しても見つかりません。
error C3861: 'SAFE_RELEASE': 識別子は、引数依存の照合を使用しても見つかりません。
error C3861: 'SAFE_RELEASE': 識別子は、引数依存の照合を使用しても見つかりません。
error C2039: 'SetTime' : 'ID3DXAnimationController' のメンバではありません。
d:\Program Files\Microsoft DirectX 9.0 SDK (October 2004)\Include\d3dx9anim.h(687) : 'ID3DXAnimationController' の宣言を確認してください。

233 名前:デフォルトの名無しさん :2006/08/16(水) 00:02:47
CD3DXMesh.cpp
error C3861: 'SAFE_DELETE': 識別子は、引数依存の照合を使用しても見つかりません。
error C3861: 'SAFE_RELEASE': 識別子は、引数依存の照合を使用しても見つかりません。
error C3861: 'SAFE_DELETE_ARRAY': 識別子は、引数依存の照合を使用しても見つかりません。
error C3861: 'SAFE_DELETE': 識別子は、引数依存の照合を使用しても見つかりません。
error C3861: 'SAFE_DELETE_ARRAY': 識別子は、引数依存の照合を使用しても見つかりません。
error C3861: 'SAFE_RELEASE': 識別子は、引数依存の照合を使用しても見つかりません。
error C3861: 'SAFE_RELEASE': 識別子は、引数依存の照合を使用しても見つかりません。
error C3861: 'SAFE_DELETE_ARRAY': 識別子は、引数依存の照合を使用しても見つかりません。
error C3861: 'SAFE_RELEASE': 識別子は、引数依存の照合を使用しても見つかりません。
error C3861: 'SAFE_DELETE_ARRAY': 識別子は、引数依存の照合を使用しても見つかりません。
error C3861: 'SAFE_RELEASE': 識別子は、引数依存の照合を使用しても見つかりません。
error C3861: 'SAFE_DELETE_ARRAY': 識別子は、引数依存の照合を使用しても見つかりません。
error C3861: 'SAFE_DELETE_ARRAY': 識別子は、引数依存の照合を使用しても見つかりません。
error C3861: 'SAFE_DELETE': 識別子は、引数依存の照合を使用しても見つかりません。
error C2440: '=' : 'TCHAR *' から 'LPSTR' に変換できません。
指示された型は関連がありません; 変換には reinterpret_cast、 C スタイル キャストまたは関数スタイルのキャストが必要です。

234 名前:デフォルトの名無しさん :2006/08/16(水) 00:03:21
CD3DXFrame.cpp
error C3861: 'SAFE_DELETE': 識別子は、引数依存の照合を使用しても見つかりません。
error C3861: 'SAFE_DELETE': 識別子は、引数依存の照合を使用しても見つかりません。
error C2440: '=' : 'TCHAR *' から 'LPSTR' に変換できません。
指示された型は関連がありません; 変換には reinterpret_cast、 C スタイル キャストまたは関数スタイルのキャストが必要です。
CAllocateHierarchy.cpp
error C2664: 'D3DXCreateTextureFromFileW' : 2 番目の引数を 'LPSTR' から 'LPCWSTR' に変換できません。
指示された型は関連がありません; 変換には reinterpret_cast、 C スタイル キャストまたは関数スタイルのキャストが必要です。
error C3861: 'SAFE_RELEASE': 識別子は、引数依存の照合を使用しても見つかりません。
error C3861: 'SAFE_DELETE': 識別子は、引数依存の照合を使用しても見つかりません。
error C3861: 'SAFE_DELETE': 識別子は、引数依存の照合を使用しても見つかりません。

235 名前:デフォルトの名無しさん :2006/08/16(水) 00:09:46
逆切れと受け取ってもよさそうな長さです

236 名前:デフォルトの名無しさん :2006/08/16(水) 00:13:12
ゴメス
http://www.nomuraz.com/denpa/prog004.htm#IDPROG0021
ここのサンプルを試したらこうなった・・・
車輪の再発明してくるorz

237 名前:デフォルトの名無しさん :2006/08/16(水) 02:35:10
>>197
ありがとうございました!!

238 名前:デフォルトの名無しさん :2006/08/16(水) 14:49:06
[June 2005]から[August 2006:に変えてから
>error C2660: 'ID3DXFont::DrawTextA' : 関数に 5 個の引数を指定できません。
のエラーが出るようになりました。

LPD3DXFONT pFont;
RECT rect={iX,iY,iX+1000,iY+100};
pFont->DrawText(szStr,-1,&rect,DT_LEFT | DT_BOTTOM | DT_SINGLELINE | DT_NOCLIP,0xffffffff);

この3行目でエラーが出ます。
検索してもDrawText(A/W)の引数は5個書かれているものしかありません。
この引数をはどう変えれば良いのでしょうか?


239 名前:デフォルトの名無しさん :2006/08/16(水) 15:19:08
仕様がころころかわす糞APIなので、使わないのがベストな解決方法。
自分で簡単に作れる部分なので、使うメリットは微塵もない。

240 名前:デフォルトの名無しさん :2006/08/16(水) 16:10:59
m_pFont->DrawText( NULL, szStr, -1, &rect, DT_LEFT | (略), 0xffffffff );

241 名前:デフォルトの名無しさん :2006/08/16(水) 16:34:47
ドキュメント出てないの?

242 名前:238 :2006/08/16(水) 17:14:55
レスありがとうございます。
>>240のやり方で問題は解決されました。

ヘルプやMSDNを検索してみたのですがこの関数だけ古いものしか出てきませんでした。


243 名前:デフォルトの名無しさん :2006/08/16(水) 18:29:35
DIERR_INPUTLOSTsDIERR_NOTACQUIREDfuit@at@4k?

244 名前:デフォルトの名無しさん :2006/08/16(水) 22:37:50
質問です。

class Graphics {
public:
Graphics(); {}
Graphics(HWND hWnd) {
Initialize(hWnd);
}
void Initialize(HWND hWnd) {
this->hWnd = hWnd;
後はttp://rina.jpn.ph/~rance/directx8/02/05.html
『2.IDirect3D8インターフェイスの取得』と、
『3.IDirect3DDevice8インターフェイスの作成』の
『ウィンドウモード・アプリケーションのデバイス作成例』と似たり寄ったり
(pD3Dなどがメンバである点と、CreateDeviceの返り値を調べ、
失敗ならメッセージボックスを出すようにしてある点で異なる)
}
(省略)
private:
HWND hWnd;
LPDIRECT3D9 pD3D;
D3DPRESENT_PARAMETERS d3dpp;
LPDIRECT3DDEVICE9 pD3DDevice;
(省略)
};

>>245に続く…

245 名前:デフォルトの名無しさん :2006/08/16(水) 22:38:52
>>244のようなクラスを作って
Graphics graphics;
graphics.Initialize(hWnd);
とするとメッセージボックスは表示されず、描画も問題なく行うことができるのですが、
Graphics* graphics;
graphics = new Graphics(hWnd);
とするとメッセージボックスが出てきてしまい、
無視して描画を行おうとするとメモリ参照エラーが出てしまいます。
両者の違いは何なのでしょうか?

246 名前:デフォルトの名無しさん :2006/08/16(水) 23:26:18
回答じゃなくてすまんが、クラスのhWndと引数のhWndみたいに同じ変数名で共存できるのか


247 名前:デフォルトの名無しさん :2006/08/16(水) 23:51:48
this->hWnd = hWnd;
こうなってりゃ平気。

248 名前:デフォルトの名無しさん :2006/08/17(木) 00:06:14
DIERR_INPUTLOSTとDIERR_NOTACQUIREDはどこがちがうですか?

249 名前:デフォルトの名無しさん :2006/08/17(木) 00:22:38
D3DERR_DEVICELOSTとD3DERR_DEVICENOTRESETと同じ


250 名前:デフォルトの名無しさん :2006/08/17(木) 04:46:08
> とするとメッセージボックスが出てきてしまい、

なんで、どんなメッセージかぐらい書かないんだろうか…


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