【C++】 DirectX初心者質問スレ Part36 【C】
DirectXの参考書とかでよく「Vista対応版」と書かれているものがありますが、普通のとどのように違うのでしょうか?
>>939 その2つは3D描画処理の開始と終了をドライバに伝えるのが目的で
デバイスロストのチェック以外は中で何をするかは特に決まってないんじゃないか?
http://kie.nu/aAP 問題が再現できるコード
TextLayout.SetInlineObject(inlineobject,new TextRange(1,1));
TextLayout.SetInlineObject(inlineobject,new TextRange(2,1));
とすると2文字目にあるインラインオブジェクトが表示されないんだが、うちだけ?
944 :
935:2012/05/17(木) 23:48:17.61
>>940 あ、嘘だったんですか・・・
確かに、同じプログラム、レンダリング解像度なら、フルスクリーンのほうがFPS上がりますね・・・
945 :
939:2012/05/17(木) 23:52:18.72
>>944 フルスクリーンだとVSYNC待ちが自動で入る設定で
ウインドウの方が速い!って勘違いする奴はたまにいるw
947 :
935:2012/05/18(金) 00:50:55.90
>>945 DirectX6〜7の頃だとリファレンスラスタライザやビデオカードの
ドライバのソースコードが公開されてたりで、仕様上曖昧な部分を
ソースで確認できたんだけどね。
最近はそういうサービスがないなぁ。
D3DXMatrixRotationYawPitchRoll(FLOAT Yaw, FLOAT Pitch, FLOAT Roll)
XMMatrixRotationRollPitchYaw(FLOAT Pitch, FLOAT Yaw, FLOAT Roll)
1.なぜD3DXからXNAで関数名の末尾が変わったのでしょうか
2.なぜXNAのほうは関数名と引数の順序が異なっているのでしょうか
>>949 そんなこと気にしてたらハゲるぞ。
どっちも大した意味はなくて、その関数を書いた人がそういう気分だっただけ。
計算の順番はroll→pitch→yawなので、ある意味D3DXの順番が不自然だった。
(D3Dは行ベクトルが基本だから左から右に変換が進む)
pitchはX軸回転、yawはY軸回転、rollはZ軸回転だから、引数はその順にしただけかと
951 :
949:2012/05/21(月) 04:48:56.41
>>950 おお、ご回答ありがとうございます!
XNAの関数名は計算順(vMMMの行列表現順)、引数はRotationX/Y/Zの順になっていると、
なるほどすごくしっくりきました。
D3DXで初めてオイラー角に触れたので頭の中で「YawPitchRoll」が染み込んでましたが、
計算順なりxyz順にするほうが合理的ですね(列ベクトルでの表現にこだわらない限りは)。
もしかしてVCのexpressってなくなるのかな?
なんで?
答えはもちろん。
>>955 Visual Studio 11 Express for Windows 8
って言うのに統合されてるのかな
ただ実行ファイルがネイティブの場合XPが除外されるみたいな感じ?
言語ごとじゃなくてターゲットプラットフォームで分けるようにしただけか。
そしてついにXPが滅せられる時がきたか…。
.NET frameworkを使わなければ、「C++のWin32アプリ」とかで作ったバイナリはXPでも動く…よね?
動いてくれないと困るよ…会社で導入する言い訳がますます作れなくなるじゃないか。
VS2010を入れる理由が思いつかず今も2008を使ってるのにさ。
作ったバイナリもそうだけど、VS自体がWindows7以降でないと動かないというのは本当なんだろうか。
959 :
958:2012/05/21(月) 18:12:12.44
すみません完全にVisual Studioスレと間違えました。958は忘れてください。
バイナリもIDEもダメ
某blogみたいに魔改造すればどうにかなるかもしれんが
MSDN blog読む限りVS2010インストールすれば、XPでも動くバイナリも作れるんじゃないの。
VS2010インストールしなくても済むようにするオプションも評価中とも書いてある。
それはVS10のコンパイラとライブラリを使ってるんだからVS11で使えるとは言わない
VC11ツールキットではXPターゲットのバイナリが作れないのと、
VS11でXPターゲットのバイナリを作る手段が無いのじゃ話が全然違うだろwwwww
ま、でもIDE自体がXPじゃ動かないなら、デバッガとかの事も考えるとVS2010にも頼らざるえないのも現実だが。
早く滅びねぇかな、XP…。Direct3D9はもういいよママン…。
MaxTextureRepeatが0であるようなグラフィックチップ(GMA900やGMA950等)の場合、
テクスチャマッピングの繰り返し数の上限はどう考えればいいのでしょう?
VC11ってリリースは本年度末だよね
だとしたら今更XPサポートしても先がないし
結局問題なさそうだけど
どっちかっていうと、ExpressがMetro専用になるってことの方が
このスレ的には重要だと思う。
まじで…。
MetroアプリでDirectX使う場合どんな感じになるんだろうな。
WPFアプリでDirectX使う場合はDirect3D9インターフェスのフレームバッファに一端コピーとか
すげぇ泥臭い仕組みだった気がするんだが、まさか似たような事になっちゃいないよな…。
Express(C++の)でDirectX触ってる人結構いるんかね。っていうか学生さんとかはそうなるんかね。
考えてみればDirectXとリソースエディタって守備範囲が離れてそうだからいい組み合わせなのかも。
いや、俺はExpressにない機能はリソースエディタくらいしか使えてないのでね。
っていうか学生はむしろアカデミックパックがあるじゃないか…。
>>968 おお、サンクス。
実際に使ってみないと何とも言えないけど、ざっと見た限りWPFみたいな泥臭さはなさそう。
>>969 俺的にパッケージ版の機能で欲しいのはプロファイラと静的コード分析だけど、ULTIMATEとか無理ですお…。
それ以外はExpressでも十分な気がする。
ゲームエディタ作るならATL/MFCが欲しいって人もいるかも。
俺は.NETインターフェース作ってC#でなんとかしてるけど、インターフェース作るのがめんどいのと変更しにくいのが難点…。
>>966 マジかよ!!
DXライブラリついに廃業か?
今まで通りだとすれば古いVSはダウンロードできなくなるだろうし
マジでやばいな
>>971 2010Expressが今までどおり提供されるから安心しなw
2005のExpressは未だにDLできるわけだが
>>968 意外にいい感じなんだけど問題はこれ
配布がストアのみしかできないんだよな・・・
XAudio2の音声再生で、IDirectSoundBuffer8::GetStatus のように、
ある音声について再生中かどうか知る方法ってありますか?
IXAudio2SourceVoice::GetState
ではなくて?
DirectSoundの方がどんなだったか忘れた
ありがとうございます。再生中かどうかの判定ができました。
IXAudio2SourceVoice::GetStateで戻される構造体が BuffersQueued > 0 の場合に、
音声データが再生中であると判断できるみたいです。
ちなみにDirectSoundの時は、GetStatusで再生中だとわかるフラグが取得できました。
directx11はvc2008で開発できますか
できる。次の版でどうなるかは知らんけど、現時点で最新のSDK(June 2010)には
サンプルにVC2008用とVC2010用の*.slnが付いてる。
うめ
DXのサーフェスからHDCとれなかったっけ??よく知らんけど。
テキスト用のスプライト生成して、Font機能を使って書き込んだらよいのでは?
>>981 他人が作成したソフトを改造したりするのは板違いです
985 :
981:2012/06/02(土) 12:25:44.83
あ、既にあるソフトに対してか。
>>983は忘れてw
>>981 基本的にPresentをフックして描画する。
チョン系プログラムが対象ならプロテクト回避も必要になるだろう。
>>DirectX絡みの開発は経験がない
ちゃんと学習してください。覚えなければ、あなたの目標とすることは実現できません。
色々レスありがとうございます。
ゆっくり勉強してみます。