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


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

【C++】 DirectX初心者質問スレ Part9 【C】
751 名前:デフォルトの名無しさん :2006/07/11(火) 22:12:37
〜終了〜

752 名前:デフォルトの名無しさん :2006/07/11(火) 22:14:19
〜まさかの再開〜

753 名前:デフォルトの名無しさん :2006/07/11(火) 22:14:29
−−−−−−−−−− 再開 −−−−−−−−−−−

754 名前:デフォルトの名無しさん :2006/07/11(火) 22:15:30
来週をお楽しみに☆

755 名前:デフォルトの名無しさん :2006/07/11(火) 22:15:53
int main(void)
{
    return 0;
}
文句つけようが無いってことで
〜終了〜

756 名前:デフォルトの名無しさん :2006/07/11(火) 22:18:33
int main(){return 0;}
美しい

757 名前:デフォルトの名無しさん :2006/07/12(水) 00:38:06
void main(){}
これこそ究極。なにせこれ書くだけで数レス消費しはじめる魔法のコード。

758 名前:デフォルトの名無しさん :2006/07/12(水) 00:41:32
〜完〜

759 名前:デフォルトの名無しさん :2006/07/12(水) 01:06:38
main(){}

760 名前:デフォルトの名無しさん :2006/07/12(水) 15:08:17
>>755-759
__PERGMAIN すりゃいいだけな話だろうに。

761 名前:デフォルトの名無しさん :2006/07/12(水) 15:28:43
DirectXスレなのにWinMainじゃない点について

762 名前:デフォルトの名無しさん :2006/07/12(水) 15:30:58
D3DデバイスはWindowの数だけインスタンス作るよね?
デバイスの生成元のD3Dインターフェイスは1つでOK?
脊髄反射でシングルトンにしちゃって、とりあえず問題なさそうなんで
そのままにしてるんだけど、誰かにゴルァされない?

763 名前:デフォルトの名無しさん :2006/07/12(水) 17:39:52
>D3DデバイスはWindowの数だけインスタンス作るよね?

作らない

764 名前:デフォルトの名無しさん :2006/07/12(水) 18:18:48
CreateD3DDeviceってウインドウハンドルを引数に取らなかったっけ?

765 名前:デフォルトの名無しさん :2006/07/12(水) 20:47:41
生成時に渡すのはデフォルトのウィンドウのハンドル。
画面のPresent時には描画対象のウィンドウのハンドル渡せる。

766 名前:デフォルトの名無しさん :2006/07/12(水) 22:57:46
>>765
PresentParameter と CreateDevice 時の FocusWindow にハンドル渡す必要があるね。
これも最初に作るときだけぶちこめば、あとは使いまわせる理屈?
個々の Window にフルスクリーン化を仕込むとか(そんなのがどの程度必要かはわかんない)だと
引っかかりそうな気がするんだけど…。

767 名前:デフォルトの名無しさん :2006/07/12(水) 23:56:18
使わない機能のことを考えてる暇があるなら
その無駄な時間で使う機能を練りこんだ方がいいと思うお。

まぁ2ch見てる時間が無駄なんだがorz

768 名前:デフォルトの名無しさん :2006/07/13(木) 00:02:26
>>767
質問の答えになってねえずら。

769 名前:デフォルトの名無しさん :2006/07/13(木) 00:08:48
そうずらそうずら

770 名前:デフォルトの名無しさん :2006/07/13(木) 07:58:12
ワラタ

771 名前:デフォルトの名無しさん :2006/07/13(木) 15:09:05
誰にも使われない完璧なライブラリは世界にどれだけ死蔵されているのだろう。


772 名前:デフォルトの名無しさん :2006/07/13(木) 15:25:03
少なくともここに一つ!

バーン

773 名前:デフォルトの名無しさん :2006/07/13(木) 22:26:01
俺のライブラリは完璧なんだが、それを動かすOSに欠陥がある

774 名前:デフォルトの名無しさん :2006/07/14(金) 00:14:01
あるあるw

775 名前:デフォルトの名無しさん :2006/07/14(金) 14:36:02
ボーンの概念がわかりません
フレームとどう違うんでしょうか?

776 名前:デフォルトの名無しさん :2006/07/14(金) 19:00:44
>>775
スキニングでググってみれば、解説が見つかるかもしれない。

777 名前:デフォルトの名無しさん :2006/07/14(金) 19:15:17
>>775
ttp://www.twin-tail.jp/contents/vsdx8/d3d/031/index.htm

778 名前:デフォルトの名無しさん :2006/07/14(金) 21:01:55
丁度スキニング話なんで便乗を

capsでしっかりvs1.1と返すビデオカードでシェーダを使用した所、異常なく表示できました。ハードウェア頂点処理です。
そのHLSLに、SDKサンプル通りのスキニング処理だけを加えたら動かなくなりました。
しょうがないので同じHLSLを、ソフトウェア頂点処理に変えて実行してみたら、問題なく動きました。

サンプル通りですし、吐かせたアセンブラみても、使っている命令は1.1以内だと思います(そもそもcompile vs_1_1ですし)。
どの辺でひっかかってソフトウェア頂点処理が必要になったのでしょうか。分かる方いらしたら是非。

779 名前:デフォルトの名無しさん :2006/07/14(金) 21:27:45
具体的なビデオカードの名前とか、どう動かないのかとか、そういった情報を流すと殺されてしまうんだね。
そういう守秘義務を課せられている奴は、危険だから二度とこのスレに書き込まない方がいいよ。

780 名前:デフォルトの名無しさん :2006/07/14(金) 21:28:30
レジスタ数か命令数じゃね?
げふぉ3だとUBYTE4が使えないとかいうたわけた仕様があったきもするけど。

781 名前:778 :2006/07/14(金) 21:48:56
>>780
ビンゴっす!見事にレジスタ絡みでした。いやはや、行列を取りすぎてたようで。
一体何時間悩んでいたんだろ・・・適確な助言ありがとうございました。感謝っす。

782 名前:デフォルトの名無しさん :2006/07/14(金) 21:52:39
500ギルいただきます

783 名前:デフォルトの名無しさん :2006/07/15(土) 16:07:49
DirectX初心者でゲーム製作を目的にしているものですが、
ネット上ってあんまり参考になるサイトないですよね?(あれば教えてくださいm(__)m)
そこで本を買おうと思って家が田舎なものでネットで買おうと検索してみたところ

はじめての3Dゲーム開発―「DirextX9」の使い方から「1人称3Dフィールド・ゲーム」の制作まで
DirectXゲームグラフィックスプログラミング Ver. 2.0
DirectX 9実践プログラミング―「グラフィック」「オーディオ」「ネットワーク」「入力」--ゲーム作りに役立つ機能の基礎から応用まで (単行本)

この辺がよさそうかなぁ、と思いましたがどうでしょうか。
また、このほかにオススメの本などありましたら教えてください、よろしくお願いします。


784 名前:デフォルトの名無しさん :2006/07/15(土) 17:11:30
>>783
一番上のは俺はもってない。
下の2つはもってるけどいい本だよ。
はじめとしてはいいんじゃないだろうか?
できれば見比べて勉強するのに2つともほしいが・・・どっちか選ばないと駄目なんだろうか?

785 名前:デフォルトの名無しさん :2006/07/15(土) 17:43:24
>>784
そうですか〜。いいんですね。
お金に余裕が・・・(笑)
でもがんばって買ってみましょうかね〜。

786 名前:デフォルトの名無しさん :2006/07/15(土) 18:09:07
ttp://gamdev.org/w/
ここの推薦図書を見ておくのもよいかも

787 名前:デフォルトの名無しさん :2006/07/15(土) 19:04:11
>>783
一番上は、筆者の自分語りが少しうざいけど、内容は
悪くはない。

お薦めの本は特にないけれど、入門書は1〜2冊に
しておいて、さっさと本物の専門書に挑戦すべき。

788 名前:デフォルトの名無しさん :2006/07/15(土) 19:37:39
一番上の本は同じ著者の「DirectX逆引き大全500の極意」を買った方が良い

789 名前:デフォルトの名無しさん :2006/07/15(土) 23:24:27
>>784
2つとも買っちゃいました(^_^;)
アドバイスありがとうございます。

790 名前:デフォルトの名無しさん :2006/07/15(土) 23:27:14
>>787
なるほどー。
検討してみます。
そうですね、買った2冊をマスターしたら専門書に挑戦してみます。
どーいうのがいいですかねー。

>>788
なかなか使い勝手のよさそうな本ですが初心者より上が対象って感じですね。
基礎ができてきたら検討します。

791 名前:デフォルトの名無しさん :2006/07/16(日) 01:29:39
図書館で借りればいいのに

792 名前:デフォルトの名無しさん :2006/07/16(日) 02:01:26
>>791
あー、考えもしませんでした。
でもまぁ期限付きだとすきなときにみれませんしね。
それにこの田舎の県の図書館にそんな本があるかどうか・・・w

793 名前:デフォルトの名無しさん :2006/07/16(日) 02:22:44
田舎だとC言語入門とかFORTRAN入門しか無さそうだな
ていうか俺の最寄り図書館

794 名前:デフォルトの名無しさん :2006/07/16(日) 02:57:14
>>703
そうそう!
県で一番おっきい図書館でもしょっぼいですからね!
勉強するにも買い物するにも就職するにも不利な田舎・・・(T_T)

795 名前:デフォルトの名無しさん :2006/07/16(日) 07:41:37
そこで投書しまくりですよ。


バイトして買いあさった方が早そうだなあ。
学校の図書館とかは駄目なの?
大学なり専門なりの図書館なら、多少はマシだと思うんだけど。

796 名前:デフォルトの名無しさん :2006/07/16(日) 09:30:11
>>790
いや、逆引き大全は初心者対象だよ?
ソースコード付きで500のTIPSが載ってるから

797 名前:デフォルトの名無しさん :2006/07/16(日) 09:37:07
うちの図書館無駄に初心者向けの入門書ばかり揃ってるよ
まぁ需要が高いのは確かだと思うけどさ

>>795
専門学校で図書館開放してるとことかあるの?kwsk

798 名前:デフォルトの名無しさん :2006/07/16(日) 10:09:58
>>793
ワラタ、あるあるw

799 名前:デフォルトの名無しさん :2006/07/16(日) 10:17:41
前に大学の図書館を調べたら、なぜか岐阜には図書館を
一般解放している学校が多かった。

あと、市内の住民なら利用できるってところもあったよ。
例えば千代田区民で18歳以上なら日大理工の図書館が使える。

800 名前:デフォルトの名無しさん :2006/07/16(日) 14:45:01
>>793
勝った、俺の所はコアJAVAがあるぜ

初版の

801 名前:デフォルトの名無しさん :2006/07/16(日) 22:44:14
スキンメッシュについて聞きたいのですが、
各フレームが一つ持つ、TransformationMatrixは
子である自分の座標系から、親の座標系に変換するための行列なのか、
自分の親の座標系から、子である自分の座標系に変換する行列なのか
どちらが正しいのでしょうか?

あと、オフセット行列は、ローカル座標におかれている頂点の座標を
特定のボーンの座標系に変換するためのモノであるという認識でよろしいのでしょうか?

よろしくおねがいします。


802 名前:デフォルトの名無しさん :2006/07/17(月) 04:59:17
>>801
TransformationMatrixは、子の座標系から親の座標系に変換する行列。
オフセット行列についてはその通りだったかと。

D3Dの結合法則なら最終的にこうなる
BoneMatrix = OffsetMatrix * Frame::TransformationMatrix

803 名前:デフォルトの名無しさん :2006/07/17(月) 10:54:33
>>802
なんか紛らわしくね?

BoneMatrix = OffsetMatrix * Frame::TransformationMatrix

このFrame::TransformationMatrixってボーンの行列でしょ。

804 名前:デフォルトの名無しさん :2006/07/17(月) 11:23:57
>>803
ごめんややこしいどころか間違ってた…
Frame::CombinedTransformationMatrixだった(SkinnedMeshサンプルの場合)

805 名前:801 :2006/07/17(月) 12:26:08
>>802-804
回答サンクス

あやふやな所だったけど、これではっきりしました。
確かに、数式をみれば
TransformationMatrixは「子の座標系から親の座標系に変換する行列」
ですね。

806 名前:デフォルトの名無しさん :2006/07/17(月) 15:40:46
アルファブレディングっぽい事について質問なのですが
縁取りをした文字のテクスチャを用意したのですが
(透明色にしたい部分を紫、縁取りの色は黒、文字色は白、紫と黒の部分がアンチエイリアスがかかっています)
これを出力するのに困っています。

ただの縁取り文字(アンチエイリアス無しの境界線)はD3DXCreateTextureFromFileExで透明色(紫)を指定すると出来ますが
アンチエイリアスがかかっているテスクチャなのでこの場合紫と黒の混合の色が出てしまいます・・

なのでアルファブレディングを使えばいけるかな?と思ったので色々やってみたのですが、
白か黒しか透明色に出来ないみたいで、透明色を紫にしたいので(縁取りが黒で文字本体が白にするので)
どうやっても縁取りか文字も透けてしまいます

そもそもアンチエイリアスをかけたテクスチャを出力するには上記の方法以外に普通なやり方があるのでしょうか
よろしくお願いします。

807 名前:デフォルトの名無しさん :2006/07/17(月) 16:02:37
>>806
そりゃカラーキーじゃねぇの?

808 名前:デフォルトの名無しさん :2006/07/17(月) 16:04:56
無理。アルファ使ったテクスチャを作り直せ。

809 名前:デフォルトの名無しさん :2006/07/17(月) 16:05:42
>>806
アルファチャンネルって知ってるか?

810 名前:デフォルトの名無しさん :2006/07/17(月) 16:11:41
次はαの入った画像の作り方についての質問がくると思われ。
開発現場だと普通にフォトショップがあるけど、ないところってどうすんだろな。

811 名前:デフォルトの名無しさん :2006/07/17(月) 16:14:44
フリーのだと1色指定してやるから色数が1つ減るんだよな
既存画像をそうするんだから他の方法も無いわけだが

812 名前:デフォルトの名無しさん :2006/07/17(月) 16:18:14
>>811
だからそりゃカラーキーじゃねぇのか?

813 名前:806 :2006/07/17(月) 16:28:42
>>807-812
アルファチャンネルなんてものがあるなんて今知りました・・
アルファデータを持ってる画像が使えるんならプログラム側でごちゃごちゃする必要ないですね
アルファ使ったテクスチャを用意する事にします

SetRenderStateでSrcとDestに適当な値を入れて透明化を実装していたのですが
これがカラーキーなのかは知りませんが

ありがとうございました

814 名前:デフォルトの名無しさん :2006/07/17(月) 16:31:06
ウンコメモ

カラーキー
  画像の中の色の一色だけ透過色として指定してその色の箇所を描画しないことで抜き色とする方法。
  行われる計算は
     Color = if(srcRGB == colorKey)destRGB else srcRGB

アルファブレンド
  画像の1ピクセルの成分をRGBAとして、描画時にA成分を掛け合わせることで描画する方法。
  行われる計算は
     Color = srcRGB X A + destRGB X (1-A)

srcRGBは貼り付けたい絵の色
destRGBは背景の絵の色

815 名前:デフォルトの名無しさん :2006/07/17(月) 16:38:56
アルファチャンネル知らないって・・・
理解できるできないは別として、Directxのヘルプぐらい目を通しとけよ。

816 名前:デフォルトの名無しさん :2006/07/17(月) 16:42:55
うるさい豚だなぁ

817 名前:デフォルトの名無しさん :2006/07/17(月) 16:47:22
>>806の発言と>>813の発言に違和感を感じるんだが、この人は本当に理解していったのだろうか?
>>813ではアルファブレンドを使ったみたいなこと言ってるような気がするが、じゃあ、>>806のレスってなんだったんだろ?
とか思ったり思わなかったり、まあ、アルファブレンドを知ればすべてがわかることだ。

818 名前:デフォルトの名無しさん :2006/07/17(月) 16:56:01
おまえらこういう簡単な質問となると食いつき良いんだよなw

819 名前:デフォルトの名無しさん :2006/07/17(月) 17:00:47
ぶひぶひ

820 名前:デフォルトの名無しさん :2006/07/17(月) 17:04:06
>>818
なんか聞きたいことあるのかね?
でも、俺の知識はスキンメッシュ、バンプ、反射、屈折あたりで止まってるので
それぐらいまでで頼むw

821 名前:806 :2006/07/17(月) 17:05:28
>>817
806は最初にカラーキー同等の処理をD3DXCreateTextureFromFileExで読み込む際に透明色を指定する方法から入ったのですが
この場合紫しか透明化されないので、外の紫と文字本体の縁取りの黒との境目の黒と紫が混ざった色は
灰色のような透明化がされないので、アルファブレンドについての質問に移行しんです。

アルファチャンネルが無い画像でも黒地か白地にグラデーションのような描き方をすると
適当なSrc、Destの値により黒か白が透明化されるんです。
その場合透明化されたのが黒だとして、濃い赤などの黒い要素も少し透けるようになるんです・・(言葉で説明するより実際やってみると判ります
この延長線上の手法でやるのかと思っていたのです・・。

822 名前:デフォルトの名無しさん :2006/07/17(月) 17:11:33
それただの加算合成じゃね?

823 名前:デフォルトの名無しさん :2006/07/17(月) 17:12:18
>>821
なるほど。
仕組みを理解せずに実装するのはやっぱり怖いな。

824 名前:デフォルトの名無しさん :2006/07/17(月) 17:14:20
>>822
多分そうっていうかめちゃくちゃなステータスだろうな。
勘で>>814の形にもってくのははっきりいって神でも宿らないと無理だね。

825 名前:デフォルトの名無しさん :2006/07/17(月) 17:14:47
>>820
丁度、「隙間無く閉じているポリの集合」と、「ある一つの頂点」との、"厳密な"当たり判定で悩んでいたんだけど、どうすかね
頂点がポリにめり込んじゃ駄目なの

「隙間無く閉じているポリの集合」が凸型なら簡単なんだけどねえ

826 名前:825 :2006/07/17(月) 17:16:27
いや分かりづらいな
「隙間無く閉じているポリの集合」は、まぁt-potみたいな一般的なポリっす

827 名前:デフォルトの名無しさん :2006/07/17(月) 17:18:16
xファイルを,テキスト,バイナリ,圧縮それぞれ相互変換させるプログラムを作成してます.
DirectXのAPI使ってます.

テキスト,バイナリファイルの書き出しは可能なのですが,圧縮ファイルの書き出しがうまくいきませぬ.
APIリファレンスによると,
CreateSaveObject(LPCSTR szFileName,DXFILEFORMAT dwFileFormat,LPDIRECTXFILESAVEOBJECT* ppSaveObj)
関数を使用して,第2引数をァイルフォーマットの値を論理和,つまり,テキスト圧縮なら3, バイナリ圧縮なら2を与えているのですが,
通常のテキストファイル,バイナリファイルが書き出されてしまいます.原因がまったくわかりません.

828 名前:デフォルトの名無しさん :2006/07/17(月) 17:18:17
>>825
そんなの実装しねぇw
企画段階で自分のできる範囲の仕様になるようにごねる。

829 名前:825 :2006/07/17(月) 17:31:34
>>827
定義見る限り、ビットフラグじゃ無い気が
試しに0と2でファイルサイズ比べるとどうなんだろ

>>828
たのむよ、とっつぁ〜ん
流れが止まった(ノД`)

830 名前:デフォルトの名無しさん :2006/07/17(月) 17:32:54
>>825
単に点の内外判定なら、
点から任意の方向にレイを飛ばして、衝突回数が奇数なら中よね。

831 名前:827 :2006/07/17(月) 17:34:06
>>829
ファイルサイズ変化ナッシングです.
ちなみに,ヘッダも"bin"と通常のバイナリファイルになっとります.


832 名前:デフォルトの名無しさん :2006/07/17(月) 17:35:29
>>826
t-potが止まってて頂点が動いてて、
衝突する時間と衝突地点を調べるとかいう奴かい?

833 名前:デフォルトの名無しさん :2006/07/17(月) 17:41:30
Dx8からカラーキー自体なくなったけどな。

Dx8からはαチャンネルとアルファテストで
カラーキーと等価な処理する自前でするようになったってだけで。

αチャンネルサポートしてないグラフィックツールでも、
グレースケールのα用画像とカラー画像を分けて作成して、
合成してTGAあたりを吐き出すコンバーターを作ればいいと思われ。

834 名前:825 :2006/07/17(月) 17:43:31
>>830
ちょ、神現る!俺なんか今凄いドキドキしてる。
断面取って2Dにし、テッセレの応用で…とかやってましたよ。ええーこれで出来ちゃうの。
マジでありがとやんした!

>>832
仰るとおりっす。おかげで判定できそうなので、後は時間と地点まで持って行けるか頑張ってみるっす。レス感謝です。

835 名前:デフォルトの名無しさん :2006/07/17(月) 18:35:38
>>831
冷静になってヘルプ見たら…もの凄い適当な事言ってごめんよ

変換自体が目的なら、SDK\Utilities\mview.exeで3通りに変換できるね。実装自体が目的ならすまんです

836 名前:827 :2006/07/17(月) 18:44:09
>>835
いえいえ.どうもです.でも実装が目的です.
同じように,圧縮ファイルの作成に手間取った人はいないですか‥
ヘルプ願います.


837 名前:デフォルトの名無しさん :2006/07/17(月) 21:34:20
http://pc8.2ch.net/test/read.cgi/gamedev/1132937938/692


838 名前:デフォルトの名無しさん :2006/07/17(月) 21:34:51
http://bbx.hp.infoseek.co.jp/cgi-bin/bbx.cgi?log=50&vew=29

839 名前:デフォルトの名無しさん :2006/07/17(月) 21:50:44
これはひどい

840 名前:デフォルトの名無しさん :2006/07/17(月) 22:12:38
mixiでもやってるな。

841 名前:デフォルトの名無しさん :2006/07/17(月) 22:24:19
俺は最近マルチに寛容だぞ。
何せ各地の掲示板を見歩くのを辞めた。
ここしか見てないからな。

842 名前:デフォルトの名無しさん :2006/07/18(火) 01:41:08
自作のツールでツールバーのツールチップを出すときに、
Diret3Dのウィンドウにかぶるとフレームレートが60→3くらいに激しく重くなるんだけど、
こういうものなんですか?

843 名前:デフォルトの名無しさん :2006/07/18(火) 02:05:44
作り方

844 名前:デフォルトの名無しさん :2006/07/18(火) 03:36:40
>>842
そういうもの。
MSNメッセンジャーは「自分の連絡先カードを表示」っていうツールチップが
しばらく出っ放しになるバグ(?)があるけど、それがゲームのウィンドウに
重なると悲惨なことになる。

845 名前:デフォルトの名無しさん :2006/07/19(水) 12:31:22
質問募集中

846 名前:デフォルトの名無しさん :2006/07/19(水) 17:02:25
彼女ができません。
DirectXの力でどうにかできませんか?
                   (男性・27歳・無職)

847 名前:デフォルトの名無しさん :2006/07/19(水) 17:05:31
2007FebからDirect彼女が正式コンポーネントになるらしいが

848 名前:デフォルトの名無しさん :2006/07/19(水) 17:27:57
日本語版も出ますか?

849 名前:デフォルトの名無しさん :2006/07/19(水) 19:08:45
Xモデルのアニメーションって関数一発で出来ないの?

850 名前:デフォルトの名無しさん :2006/07/19(水) 19:31:49
出来ないよ

851 名前:デフォルトの名無しさん :2006/07/19(水) 20:54:33
既存のライブラリもってくるのが一番早い

852 名前:デフォルトの名無しさん :2006/07/19(水) 21:06:39
自分で関数一発で済む関数を作ればいいんだよ。

853 名前:デフォルトの名無しさん :2006/07/19(水) 21:19:58
このままだとコミケも落とすし就職も決まってないんですが

854 名前:デフォルトの名無しさん :2006/07/19(水) 21:32:15
ですが何?

855 名前:デフォルトの名無しさん :2006/07/19(水) 21:34:26
ですが、この思いを鳥に託して私は空に旅立ちます

歌います いい日旅立ち

856 名前:デフォルトの名無しさん :2006/07/19(水) 21:38:09
いま〜船出が〜近づく〜この時〜に〜

857 名前:789 :2006/07/19(水) 22:11:02
本がきました。
ゲームグラフィックスプログラミングのほうは丁寧でわかりやすくていいですね〜。
ただDirectX9実践プログラミングのほうはサンプルソースがコンパイルできない・・。
Spriteとかその辺でひっかかってるから仕様変更に対応してないんだろうけど・・・。
かなりがっかりです。どうしよう。

858 名前:デフォルトの名無しさん :2006/07/20(木) 06:17:43
>>857
そんなのちっと勉強すりゃすぐ動かせるようになるだろ。
どうしようも糞もないでしょ。
まあ、著者のほうもなげっぱなしじゃなくてサポートしてほしいもんだけど・・・。

859 名前:デフォルトの名無しさん :2006/07/20(木) 06:19:54
3ヶ月おきにリリースされるSDKに対応するっていうのも
無理な話だ

860 名前:デフォルトの名無しさん :2006/07/20(木) 06:36:20
>>859
いや、サンプルを動かせるようにしてくれるだけでもいいんじゃね?
できる人間にとっちゃものの10分かからん作業なわけだし、
初めて触る初心者にとっちゃちょっと困るっちゃ困るだろ。

861 名前:デフォルトの名無しさん :2006/07/20(木) 12:41:19
ここで9.0bをインスコすればとりあえず動く
ttp://www.microsoft.com/japan/msdn/directx/downloads.aspx

862 名前:デフォルトの名無しさん :2006/07/20(木) 18:22:38
Visual Studio 2005のwizardはなくなったの?

863 名前:デフォルトの名無しさん :2006/07/20(木) 19:26:28
意味がわからない

864 名前:デフォルトの名無しさん :2006/07/20(木) 19:35:28
>>862
最新のSDKにWizardは付いてない
DirectX Sample BrowserからEmptyProjectを開け

865 名前:デフォルトの名無しさん :2006/07/20(木) 20:22:27
WizardとかD3DXって思いつきで作ってんの?

866 名前:デフォルトの名無しさん :2006/07/20(木) 20:38:26
思いつかなきゃ作れないだろ。
何をアホなことを言っているんだ?

867 名前:デフォルトの名無しさん :2006/07/20(木) 21:29:00
いや、普通は無意識に作るものだと思うが。

868 名前:デフォルトの名無しさん :2006/07/21(金) 00:51:22
意識下の深遠には全ての魂が創造主と接続された大領域があるのだよ。

869 名前:デフォルトの名無しさん :2006/07/21(金) 00:55:41
アカシックレコードを検索したいのですが問い合わせはSQLでできまつか?

870 名前:デフォルトの名無しさん :2006/07/21(金) 02:10:03
>>861
なるほど、旧バージョンを入れるしかないんですね。
DirectXって同じ9の中でもライブラリが減ったり増えたりするだけじゃなくて
関数の仕様が変わったりするんですね。
もうちょっとどうにかならないのかな〜。
本にあわせて複数のバージョンをインストールしないといけないのが腑に落ちない・・・。
ま、そんなことしなくても書き換えられるくらい勉強しろってことかな。

871 名前:デフォルトの名無しさん :2006/07/21(金) 07:47:09
勉強するために本を買うのにおかしいね

872 名前:デフォルトの名無しさん :2006/07/21(金) 08:13:26
D3DXのSpriteとか使う必要性が皆無な無駄機能を使わなければ問題はないよ。

873 名前:デフォルトの名無しさん :2006/07/21(金) 09:51:49
返して私のお友達。
あなたを封印する!

874 名前:デフォルトの名無しさん :2006/07/21(金) 11:53:40
しょっぱなからエフェクトを自前で読み込めれば問題は無いな

875 名前:デフォルトの名無しさん :2006/07/22(土) 04:35:39
D3DMATERIAL9mMaterial;
// マテリアル情報を取り出す
D3DXMATERIAL*mD3DXMaterials = (D3DXMATERIAL*)m_pD3DXMtrlBuffer->GetBufferPointer();
for( DWORD i =0; i<m_numMesh; i++){
// マテリアルのコピー
mMaterial = mD3DXMaterials[i].MatD3D;
// マテリアルのセット
pD3DDevice->SetMaterial( &mMaterial);
// 分割されたメッシュの描画
m_pMesh->DrawSubset( i );
}

と表示してるのですが、表示されるのは白いオブジェクトでマテリアルが効果を発揮してません。
何が原因かわかる人いませんか?

876 名前:デフォルトの名無しさん :2006/07/22(土) 09:14:26
ライトの設定は?

877 名前:デフォルトの名無しさん :2006/07/22(土) 12:18:00
>>876
いやそんなことは当たり前の話であって、このソースで効果ないのはなぜなのか聞いてるんですけど?

878 名前:デフォルトの名無しさん :2006/07/22(土) 12:29:27
ヒント:DrawSubsetが呼び出しているのはDrawPrimitiveだけではない

879 名前:デフォルトの名無しさん :2006/07/22(土) 12:32:09
と思ったらマテリアルの設定も手動で行わせる仕様だったっけ。
やっぱりライティングじゃね?

880 名前:デフォルトの名無しさん :2006/07/22(土) 13:11:18
「当たり前の話であって」とかほざくやつに限ってミスしてるんだよな。

881 名前:デフォルトの名無しさん :2006/07/22(土) 13:31:59
ええ、あなた程度でも思いつくような事はさすがにやってます^^;;;

882 名前:デフォルトの名無しさん :2006/07/22(土) 13:40:50
>>875
わかるよ
当たり前の話

883 名前:デフォルトの名無しさん :2006/07/22(土) 13:48:18
えーとここは初心者「しかいない」質問スレのようなので、他で聞くことにします。
マルチになるんでここでは返答を求めません。

884 名前:875 :2006/07/22(土) 16:39:13
ライトなんですけど、onにしてもoffにしてもどっちにしても白く表示されます。
書いた部分じゃないところでなにかやってない設定が有るような気もするのですが、
ちゃんとできてるソースと見比べてもどこがおかしいのか見つからなくて。
何かやっちゃいけないこととかあるんですかね?

885 名前:デフォルトの名無しさん :2006/07/22(土) 16:49:23
オナニーは禁止

886 名前:デフォルトの名無しさん :2006/07/22(土) 16:56:21
自己発光の設定が変なんじゃね?

887 名前:デフォルトの名無しさん :2006/07/22(土) 17:00:13
環境光が強すぎると思われ

888 名前:デフォルトの名無しさん :2006/07/22(土) 17:01:21
>>887
いやいや自己発光だろう

889 名前:デフォルトの名無しさん :2006/07/22(土) 17:38:18
環境光だな。間違いない。

890 名前:デフォルトの名無しさん :2006/07/22(土) 18:05:08
ライトとかは本のまんまの設定でやっていて、本のプログラムではちゃんと動いてます。
そこからいろいろといじったやつで白くなるので、何かやっちゃいけないことをやっちゃったのかなと。
ちなみに、本のプログラムの方でライトをオフにしたら同じ感じになりました。

んで、非常に私事なのですが、そろそろ期末テストの勉強を開始しますので、
テストが終わり次第またやってみたいと思います。
またお世話になるかと思いますがその時はよろしくお願いします。

891 名前:デフォルトの名無しさん :2006/07/22(土) 18:19:22
俺が送ったウィルスのせいだと思うけど。
すべてのDirect3Dでポリゴンの描画を強制的に白一色にする機能がある。
ただしOpenGLは許すのだという。


892 名前:デフォルトの名無しさん :2006/07/23(日) 00:04:00
ディレクショナルライトが
ど真ん中向いてるとか。

893 名前:デフォルトの名無しさん :2006/07/23(日) 00:16:22
だから自己発光だって。

894 名前:デフォルトの名無しさん :2006/07/23(日) 00:21:03
後光だよ。
ポリゴンモデルに神が宿って、後光を発してる。

895 名前:デフォルトの名無しさん :2006/07/23(日) 00:24:42
>>100
生まれたときは誰だって一人だぜ?

896 名前:デフォルトの名無しさん :2006/07/23(日) 00:34:10
流石ちゅうさはいいことをいう。

897 名前:デフォルトの名無しさん :2006/07/23(日) 01:07:40
クォータニオンの関数D3DXQuaternionMultiplyについての質問なんですが
この関数にA*Bを行うつもりで
D3DXQuaternionMultiply(OUT, A, B)
とすると、出てくる結果がB*Aになってるんですが、これって仕様なんですか?
なぜ、この関数は積の順序を逆にしてるんでしょうか?
よろしくお願いします


898 名前:デフォルトの名無しさん :2006/07/23(日) 01:15:16
>>897
なんか同じ質問を1年くらい前にBBXあたりで見た記憶がw

899 名前:デフォルトの名無しさん :2006/07/23(日) 01:43:27
>>897
http://higeneko.com/diary.php?Date=2006-05-04#Date2006-05-04
>クォータニオンの掛け算の部分でD3DXQuaternionMultiplyがq1*q2ではなく、
>q2*q1の結果を返してくるという、変態仕様だったことが判明しました。
>これはD3Dでは、行列の積を使ったとき、M1*M2とすると意味的に
>M1の移動をしてから、M2の移動をすると同じ事なので、これと書き方を
>一緒にする為にクォータニオンの積の順序を変えてるというのが理由らしいです。

900 名前:デフォルトの名無しさん :2006/07/23(日) 08:20:12
>>897
なぜかと聞かれたらゲイツだからとしか答えようがない

901 名前:デフォルトの名無しさん :2006/07/23(日) 10:29:37
>>899
ありがとうございます
紛らわしい仕様になってるんですね。

902 名前:デフォルトの名無しさん :2006/07/23(日) 11:04:29
そもそもDXの行列自体が数学の行列と別物じゃん

903 名前:デフォルトの名無しさん :2006/07/23(日) 11:07:09
>>890
はっきりいってソースを晒さない限り原因が特定しない。つーか、できない。
それが固定機能を使ったときにでる意味不明な現象。(ほとんどステートの設定不備だと思うけどね)
それが嫌だからみんな頂点シェーダ使うし、固定機能もそのうち廃止になる。
ただでさえ、ライトOFFなのにアンビエントだけ有効なままとかわけわかんねーし。
もうね。固定機能作った奴はゴミ。これは確定。

904 名前:デフォルトの名無しさん :2006/07/23(日) 11:07:47
>>902
え?何?もう1回言って?

905 名前:デフォルトの名無しさん :2006/07/23(日) 11:19:27
902は昨日授業で行列を習ったばかりなんです。
許してあげてください。

906 名前:デフォルトの名無しさん :2006/07/23(日) 11:40:53
>>902
「数学の本とかOpenGLの行列が右作用(ベクトルを右から掛けて使う)なのに
DirectXは左作用(転置ベクトルを左から掛ける)で実装してややこしいねん、別物やん」
と脳内補完しとくわね。

907 名前:デフォルトの名無しさん :2006/07/23(日) 11:41:49
え、でもシェーダを使わず湖底機能で実装することに血道を上げてる人はどうするの?
CreateDeviceでMIXEDを選ぶ人は残らずそういうタイプでしょ

908 名前:デフォルトの名無しさん :2006/07/23(日) 11:47:41
SDKでオススメのバージョンはどれ?
いい加減 2003 Summer から脱却したいのだが。

909 名前:デフォルトの名無しさん :2006/07/23(日) 11:54:49
October 2004

910 名前:デフォルトの名無しさん :2006/07/23(日) 11:57:48
DirectXを作ったのは韓国人技術者

911 名前:デフォルトの名無しさん :2006/07/23(日) 11:59:14
コンピュータの基礎を築いたのは韓国人

912 名前:デフォルトの名無しさん :2006/07/23(日) 12:04:48
Komputerの国に帰れ

913 名前:デフォルトの名無しさん :2006/07/23(日) 12:05:39
とりあえず903は自分が固定機能で嵌ったからって
こんなとこで恨みつらみ書くな、な?

914 名前:デフォルトの名無しさん :2006/07/23(日) 12:27:53
>>913
じゃあ、大好きな固定機能死ぬまでいじってれば?
俺はこんなんで苦労するのは嫌だけどね。
なんのステートが何に影響するのか一つ一つ表にでもまとめないととてもじゃないけど使えないよ。

915 名前:デフォルトの名無しさん :2006/07/23(日) 12:35:33
使いたい機能を知っていれば十分でしょ

916 名前:デフォルトの名無しさん :2006/07/23(日) 12:38:32
俺、固定機能しか使ったこと無くて、ピクセルシェーダーはまた後で勉強しようと
思って全然分からないんだけど、対応しないハードウェアの場合ソフトウェアで
エミュレートするって、極端に遅くならない?
DirectX10はXPには対応しないという話があるから、DirectX9はかなり長く
使いそうだし、当分は固定機能でいいかなぁと思ってる。

917 名前:デフォルトの名無しさん :2006/07/23(日) 12:46:57
固定機能で苦労する奴ってなんなの?

918 名前:デフォルトの名無しさん :2006/07/23(日) 12:59:22
>>914はあれか、エフェクトのステート保存/変更機能のことを言ってるのか。
それ使わないとやってられないとかひょっとしてDrawPrimitiveが各所に
散らばってるんだろうか

>>916
頂点シェーダーはHWT&Lが使えなくなるけどそこそこは動く。
ピクセルは糞重い。

919 名前:デフォルトの名無しさん :2006/07/23(日) 13:02:02
>>918
ありがとう。
だったら、後で勉強するってことでいいかな。

920 名前:デフォルトの名無しさん :2006/07/23(日) 13:15:56
まぁ固定機能が(というか座標変換が)しっかり分かっていれば、シェーダなんてすぐ書けるしな
固定機能のクセで悩むか、シェーダでグラボの対応具合で悩むか、結局どっちでも悩むわけか

そういや、固定機能っぽいのが復活するなんて記事をどこかで読んだけど、あれは何だったかな

921 名前:デフォルトの名無しさん :2006/07/23(日) 14:06:55
>>907
VerexShader2.0までしかサポートしてないビデオカードで
3.0の機能も使うアプリを動かすときにMIXEDにして切り替えないで、
「動きません」で終わらせるのか?

922 名前:デフォルトの名無しさん :2006/07/23(日) 17:14:44
対応していないシェーダを使うときは、MIXEDじゃなくてSOFTWAREにしないと動かないが、
お前は何を言っているんだ?

923 名前:デフォルトの名無しさん :2006/07/23(日) 18:14:59
シェーダーでぼかし処理は見たことあるけど
固定機能でぼかし処理とか出来んのかいな?

924 名前:デフォルトの名無しさん :2006/07/23(日) 18:43:00
しなきゃいらないって話だな

925 名前:デフォルトの名無しさん :2006/07/23(日) 20:18:46
>>923
縮小して拡大でイナフ

926 名前:923 :2006/07/23(日) 21:12:53
>>925
やり方は、知らないが
兎に角、出来るのですなぁ
ありがとう。

927 名前:デフォルトの名無しさん :2006/07/23(日) 22:56:12
>>922
ハードウェアがVS2.0対応のとしてMIXEDにした場合

VS3.0のシェーダーを使う場合:頂点バッファをD3DUSAGE_SOFTWAREPROCESSINGでつくり、SetSoftwareVertexProcessingをTRUEにすればソフトで処理される。
VS2.0のシェーダーを使う場合:頂点バッファを作り、SetSoftwareVertexProcessingをFALSEにすることでハードウェアで処理される。

つまり使うシェーダー毎に頂点バッファの作成フラグも切り替えてソフト/ハード処理を分別するということではないのか?
LunaライブラリとかそうやってたしそのためのMIXEDじゃあないの?


928 名前:デフォルトの名無しさん :2006/07/23(日) 23:04:19
ようはVS2.0のハードでVS3.0も使うときにSOFTWAREデバイス作成したら
VS2.0以下を使うときまでソフトになっちまうじゃねーかって事ね。

929 名前:デフォルトの名無しさん :2006/07/23(日) 23:55:37
固定機能云々関係あるの?

930 名前:デフォルトの名無しさん :2006/07/24(月) 00:06:20
ないっす。

931 名前:デフォルトの名無しさん :2006/07/24(月) 01:20:58
907がMIXED使うやつは固定機能云々っていってたからじゃね?

932 名前:デフォルトの名無しさん :2006/07/24(月) 06:35:20
>>907は知障

933 名前:デフォルトの名無しさん :2006/07/24(月) 10:30:23
DirectX2004SDKと2006SDKって共存させられますか?

934 名前:デフォルトの名無しさん :2006/07/24(月) 10:59:54
すみません、教えて下さい。

GDIで円を書いたり消したり15ミリセカンドでやってますが、
ディスプレイの書き込みとプログラムの書き込みが干渉するのか、
シマのようなものがチラチラします。

GDI描画をDirectXに差し替えると、
シマを消すことは出来るのでしょうか?

935 名前:デフォルトの名無しさん :2006/07/24(月) 11:06:13
画面と同期とかそれ以前に、GDIでのやり方が悪いんじゃね
円は裏バッファに書いてから、まとめてbitbltするんだ

936 名前:デフォルトの名無しさん :2006/07/24(月) 11:10:41
シマパン

937 名前:デフォルトの名無しさん :2006/07/24(月) 11:13:59
取り合えず15ミリ秒じゃなくて16ミリ秒に変更しる
まぁそれでもチラつきは避けられないが

DirectXはフルスクリーンでなら垂直同期取れるから
チラつきは根絶できる

938 名前:934 :2006/07/24(月) 11:32:02
>取り合えず15ミリ秒じゃなくて16ミリ秒に変更しる
おk、でつ。
これは16ミリセカンドの仕様と聞いていたのを、自分が質問するときに15に丸めて書いてしまっただけです。

>DirectXはフルスクリーンでなら垂直同期取れるから
>チラつきは根絶できる

え”−−−−。
まさに知りたい内容でつ。KWSK。
説明サイトでも説明本でも何でも良いから教えて下さい!!!

939 名前:デフォルトの名無しさん :2006/07/24(月) 11:32:13
勉強すればレスの内容を
理解出来るようになりますか?


940 名前:934 :2006/07/24(月) 11:36:18
>DirectXはフルスクリーンでなら垂直同期取れるから
>チラつきは根絶できる

特にハッキリ知りたいのは、
GDI描画をDirectX描画に差し替えるだけで、DirectAPIの中の人が垂直同期を自動でやってくれるのか、
ということと、
フルスクリーンというのはDirectAPIで、
フルスクリーンモードみたいなものにするってことでしょうか(質問初歩杉?)?

941 名前:デフォルトの名無しさん :2006/07/24(月) 11:39:59
自分で調べなくても全部ここで教えてもらえますか?

942 名前:934 :2006/07/24(月) 11:54:07
DirectXの基礎を解説しているサイトか本教えて下さい(><)

943 名前:デフォルトの名無しさん :2006/07/24(月) 12:44:16
>>940
そのまえに最低限ダブルバッファはやっているのかぐらい答えろよ。
やってないなら同期以前の問題だぞ。

944 名前:デフォルトの名無しさん :2006/07/24(月) 13:22:31
ダブルバッファってなんですか?

945 名前:934 :2006/07/24(月) 13:23:17
ダブルバッファっていうのは、>>935 の内容でしょうか?
それなら、一旦裏でデバイスコンテキスト画像作って、
それをCopyRectでコピーしています。

double Bufferedでググルと一杯ありますが、もしかして別のものですか?
>Delphi6で画像のちらつきをなくすには?
ttp://hpcgi1.nifty.com/MADIA/DelphiBBS/wwwlng.cgi?print+200504/05040066.txt

>ダブル・バッファリングにより描画を行うには?(DoubleBuffered編)[2.0のみ、C#、VB]
ttp://www.atmarkit.co.jp/fdotnet/dotnettips/449doublebufed/doublebufed.html

>OpenGL アプリケーションに3次元テキストを描画します。
ttp://support.microsoft.com/default.aspx?scid=kb%3Bja%3B131024

946 名前:デフォルトの名無しさん :2006/07/24(月) 13:29:48
ちなみに垂直同期はフルスクリーンならとれるが、
ウインドウモードではタイマーを使ってエミュレーションされるだけ。
ウインドウモードでちらつきを抑えるならFPSを合わせるよりも、逆に落とした方が効果的。
んで、フルスクリーン専用でいいの?

947 名前:934 :2006/07/24(月) 13:34:17
仕様的にはフルスクリーン専用で問題ありません。

あえて問題とすれば、BCBで作成していますので、
TFormを使うのをやめるのか、
TFormのボタンを押すとフルスクリーンモード(DirectAPIで?)切り替えにするか、
検討が必要ということです。

948 名前:デフォルトの名無しさん :2006/07/24(月) 13:36:18
今時GDIでちらつきってあり得ない気がするんだが

949 名前:934 :2006/07/24(月) 13:40:43
ちらつくというより、ディスプレイの書き込みとプログラムの書き込みが干渉して、 シマができます。

>一旦裏でデバイスコンテキスト画像作って、それをCopyRectでコピーしています。

やっぱり、BitBltの方が速いでしょうか?
あと、グローバルでデバイスコンテキスト画像をコピー直前に作ってますが、
あらかじめ作ってプールしておいた方が良いのかな?

950 名前:デフォルトの名無しさん :2006/07/24(月) 13:41:24
CopyRect は違うんじゃまいか?

# BitBlt() & SRCCOPY なら、ダブルバッファっぽいが
# WNDCLASS で hbrBackground にブラシ設定してたりして…
# さらに InvalidateRect() で再描画要求してたりして…

951 名前:デフォルトの名無しさん :2006/07/24(月) 13:58:07
どちらにしろスレ違い

952 名前:デフォルトの名無しさん :2006/07/24(月) 14:02:15
スレ違いってなんですか?

953 名前:デフォルトの名無しさん :2006/07/24(月) 14:18:17
\|/
/⌒ヽ   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
| ゜Θ゜)< そうでもないよ
| ∵ つ \__________
| ∵ |
\_/

リフレッシュレートに関する論争 だからスレど真ん中。
ttp://matsuzak.pobox.ne.jp/directx/faq/refresh-rate.html

954 名前:934 :2006/07/24(月) 14:38:33
 ↑
上サイトみると2000〜1年になってますが、最近のリフレッシュレート論争はどうなってるんでしょうか?

論争に決着が付いて解決方法がDirectXということですか?

955 名前:デフォルトの名無しさん :2006/07/24(月) 15:14:57
DirectXのAPIのリファレンスはどこにあるのでしょうか?

956 名前:デフォルトの名無しさん :2006/07/24(月) 15:42:14
SDK (June 2006)使用してDirectX8使用したプログラム組もうと思っているのですが
#define DIRECT3D_VERSION 0x0800
#include <D3D8.h> or #include <D3D9.h>
#include <D3DX9.h>
とするとd3dx9math.h等でエラーが出てしまいます。
古いSDKと併用するしかないのでしょうか?

957 名前:デフォルトの名無しさん :2006/07/24(月) 16:02:20
DirectX8を使うんだろう?

#include <D3DX9.h>
   ↓
#include <D3DX8.h>

958 名前:デフォルトの名無しさん :2006/07/24(月) 16:11:07
>>957
June 2006にはD3DX8.h入ってないのです・・
そこで>>541-549の通りにしてみたんですが・・

959 名前:デフォルトの名無しさん :2006/07/24(月) 16:21:11
GetViewportが失敗するのはどういう状況ですか?

960 名前:959 :2006/07/24(月) 16:26:39
すみませんわかりました。D3DCREATE_PUREDEVICEのセイでした。

961 名前:デフォルトの名無しさん :2006/07/24(月) 16:27:28

       ヽ(・ω・)/   ズコー
      \(.\ ノ

962 名前:デフォルトの名無しさん :2006/07/24(月) 16:51:47
>>958
そもそも併用というのがわからん。
DirectX8で作るならDirectX9のSDK入れておく必要ないし。

963 名前:デフォルトの名無しさん :2006/07/24(月) 19:39:20
DirectXと直接は関係ないんですけど、クォータニオンについて質問させてください。
ある回転クォータニオンがあって、そのクォータニオンの半分の回転角を持つ
クォータニオンを作りたいんですが、どのような計算をすればいいんでしょうか?

964 名前:デフォルトの名無しさん :2006/07/24(月) 20:33:00
球面補間で半分にしてやれば?

965 名前:デフォルトの名無しさん :2006/07/24(月) 20:51:47
>>964
いや、ですからやり方とかを聞いているのではなくて、
どのような計算をすればいいのかソースとかを書いてほしいんです。

966 名前:963 :2006/07/24(月) 20:59:49
>>964
ありがとうございます。球面補間で検索して調べてみます。

>>965
勝手にレスしないでください。

967 名前:デフォルトの名無しさん :2006/07/24(月) 20:59:50
google

968 名前:デフォルトの名無しさん :2006/07/24(月) 21:04:12
どっちかっていうと、球面線形補間だけどな。
線形であることがクォータニオンの最大の長所。

D3Dだと、D3DXQuaternionSlerpがまさにそれ。

969 名前:デフォルトの名無しさん :2006/07/24(月) 22:00:08
>>968
ありがとう!これなら出来そうです!まさにもとめていた答えです。

>>966
どちらさんですか?

970 名前:964 :2006/07/24(月) 22:16:37
まあここまで俺の自演なわけだが

971 名前:デフォルトの名無しさん :2006/07/24(月) 22:23:37
そろそろ次のスレを

972 名前:デフォルトの名無しさん :2006/07/25(火) 00:14:38
>>962
3Dの勉強も兼ねているので9のサンプルをビルドする事もあるので・・
9のSDK入れても互換があるので9,8,7…のSDKとして使えるとどこかで見た気がするんです。>>542さんもそう言ってますし
実際d3d8.hとかは含まれてますし・・

973 名前:デフォルトの名無しさん :2006/07/25(火) 00:16:58
DirectInputのバッファって使うのと使わないのどちらがいいの?

974 名前:デフォルトの名無しさん :2006/07/25(火) 00:19:43
>>972
そもそも

#define DIRECT3D_VERSION 0x0800
#include <D3D9.h>
#include <D3DX9.h>

で、よかったはずだぜ。
これで動かないなら動かない仕様になっちゃったんじゃないか?
もしかしてw

975 名前:デフォルトの名無しさん :2006/07/25(火) 00:20:43
>>973
なんだ?バッファって?
遥か前にDirectInputを弄ったことがあるが覚えが無いな。

976 名前:デフォルトの名無しさん :2006/07/25(火) 00:24:26
>>974
動きません・・
そういう仕様になっちゃったんでしょうか;

977 名前:デフォルトの名無しさん :2006/07/25(火) 00:25:14
あるだろ

>>973
どっちでも
PushやDownのキー状態知りたいならBuffer

978 名前:デフォルトの名無しさん :2006/07/25(火) 00:51:20
>>976
ヘッダ見た感じだと
#include <D3D9.h>
#include <D3DX9.h>
共に、
#define DIRECT3D_VERSION 0x0900
以上で無いと拒否るようにできてやがんな。
おお、なんか思いだしてきたぞ。
やっぱりヘッダは
#include <D3D8.h>
じゃないと駄目だな。
で、バージョン定数は0x0800で無いと駄目。だな。
と、いうわけで>>974は大嘘だ。スマン。

で、肝心のD3DX8.hは無いな。確かにない。
でもハードディスク検索してみたら、どうやら

C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\prerelease

に入ってるっぽい謎w
とりあえず、これで通せない?w

979 名前:デフォルトの名無しさん :2006/07/25(火) 01:14:19
Dx8のSDK落としてきてIncludeとLibの中だけ適当な場所においてパス通せばいいだけだろ。
別にSDKインスコする必要はねぇ。

980 名前:デフォルトの名無しさん :2006/07/25(火) 02:07:08
>>978
うちのHDDには眠ってませんでした;

>>979
納得いきませんがそうします
皆さんお騒がせしました

981 名前:デフォルトの名無しさん :2006/07/25(火) 02:33:29
D3DX9だって、古いD3DX9使いたかったら、古いSDKから持ってくるしかないじゃん。

982 名前:デフォルトの名無しさん :2006/07/25(火) 02:33:35
デバッグをするとプリコンパイル済みのヘッダーの検索中に
予期しないEOFというのが出るのですが 対処法わかりませんか?

983 名前:デフォルトの名無しさん :2006/07/25(火) 02:40:53
>>982
EOFといわれるとファイルIO周りぐらいしか思いつきませんわ

984 名前:982 :2006/07/25(火) 02:44:16
すみません間違えました


ビルドをすると このメッセージがでます


デバッグをすると 〜exeファイルが見つかりませんて出ます。

対処法どなたかしりませんか?

985 名前:デフォルトの名無しさん :2006/07/25(火) 02:52:36
>>982
それはプリコンパイルヘッダをincludeしてないと出るエラーだったかな?

986 名前:デフォルトの名無しさん :2006/07/25(火) 02:54:53
>>982
俺あまり詳しくないから的外れな事言ってるかもしれんが
以前同じような事になったが、VSで同じミスしてるなら多分
ソースファイル中に、プリコンパイル用ヘッダがincludeされていないと予想
そうするとexeファイルが見つからないのはビルド失敗してるから実行できませんって意味
#include "stdafx.h"
全てのcpp(c/cxx)にこれ追加してもダメ?

987 名前:986 :2006/07/25(火) 02:58:56
被ったか、スマソ

988 名前:デフォルトの名無しさん :2006/07/25(火) 08:24:27
>>973
GetDeviceState/GetDeviceDataの話?
即時データを取得したいのか変化イベントを取得したいのか
開発の要求に合わせて選択すりゃいいんじゃね

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

990 名前:デフォルトの名無しさん :2006/07/25(火) 20:49:57
>>989のプログラムがバグっている。

991 名前:デフォルトの名無しさん :2006/07/25(火) 20:57:47
私のプログラミングのことを聞きたいわけじゃないんです!

992 名前:989 :2006/07/25(火) 21:06:45
自己解決です。
CreateVertexBufferでサイズの指定をポリゴン1つ分しかしてなかっただけでした。

>>991
勝手にレスしないでください。

993 名前:デフォルトの名無しさん :2006/07/25(火) 21:14:30
だったら、トリップつけれ

994 名前:デフォルトの名無しさん :2006/07/25(火) 21:27:54
原因はなんとなく分かるが、いま答えてもスレが埋まってしまうので
次スレでまた聞いてくれ。

995 名前:デフォルトの名無しさん :2006/07/25(火) 21:39:29
【C++】 DirectX初心者質問スレ Part10 【C】
http://pc8.2ch.net/test/read.cgi/tech/1153831096/

996 名前:デフォルトの名無しさん :2006/07/25(火) 21:50:38


997 名前:デフォルトの名無しさん :2006/07/25(火) 22:06:33
おいお前ら 5月2日 は何の日だか知ってるか?

998 名前:デフォルトの名無しさん :2006/07/25(火) 22:22:09
お前との結婚記念日だろ

999 名前:デフォルトの名無しさん :2006/07/25(火) 22:26:36
5 ごー  2 つー  ごーつー

GOTOの日

1000 名前:デフォルトの名無しさん :2006/07/25(火) 22:32:20
10000000000000000000000000000000000000000000000000000000000000000000000
バーか死ねクズ


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