2ちゃんねる ■掲示板に戻る■ 全部 1- 最新50    

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

【C++】 DirectX初心者質問スレ Part38 【C】

1 :デフォルトの名無しさん:2013/06/01(土) 00:56:31.97 .net
回答する人も、質問する人も必ず読んでください

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

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

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

>>2リンク

2 :デフォルトの名無しさん:2013/06/01(土) 00:57:03.52 .net
現在の最新バージョンはDirectX 11.1です。

Games for Windows and the DirectX SDK
http://blogs.msdn.com/b/chuckw/

DirectX Tool Kit
https://directxtk.codeplex.com/

DirectXTex texture processing library
https://directxtex.codeplex.com/

C#でDirectX又はXNA系の情報を探してる人は
MonoGame
http://www.monogame.net/

SharpDX
http://sharpdx.org/

【C++】 DirectX初心者質問スレ Part37 【C】
http://toro.2ch.net/test/read.cgi/tech/1338850300/

3 :デフォルトの名無しさん:2013/06/01(土) 01:31:38.18 .net
>>1


4 :デフォルトの名無しさん:2013/06/01(土) 03:22:18.32 .net
windowsプログラミングはテンプレでいいよね

5 :デフォルトの名無しさん:2013/06/01(土) 22:39:56.69 .net
.obj形式のファイルに複数のマテリアルが設定されている場合、どうやって関連づければいいか教えてください。

6 :デフォルトの名無しさん:2013/06/01(土) 23:28:25.76 .net
マテリアルごとにメッシュのグループを形成するだけで、
関連づけとか意味不明。

7 :デフォルトの名無しさん:2013/06/03(月) 04:29:09.56 .net
               ノ      ゚.ノヽ  , /}      ...
            ,,イ`"     、-'   `;_' '    ..::::::::::::::...
   ,-、  _.._   (        (,(~ヽ'~     ..:::::::::::::::::::::::
 )'~  レー'  〉   ヽ       i`'}       .:::::::::::::::::::::::
 ~つ     '-ー、  i       | i'     ...:::::::::::::::::::::::
 /       <  /     。/   !  ......:::::::::::::::::::::::::    これは>>1乙じゃなくて
/         ~^´     /},-'' ,●::::::::::::::::::::::::::::::::::::
i、        ,i' _,,...,-‐-、/    i  ::::::::  .:::::::::::::
..ゝ        <,,-==、   ,,-,/      .:::::::::::            放射能がうんたら
 )       {~''~>`v-''`ー゙`'~       ..:::::::::                          ........::.
 {        レ_ノ            ..::::::::.                         ......:::::::::
ノ         ''           ..:::::::                        ...::.:...:::::::::
                     .:::::::::                     ...:......:::::::::::: .
                    .:::::::::::.        .....      ..  ..::::::::::::::::::::::::   :::.
                    ::::::::::::::::.::::::....:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::.. ::  ::..
                    .:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::    ::.
                    ::::::::::::::::: :::::::::::::::::::::::::::::: :::::
                          .::    ::.  :::

8 :デフォルトの名無しさん:2013/06/04(火) 08:04:41.98 .net
質問させてください

C言語とDXライブラリの組み合わせでプログラミングする際に
必須となるマシンスペックはどのくらいでしょうか?

14歳からはじめるC言語入門
についてくるサンプルが動くマシンと動かないマシンがあるので。

9 :デフォルトの名無しさん:2013/06/04(火) 08:05:41.71 .net
Pen4
1GHz
Windows2000
くらいで大丈夫

10 :デフォルトの名無しさん:2013/06/04(火) 17:04:40.71 .net
ありがとうございます。
Pen2
128MB
266Mhz
WindowsXP
だと動きませんでした

Pen3
256Mhz
500Mhz
WindowsXP
だと動きました

11 :デフォルトの名無しさん:2013/06/04(火) 18:12:28.01 .net
DWORDの宣言を見ると
typedef unsigned long DWORD
となっているが
なぜlongの名前をかえてDWORDにしてるの?
longのままじゃ不都合があるの?

12 :デフォルトの名無しさん:2013/06/04(火) 18:21:33.45 .net
ああ、不都合があるよ。32bitから64bitとかに移った時とかな
てかそれをここで聞くか?

13 :デフォルトの名無しさん:2013/06/04(火) 18:26:37.60 .net
算術シフトしたら面倒だし。

14 :デフォルトの名無しさん:2013/06/04(火) 19:48:53.39 .net
開発中のアプリでフルスクリーンモード的なのを搭載したいのですが、
モニタの縦横比の違いで画面が歪むことが予想されます
最新のエロゲとかですらそんなのばっかりです

そこでウィンドウモードでウィンドウの大きさを変えるだけの方が
楽でほぼ同等の効果が得られるのでいいかなと思っているのですが、変なやり方じゃないでしょうか?

15 :デフォルトの名無しさん:2013/06/04(火) 21:50:54.77 .net
変です

16 :デフォルトの名無しさん:2013/06/04(火) 21:52:45.97 .net
ウィンドウモードのままウィンドウを全(前)面にするって意味?
ネトゲあたりはよく搭載してる方式だし別に変じゃないと思うよ

ちゅーかアスペクト比が狂うなら、そこ直すんじゃなくて
オフスクリーンにシーン全体描いて、バックバッファに転送する時に
自前でボックス挟むようにするのが先だと思うが

17 :デフォルトの名無しさん:2013/06/04(火) 23:20:20.51 .net
極まれだが、フルスクリーンで縦横比ディスプレイが原因の時がある
多くのゲームでその現象が起こるのなら可能性は跳ね上がるぞ

18 :デフォルトの名無しさん:2013/06/04(火) 23:22:43.27 .net
途中で書き込んでしまった・・・
フルスクリーンで縦横比がおかしくなる現象はディスプレイが原因になる場合があるって意味だ(´・ω・`)

19 :デフォルトの名無しさん:2013/06/04(火) 23:42:15.52 .net
まあ大昔と違って、GPU自体にアスペクト比を保てるようなスケーリング機能があるはずなんだが
ドライバのバージョンやモニタの相性によって有効にならん時も多いからなあ

そういう場合はアプリ側に仮想スクリーンの機能があると印象が良いだわね

20 :11:2013/06/05(水) 02:23:15.57 .net
ごめん
詳しく教えてほしい

21 :デフォルトの名無しさん:2013/06/05(水) 02:45:19.08 .net
C(C++)のルールでlongはint以上としか定義されてない
環境によってlongは16bitだったり64bitだったりする可能性もある。
windowsSDKではDWORDは符号なし32bit固定で使いたいので
環境ごとの符号なし32bitに対応させてtypedefしてる。

コンパイラとかマシンが変わってもコードをなるべく書き換えなくていいようにする仕組みだと思えば良い

22 :デフォルトの名無しさん:2013/06/05(水) 05:05:42.28 .net
DirectX11でのレイピックのしかたが分からんちん
ぷりぃずへるぷみぅ

23 :デフォルトの名無しさん:2013/06/05(水) 07:04:57.42 .net
レイピックにDirectXのバージョンは関係ない。

24 :デフォルトの名無しさん:2013/06/05(水) 08:54:23.63 .net
>>21
解りやすいよ
詳しくありがと

25 :デフォルトの名無しさん:2013/06/05(水) 09:10:52.67 .net
>>23
D3DXIntersectに相当するものが見つからなくてさ
自前で判定しなきゃダメかー、諦めて算数勉強しなおしてくる

26 :デフォルトの名無しさん:2013/06/05(水) 17:44:53.28 .net
DirectXMathならDirectX::TriangleTests::Intersectsてのがあるべ
メッシュライブラリを何使ってるかによるだろうが
三角形の頂点座標が取得できてるならこれでいけるべ

27 :デフォルトの名無しさん:2013/06/05(水) 18:34:22.08 .net
>>26
うほっ!あったw
さんくす愛してる、ちゅっちゅっ

28 :デフォルトの名無しさん:2013/06/07(金) 10:34:49.86 .net
今度はDirectX11.1縛りだとCModelViewerCameraのGetぼげほげMatrixが使えんとな
11は見通しが悪いわ検索しても引っ掛からんわでお手上げ

目的はリアルの座標をワールド座標に変換する事によって俺が二次元の世界の住人にげふんげふん
マウス座標の一番出前でぶち当たった平面を判定するまでに必要になる
ワールドプロジェクトビューポート辺りの行列かそれに準ずるモノを取得するメソッド名だけでも知りたい
誰か知ってたらおすえてけんろ;

29 :22:2013/06/07(金) 11:25:44.14 .net
書いてから思った
9の頃から最初は初期化とかとか本とか転がってるコードに頼りっぱなしで
そもそも設定の仕方とか全然理解してないんだな俺
出直してくる

λ......

30 :デフォルトの名無しさん:2013/06/07(金) 11:27:49.38 .net
少年はかくして大人への階段を一歩のぼった

31 :デフォルトの名無しさん:2013/06/07(金) 21:08:26.76 .net
解ってきたかも
どう射影するかはバーテクスシェーダ次第だからDirectXとかライブラリの類じゃどうしようもないのか

くっそめんどくせぇぇええぇぉぇいぅははははだめだこりゃ
また行列から勉強し直してくる orz=3

32 :デフォルトの名無しさん:2013/06/08(土) 01:29:37.60 .net
ブログに書いてろゴミ

33 :デフォルトの名無しさん:2013/06/10(月) 00:06:07.33 .net
d3dx11d.lib がinclude出来ないとエラーが出るのですが、どうすればいいのでしょうか?

環境はwindows8の64bitでvisual studio 2012 for windows desktopです。
追加のインクルードディレクトリにはIncludeと\Lib\x86を追加しています。

34 :デフォルトの名無しさん:2013/06/10(月) 00:48:28.85 .net
d3dx11d.libってことはWindows 8 SDK以前のプロジェクトをビルドしようとしてるんだろうけど

>Includeと\Lib\x86
これどこのよ。自分でインストールしたDirectX SDK?
書き間違えなだけかもしれんが一応突っ込んでおくと
Lib\x86を追加するのはインクルードじゃなくて「ライブラリ」ディレクトリな

35 :デフォルトの名無しさん:2013/06/10(月) 04:49:39.69 .net
>d3dx11d.lib がinclude出来ない

36 :デフォルトの名無しさん:2013/06/10(月) 13:21:01.56 .net
SDKをインストールしたとは一度も言っていない

たぶんサンプルのソースか何かで
どのバージョンを使ってるかも意識してないんだろうな

37 :デフォルトの名無しさん:2013/06/10(月) 23:50:08.65 .net
>>33
インクルードディレクトリにInclude
ライブラリディレクトリにLib\x86を追加するんだ

38 :デフォルトの名無しさん:2013/06/11(火) 00:11:18.03 .net
windows8でvisual studio 2012なんだろ・・・?
そんな面倒なことしなくてもdirectXは動くんだぜ

39 :デフォルトの名無しさん:2013/06/11(火) 00:57:32.71 .net
ところがね、Windows 8 SDKだとD3DXが付属してないので
例えばDirectX SDKのサンプルのような2010以前のプロジェクトを
%DXSDK_DIR%にパスを通さずビルドしようとすると、この手のエラーが出るのよね

40 :デフォルトの名無しさん:2013/06/12(水) 00:15:58.13 .net
キャラクタ画像を用意してビルボードで表示しているんだけど
画像のα値> 0 に設定している部分は深度バッファに書き込んで
画像のα値= 0 に設定している部分は深度バッファに書き込みたくないんだ
どうすればいいかな?

41 :デフォルトの名無しさん:2013/06/12(水) 00:41:20.79 .net
書き込みたくないときだけ深度バッファをNULLにすればいいだろ

42 :デフォルトの名無しさん:2013/06/12(水) 00:52:20.21 .net
ああ、勘違いしてたわ・・・ステンシルバッファみたいなことしたいって意味か
directX9ならここでも見てみたらどうだ?

ttp://marupeke296.com/DXG_No18_WhatIsStencilBuffer.html

43 :デフォルトの名無しさん:2013/06/12(水) 01:15:07.00 .net
後出し情報すみません、DirectX11 です
ステンシルバッファを使う方法は確か無理だったはずです

ステンシルテスト → 深度テスト → ピクセル描画
の流れだったと思うのですが、ピクセル描画の際にα値が 0 であるならば
ステンシル・深度テスト通過時に書き込んだ情報をなかったことにする
ということがやりたいことです

44 :デフォルトの名無しさん:2013/06/12(水) 01:26:30.02 .net
アルファトゥカバレッジで代替できんか?

45 :デフォルトの名無しさん:2013/06/12(水) 01:46:53.16 .net
んじゃピクセルシェーダのコードにアルファ値が0ならdiscardするようにすればいいんじゃないか?
確か深度バッファにも出力しなくなるハズだが

if(Color.w == 0)
discard;
こんな感じだ

46 :デフォルトの名無しさん:2013/06/12(水) 01:48:12.00 .net
できました!!  ありがとうございます

47 :デフォルトの名無しさん:2013/06/12(水) 01:51:26.92 .net
ん?アルファトゥカバレッジの方で解決したのか?

48 :デフォルトの名無しさん:2013/06/12(水) 02:13:48.14 .net
アルファトゥカバレッジの方でできました!!  はずでした・・・
閾値が 0.5 と思ったより高かったので、思った動作になりませんでした
軽くググってみたのですが、閾値を設定する方法はないみたいですね

discard ってステンシルバッファへの書き込みはしないんですね
MSDN の説明をみるとてっきり書き込みされるものかと思ってました

discard のほうでやりたいことを実装出来ました
いろいろな方法を教えていただき、ありがとうございます

49 :デフォルトの名無しさん:2013/06/13(木) 20:57:41.79 .net
#define VERTEX_T_FVF ( D3DFVF_XYZ | D3DFVF_DIFFUSE | D3DFVF_TEX1 )

の FVF ( の隙間を消すとエラーになるんだけどなんで?

50 :デフォルトの名無しさん:2013/06/13(木) 21:12:22.02 .net
マクロだから

51 :デフォルトの名無しさん:2013/06/13(木) 21:23:26.96 .net
>>49
DirectXに関係ない文法の話を書くなクズ

52 :デフォルトの名無しさん:2013/06/13(木) 23:08:55.73 .net
>>49
初心者とかそういうのをぬきにして向いてないというほかない

53 : 忍法帖【Lv=2,xxxP】(2+0:5) :2013/07/07(日) NY:AN:NY.AN .net
directx11.2対応のビデオカードってgeforce8xx/radeonHD9xxxからかな?
win8.1と新Xbox専用というからにはJaguarのiGPUは対応するはず。
intelのiGPUはbroadwellで対応するのだろうか。

54 :デフォルトの名無しさん:2013/07/13(土) NY:AN:NY.AN .net
Haswellって一応仕様は11.1になってるんだな
持ってないから実際には調べられないけど

55 :デフォルトの名無しさん:2013/07/16(火) NY:AN:NY.AN .net
http://blogs.msdn.com/b/chuckw/archive/2012/08/22/directx-sdk-s-of-a-certain-age.aspx

これ更新されてた
11.2関連を追加してのかな

56 :デフォルトの名無しさん:2013/07/16(火) NY:AN:NY.AN .net
どうもそうっぽいね。

57 :デフォルトの名無しさん:2013/07/19(金) NY:AN:NY.AN .net
SDKのサンプルしか実行出来ないのだが…何故?

58 :デフォルトの名無しさん:2013/07/20(土) NY:AN:NY.AN .net
なんの話だよ

59 :デフォルトの名無しさん:2013/08/17(土) NY:AN:NY.AN .net
ネタがないな
directxtoolkitのreadme翻訳してくれてる人がいた

http://www.enoie.net/blog/?p=8254

60 :デフォルトの名無しさん:2013/08/20(火) NY:AN:NY.AN .net
Directx9で、リアルタイムで色が変化するタイルマップを作りたいです

頂点色をリアルタイムに変更して描画したいですが、方法が分かりません

初心者の私に知恵を授けて頂けないでしょうか?

61 :デフォルトの名無しさん:2013/08/20(火) NY:AN:NY.AN .net
>>60
動的頂点更新だね。
Lock、Unlockで検索してみて。

62 :デフォルトの名無しさん:2013/08/20(火) NY:AN:NY.AN .net
>>61
早速調べてみます
ありがとうございます

63 :デフォルトの名無しさん:2013/08/21(水) NY:AN:NY.AN .net
Portする人向けのお話

Living without D3DX

http://blogs.msdn.com/b/chuckw/archive/2013/08/21/living-without-d3dx.aspx

64 :デフォルトの名無しさん:2013/08/21(水) NY:AN:NY.AN .net
ありがてぇ!

65 :デフォルトの名無しさん:2013/08/24(土) NY:AN:NY.AN .net
DirectXのD3DXCreateTextureFromFileEx関数で画像の縦横サイズ指定しても、
反映されない(スプライトいっぱいに引き伸ばされる)んですがどうしたらいいですか?

IDirect3DTexture9* pTexture = NULL;
D3DXCreateTextureFromFileEx(pDevice3D,_T("unko.bmp"),32,32,0,0,D3DFMT_UNKNOWN,D3DPOOL_MANAGED,D3DX_FILTER_POINT,0,0,0,0,&amp;pTexture);

66 :デフォルトの名無しさん:2013/08/24(土) NY:AN:NY.AN .net
パラメータで引き延ばすように自分で設定しているからだ。
アホか。

67 :デフォルトの名無しさん:2013/08/24(土) NY:AN:NY.AN .net
>>66
すみません、具体的にはどういう設定なんでしょうか?

68 :デフォルトの名無しさん:2013/08/24(土) NY:AN:NY.AN .net
使っている関数のヘルプぐらい読めよ。

69 :デフォルトの名無しさん:2013/09/03(火) 16:42:12.36 .net
DirectX11でのシェーダの質問です
単色ポリゴンとスプライト(ポリゴン+テクスチャ)を描画するためのシェーダは切り替えずに描画できますか?

70 :デフォルトの名無しさん:2013/09/03(火) 21:41:12.22 .net
Direct3D11(SM5.0)なのですが
ポストプロセスをしたいので、ピクセルシェーダからUAVに出力して、
何らかの処理をしてから、それをスワップチェーン内のバックバッハに描画したいのですが、
最後にバックバッハに描画する時、やっぱりRTVの使えるピクセルシェーダを通す必要があるのですか?
それだと、バックバッハ全体を占めるクアッドを用意する必要がありませんか?

71 :デフォルトの名無しさん:2013/09/03(火) 21:45:39.95 .net
>>70
まずは日本語を勉強しろ

72 :デフォルトの名無しさん:2013/09/03(火) 21:59:00.95 .net
>>71
どこに問題がありますか?

最後にピクセルシェーダを通して描画をするとすると、頂点シェーダが必要だから、
ポストプロセス済リソースをマップした四角形ポリゴンを用意する必要があるのではないですか?
大変な無駄だと思うのですが…。

ポストプロセスを実行するまでは良いのですが、その結果をどのようにして画面に描画するべきかわからないです。

73 :>>70, >>72:2013/09/03(火) 22:09:30.35 .net
失礼致しました。これは自分でどうにかするべき問題であるようです。お騒がせして申し訳ありませんでした.

74 :デフォルトの名無しさん:2013/09/03(火) 22:09:36.25 .net
>>72
四角形ポリゴンを用意する必要があるに決まっています

75 :>>70, >>72:2013/09/03(火) 22:14:12.67 .net
>>74
なんと、、、やはりそうなのですね。

どうにかしてバックバッハのUAVを作成しようとしたのですが…むづかしいみたいですね。

勉強になります。ありがとうございました!

76 :デフォルトの名無しさん:2013/09/03(火) 22:41:29.72 .net
>>69
頂点色(あるいは定数バッファで設定した色)×テクスチャのシェーダーにしておけば、

頂点色のみで描画したい場合 → 頂点色×白テクスチャ
テクスチャを描画したい場合 → 頂点色(白)×チェクチャ色

で統一できる。

77 :デフォルトの名無しさん:2013/09/04(水) 19:26:00.98 .net
UAV作るのにバッファを用意してるだろ?
だったらバックバッファにUAVに使ってるバッファをコピーすればいいだけの話
もちろん同じサイズじゃないとだめだけどな

78 :デフォルトの名無しさん:2013/09/05(木) 17:50:49.11 .net
>>77
ありがとうございます、やってみます。

79 :デフォルトの名無しさん:2013/09/05(木) 21:26:37.11 .net
>>77
できました!
バックバッファ(スワップチェーン)とUAVのリソースを DXGI_FORMAT_R8G8B8A8_UNORM で、
HLSL側のUAVリソース宣言を RWTexture2D<float4> で ID3D11DeviceContext::CopyResource() を呼んだら、何も問題なく動きました。
本当に助かりました! すごい

80 :74:2013/09/05(木) 21:42:13.38 .net
普通バックバッファと描画バッファの大きさ同じだよな… スマソ

81 :デフォルトの名無しさん:2013/09/08(日) 03:17:21.20 .net
DirectX、面白そうだなと本を買ってサンプルを実行したが、
いきなり「fatal error LNK1104:」というものにぶち当たっている

ググっても「パスの指定が間違っている」としか出てこないし
それ以外に見直すべき設定とかありますか?

82 :デフォルトの名無しさん:2013/09/08(日) 07:07:36.59 .net
はい
もちろん

83 :デフォルトの名無しさん:2013/09/08(日) 09:59:30.83 .net
初学者にとってはコンパイルに成功するまでが試練。

84 :デフォルトの名無しさん:2013/09/08(日) 10:29:01.19 .net
本で使っている DX と インストールしてるDXのバージョンが違うという罠ではないか

85 :デフォルトの名無しさん:2013/09/08(日) 15:02:30.26 .net
なんかのサンプルを適当に実行しようと思うのが間違いだと思う。
helloWorld的なdirectXを初期化するためのプログラムをまず組むべき

86 :デフォルトの名無しさん:2013/09/08(日) 19:40:27.43 .net
なんかのサンプルを適当に実行してみようと思うのは別に間違いじゃないと思うよ。
81は本のサンプルじゃなくてMSのDirectX SDK(つまり11以下)のサンプルのビルドはできるくらいなの?

87 :デフォルトの名無しさん:2013/09/08(日) 19:48:36.03 .net
おまえらSDKインストールしたことないの?
サンプルブラウザとか立ち上げたこともないの?
DXSDKはサンプルのバイナリ入ってるだろ

それはそれとして、インストールしたのにサンプルが実行できないならほかに原因があるな
インストールしたSDKとは別のサンプルなんじゃねぇの?
馬鹿丸出し?

88 :デフォルトの名無しさん:2013/09/08(日) 20:39:29.41 .net
VC2012に入っているSDKだけでコンパイルが通るように、
D3DXとか必要性のないものは全て切り離した。
おかげでいちいちDirectXのSDKを気にする必要がなくなってさっぱりしたよ。

89 :デフォルトの名無しさん:2013/09/08(日) 21:01:57.08 .net
同感。
D3DX切り捨ては英断だよ。

90 :デフォルトの名無しさん:2013/09/08(日) 21:06:57.79 .net
D3DXとかDirectXTKとか気持ち悪い気がして使う気になれない

91 :デフォルトの名無しさん:2013/09/08(日) 22:25:44.90 .net
テクスチャ作りかたが分からないからそこだけ利用してる

92 :デフォルトの名無しさん:2013/09/08(日) 22:40:05.77 .net
テクスチャの読み出し部分はGDI+で簡単に代用できる。

93 :デフォルトの名無しさん:2013/09/09(月) 01:58:35.72 .net
シェーダはバイナリ用意して突っ込むの?

94 :デフォルトの名無しさん:2013/09/09(月) 07:14:48.99 .net
VS2012なら統合環境にシェーダコンパイラ標準装備。
それとDirect3D10とVista以降ならOS側にコンパイラ標準装備。

95 :デフォルトの名無しさん:2013/09/11(水) 07:32:59.94 .net
(*´・∀・)(・∀・`*)ヘー

96 :デフォルトの名無しさん:2013/09/12(木) 02:06:51.59 .net
D3DXと違ってDirectXTKやTexみたいにみたいにオープンで
随時更新していくってのはいいと思う

97 :デフォルトの名無しさん:2013/09/16(月) 22:44:41.11 .net
アップデートきた
http://blogs.msdn.com/b/chuckw/archive/2013/09/14/dxut-for-win32-desktop-update.aspx?wa=wsignin1.0

98 :デフォルトの名無しさん:2013/09/17(火) 00:36:31.62 .net
D3DXVECTOR3ってどこのヘッダファイルで定義されてますか?
d3d9.hとd3dx9.hをインクルードしているんですが、定義されていないと出てしまいます

99 :デフォルトの名無しさん:2013/09/17(火) 01:11:15.96 .net
>>98
おまえには開発をやるセンスがない

100 :デフォルトの名無しさん:2013/09/18(水) 01:15:41.62 .net
3D空間上のZ=0の位置に平面マップを表示してます
マップを回転する機能を追加するときに
ピコーン!マップじゃなくてカメラを回転すればいいんだ!
と思いカメラをz軸中心に回転させてみました

所が、90度回転させた状態でカメラを左右に移動(カメラのx座標値を変化)させようとすると上下に移動しちゃいます

マップを回転する時はマップ全体を回転するのが一般的なんでしょうか?

101 :デフォルトの名無しさん:2013/09/18(水) 01:17:34.56 .net
>>98
d3dx9math.h

102 :デフォルトの名無しさん:2013/09/18(水) 07:17:06.34 .net
そりゃまぁ、z軸に回して単純に移動行列にをかければな・・・

103 :デフォルトの名無しさん:2013/09/18(水) 07:20:48.62 .net
>>100
左右移動のベクトルに回転をかけておけばいいだけの話

104 :デフォルトの名無しさん:2013/09/19(木) 10:26:53.60 .net
>>103
>>102
なるほど!!勉強になります
ありがとうございました

105 :デフォルトの名無しさん:2013/09/19(木) 16:00:51.59 .net
Windows8.1で新設されるDirectX11.2ってDX11までの機能しか使わなければ
DX11のVistaやDX11.1一部対応のWin7でも動くと考えて良いのですかね?
流石に古いOS全滅だとシャレにならないので…
(DX9cとかだとSDKの更新とかでDX9cを使ってても
Win2kやWin9xでは動かないプログラムになったりしたはずだけど…)

106 :デフォルトの名無しさん:2013/09/19(木) 16:16:35.62 .net
uni糞code

107 :デフォルトの名無しさん:2013/09/23(月) 08:25:45.01 .net
http://blogs.msdn.com/b/chuckw/archive/2013/09/20/directx-sdk-samples-catalog.aspx?wa=wsignin1.0

便利なリンク集
Tutorial08-10なんて以前あったっけ?

108 :デフォルトの名無しさん:2013/09/27(金) 09:19:13.10 .net
Windows SDK for Windows 8 を
スタンドアロンマシンにインストールする方法はありますか?

109 :デフォルトの名無しさん:2013/09/28(土) 10:41:02.42 .net
VisualStudioをメディアに焼いてインストールするってのは駄目なの?

110 :デフォルトの名無しさん:2013/09/30(月) 13:45:54.86 .net
イメージのダウンロードが見つからんな 探し方が悪いんだろうけど

111 :デフォルトの名無しさん:2013/09/30(月) 13:53:50.79 .net
>>110
探し方が悪いんじゃない
頭が悪いんだ

112 :デフォルトの名無しさん:2013/09/30(月) 15:23:52.64 .net
質問です。
D3D11のD3D11_PRIMITIVE_TOPOLOGY_POINTLISTで描かれる頂点の大きさを変更するにはどうしたら良いですか?
ググってみても全然引っかかりません。
ジオメトリシェーダでなければ出来ないとかありますか?

113 :デフォルトの名無しさん:2013/09/30(月) 15:25:30.07 .net
>>112
探し方が悪いんじゃない
頭が悪いんだ

114 :デフォルトの名無しさん:2013/10/01(火) 13:50:03.21 .net
まあ、pointは大きさ変えられんしな

115 :112:2013/10/01(火) 15:05:01.86 .net
>>114
まじすかorz
でもそれが分かっただけでも大収穫です!!
常に1pxでマルチサンプルを有効にするとちかちかする。これが仕様なんですね。
ジオメトリシェーダに頂点渡して四角ポリゴンを返すようにします。
さんくす!!

116 :デフォルトの名無しさん:2013/10/02(水) 08:31:09.39 .net
ちなみにLineの太さも変えられないからな

117 :デフォルトの名無しさん:2013/10/02(水) 09:11:12.81 .net
思いっきりLineとwidthでググってましたw
ポリゴンとLineを同時に表示すると前後関係が曖昧になってLineが欠けたりするんですよね。
シェーダで何とかしてみます。

118 :デフォルトの名無しさん:2013/10/23(水) 20:50:59.02 .net
今から勉強するとしたらDirectX9.0がいいの?それともやっぱりDirectX11.0を勉強したほうがいいの?

119 :デフォルトの名無しさん:2013/10/23(水) 20:53:34.37 .net
>>118
それを自分で判断できるように頭を鍛えろ

120 :デフォルトの名無しさん:2013/10/23(水) 20:56:34.00 .net
>>119
個人的にDirectX9.0のが無難かなとは思って売るんだけど、来年XPのサービスきれたら9.0は居場所なくなるんじゃないかとおもって迷ってた

121 :デフォルトの名無しさん:2013/10/23(水) 21:16:39.85 .net
D3DXと決別するのなら、シェーダコンパイラがOS側に実装されている、
Direct3D11を使うのをおすすめする。

122 :デフォルトの名無しさん:2013/10/23(水) 21:51:24.76 .net
自分も11をオススメする。

123 :デフォルトの名無しさん:2013/10/24(木) 01:37:16.19 .net
11で9のハードウェアをターゲットに出来るって最近しった

124 :デフォルトの名無しさん:2013/10/24(木) 01:46:26.29 .net
>>123
まじかよ俺のXP搭載化石PCちゃんまだしばらく息できる?

125 :デフォルトの名無しさん:2013/10/24(木) 01:53:25.74 .net
DirectX11のエンドユーザーランタイムはもちろん必要
つまりOSはVista以降

126 :デフォルトの名無しさん:2013/10/24(木) 06:05:45.54 .net
http://blogs.msdn.com/b/chuckw/archive/2013/10/18/visual-studio-2013-and-windows-8-1-sdk-rtm-are-now-available.aspx

新しいSDKとVSのお話それに伴い過去の記事が更新されてる
Expressの場合PIXがDesktop版じゃなくWindows(Store用)の方にしか入ってないらしい

127 :デフォルトの名無しさん:2013/10/24(木) 09:48:43.54 .net
D3D10以降のモデルデータ読み込みってどのようにしていますか?
D3DXLoadMeshFromXと同等のものを作りたいです。

128 :デフォルトの名無しさん:2013/10/24(木) 13:09:18.54 .net
>>127
作ればいいだろ
OpenGLと共通のフォーマット決めて、ライブラリ化して使ってる
iOS、Androidでも使うからな

最初はFBXでも使っとけ

129 :デフォルトの名無しさん:2013/10/24(木) 22:43:27.50 .net
流石にxファイルはコンバートしちゃった方がいいような気がする

130 :デフォルトの名無しさん:2013/10/24(木) 23:05:29.44 .net
極論すれば、保存用のデータフォーマットなんてどうでもいいんだよ
メモリ上で保持するフォーマットをしっかり決めて、そのデータを操作する処理をライブラリ化する
コンバートなんていくらでもできるだろ?
D3DXはUserDataを処理できて便利だったけど、D3DXが廃止なので現状は自作が妥当

131 :デフォルトの名無しさん:2013/10/25(金) 00:08:17.14 .net
自分が使っているモデリングソフトのプラグインを作って、
好きな形式で吐き出せばいいだけの話。

132 :デフォルトの名無しさん:2013/10/25(金) 15:26:27.41 .net
TiledResources怖い
即ブルースクリーン

133 :デフォルトの名無しさん:2013/10/25(金) 15:36:52.45 .net
そうなの?w

134 :デフォルトの名無しさん:2013/10/26(土) 04:01:24.61 .net
DirectX11を使用していて、あるシーンのデプスマップ(Z値を画像化したもの)を出力したいのですが
深度ステンシルテクスチャをD3DX11SaveTextureToFileを利用して出力しようとしたところ、上手くいきませんでした(画像が生成されない)
どのような方針でプログラミングを行えば、デプスマップを画像として出力できるのか、ご教授お願いします

135 :デフォルトの名無しさん:2013/10/26(土) 04:26:02.87 .net
色じゃなくてZ値書き込むシェーダでも書けばいいんでないかい?

136 :デフォルトの名無しさん:2013/10/26(土) 07:31:52.37 .net
>>134
マルチサンプリングしてる?
だとしたら、一旦マルチサンプルじゃないテクスチャにコピーしたらいけるかもしれないよ。

http://maverickproj.web.fc2.com/d3d11_04.html
http://maverickproj.web.fc2.com/d3d11_01.html

コピーにはID3D11DeviceContext::ResolveSubresourceというAPIを使うらしい。
これ知らなかったなぁ。

137 :デフォルトの名無しさん:2013/10/26(土) 10:14:31.31 .net
DirectXMath.hのXMMATRIXをd3dx9のLPD3DXEFFECTのSetMatrix関数で使う方法と
DirectXMathとd3dx9mathを物理演算の為に倍精度で使用する方法があれば教えてください。

138 :デフォルトの名無しさん:2013/10/26(土) 10:36:28.62 .net
>DirectXMath.hのXMMATRIXをd3dx9のLPD3DXEFFECTのSetMatrix関数で使う方法
XMMATRIXのメンバをD3DXMATRIXにコピーするしかないんでねーの?

>DirectXMathとd3dx9mathを物理演算の為に倍精度で使用する方法
ムリなんじゃないかな・・・

139 :デフォルトの名無しさん:2013/10/27(日) 15:47:28.32 .net
device.SetRenderTargetで約16msかかるけど、こんなもん?
ってまさかPresentで止まってるのか

140 :139:2013/10/27(日) 17:36:10.70 .net
あー
present中はlockされるんだな

141 :デフォルトの名無しさん:2013/10/27(日) 18:05:53.69 .net
directx june 2010sdkで作成した自作ゲーム(32bit)が
起動させると、偶に動作が全体的に重たくなる現象が発生します
効果音、BGMは正常に再生されます
PC環境は CPU i7、メモリ8G、HDD 700G、windows8(64bit)、Directx11runtimesのノートです

そういう時その自作ゲームを終了して
他のゲームを動作させてみたら問題なくプレイできました
こういう場合、PCを再起動すると、自作ゲームの速度は正常になります
以前使っていたノートではそういう現象は全くありませんでした

どなたか原因がわかる方、ご教授願えないでしょうか

142 :141:2013/10/27(日) 18:09:05.30 .net
追記

自作ゲームは内部で特別な事をしているわけではなく
強いて挙げれば
BGMに2〜3個の10メガ以上のWAVをメモリに全て読み込んで
ストリーミングではなく、そのまま再生しています

ゲームではd3dx9_43.dllを使っています

143 :デフォルトの名無しさん:2013/10/27(日) 18:17:18.02 .net
エスパーレスしろとな?

144 :デフォルトの名無しさん:2013/10/27(日) 18:20:05.60 .net
>>143
馬鹿にかまうな

145 :141:2013/10/27(日) 19:58:28.94 .net
自己解決しました
diectxとは全然関係ない部分が原因と判明
wait処理のコードがおかしかった模様
スレ汚し申し訳なかった

146 :デフォルトの名無しさん:2013/10/27(日) 22:18:32.45 .net
D3DPRESENT_INTERVAL_DEFAULTで同期を取ると
Present()は一般的に16msになると思ったが

QueryPerformanceCounterを使い、空ループ測定したら、不定期に30msなるフレームを発見した。
自分環境が原因?

空ループ
while(true)
{
QueryPerformanceCounter終わり
QueryPerformanceCounter開始
device->Present()
}

147 :デフォルトの名無しさん:2013/10/27(日) 22:20:44.21 .net
>>146
アホスギワロタ

148 :デフォルトの名無しさん:2013/10/27(日) 22:21:17.82 .net
測定結果をグラフにしたttp://www.dotup.org/uploda/www.dotup.org4616605.png
縦軸がμs 横軸がフレーム数
基本16msだが、ときどき30msになった

149 :デフォルトの名無しさん:2013/10/27(日) 22:32:02.63 .net
間に合わなかったから次の同期待ちに回されただけだろ。
だからなんだよ、頭悪いな。

150 :デフォルトの名無しさん:2013/10/27(日) 22:40:01.18 .net
>間に合わなかったから次の同期待ちに回されただけ
それは誰でもわかるだろ
ほぼ空のループでなぜ発生するか知りたいんだよ

151 :デフォルトの名無しさん:2013/10/27(日) 23:09:02.51 .net
>>150
真性の馬鹿がいる…

152 :デフォルトの名無しさん:2013/10/27(日) 23:14:36.84 .net
>>150
お前は自分本位で他人に気が回せない奴だから、
プログラムでも状況が理解できないんだよ。
てめえだけで世界が動いているわけじゃ無いのを理解しろ。

153 :デフォルトの名無しさん:2013/10/27(日) 23:26:23.77 .net
>>152
せめてプログラムの観点から煽ってくれないか

154 :デフォルトの名無しさん:2013/10/28(月) 02:10:54.61 .net
何それカッコイイ

155 :デフォルトの名無しさん:2013/10/28(月) 07:02:54.20 .net
>>153
もろにプログラムの指摘なのに、気がつかないのか?

156 :デフォルトの名無しさん:2013/10/28(月) 09:40:36.89 .net
>>155
あなたが言うプログラムの指摘の部分を教えてくれないか?

157 :デフォルトの名無しさん:2013/10/28(月) 20:42:49.20 .net
どれだけ馬鹿なんだよ。
他人を「他のプログラム」、世界を「OS」に置き換えてみろ。

158 :デフォルトの名無しさん:2013/10/28(月) 21:33:43.62 .net
くっさ

159 :デフォルトの名無しさん:2013/10/28(月) 21:53:28.09 .net
>>157
「他のプログラム」が原因だと言いたいのか?

160 :デフォルトの名無しさん:2013/10/28(月) 21:59:45.08 .net
>>159
お前理解力のない頭の悪さが元凶

161 :デフォルトの名無しさん:2013/10/28(月) 22:03:54.17 .net
頭が悪いと生きていくのが大変だよね。

162 :デフォルトの名無しさん:2013/10/28(月) 22:15:34.67 .net
>>160
お前の説明力が低いという認識は持ってるか?

163 :デフォルトの名無しさん:2013/10/28(月) 22:16:07.10 .net
間違った記憶で害悪を撒き散らすしね

164 :デフォルトの名無しさん:2013/10/28(月) 23:44:39.44 .net
理解力が足りない奴はそれを他人のせいにするから、
TVなんかも馬鹿でも分かる大衆番組ばっかりになってるんだよね。
ごくごく一般的な知能を持った奴をうならせるようなもっと面白いものを作りたくても、アホが理解できないから作れない。
本当にお荷物だよな。

165 :デフォルトの名無しさん:2013/10/28(月) 23:48:03.11 .net
余計な雑談は不要ですよ

166 :デフォルトの名無しさん:2013/10/28(月) 23:57:21.53 .net
表現力が足りない奴はそれを他人の(ry

167 :デフォルトの名無しさん:2013/10/28(月) 23:59:17.57 .net
傲慢な合理主義さまの乱入だ

168 :デフォルトの名無しさん:2013/10/29(火) 00:13:11.12 .net
結局>>146の原因分かる人いる?
わずかなコマ落ちは気にしない人が多いのか

169 :デフォルトの名無しさん:2013/10/29(火) 00:19:16.27 .net
原因わかるかと聞くより
お前らの環境でも発生する?のほうが適切だな

170 :デフォルトの名無しさん:2013/10/29(火) 00:20:26.09 .net
うむ
ついでにその原因を調べられるぐらいのスキルは身につけろ
使ってるエディションは知らんが、VSまじ便利

171 :デフォルトの名無しさん:2013/10/29(火) 07:08:33.93 .net
自分の環境で発生するものは他人の環境でも絶対発生する、
それがアスペの発想だから聞く必要など無いという判断だ。

172 :デフォルトの名無しさん:2013/10/29(火) 08:40:18.33 .net
まじめすぎんだよな。

173 :デフォルトの名無しさん:2013/10/29(火) 08:41:21.31 .net
だから、発生するか?
という質問に言い直してるのだが

174 :デフォルトの名無しさん:2013/10/29(火) 08:46:25.21 .net
ソースを自分で書いて、検証した結果を報告せよというご命令ですね。

175 :デフォルトの名無しさん:2013/10/29(火) 08:49:37.01 .net
だから最初から言っているだろう。
なんでも自分中心で、人のことなど考えずに生きているのが原因だって。
全てにそういう態度が表れているよな。

176 :デフォルトの名無しさん:2013/10/29(火) 08:53:29.03 .net
>>174
極論だとそうなるが、ただの空のループのソースが
必要なレベルの人がここに居るのか?

177 :デフォルトの名無しさん:2013/10/29(火) 09:26:04.53 .net
DirectXのバージョンも不明、どう初期化しているのかも不明、フルスクリーンかどうかも不明、
他人が作ったら条件の違う別のコードにしかならないことすら理解できないアホは、
プログラムなんてやめた方がいい。

178 :デフォルトの名無しさん:2013/10/29(火) 13:42:24.16 .net
ユーザーから情報が得られたので解決した
>>177とか見ると、ここで質問した自分がアホだったことを理解した

179 :デフォルトの名無しさん:2013/10/29(火) 14:23:16.95 .net
結局自分の馬鹿さ加減が原因だっただろう。
最初から言われていたのに今頃気がつくとは遅すぎる。

180 :デフォルトの名無しさん:2013/10/29(火) 15:37:02.11 .net
しょーもない奴に噛み付いている奴も
馬鹿だってことに気づいとけよ

181 :デフォルトの名無しさん:2013/10/29(火) 23:08:48.83 .net
レイヤードウィンドウにDirect2Dで描画してみたのですが
透過を解除すれば表示されるのですが、透過したままだと
何も表示されません。根本的におかしいでしょうか?
http://codepad.org/1P1V7d2g

182 :デフォルトの名無しさん:2013/10/29(火) 23:14:19.30 .net
そもそもDirect2Dを使わなければ表示できているのか?

183 :デフォルトの名無しさん:2013/10/29(火) 23:20:50.16 .net
>>182
はい。WPFのDrawingContextでの描画は表示できています。

184 :デフォルトの名無しさん:2013/10/30(水) 07:09:04.99 .net
いったんDirect2Dで書いたデータをファイルへ出力
α値などが狂っていないか確認

185 :デフォルトの名無しさん:2013/10/30(水) 08:18:43.05 .net
>>184
α値ですか。調べてみます。ありがとうございます。

186 :デフォルトの名無しさん:2013/11/05(火) 15:43:03.58 .net
Direct 3D 9です
ゲームに手書き系のフォントを使いたいのですがwindows に同梱されていないので困ってます
.ttf などフォントファイルを同梱して使いたいのですが方法は無いでしょうか
あらかじめ画像として書き出す、ユーザにインストールしてもらうなどの方法は検討した上で質問しています

187 :デフォルトの名無しさん:2013/11/05(火) 15:45:03.49 .net
>>186
その前に、フォント関係のライセンスを調べて絶望しろ

188 :デフォルトの名無しさん:2013/11/05(火) 15:50:18.96 .net
>>187
理解済みです
やり方としては可能なのでしょうか

189 :デフォルトの名無しさん:2013/11/05(火) 17:12:09.22 .net
ゲーム内でのレンダリング方法とフォント自体のライセンスから自ずと決まるもんだと思うが
選択肢としてはlibfreetype等のttfファイルを直接読み込めるライブラリで実行時にラスタを生成するのが普通じゃね

190 :デフォルトの名無しさん:2013/11/06(水) 08:30:15.93 .net
質問させてください。
NVIDIA SDK 9.52のDirect3DのサンプルをVisual Studio 2003でビルドしたのですが、
ビルドはできたものの実行に失敗してしまいます。

リリースビルドの場合だと、
「incorrect ersion of direct3d and/or d3dx」
というエラー文が出ます。

原因が分からず、困っております。
誰かお分かりの方はいらっしゃいませんか?

ちなみにDirectX SDKはSummer 2004を使っています。
OSはWindows7です(Visual Studio 2003は非サポートを承知で無理矢理インストールしました)
GPUはGeforce GT 520です。

191 :190:2013/11/06(水) 08:35:01.12 .net
ちなみに、SDKのサンプルに始めから入っているデモのexeは正常に実行できます。
Visual Studio 2003でビルドしたexeだと失敗してしまう感じです。

一方、OpenGLを使ったサンプルの方は、Visual Studio 2003でビルドして正常実行できています。
Direct3Dのデモだとダメな感じです。

192 :デフォルトの名無しさん:2013/11/06(水) 10:31:22.49 .net
manifest

193 :デフォルトの名無しさん:2013/11/06(水) 17:08:15.15 .net
DirectX SDK が古いだけでは?

194 :デフォルトの名無しさん:2013/11/06(水) 18:24:29.96 .net
>>190
build した exe を
おまいの Windows 7 じゃなくて
Windows 2000 とかで動かしたらどうなる?

195 :デフォルトの名無しさん:2013/11/06(水) 20:12:23.02 .net
馬鹿にかまうな
いまどき2003とか使ってるあたり、研究室で課題をやろうとした馬鹿学生なんじゃないの
構うとつけあがるから放置推奨

196 :デフォルトの名無しさん:2013/11/06(水) 20:36:21.50 .net
数年前のレスコピペしてるのかと思ったよ

197 :190:2013/11/06(水) 22:05:58.20 .net
皆様レスありがとうございます。

>>194
XPマシンで動くか試してみようと思います。

>>195
すみません。学生ではなく、社会人です。
2003を使っているのは、NVIDIA SDK 9.52の多くのプロジェクトが2005以降だと
すんなりビルドできないためです。手直ししてもよいのですが、
2003でいけるならそれが早いと思いましたので。
少なくとも、Visual Studioのバージョンの差に起因する問題ではないような気がしています。

もう少し、自分で模索してみます。

198 :190:2013/11/07(木) 07:06:27.31 .net
自己解決しました。
http://www.nvidia.co.jp/object/sdk-9.html
によると、DirectX SDKのバージョンはFebruary 2006ベースとあるようなので、
某所でFebruary 2006を入手して、February 2006でビルドしてみました。

すると相変わらず「incorrect version of direct3d and/or d3dx」と出るので、次にDXUTの互換性を疑いました。
サンプルで使っているDXUTを使わずに、February 2006にあるDXUTを使うようにしてビルドしてみました。

そうしたら、上手く動作しました。

February 2006ベースとあるのに、使っているDXUTのバージョンが違うってどういうこと?
という疑問はあるのですが、とりあえず動作するようになったのでよしとします。

同じ問題にはまった方がいらっしゃったら少しでも参考になればと思います。

199 :デフォルトの名無しさん:2013/11/08(金) 11:57:56.96 .net
で、>>146の原因は?

バカだアホだはもういいので
「○○が示すように△△が原因だ」で答えてよ

200 :デフォルトの名無しさん:2013/11/08(金) 14:50:40.39 .net
>>199
素直に教えてくださいって言えよ、低脳
煽れば勢いで答えてもらえるとでも思ってんのか、ゴミしか組めない低スキルPGが

201 :デフォルトの名無しさん:2013/11/09(土) 00:10:38.85 .net
こういうパターンで、「教えてください」と頼んで教えてもらえた例はとんと見ないな。

202 :デフォルトの名無しさん:2013/11/09(土) 00:46:48.82 .net
いや別に16msがどーのこーのそんな話に興味は無いけど
>>151とかあまりに幼稚な返答だったので、どんな人間かと思って

で、>>146の原因は?

バカだアホだはもういいので
「○○が示すように△△が原因だ」で答えてよ

203 :デフォルトの名無しさん:2013/11/09(土) 02:02:56.10 .net
環境とか教えてくれないとわかんない
あとソースください

204 :デフォルトの名無しさん:2013/11/09(土) 12:07:38.45 .net
自前で画面座標からワールド座標に変換ってどうやるの?
DXライブラリだとConvWorldPosToScreenPos関数があるんだけど

205 :デフォルトの名無しさん:2013/11/09(土) 12:19:55.39 .net
まずはスクリーンの奥行きをどう定義するのかを明確にしろ。

206 :デフォルトの名無しさん:2013/11/09(土) 19:35:25.26 .net
レイトレーシングでググるといい。よくわかんなかったらdirectxmathのXMVector3Unprojectを黙って使うといい

207 :デフォルトの名無しさん:2013/11/11(月) 09:31:37.43 .net
Direct3D9/Win7だが、
DXコントロールパネルから
リテール/デバッグのランタイム切り替えが
効かなくなっているような・・

皆さんはどう?

208 :デフォルトの名無しさん:2013/11/11(月) 09:49:56.13 .net
そもそもデバッグを使うことがない。

209 :デフォルトの名無しさん:2013/11/11(月) 14:50:35.62 .net
聞かれたことに答えられない馬鹿は黙ってろよ

210 :デフォルトの名無しさん:2013/11/11(月) 23:54:03.83 .net
Win7 64bitだけどうちもD3D9のDebugランタイムは使えないぽい
以前調べたときに海外のプログラミング系フォーラムで同じ症状を数人見かけたけどどれも解決には至ってなかった
Retailオンリーでいくしかないのかも

211 :デフォルトの名無しさん:2013/11/12(火) 01:03:21.66 .net
Windows7自身DirectX9おまけで動かしてるからな

212 :デフォルトの名無しさん:2013/11/12(火) 01:39:07.64 .net
XPなくなると9で書く必要性もないしもういいかな

213 :デフォルトの名無しさん:2013/11/12(火) 23:59:31.53 .net
DX9と心中しようと思ってたのに
それは困る。

214 :デフォルトの名無しさん:2013/11/13(水) 06:11:25.68 .net
引退時なんじゃないか

215 :デフォルトの名無しさん:2013/11/13(水) 10:40:41.94 .net
WebGLの時代が来る
DirectXは細々と残るだけ

216 :デフォルトの名無しさん:2013/11/13(水) 19:32:48.22 .net
へーそうなんだー

217 :デフォルトの名無しさん:2013/11/14(木) 10:27:51.83 .net
初めてWebGLやべえと思った
https://www.shadertoy.com/view/4dsGWB
正直、頭下げて謝るしかない

218 :デフォルトの名無しさん:2013/11/14(木) 10:36:35.52 .net
エロ中尉

219 :デフォルトの名無しさん:2013/11/14(木) 13:13:25.63 .net
D3DX9のID3DXSpriteは頂点カラーでグラデーション掛けたりプログラマブルシェーダで描画出来ますか?

220 :デフォルトの名無しさん:2013/11/15(金) 01:05:51.98 .net
ゲーム会社を受けるのに、DXライブラリを使って製作しても大丈夫ですかね?

221 :デフォルトの名無しさん:2013/11/15(金) 01:40:22.89 .net
>>220
本当に採用されたいなら…分かるな?

222 :デフォルトの名無しさん:2013/11/15(金) 01:46:11.45 .net
>>220
同じ内容のゲームでも
DxLibを使っている方とライブラリを自作してる方だったらどっちを採用すると思う?

223 :デフォルトの名無しさん:2013/11/15(金) 01:52:52.67 .net
>>222
どっちがいいかって言うと後者だけどそこまで求めて無いと思うぞw

224 :デフォルトの名無しさん:2013/11/15(金) 03:29:57.95 .net
DxLibで制作したゲームで採用する会社なんて

…あとは言わなくても分かるな

225 :デフォルトの名無しさん:2013/11/15(金) 04:47:39.67 .net
gameは技術よりアイディア

226 :デフォルトの名無しさん:2013/11/15(金) 07:13:28.04 .net
おまいらもこんなの作れるの?
http://www.nicovideo.jp/watch/sm22228785

227 :デフォルトの名無しさん:2013/11/15(金) 15:36:49.38 .net
3Dのスキルがあれば、普通に作れるだろ
特別に難しいことしてるわけでなし、エフェクト等を削除して、
単純なプリミティブで同じようなものを作るだけなら難しくはない

これが難しいと感じるのは、スキンメッシュすら操作できない低スキルだけゃないか?

228 :デフォルトの名無しさん:2013/11/15(金) 21:29:33.97 .net
モデルを作るのが大変

229 :デフォルトの名無しさん:2013/11/15(金) 21:40:37.88 .net
>>228
>>226のURL先をよくみろよ
リソースは借り物だぞw

230 :デフォルトの名無しさん:2013/11/15(金) 21:44:59.79 .net
おまいらすげー

231 :デフォルトの名無しさん:2013/11/15(金) 22:03:16.11 .net
DXライブラリを使うのはかまわんが、それを利用して、
シェーダで非常にコストパフォーマンスの高い表現をした、とかだと普通に評価されるだろう。
コンピュータのアーキテクチャや数学をよく理解していることが伝わるようなものならなおよし。

232 :デフォルトの名無しさん:2013/11/15(金) 22:24:59.25 .net
プログラマーとしてなら
ライブラリ使ってでも物作れるタイプはゲーム製作側に
描画エンジンやツール等きちんと作れるタイプはライブラリ製作側に
あてられるのでどっちでもいいと思うよ。
そのかわりちゃんと作ってね。

結局会社入るとDxLibじゃないけど社内のライブラリで作ることになるし、
他人の作ったものを組み込める能力も必要だと思うよ

ゲームバランスとかはあんま求めてないよ

あと、大手は入社してからきちんと勉強させるので
学生レベルの作品なんてあんまり重視してなかったりする
結局コミュ力とやる気

233 :デフォルトの名無しさん:2013/11/15(金) 22:32:18.19 .net
あー新卒の話な中途や院みたいな年寄りはレベル見るよ実用重視

234 :デフォルトの名無しさん:2013/11/15(金) 22:56:31.21 .net
ぐぐればたくさん資料が出てくるこの時代に
DirectX程度も自前で記述できないんじゃやる気無いね

235 :デフォルトの名無しさん:2013/11/15(金) 23:31:47.45 .net
ゲーム会社は休みなしで24時間元気に働ける奴を取るんだよ

236 :デフォルトの名無しさん:2013/11/16(土) 03:37:23.03 .net
絞るだけ絞って
いらなくなったら
使えなくなったらぽい

237 :デフォルトの名無しさん:2013/11/17(日) 01:17:46.93 .net
そいつが勉強してないで時代についていけずに使えなくなっただけ

238 :デフォルトの名無しさん:2013/11/18(月) 15:35:26.24 .net
>>220 はあちこちのスレで同じ質問をしてるが
スレごとに答えが様々で面白い

239 :デフォルトの名無しさん:2013/11/18(月) 16:12:59.47 .net
実は回答者は一緒なんだぜ

240 :デフォルトの名無しさん:2013/11/18(月) 18:55:14.60 .net
質問者も回答してるんだぜ

241 :デフォルトの名無しさん:2013/11/19(火) 06:11:14.52 .net
24時間元気に働いていたら、勉強する時間が無いな

242 :デフォルトの名無しさん:2013/11/21(木) 12:59:41.42 .net
>>226
スゴイなー
今夜間専門通ってて、独学で頑張ってるけどまだまだだな〜

でも同人でもここまで出来る、っていう希望にはなるよ

243 :デフォルトの名無しさん:2013/11/21(木) 21:44:59.99 .net
>>226
クオリティ高ぇw

244 :デフォルトの名無しさん:2013/11/21(木) 21:49:24.40 .net
>>226
1:35くらいのっところの音楽の曲名ってなんだっけ

245 :デフォルトの名無しさん:2013/11/22(金) 16:58:04.75 .net
>>226 みたいなゲームを作るのに必要な知識ってどんなのがある?
三角比とベクトルくらいは分かるんだけど、ホーミング系ってどう実装してるんかな

246 :デフォルトの名無しさん:2013/11/22(金) 17:38:20.37 .net
ttp://www5.big.or.jp/~high/VENIO/dwn/dwn_src.htm#are

247 :デフォルトの名無しさん:2013/11/22(金) 17:40:23.58 .net
貼ると消されるURLが混ざってたみたい()
ttp://www5.big.or.jp/~high/VENIO/kuz/kuz_are_10.htm
ttp://www5.big.or.jp/~high/VENIO/dwn/dwn_src.htm#are

248 :デフォルトの名無しさん:2013/11/22(金) 17:43:28.95 .net
ttp://www.c3.club.kyutech.ac.jp/gamewiki/index.php?%C3%C6%A4%F2%A4%C0%A4%B9
ttp://ameblo.jp/amayumi/entry-10011981073.html
ttp://per illasoft.blo g75.f c2.com/bl og-entry-1.html

249 :245:2013/11/22(金) 18:36:44.75 .net
参考になりそうなリンクありがとう

250 :デフォルトの名無しさん:2013/11/22(金) 23:13:04.97 .net
動画みたいなの作れたら楽しそうだな(´・ω・`)

251 :デフォルトの名無しさん:2013/11/23(土) 02:53:28.29 .net
>>226
一から作るとしたら、一ヶ月で作れって言われても(素材が揃ってても) 出来そうにないな

252 :デフォルトの名無しさん:2013/11/23(土) 03:49:30.33 .net
地面との衝突判定って、地形データから高さデータ作って、それと比べてるの?
それとも地形と直に判定してるの?

253 :デフォルトの名無しさん:2013/11/23(土) 06:03:42.09 .net
物理演算があるなら空間分割して直じゃない?

254 :デフォルトの名無しさん:2013/11/23(土) 12:47:56.24 .net
横からの質問ですけど

その場合はレイをy座標に飛ばす感じが基本なんですかね・・

255 :デフォルトの名無しさん:2013/11/23(土) 12:50:33.91 .net
>>226
コメントにあったけどマジで専門学生なのかな?
だとしたら、このレベルを相手に就活しないといけないのか・・

256 :デフォルトの名無しさん:2013/11/23(土) 14:10:16.87 .net
>>255
全員がこのレベルってことはないから、心配する必要は無いと思うよ
もちろん対抗できるくらいのスキルがあれば就活で有利とは思うけど

257 :デフォルトの名無しさん:2013/11/23(土) 18:11:07.43 .net
演出のセンスは優れているけど技術としては特に
PGならジョブズではなくゲイツを目指せ

258 :デフォルトの名無しさん:2013/11/23(土) 22:24:34.22 .net
>>255
マジだよ、そいつ一人超絶飛び抜けてデキる奴

259 :デフォルトの名無しさん:2013/11/24(日) 20:32:46.63 .net
地面との衝突判定は物理演算に丸投げするのが楽だよ
BulletPhysicsにあるキャラクターが動くサンプルを参考に

260 :デフォルトの名無しさん:2013/11/25(月) 05:27:28.11 .net
適当に平面方程式に投げて高さで判定取るかな
地面の判定はそれしかやったこと無ェ

261 :デフォルトの名無しさん:2013/11/25(月) 08:01:42.15 .net
>>260
まあ、デコボコさせたりしない限りそれが安全かもですね

262 :デフォルトの名無しさん:2013/11/25(月) 08:07:35.73 .net
水面に石投げするときみたいに
一定の入射角以下なら飛び続けるとか

263 :デフォルトの名無しさん:2013/11/25(月) 08:34:01.43 .net
やっぱゲームプログラマは頭良くないとできないな。
他のプログラマはアホでもできるけど

264 :デフォルトの名無しさん:2013/11/25(月) 08:45:07.42 .net
ゲームの内容によりけり

265 :デフォルトの名無しさん:2013/11/25(月) 09:05:12.20 .net
手の抜き方とか
計算量の減らし方は
工夫と地頭がいるね

266 :デフォルトの名無しさん:2013/11/25(月) 16:05:50.40 .net
ゲームプログラマ最強。
そんなふうに考えていた時期が俺にもありました。

他のプログラムも別ベクトルで賢くないといけないのを知ったよ。
世界中の人を一斉に相手するシステムとか

267 :デフォルトの名無しさん:2013/11/26(火) 22:41:26.77 .net
Direct3D10のCubeMapGSサンプルには
HLSLのセマンティクスに「RTARRAYINDEX」という値が
使われているが、この定義が書かれているマニュアルって
ありますか?

struct GS_INSTCUBEMAP_IN
{
float4 Pos : SV_POSITION; // Projection coord
float2 Tex : TEXCOORD0; // Texture coord
uint RTIndex : RTARRAYINDEX; // コレ
};

268 :デフォルトの名無しさん:2013/11/26(火) 22:44:41.74 .net
ああ自己解決しますた
単なるサンプルの独自定義なのね

269 :デフォルトの名無しさん:2013/11/26(火) 23:36:09.94 .net
まんまだろうが
馬鹿スw

270 :デフォルトの名無しさん:2013/11/27(水) 07:53:08.40 .net
初心者にありがちな発言
これはOSのバグです
これはコンパイラのバグです
これはライブラリのバグです

271 :デフォルトの名無しさん:2013/11/27(水) 08:54:37.11 .net
9.0cをインストールしたつもりが意味不なんだけど11があれば
9.0c入れても意味ない?

272 :デフォルトの名無しさん:2013/11/27(水) 13:47:21.65 .net
>>270
その3つを使い分けられるなら初心者じゃないぞ

273 :デフォルトの名無しさん:2013/11/27(水) 14:11:34.82 .net
使い分けてるとはどこにも書いてないが
掛かれてないものが見えるとは
おぬしも相当アスペやのう

274 :デフォルトの名無しさん:2013/11/27(水) 14:26:51.76 .net
>>271
そもそもXP以降はOS標準+SPにDirectXが付属する形なので、
インストールも糞もない。

275 :デフォルトの名無しさん:2013/11/27(水) 19:41:27.89 .net
書かれてないけどたぶんSDKのことだと思うぞ

276 :デフォルトの名無しさん:2013/11/27(水) 22:05:47.16 .net
書かれていないも何もSDKに11なんてバージョンはない。

277 :デフォルトの名無しさん:2013/11/28(木) 00:26:02.52 .net
9.0cとはっきり言ってるわけで。

278 :デフォルトの名無しさん:2013/11/28(木) 07:06:28.47 .net
11があればともはっきり言っているぞ。

279 :デフォルトの名無しさん:2013/12/04(水) 06:15:15.82 .net
3Dグラフを描く場合、9と11どっちがお勧め?

280 :デフォルトの名無しさん:2013/12/04(水) 07:09:36.09 .net
>>279
3Dグラフごときに普通はDirect3Dは使わない。
GDIで描画する方が遥かに簡単。

どうしても使うなら9の方が簡単。

281 :デフォルトの名無しさん:2013/12/05(木) 00:51:06.92 .net
いや9はやめたほうが・・
デバイスロスト対策の有無は大きいよ
11は何も考えなくていいから楽だ

282 :デフォルトの名無しさん:2013/12/05(木) 07:28:18.33 .net
GPUリセットするとロストするよね(´・ω・`)

283 :デフォルトの名無しさん:2013/12/05(木) 15:49:11.81 .net
11はデバイスロストは何も考えなくてもいいけど
作るまでの設定が大変。デフォルトとか無いから
描画もシェーダいるし

エクセルでやりなよ

284 :デフォルトの名無しさん:2013/12/05(木) 17:45:25.98 .net
デバイスロストがない9exのことも忘れないであげてください。

285 :デフォルトの名無しさん:2013/12/05(木) 21:54:03.63 .net
自分はどちらかというと11のほうがいいな。
9のデバロス対策はプログラム構造を一気に汚くする。
11は設定が多かったりシェーダ必須だったりするけど、
構造がシンプルだし、色々なことを試すときの自由度の高さがある。
凝ったことするほど有難味がある設計だね。

だから断然、11を推すよ。

286 :デフォルトの名無しさん:2013/12/06(金) 01:04:43.27 .net
3Dグラフでデバイスロストは問題にならないでしょ。
マネージドリソースしか使わないだろうし。

Excelと同程度の3DグラフならDirect3Dを使って得をすることは
1つも無いので、GDIなりWPFで描く方が遥かに楽。
グラフにテクスチャを貼りたいとかならDirect3Dの使用も考えるが。

287 :デフォルトの名無しさん:2013/12/06(金) 01:07:19.90 .net
>マネージドリソースしか使わないだろうし。
そうなの?

288 :デフォルトの名無しさん:2013/12/06(金) 02:59:35.86 .net
3Dグラフをマウスでグリグリ視点を動かしたいです。

289 :デフォルトの名無しさん:2013/12/06(金) 08:36:11.88 .net
ベタ塗り3D画像でグリグリ程度ならGDI+で充分って話だろ
問題はテクスチャだよテクスチャ

290 :デフォルトの名無しさん:2013/12/07(土) 21:45:54.50 .net
https://directxtk.codeplex.com/SourceControl/changeset/32500

SDK本体は配布するのかな?

291 :デフォルトの名無しさん:2013/12/08(日) 04:37:29.15 .net
D3D11からエフェクトプールは撤廃されて
代わりにエフェクトグループを使えとヘルプに書いてるが
グループで複数のエフェクトオブジェクト間で変数共有出来るようには
見えないんだが、どー考えればいいの?

292 :片山博文MZコスモ ◆T6xkBnTXz7B0 :2013/12/10(火) 22:33:56.51 .net
directmusicってもう使えないんですか?

293 :デフォルトの名無しさん:2013/12/10(火) 22:40:42.50 .net
>>292
http://blogs.msdn.com/b/chuckw/archive/2012/08/22/directx-sdk-s-of-a-certain-age.aspx

294 :片山博文MZコスモ ◆T6xkBnTXz7B0 :2013/12/10(火) 22:47:43.93 .net
ありがと。XAudio2サポートに挑戦してみる

295 :デフォルトの名無しさん:2013/12/12(木) 11:21:44.59 .net
D3DXComputeNormalsを真似て自作したいのですが、メッシュの頂点データとインデックスデータから
どの様に計算したらいいのですか?

296 :デフォルトの名無しさん:2013/12/12(木) 12:11:45.63 .net
>>295
頂点データと同じサイズの法線の配列を用意して、零ベクトルで初期化しておく。
インデックスと頂点座標から面の法線を求めて、法線配列の
各インデックスの位置に足していく。
法線配列を全て正規化する。
頂点バッファを法線入りのフォーマットで作り直してコピーする。

D3DXは単純に法線を足して正規化しているだけだが、俺としては2辺のなす角で
重み付けしたい。

297 :295:2013/12/12(木) 17:39:12.27 .net
>>296
ありがとうございます、その内容で試してみます。

298 :デフォルトの名無しさん:2013/12/12(木) 18:13:44.88 .net
295じゃないけどやっと>>296の「2辺のなす角で重み付け」の意味がわかった。
ある頂点を取り囲む面の、1周(360度とは限らない)のうちの何度を占めているかで
重みづけすれば、たとえば立方体で三角ポリゴン化の分割に癖があってもうまくいくわけか。

299 :デフォルトの名無しさん:2013/12/12(木) 18:20:54.71 .net
数学できないヤツばかりでワロタ
言ってる通りに実装すればいいだけやん
しかも動的に頂点変更しない限り、計算しておけば済む話だろ?

XNAで言うなら、パイプライン通すときにやっておけって話だ

300 :デフォルトの名無しさん:2013/12/12(木) 19:03:02.83 .net
その横槍はなんかちがくね?

301 :298:2013/12/12(木) 19:20:29.74 .net
わかってないのは>>299だけみたいなんで放っときますね

302 :デフォルトの名無しさん:2013/12/13(金) 00:04:23.32 .net
文系でゲームプログラム初心者の俺には難しすぎる話題だな
正直、ここで質問するレベルにすら至ってないのだと確信したよ

303 :デフォルトの名無しさん:2013/12/14(土) 09:48:47.64 .net
2Dゲームならある程度までなら算数程度でぜんぜん大丈夫

304 :デフォルトの名無しさん:2013/12/14(土) 12:33:57.57 .net
質問です。
directx11のサンプル「DXUT Tutorial Win32 Sample」のTutorial10でメモリリークが
発生しているのですが、何が原因なのでしょうか?
メモリーリークを修正するためにはどこを修正すればいいのでしょうか?

305 :デフォルトの名無しさん:2013/12/14(土) 13:54:25.24 .net
2010くらいのDirectX SDKじゃなくてブラウザやVSでダウンロードするタイプのサンプルだよね。
「DXUT+DirectXTK simple win32」サンプルでもメモリリーク発生するね。
俺もわからん。
ソースちゃんと読むか1個1個オブジェクト削っていって試せば特定できるのかな。

306 :デフォルトの名無しさん:2013/12/26(木) 02:34:25.60 .net
Managed DirectSoundで質問です。
量子化ビット16、モノラル、適当なサンプリングレートで
音声をキャプチャをしようと思っています。
1秒のバッファを確保し、BufferPositionNotifyで
一定間隔でキャプチャをしています。

続く

307 :デフォルトの名無しさん:2013/12/26(木) 02:36:37.10 .net
続き
ここからが質問です。

Int16[] data = (Int16[])captureBuffer.Read(rPos, typeof(Int16), LockFlag.None, size);
と書いた場合と、
byte[] data = (byte[])captureBuffer.Read(rPos, typeof(byte), LockFlag.None, size);
と書いた場合で、dataの配列長が同じになるんですが、なぜなんでしょう?
byteのほうがサイズが2倍になるなら納得なんですが、、、。

どっちのdataも、secondaryBuffer.Write(pos, data, LockFlag.None);
で正常に再生できるのですが、腑に落ちません。

308 :デフォルトの名無しさん:2013/12/26(木) 16:11:55.39 .net
>>307
おまえの頭が残念なのはよくわかった

309 :デフォルトの名無しさん:2013/12/26(木) 17:57:06.97 .net
確かに残念なんです。教えて頂ければ幸いです。
質問を言い換えると、

quickprogram.blogspot.jp/2008_07_01_archive.html?m=1

によると、shortで読むなら2で割れって書いてあるんですけど、
割らなくても特にエラーにならないし再生も正常な感じなのが疑問です。

310 :デフォルトの名無しさん:2013/12/27(金) 20:54:29.94 .net
テスト

311 :デフォルトの名無しさん:2013/12/28(土) 12:47:03.20 .net
Readメソッドの定義はどうなってるの?

俺んとこだとMicrosoft.DirectX.DirectSoudが参照の追加に
リストアップされなくて見えないんだよねー何でだろ?

312 :デフォルトの名無しさん:2013/12/30(月) 13:56:53.34 .net
ID3DX11EffectPass::ComputeStateBlockMask()の使い方がわかんねー
ぐぐってもゼロHitだし
世の中で使ってる人間は俺ひとりか??

313 :デフォルトの名無しさん:2013/12/30(月) 14:14:34.62 .net
聞いたこともねぇ関数だなw

314 :デフォルトの名無しさん:2013/12/30(月) 14:21:04.24 .net
詳しく解説して教祖となるがよい

315 :デフォルトの名無しさん:2013/12/30(月) 15:43:15.31 .net
もっと詳しく書くと
目的は、Effect11でComputeShaderを使うことなんだが、

@fxファイル内でStructuredBufferやRWStructuredBuffer変数を宣言しても
インスタンスは生成されないっぽい。自分でBuffer作ってView作ってアタッチしないとダメ。
こりゃこういうもの?

AID3DX11EffectPass::Apply()を実行すると、自動的に
StructuredBufferやRWStructuredBufferがセットされるが
Draw()やDispatch()後にリセットされる訳じゃないので
以降セットされっぱなしになる。
自前でNULLをセットするしかないの?
ComputeStateBlockMask()あたりが救済手段に見えるんだが・・

316 :デフォルトの名無しさん:2014/01/01(水) 11:28:43.83 .net
とりあえずNVIDIA SDKとかでも検索してみるとかかな

317 :315:2014/01/02(木) 13:02:48.84 .net
@に関してはテクスチャもそうで、元々そういうもののよう。
Aに関してはnVidiaやATiの資料を見てみる。
ありがとうございます。

318 :デフォルトの名無しさん:2014/01/02(木) 17:13:25.15 .net
>Return Value
>If the function succeeds, the return value is DI_OK. If the function fails,
> the return value can be one of the following error values:
> DIERR_BETADIRECTINPUTVERSION, DIERR_INVALIDPARAM, DIERR_OLDDIRECTINPUTVERSION, DIERR_OUTOFMEMORY.

と書いてあるがどの値も返ってこないから詰んだ。

hr = DirectInput8Create( hInst , DIRECTINPUT_VERSION , IID_IDirectInput8 , (void**)test , NULL );
if ( FAILED( hr ) ){
  MessageBox( hWnd , "error in DirectInput8Create" , "error" , MB_OK );
  if ( hr == DIERR_BETADIRECTINPUTVERSION ) MessageBox( hWnd , "DIERR_BETADIRECTINPUTVERSION" , "error" , MB_OK );
  if ( hr == DIERR_INVALIDPARAM ) MessageBox( hWnd , "DIERR_INVALIDPARAM" , "error" , MB_OK );
  if ( hr == DIERR_OLDDIRECTINPUTVERSION ) MessageBox( hWnd , "DIERR_OLDDIRECTINPUTVERSION" , "error" , MB_OK );
  if ( hr == DIERR_OUTOFMEMORY ) MessageBox( hWnd , "DIERR_OUTOFMEMORY" , "error" , MB_OK );
  return -1;
}

ちなみに

DXGetErrorDescription( hr );
DXGetErrorString( hr );

は未解決と言われてコンパイルできないから他の方法があれば教えてくれ。

これが解決しないとまた今日も徹夜で残業だ。
土日返上で1週間ほどデスマやってるがこれだけは難易度が高すぎる。

319 :デフォルトの名無しさん:2014/01/02(木) 17:43:52.98 .net
>>318
おまえが根本的に無能なのは分かった
外部参照が未解決で解決できないとか、マジでアホの子だな

320 :デフォルトの名無しさん:2014/01/02(木) 17:57:47.30 .net
ちなみにDX11用のDXGetErrorDescriptionなら
↓のパッケージにソース付きで入ってる。

DXUT for Direct3D 11
https://dxut.codeplex.com/

>>319
相変わらずだな

321 :デフォルトの名無しさん:2014/01/04(土) 21:52:09.54 .net
D3DXCreateTextureFromFileEx()
が返したテクスチャのサイズって必ず正方形?
正方形以外のテクスチャをサポートするデバイスではどうなるのさ
というかテクスチャサイズを動的に知る方法教えて下さいお願いします

322 :デフォルトの名無しさん:2014/01/04(土) 23:17:53.99 .net
>>321
前世紀のVGAならともかく正方形限定ってことはないはずだが…
サイズ指定がD3DX_DEFAULTまかせだと二の乗数に丸められるからそれじゃねえの(ex. 500x260 -> 512x512)

基本はサイズを画像ファイルから取得して直接指定するか
テクスチャサイズは丸めにまかせてUV座標で描写時に調整する(必ずD3DX_FILTER_NONEを指定すること)

あと、テクスチャは動的にサイズの変更はされないからGetLevelDescで十分なはずだぞ?
画像ファイルの実際のサイズならD3DXGetImageInfoFromFile
実行されるシステムのサポートできるテクスチャサイズを知りたいならD3DXCheckTextureRequirementsが楽っちゃ楽

323 :デフォルトの名無しさん:2014/01/04(土) 23:26:46.16 .net
>>322
GetLevelDesc()
これや!こんなんあったんか!見落としてた!
ありがとう!
いや、画像読み込んで開いてサイズ取得してまた開かせるのが気に入らなくてな
とにかく解決した!ありがとう!

324 :デフォルトの名無しさん:2014/01/06(月) 22:11:36.65 .net
DirectX11で登場した構造化バッファの「構造化」ってどういう意味??

325 :デフォルトの名無しさん:2014/01/06(月) 22:23:02.77 .net
StructuredBufferのことけ?
構造体みたいに使える書ける、ぐらいに受け取っていたけど

326 :デフォルトの名無しさん:2014/01/06(月) 22:27:40.73 .net
即レスd。

自分も構造体のことかなぁ、と思ったんだけど、
RGBAデータもまぁ、構造体みたいなもんだしなぁ・・・。
まぁ、RGBAやXYZWに限らず、任意の構造体を扱えるようになった=より一般化した、
という意味でそう名付けたのなら分からなくもないんだけど。

何か他の意味があるなら知りたいなぁ。

327 :デフォルトの名無しさん:2014/01/07(火) 00:54:39.26 .net
RGBAやXYZWはGPUにとっては組込型であり基本型なのよ

328 :デフォルトの名無しさん:2014/01/07(火) 07:08:24.81 .net
メモリーインタリーブでしょ

329 :325:2014/01/07(火) 21:12:57.83 .net
>>327
だとすると、やっぱり任意の構造体の意ということだね。

>>328
??

330 :デフォルトの名無しさん:2014/01/09(木) 01:47:02.85 .net
構造体メンバのアライメントを発展させたようなもんか

331 :デフォルトの名無しさん:2014/01/16(木) 10:49:02.29 .net
IDirect3DDevice9::SetTexture関数は重いので必要最低限だけ呼び出すべき と言うのをググっててよく見るのですが、
具体的に1フレームで呼び出しても影響のない回数はどのくらいでしょうか
目安でいいので教えてください

332 :デフォルトの名無しさん:2014/01/16(木) 12:49:04.78 .net
>>331
http://msdn.microsoft.com/ja-jp/library/bb172234.aspx

他人に目安とか求めてもあまり意味の無い問題やな
自分自身のプログラムで許容される閾値を計測したまへ

333 :デフォルトの名無しさん:2014/01/16(木) 23:21:01.62 .net
>>332
了解です
ありがとうございます

334 :デフォルトの名無しさん:2014/01/17(金) 23:50:26.72 .net
DirextX11使ってるんだけどエンディアン問題ってどうなってるんだろ?

DirextX側が処理してくれてるのか、自分で処理しなければいけないのか
そもそもリトルエンディアンしか考慮してないのか

335 :デフォルトの名無しさん:2014/01/18(土) 07:41:46.84 .net
どのリソースの話をしているんだ?

336 :デフォルトの名無しさん:2014/01/18(土) 16:33:41.40 .net
そんなこと気にする場面なんて皆無・・・

337 :334:2014/01/18(土) 21:51:08.85 .net
ID3D11DeviceContextのUnmapを使ってCPUメモリ上のデータをGPUメモリに送るときに
エンディアンって大丈夫なのかなって感じです

Mapで割り当てられたメモリに値をコピーするときに
自分でリトルエンディアンの配置にしないといけないのか、それとも気にせずmemcpyなどでコピーしてしまっていいのか
そんな感じのことで悩んでます

338 :デフォルトの名無しさん:2014/01/18(土) 22:10:36.27 .net
>>337
馬鹿なんだな
自分が扱ってるデータについてよく考えろ

339 :デフォルトの名無しさん:2014/01/18(土) 22:24:21.46 .net
逆ならまだしも、337の書き方から察するにGPU側はリトルエンディアンだと
思っているなら何を気にしているのだろう
エンディアン問題って言いたかっただけちゃうんかと…

340 :デフォルトの名無しさん:2014/01/19(日) 01:58:50.38 .net
どんな状況を想定してるのかよくわからんな
そもそもWindows PhoneやWindows RTもCPU側はリトルエンディアンだし
Direct3Dを使う上では杞憂としか思えんが

341 :デフォルトの名無しさん:2014/01/19(日) 03:40:32.50 .net
ビッグエンディアンのXBox360も9世代だしなー

342 :デフォルトの名無しさん:2014/01/19(日) 15:32:02.18 .net
XBox360ってインテルじゃなかったのか 初めて知ったわ
XenonとXeon間違えてさらに混乱したわw

343 :デフォルトの名無しさん:2014/01/19(日) 15:44:05.40 .net
ははw
たしかに名前は似てるなw

344 :デフォルトの名無しさん:2014/01/19(日) 17:47:43.20 .net
しかしアプリを作るうえでエンディアンを意識するケースなんてあるんだろうか
まあデバッグではバイナリ列見たりあるんだろうけど。

345 :デフォルトの名無しさん:2014/01/19(日) 17:54:35.22 .net
具体的に何のデータを扱っているときに何が心配なのかを明確にしないと全く意味が無い。
幽霊が出るかもしれない怖いっていわれたところで、だからどうしろと?

具体的な話にまとめられない時点で、はっきり言って適性が無いからプログラムなどやめた方がいい。

346 :デフォルトの名無しさん:2014/01/19(日) 19:07:46.05 .net
Q.エンディアン気にする必要ありますか?

A.いいえありません

でいいだろ。初心者質問スレですよここは
人の進む道にまで口出すなよ。面倒くさい奴だな

347 :デフォルトの名無しさん:2014/01/19(日) 19:09:48.69 .net
昔は3Dの色々な技術も含めて質問や議論が盛んだったけど、
最近はすっかり寂れちまったね・・・。

348 :デフォルトの名無しさん:2014/01/19(日) 20:49:19.72 .net
>>344
あるに決まってるだろ
360のモデルデータをぶっこ抜いて表示するのに変換したわ

349 :デフォルトの名無しさん:2014/01/25(土) 11:41:47.71 .net
DX11の質問おなしゃす
UpdateSubresource等でVRAMを書き換えを実行した直後に
その結果をMapで取得するのはどうしたらいいんでしょうか?

そのまま実行した時はGPUコマンドが実行されていないのか
古い値が取得されてしまいます
FlushやQUERY_EVENTを確認してみたものの即時値をとれないので困っています

350 :デフォルトの名無しさん:2014/01/25(土) 12:41:55.44 .net
Flushでもダメなのか・・・。
もうDrawコールするしかないんじゃね?

351 :デフォルトの名無しさん:2014/01/25(土) 16:07:23.69 .net
意図がわからんな・・・
UpdateSubresourceでデータを渡してるなら。その渡したデータこそが取得したいデータだろう
ちゃんと書き換えられているか知りたいとかなのか?

352 :349:2014/01/25(土) 17:52:02.45 .net
>>350
Drawは表示する物がないので試してみてないですが
Dispatch、Presentも試してみても駄目で
sleepで一秒ぐらい待てば思った通りの挙動にるんですが、さすがに実用に問題があるので

>>351
目的はコンピュートシェーダの結果を取得したく
UpdateSubresource(バッファのリセット)

CSでバッファ書き換え

Map(バッファのメインメモリ上への取得)
この流れを作成したく、CSを実行しなくても正常な値が取れなかったので
質問からCSの処理を省きました

353 :デフォルトの名無しさん:2014/01/25(土) 18:10:46.33 .net
まさかとは思うがUSAGE_DEFAULTで作ったリソースを読むなんて馬鹿なことはしていないよな?
聞くだけばかばかしいことだとは思うが。

354 :349:2014/01/25(土) 18:40:50.44 .net
>>353
Default→Stagingに複製してからMapしてます
書き換えてから数フレーム待ったり、Map前にSleepして待った後
結果が取得出来るのは確認しています
即時に結果を取得が出来なくて困ってます

GPUとCPUの同期のズレが原因かと目星をつけて
同期するような処理を挟んでみても上手くいかずお手上げな感じです

355 :デフォルトの名無しさん:2014/01/25(土) 18:48:44.95 .net
GetDataで出力が完了しているのかは確認した?

356 :デフォルトの名無しさん:2014/01/25(土) 19:31:31.62 .net
そういや、コンピュートでうまく実行されなくて悩んだことあったな・・・俺も

Dispatchした後に以下のコードを追加して試してみたらどうだ?

ID3D11DeviceContext->CSSetUnorderedAccessViews( 0, 0, NULL, NULL );
ID3D11DeviceContext->CSSetShaderResources( 0, 0, NULL );
ID3D11DeviceContext->CSSetConstantBuffers( 0, 0, NULL );
ID3D11DeviceContext->CSSetShader( NULL, NULL, 0 );

357 :349:2014/01/25(土) 19:55:42.14 .net
解決しました
Unmapしてなかったっていうアホな理由でした
そのせいで値がふわふわ変化して怪しい挙動していたみたいです
助力ありがとうございました

なぜかUnmapしなくていいっていう謎の思い込みがあったのが原因です
Dx9時代はちゃんとUnLockしてたのに、、

358 :デフォルトの名無しさん:2014/01/25(土) 20:01:50.18 .net
・・・ねぇわ

359 :デフォルトの名無しさん:2014/01/25(土) 20:07:04.36 .net
ちょwww

まぁ、よかったけどw

360 :デフォルトの名無しさん:2014/01/25(土) 23:37:39.21 .net
まぁ、何事も経験ではあるが、ここで聞く前に解決できる間抜けな失敗だよな
阿保杉ワロタ

361 :デフォルトの名無しさん:2014/01/26(日) 08:55:34.88 .net
つまりここに居るのは「ここで聞く前に解決できる間抜けな失敗」すら解決出来ない人達なのか悲しいな
まぁ、経験がなければ回答できないから仕方ない
むしろUnmapしなくてもそれっぽく動作しちゃうのが驚きだ

362 :デフォルトの名無しさん:2014/01/26(日) 10:11:12.97 .net
http://game.watch.impress.co.jp/img/gmw/docs/586/729/gra_55.jpg
http://game.watch.impress.co.jp/img/gmw/docs/586/729/gra_56.jpg

こんなふうに、GPU処理の内訳を知りたいんですが、
どうすればイイですか?
VisualStudio2012、Direct3D11です。

363 :デフォルトの名無しさん:2014/01/26(日) 15:23:29.10 .net
内訳とだけ言われてもな・・・
処理時間を測定したいならtimeGetTimeかQueryPerformanceCounteで自前で実装してリスト化すればいい

364 :362:2014/01/26(日) 15:50:58.28 .net
>>363
あ、CPUの時間計測でできるんですか。
ありがとうございました。

365 :デフォルトの名無しさん:2014/01/27(月) 09:29:24.37 .net
>>362
この画面ってNSightだと思う
おれはCudaでしか使ったことないけど

366 :デフォルトの名無しさん:2014/01/27(月) 10:21:37.59 .net
http://graphics.stanford.edu/~mdfisher/GPUView.html

Windows SDK 7の頃ならGPUViewっての入ってたんだがなー
Visual Studio 2012以降だと既定じゃSDKの中に見当たらん
ぐぐってみたらスタンドアロン版Windows SDK 8の中にあるらしいが、めんどいので確認してない

367 :デフォルトの名無しさん:2014/01/27(月) 14:03:54.68 .net
マップ間移動をしたときにマップの配列に移動先のマップ情報を読み込ませたいのですが、
本来なら控えるgoto文をつかって
int WINAPI WinMain(略){
   DxLib_Init(), SetDrawScreen( DX_SCREEN_BACK );

_FirstLoad :
      /*   初回に必要な読み込み   */
   goto _GAMELOOP;
_Load :
      /*   読み込み   */
      if(読み込みが完了したら){
         goto _GAMELOOP;
      }
      else{
       /* 読み込みが失敗したときの処理*/
      }
_GAMELOOP :
      while(条件(略)){
         if(プレイヤーが別のマップに移動したら){
            goto _Load;
         }
      }
      DxLib_End();
      return 0;
}  
などとしても、大丈夫でしょうか?

368 :デフォルトの名無しさん:2014/01/27(月) 14:07:54.00 .net
馬鹿には無理

369 :デフォルトの名無しさん:2014/01/27(月) 14:10:01.32 .net
>>368
一気にロードしても良いのですがメモリを食うので
随時配列にロードする形をとりたいのですが

具体的な回答を希望します

370 :デフォルトの名無しさん:2014/01/27(月) 14:18:57.33 .net
当人がgoto文使わないと随時配列にロードできないって言うんならそれでいいんじゃね

371 :デフォルトの名無しさん:2014/01/27(月) 14:23:08.33 .net
>>370
やはり、ループの中で処理を済ませてしまった方が良いでしょうか

372 :デフォルトの名無しさん:2014/01/27(月) 14:26:28.00 .net
本来なら控えるgoto文を使ってまでやりたい理由があるんでしょ?
なら使えば良いしないならやめとけば

373 :デフォルトの名無しさん:2014/01/27(月) 14:30:34.89 .net
>>372
ふと思いついたので...
不安要素の方が大きかったので質問させてもらいました

無理に使う事も無いので方針的にはやめとく方にしますが、参考意見が聞きたかったので

374 :デフォルトの名無しさん:2014/01/27(月) 14:31:30.87 .net
別に絶対gotoを使うな!なんて話はないぞ
あれも一種の宗教だ

375 :デフォルトの名無しさん:2014/01/27(月) 14:38:12.38 .net
>>374
まさに 毒にも薬にもなりますからね
上手に使えればいいのですが

376 :デフォルトの名無しさん:2014/01/27(月) 14:45:56.59 .net
別のパソコンで実行しようとしたらD3DX9_42.DLLがないと言われた
このパソコンにインストールできる権限はない
コンパイルしたパソコンにわざわざ古いDirectXSDKを入れてコンパイルしなおすのもダルい
他に解決方法は?

377 :デフォルトの名無しさん:2014/01/27(月) 14:46:01.97 .net
せめて前方移動と後方移動でキーワードが分かれていれば
ずっとマシな評価だったのではないか

378 :デフォルトの名無しさん:2014/01/27(月) 15:28:34.15 .net
>>376
SDKのRedistフォルダにファイルあるから実行ファイルと同じパスに置けば動くよ
ただ、そのファイルは再配布用インストーラを通して入れないというルールがあるので(DirectSetupで調べて)
運用は自己責任でな

379 :デフォルトの名無しさん:2014/01/27(月) 18:36:36.90 .net
そういや、PCを自己責任で使うのって、わりと当たり前じゃね?

380 :362:2014/01/27(月) 23:06:54.60 .net
>>365
>>362の画像はPSVitaの開発関連のものなのですが、
NSightはNVidia以外でも使えたりするんでしょうか?
まぁ、使えなかったとしても、NSight的なものがあるんでしょうね。

>>366
ありがとうございます。
MicrosoftはVisualStudioにこの機能を統合してほしいですね。

381 :デフォルトの名無しさん:2014/02/11(火) 16:13:20.60 .net
今MMDのPMXビューワを作っていて、頂点モーフィングを実装したいんだが、
どう作れば良いかアドバイス頂戴。
例えばPMXの亜北ネルは頂点数10399のモデルだが、
モデルに含まれている頂点モーフパッケージは、
どれも高々200頂点程度しか移動させない。

10399頂点のモデルの高々200頂点をモーフィングさせる為のシェーダは
どういう設計で組めば効率が良いだろうか?

382 :デフォルトの名無しさん:2014/02/11(火) 16:59:55.26 .net
>>381
面積が10399以上のfloat4テクスチャ作ってそれに移動量をモーフ数だけ加算してVSで足すとか

383 :デフォルトの名無しさん:2014/02/11(火) 18:15:51.31 .net
>>381
微妙にモーフを理解してないような気がするんだが、気のせいか?

384 :デフォルトの名無しさん:2014/02/11(火) 18:26:55.99 .net
メモリの効率よくいくにはこいつを使うしかない

コンピュートシェーダ「・・・興味があるならやり方を教えてやる(´・ω・`)」

385 :デフォルトの名無しさん:2014/02/11(火) 19:20:47.81 .net
>>382
そうするなら、単純に移動量だけ収めた頂点バッファを作って
バインドした方が自然かも。1モーフ166KBか、
まずこの形で実装してみるのはありか。

>>383
端的に言うと、モーフ適用前メッシュと適用後メッシュを用意して
アルファ値でブレンドするのを頂点モーフィングだと思ってる。

>>384
CS・・

386 :デフォルトの名無しさん:2014/02/11(火) 19:22:53.86 .net
テッセレーション係数って最大64なんだな。
地形表現のために、もっと分割したかったのに・・・。

387 :デフォルトの名無しさん:2014/02/11(火) 23:20:02.31 .net
>>383
Dx9でも行ける(VTF使うけど)
モーフターゲット頂点の移動をテクスチャに1ドットずつ加算で打っていって
VertexShaderでそのテクスチャを読みつつ元の頂点に足せばモーフる
オフセットを記述したテクスチャじゃなくて最初の頂点位置入れても別にいいけども

>>385
テクスチャだと全部GPU処理にできそうだっていう提案なんでそっちでやるほうが色々良さそう
ポイントリストは意外と重いんだっけか

388 :デフォルトの名無しさん:2014/02/13(木) 15:28:47.49 .net
VS2012でシェーダーファイルHLSLコンパイルできるようになってたけど
main無いって怒られる
DirectX11だからテクニック使わないの
PSとVSあるので設定も複数いるような気がするし
よくわからないです

VS2012+DirectX11は、
定番はどうしたらいいの?

389 :デフォルトの名無しさん:2014/02/13(木) 15:38:56.11 .net
シェーダーの種類ってのがあってピクセルシェーダーとか指定できた。
一つのファイルでps,vs両方コンパイルしたい場合はどうしたらいいですか?

390 :デフォルトの名無しさん:2014/02/13(木) 16:02:00.99 .net
D3DCompileFromFile使ってプログラム内でコンパイルすればいい

391 :デフォルトの名無しさん:2014/02/13(木) 16:29:43.04 .net
それはわかっております。せっかくある機能を使いたかったん…
VSとPSでファイル分けるしかないのかな

392 :デフォルトの名無しさん:2014/02/13(木) 23:44:56.35 .net
>>388
プロパティのHLSLコンパイラ-エントリポイント名をmainから
正しい名前に変えたらどうか?

>>391
コンパイル毎にエントリポイント名を変えればファイルを分ける必要はないだろ。
コンパイルは関数の数分やる必要があるけど。

または
VertexShader g_VS_main = CompileShader(vs_5_0, VS_main());
GeometryShader g_GS_main = CompileShader(gs_5_0, GS_main());
PixelShader g_PS_main = CompileShader(ps_5_0, PS_main());
これを入れてエフェクトIFで取り出す。

393 :デフォルトの名無しさん:2014/02/14(金) 16:43:45.38 .net
>>392
VS2012登録でやるとコンパイルは1ファイル1関数(エントリポイント名)だけなんよ

MSのサンプルでは
test.fx( VSやPS入ってる。これはビルド除外 )
test_PS.hlsl( #include "test.fx" のみ記載で エントリポイントPS )
test_VS.hlsl( #include "test.fx" のみ記載で エントリポイントVS )
ってなってた

394 :デフォルトの名無しさん:2014/02/14(金) 23:39:58.35 .net
HLSLをプロジェクトの設定でコンパイルは、俺も折角だから使おうと色々頑張ってみたけど使い勝手悪くて、
結局バッチとかスクリプト書いてコンパイルに戻しちゃったな。

395 :デフォルトの名無しさん:2014/02/22(土) 16:51:31.04 .net
初歩的すぎてこんなこと聞くのも恥ずかしい事かもしれんけど質問させてくれ
シェーダに行列渡すとき転置するじゃない?あれってレジスタに列優先でバインドされるから
って理由だったと思うんだけど、じゃあシェーダ側でmulするときにベクトルを右辺にしたらいいんじゃないのか
って思うんだけどそれじゃダメなの?PC壊れててテスト出来ないんだけど気になってしょうがない
ネットで探してもそういうもんだで完結してるとこ多すぎて悶々とする
仮にmulで右辺にベクトルでも問題ないなら何故転置が必要ってのが当たり前なのかも気になる
昔は左辺掛けしか出来なかったとかそういう制限あったんだろうか

396 :デフォルトの名無しさん:2014/02/22(土) 19:20:38.63 .net
右にベクトルで転置しなくても問題ないできるよ
計算が列ベクトルの方が早いとかなんとかだったような気がするが、理由は答えれるやつは少ないと思う。
書き方を統一する意味もあるんじゃないの?

397 :デフォルトの名無しさん:2014/02/22(土) 21:01:37.63 .net
>>395
GL

398 :デフォルトの名無しさん:2014/02/22(土) 21:16:55.28 .net
>>396
やっぱりそうなんだ、ありがとう
詳しい説明ってほとんどないよね、確かに列の方が早いってのは聞いたことあるような気がする
列優先でバインドされるからデータ取得が行優先より早いんだろうねきっと、微々たる差だろうけど
しっかし本とかネットでは転置するものとしか書かれてないんだよなぁ、そういうもんと納得してね(キリッ)みたいな

399 :デフォルトの名無しさん:2014/02/22(土) 21:43:01.28 .net
おお、あれってmulの左右入替えだけでできたのか。
変換が入るとややこしくなるから、行優先のデータ形式で十分っぽいな。

400 :デフォルトの名無しさん:2014/02/23(日) 12:00:47.34 .net
テクスチャ用画像が半透明を含むかどうか(アルファが1.0以外あるか)
知りたい。
DirectXTexではScratchImage::IsAlphaAllOpaque()でわかるようだが、
DirectXTexではなくD3DX11を使用した場合、同等の機能はあるだろうか?

401 :デフォルトの名無しさん:2014/02/23(日) 16:12:11.77 .net
一発でやってくれる関数っぽいのはなかった気がしたが
mapでテクスチャにアクセスして読み取れば簡単にわかるだろ

402 :デフォルトの名無しさん:2014/02/23(日) 17:16:45.34 .net
>>398
アホな説明を鵜呑みにしないで、ちゃんと調べろ
http://msdn.microsoft.com/ja-jp/library/bb509634(VS.85).aspx
D3DXMATRIXはcolumn-major(行優先)な仕様だ

403 :デフォルトの名無しさん:2014/02/23(日) 17:52:08.52 .net
行優先だからHLSLに送るとき列に転置させてるんだろ
何言っての???

404 :デフォルトの名無しさん:2014/02/23(日) 18:02:57.26 .net
>>402
何いってるの?お前がまず先に文章ちゃんと読めよ
未だにD3DX 構造体使ってる時点で底が知れるけど

405 :デフォルトの名無しさん:2014/02/23(日) 19:33:51.71 .net
&gt;&gt;396
ベクトルって4x1として扱われるんじゃないの? と思って調べたら

http://msdn.microsoft.com/ja-jp/library/ee418342(v=vs.85).aspx
&gt;{
&gt; float4 val;
&gt; return mul(val,val); // dot(val, val)と同じ
&gt;}
&gt;この乗算結果は、1x4 * 4x1 = 1x1 ベクトルです。

状況に応じて4x1と1x4で解釈変えてくれるってことなのかな

406 :405:2014/02/23(日) 19:35:54.52 .net
なんじゃこりゃ

http://msdn.microsoft.com/ja-jp/library/ee418342(v=vs.85).aspx
>{
> float4 val;
> return mul(val,val); // dot(val, val)と同じ
>}
>この乗算結果は、1x4 * 4x1 = 1x1 ベクトルです。

と書きたかった

407 :デフォルトの名無しさん:2014/02/23(日) 23:29:21.78 .net
column-majorとは列優先のこと。
昔のSSEは内積命令がなかった為
ベクトルと行列の乗算には
列優先の方が効率が良かった。
今はどっちでもいい。

408 :デフォルトの名無しさん:2014/02/24(月) 23:42:19.43 .net
列優先はFORTRAN、C言語は行優先、それでDirectXも行優先にしたのでは?

ところでDirectX11も左手座標系を基準にしているの?
それと、DirectX9の行ベクトル*転置行列をやっぱり踏襲してるの?

409 :デフォルトの名無しさん:2014/02/25(火) 00:33:47.75 .net
開発者が自分で決めることを、DirectX云々はとかいう意味が分からない。

410 :デフォルトの名無しさん:2014/02/25(火) 00:56:02.20 .net
開発者って誰なんだよ。DirectX使ってソフト作っている奴かよ。

お前はDirectX云々も知らんで、サンプルプログラム動かして
なんとなく納得している阿呆かよ

411 :デフォルトの名無しさん:2014/02/25(火) 03:57:22.19 .net
>>410
Direct3Dの座標系は開発者が決められる
そんなことも知らない馬鹿は氏んでろよ

412 :デフォルトの名無しさん:2014/02/25(火) 06:53:10.34 .net
だからといってX座標の変数にyと定義しないし、Y座標にxと定義しない。

413 :デフォルトの名無しさん:2014/02/25(火) 07:05:46.11 .net
XとYなんてビューの設定を開発者が変更した時点で、いかようにも変化する。
自分で決めることであって、あらかじめ定まっていることじゃない。
座標系も自分で決定することであって、DirectXに依存するようなことじゃない。
そんな簡単なことも分かっていない時点で勉強不足。

414 :デフォルトの名無しさん:2014/02/25(火) 10:10:28.99 .net
>>413

突き詰めれば、左手系と右手系どっちなのかはプログラマの解釈の問題というのは
そうかもしれない。

しかし、数学では右手系が普通、DirectX9が左手系がデフォルトだったから、
正の回転方向が右手系と逆なのに初心者はとまどってしまう。

メッシュモデルの読み込み(メタセコイアでは左手系、右手系に切り替え
られるとお前は言うだろうが)やカーリングの問題もある。

それにD3DX9の算術関数は行ベクトル×転置行列になっている。数学では
行列×列ベクトルの演算が普通だから、この癖も知らないと初心者は混乱する。

だから、DirectX11はデフォルトで右手系になってるか、行列×列ベクトルに
なってるのかと聞いてるのに「そんなの自分で決められる」かよ。そして、
最後は「自分で調べろ」と言うんだろ?

お前みたいなのを融通のきかない、ピントはずれのボケナスと言うんだ。そして
職場で「テクハラ」をやって上司や同僚から嫌われてるだろ。

その程度のレスしかできないなら黙ってろ。おまえはどっかの掲示板の「あ」か?

415 :デフォルトの名無しさん:2014/02/25(火) 12:40:59.49 .net
>>414
そもそも固定機能が無くなって頂点処理を自分で書かないといけないんだから
自分で書いたシェーダー次第。

416 :デフォルトの名無しさん:2014/02/25(火) 13:52:00.00 .net
>>414
>しかし、数学では右手系が普通、DirectX9が左手系がデフォルトだったから、
いったい何を言っているんだ?
そもそもそんなデフォルトは存在しない。
お前は頭が悪すぎる上に、思い込みがひどすぎる。

417 :デフォルトの名無しさん:2014/02/25(火) 13:55:43.87 .net
なんでDirectX9が左手なんて勝手に思い込んじゃったんだろう?
馬鹿の考えることは常人には理解できない。

418 :デフォルトの名無しさん:2014/02/25(火) 17:44:31.59 .net
左手だから思い込みじゃなくて確信だろう。

419 :デフォルトの名無しさん:2014/02/25(火) 20:23:54.24 .net
ん?でもHLSLの組み込み関数は左手なんだから、そちらに合わせたほうがシンプルで良くね?
crossとか使ったことない?

420 :デフォルトの名無しさん:2014/02/25(火) 20:57:32.67 .net
そもそもDirect3DもOpenGLも、同じ行列をセットして、
同じ頂点座標を描画すれば、同じ出力結果になるんだよ。

RM時代のX-Fileが左手でデータを格納していたから、
左手でやっているサンプルが多いと言うだけの話。
D3DXにべったり頼っている人間が、
疑いもせずそういうものだと思い込んでいる。

421 :デフォルトの名無しさん:2014/02/25(火) 21:02:04.13 .net
hlslとglslなら、APIが違うから呼び出すまでの手続きは違えど、計算部分は完全に同じ内容になる。
両対応のプログラムを実際に作っているが、座標系の変換なんて意味不明な作業はしていない。

422 :デフォルトの名無しさん:2014/02/25(火) 21:12:54.83 .net
まあ全部ただの行列の計算結果だしねぇ、唯一決まってるのはスクリーンの座標くらいか

423 :デフォルトの名無しさん:2014/02/25(火) 21:44:17.82 .net
>>419
入力されるプリミティブの頂点が逆順になるだけで
cross自体に右手左手なんてないでしょ?

424 :デフォルトの名無しさん:2014/02/25(火) 22:51:07.65 .net
>>419
crossに座標系関係ないだろw
アホ晒しもたいがいにしろ

425 :デフォルトの名無しさん:2014/02/25(火) 22:53:21.39 .net
アセンブリレベルで考えればどちらかが最適だったような気がするけど。

426 :デフォルトの名無しさん:2014/02/25(火) 23:15:08.76 .net
自分では何も言えないくせに、弱い犬ほどキャンキャン吠えるわ


ぺぇっ! はずかしくないのかよ。糞どもw

427 :デフォルトの名無しさん:2014/02/25(火) 23:16:29.81 .net
ほんと見栄っ張りのこいつら見てると吐き気がするわ。 馬鹿の癖に

428 :デフォルトの名無しさん:2014/02/26(水) 01:02:10.02 .net
VertexBufferからUnorderedAccessView作れないもんかね
まあ試してみてダメだったんだが

429 :デフォルトの名無しさん:2014/02/26(水) 01:06:58.67 .net
426=427が自分の馬鹿さ加減に気が付いたようです

430 :デフォルトの名無しさん:2014/02/26(水) 01:10:01.87 .net
>>429
君は相変わらずだな
毎度毎度バカだのアホだの
もうちょっと成長したらどうなの?

431 :デフォルトの名無しさん:2014/02/26(水) 01:13:25.15 .net
>>430
その無駄レスする電力を何かに活かせなかったのか

と無駄レス

432 :デフォルトの名無しさん:2014/02/26(水) 05:30:24.00 .net
>>428
コンピュートシェーダで頂点バッファ使いたいってことか?
もしそうなら作ることは可能。
RWByteAddressBufferを使用する

433 :デフォルトの名無しさん:2014/02/26(水) 05:32:40.96 .net
>>420
http://msdn.microsoft.com/ja-jp/library/bb204853(v=vs.85).aspx
>Direct3D は、左手座標系を使用します。

ほんとこいつ馬鹿だよな。少しは疑えって話だよなw

434 :デフォルトの名無しさん:2014/02/26(水) 05:41:01.82 .net
あとサイズが不変で複数バッファ作ってもいいってんなら
頂点バッファと全く同じサイズのD3D11_BIND_VERTEX_BUFFERを外したバッファを作ればいい
そいつをUAVに使って、頂点バッファのデータをコピー。
そのあとコンピュートなりピクセルなりを実行した後、結果を頂点バッファの方にコピーする

435 :デフォルトの名無しさん:2014/02/26(水) 05:44:35.79 .net
>>433
やっぱり左手座標じゃないか。

436 :デフォルトの名無しさん:2014/02/26(水) 08:33:34.78 .net
>>433
そのドキュメントが間違っているんだが、それが分からない時点で勉強が足りていない。
そこの解説にあるようなD3DXの数学ライブラリをOpenGLやDirect3Dに使った場合、
LH系で生成した行列を使えば左手になるし、RH系を使えば右手になる。
座標系を制御するのは上位層の話で、OpenGLやDirect3D自体に存在する話では無い。
X-Fileは左手で格納されているが、完全にデータフォーマットの話だ。

OpenGLやDirect3Dに座標系が存在するという意味不明な状態になるのなら、
それぞれに出力するデータを変えなければいけないということになるが、
実際に同じ行列と同じ頂点で動くのに、
じゃあ具体的に何のデータを変えると言うんだ?

437 :デフォルトの名無しさん:2014/02/26(水) 08:50:20.64 .net
Microsoftが右手標準の3D業界に、RMという高レベルライブラリで対抗しようとして左手を押していた名残。

438 :デフォルトの名無しさん:2014/02/26(水) 10:11:19.29 .net
左手右手なんかZのスケール値の問題やろ
左手にZスケール-1で右手やん

439 :デフォルトの名無しさん:2014/02/26(水) 10:16:49.04 .net
>>436
なに言ってるか分らないや。

440 :デフォルトの名無しさん:2014/02/26(水) 10:36:25.40 .net
判り易く言うと右手座標とか左手座標の問題というより
右回りの円と左回りの円で表裏が違うんだけど
どっちを表裏にするかがDirectXとOpenGLでは逆ってこと
これが物体の前後関係や陰面処理を可笑しくする

441 :デフォルトの名無しさん:2014/02/26(水) 11:49:41.69 .net
>>440
カリングは自分で設定するものであって、
Direct3DやOpenGLに依存するものではない。

442 :デフォルトの名無しさん:2014/02/26(水) 12:04:12.30 .net
右左言っている奴は、
OpenGLとDirect3Dに設定する計算内容で、
いったい何を変えなければいけないのか具体的に言ってみろ。

443 :デフォルトの名無しさん:2014/02/26(水) 12:09:18.53 .net
左・右座標系「「私をめぐって争わないで・・・っ!」」

444 :デフォルトの名無しさん:2014/02/26(水) 12:11:20.53 .net
>>433を持ちだしてきて「DirectXは左手座標系!」とか言ってる人や>>439
わざわざ本当のこと説明してあげる必要ないのに。
いいじゃん彼らの中では左手座標系ってことにしとこうよ。

445 :デフォルトの名無しさん:2014/02/26(水) 12:22:51.62 .net
そういうコメントをすると自作自演とか言われるからやめてくれ。

446 :デフォルトの名無しさん:2014/02/26(水) 17:08:19.91 .net
DirectXを開発したMSが左手だと言ってるんだから左手。

>>420 はまわりが見えないアホ。

447 :デフォルトの名無しさん:2014/02/26(水) 17:45:38.00 .net
ドキュメントが間違っていても、自分で検証しようともせず、
盲目に信じ込む人間は開発には向かない。

下位レイヤーに座標系に違いがないなんて、
今回のやり取りで十分に分かっただろう。

自分で演算部分を組んで両方のプログラムを作っている人間なら、
そもそもそんな勘違いはしないんだよ。
同じ組み方で動くんだから。

自分で考えもせずにサンプルをマネするだけで既存の演算ライブラリに頼るから、
間違った情報をそのまま信じ込んでしまうんだよ。

448 :デフォルトの名無しさん:2014/02/26(水) 18:35:07.34 .net
DirectXはふつうに左手だが、この人、そもそも座標系の意味を勘違いしてるっぽい。

>そもそもDirect3DもOpenGLも、同じ行列をセットして、
>同じ頂点座標を描画すれば、同じ出力結果になるんだよ。

449 :デフォルトの名無しさん:2014/02/26(水) 18:42:47.56 .net
ならぬことはならぬものです

450 :デフォルトの名無しさん:2014/02/26(水) 19:02:24.11 .net
なんか間抜けが1匹まじってるような
・Direct3Dのデフォルト座標系は左手系
・ただし、右手系に設定可能

これだけの話しなんじゃないの?

451 :デフォルトの名無しさん:2014/02/26(水) 19:40:43.04 .net
自分で設定しないと機能しない物に、
デフォルトなど存在しない。

452 :デフォルトの名無しさん:2014/02/26(水) 20:01:01.65 .net
右だ左だデフォルト云々行っている奴は、具体的に何がデフォルトで、
Direct3DとOpenGLで何の計算に影響するか答えてみろ。
それだけで決着がつく話だろ。

453 :デフォルトの名無しさん:2014/02/26(水) 20:05:16.16 .net
438が全てだろ、何ごちゃごちゃ言ってんの?結論出てるじゃん

454 :デフォルトの名無しさん:2014/02/26(水) 20:10:18.49 .net
座標系は高レベルのレイヤの話。
だからたとえば左手が前提になっているX-Fileを使おうとした場合、
左手ならストレートに使えるが、右手でやるならデータの変換が必要になる。
しかしそれはデータ形式の問題であって、下位レイヤーの問題では無い。

今回の話をネットワークに例えると、
物理層でIPアドレスの話をしているような状態。

455 :デフォルトの名無しさん:2014/02/26(水) 20:11:14.04 .net
突き詰めれば一応、クォータニオンにもかかわってくるけどな・・・

456 :デフォルトの名無しさん:2014/02/26(水) 20:27:46.08 .net
>>455
それはクォータニオンと言いたかっただけだろ。

457 :デフォルトの名無しさん:2014/02/26(水) 20:30:21.50 .net
ああ、なんか響きがかっこいいだろう(´・ω・`)

458 :デフォルトの名無しさん:2014/02/26(水) 20:35:17.37 .net
クォータニオン星人とかアニメとかに出てきそうな感じの名前

それはともかく戦闘機の姿勢制御の為に編み出されたっていう出自がカッコイイ

459 :デフォルトの名無しさん:2014/02/26(水) 20:35:47.52 .net
俺は四元数派

460 :デフォルトの名無しさん:2014/02/26(水) 20:52:32.22 .net
球面調和関数とか名前カッコいいよな

461 :デフォルトの名無しさん:2014/02/26(水) 20:52:43.37 .net
>>454
ネットワークで言ったら座標系はプレゼンテーション層かな。

462 :デフォルトの名無しさん:2014/02/26(水) 20:57:34.17 .net
ああ、このスレがこんなに盛り上がるなんて・・・。
おじさん、うれしいよw

463 :デフォルトの名無しさん:2014/02/26(水) 21:05:03.91 .net
DirectX関係無い、というか関係無いことを主張するって流れなのが悲しいところだけどな

直交化法グラム・シュミットォ!(技名)

464 :デフォルトの名無しさん:2014/02/26(水) 21:21:24.13 .net
今DirectX使ってあれこれやってる人って少ないんかねぇ。
msdnのサンプルのダウンロード数見てもこのサンプルがこんだけ?ってなったりする。
あれにvisual studioからのダウンロード数が含まれてるかどうかは知らないけど。

465 :デフォルトの名無しさん:2014/02/26(水) 21:21:58.09 .net
右手系左手系の話についてまとめると、、

1、Z軸の方向

 これはViewProj行列で使用者が制御するのでD3D11は関係なし

2、3角形の頂点の順番(時計回りか否か)

 D3D11ではD3D11_RASTERIZER_DESC::FrontCounterClockwiseで制御され
 デフォルト値は右回り(時計まわり)。
 時計回り=左手系であるから、D3D11は関係がありデフォルト左手系と言える。


元々の質問内容が>>414

>だから、DirectX11はデフォルトで右手系になってるか、行列×列ベクトルに
>なってるのかと聞いてるのに「そんなの自分で決められる」かよ。そして、

だから、その答えはDirect3D11はデフォルトで左手系です、になるんじゃないの?
反論があるならプリーズ

466 :デフォルトの名無しさん:2014/02/26(水) 21:29:40.12 .net
>>465
反論じゃないけどわからんから質問
時計回り=左手系って決まりあるの?

467 :デフォルトの名無しさん:2014/02/26(水) 21:48:20.53 .net
>>466
さあ?わからん

ただし、座標系と3角形頂点の順は関係無いだろうな
別にどっちがどうであれ、そもそも別の処理の話なんで。
ここでグダグダ続いている話のなんと中身のないことよ。

468 :デフォルトの名無しさん:2014/02/26(水) 22:01:51.24 .net
じゃあ
>だから、その答えはDirect3D11はデフォルトで左手系です、になるんじゃないの?
にはならないじゃん。少なくともその論法では。

469 :デフォルトの名無しさん:2014/02/26(水) 22:04:31.49 .net
DirectXってよりただのCG基礎知識になっちゃったな

470 :デフォルトの名無しさん:2014/02/26(水) 23:22:24.88 .net
>>432
その方法でUAVを作ることが出来ました。
情報ありがとうございました。

471 :デフォルトの名無しさん:2014/02/27(木) 21:02:03.37 .net
お、おう・・・。

472 :デフォルトの名無しさん:2014/02/28(金) 01:03:48.47 .net
質問させてください。
DirectX9ExのSetMaximumFrameLatency(1)が使いたく、
DirectX9をDirectX9Exに書き換えたところ
D3DXLoadMeshFromXでエラーが発生するようになってしまいました。
どうすればよいのか検討がつかず困っております。
開発環境はWindows7HomePremium VisualStudio2008Pro、DirectX SDK (June 2010)です。
以下に、該当箇所のコードを書きますので、
よろしくお願いいたします。

473 :デフォルトの名無しさん:2014/02/28(金) 01:09:29.88 .net
hr = Direct3DCreate9Ex( D3D_SDK_VERSION, &g_pD3DEx );

D3DPRESENT_PARAMETERS d3dpp = { 800, 600, D3DFMT_UNKNOWN, 0, D3DMULTISAMPLE_NONE, 0, D3DSWAPEFFECT_DISCARD, NULL, TRUE, TRUE, D3DFMT_D16, 0, D3DPRESENT_RATE_DEFAULT, D3DPRESENT_INTERVAL_ONE };
D3DDISPLAYMODEEX *pFullscreenDisplayMode = NULL;
hr = g_pD3DEx->CreateDeviceEx( D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, hWnd, D3DCREATE_SOFTWARE_VERTEXPROCESSING, &d3dpp, pFullscreenDisplayMode, &g_pD3DDevEx );

474 :デフォルトの名無しさん:2014/02/28(金) 01:11:33.82 .net
hr = D3DXLoadMeshFromX(L"tiger.x", D3DXMESH_MANAGED, g_pD3DDevEx, &pAdjacency, &pMtrlBuf, &pEffectInstances, &numMaterials, &pMesh);
if(FAILED(hr)) {
MessageBox(hWnd, L"D3DXLoadMeshFromX NG", L"CreateD3D", MB_OK);
return FALSE;
}
MessageBox(hWnd, L"D3DXLoadMeshFromX OK", L"CreateD3D", MB_OK);

以上です。

475 :デフォルトの名無しさん:2014/02/28(金) 01:33:01.51 .net
D3D9のランタイムをデバッグモードにしてVisualStudioの出力にエラーメッセージが記録されるか確認
またエラーの際のHRESULTの内容も

476 :デフォルトの名無しさん:2014/02/28(金) 01:43:12.34 .net
D3D9ExはD3DPOOL_MANAGEDのリソース作れないので
D3DXMESH_MANAGEDを外してみたらどうかしら

477 :472:2014/02/28(金) 02:26:33.59 .net
>>475
DirectXコントロールパネルから、Debugに設定したところ、
VisualStudioの出力に
D3DX: D3DPOOL_MANAGED is not supported on D3D9Ex devices
と表示されました。
HRESULTの値は E_INVALIDARG(無効なパラメータが関数に渡されました。) でした。
D3DXMESH_MANAGEDは使えなそうなので、
D3DXMESH_DYNAMICに変更したところ、うまくいきました。
素早いご助言で非常に助かりました。
ありがとうございます。大変感謝です。

478 :472:2014/02/28(金) 02:29:08.45 .net
>>476
そういう事だったのですか。勉強になります。
テクスチャの読み込みでもエラーが発生したので、
D3DPOOL_MANAGED
から
D3DPOOL_DEFAULT
へ変更でOKでした。
ありがとうございました。

479 :デフォルトの名無しさん:2014/03/04(火) 02:32:45.95 .net
質問させてください
DirectX11でピクセルシェーダへの入力は標準で補間されるんですよね
つまりスムーズシェーディングはフォンシェーディングならPSに入力される法線を使えば勝手にできると理解したのですが
どうしてもフラットシェーディングでしか表示できません
そもそも法線の補間が効いてないようなのですが何か設定が必要なのでしょうか

初めて間もないド素人なので見当違いの質問だったらすjみません

480 :デフォルトの名無しさん:2014/03/04(火) 05:15:31.42 .net
全部の法線が同じ方向だったり

481 :デフォルトの名無しさん:2014/03/04(火) 05:46:56.27 .net
>>480
どうやらそのようです
本を参考にGSで面の法線を計算させていたのですがそのまま頂点の法線にしても同じ方向ですよね
あまりに基本的なこと過ぎてお恥ずかしい限りです
ちょっとどつぼににはまっていたのですがあっさり解決しそうです
ありがとうございました

482 :デフォルトの名無しさん:2014/03/04(火) 21:12:26.88 .net
DirectX11で背景に画像を表示しようと思ったらどうしたらいい?

483 :デフォルトの名無しさん:2014/03/04(火) 21:29:20.91 .net
何が聞きたいのかさっぱり分からない。

484 :デフォルトの名無しさん:2014/03/04(火) 21:54:40.72 .net
画面クリアをテクスチャでやりたいってことなんじゃないの
色々方法あると思うけど、まず自分でやってみてから質問しろよ
どうすればいい?ってんなら好きにすればいいとしか言えない

485 :デフォルトの名無しさん:2014/03/05(水) 03:21:50.13 .net
とりあえずテクスチャ張った画面サイズの板ポリゴンを平行投影で描いてその後デプスバッファのクリアをしたらやりたいことはできた
レンダビューを単色クリアするみたいに直接画素値を書き込むとかはできないのかな
全然機能を把握できてないからなんて調べたら良いかも分からん

486 :デフォルトの名無しさん:2014/03/05(水) 03:35:58.81 .net
おまえは基礎知識がなさすぎなんだよ

487 :デフォルトの名無しさん:2014/03/05(水) 04:27:38.32 .net
基礎知識が無いから聞いてるんだけどな
まあいいやもっと独学積んでからくるわ

488 :デフォルトの名無しさん:2014/03/05(水) 04:30:03.83 .net
正論

489 :デフォルトの名無しさん:2014/03/05(水) 06:32:32.66 .net
Direct2D「・・・呼ばれた気がした」

490 :デフォルトの名無しさん:2014/03/05(水) 07:21:52.35 .net
>>485
画像でクリアしたいなら、CopySubresourceRegionが多分使える。
単純コピーだからこっちのが早いだろうけど、基本的にリソースの初期化とか更新用なので、
フォーマット揃ってないとダメとか、矩形転送(回転は不可)だとか、はみ出してちゃダメとか、かなり厳しい制限が色々あるから、
背景を描画するのが目的ならシェーダ経由で描画するのが普通だと思う。
ホントに画像でクリアしたいんならこっちの方がいいだろうけど、
後で背景スクロールとかしたいなーとかなったら、結局シェーダー経由の実装に泣きながら書き換えるハメになるだろうし。

491 :デフォルトの名無しさん:2014/03/05(水) 07:33:43.59 .net
CopySubresourceRegionは単純コピーじゃないぞ
毎フレームに使うのを躊躇するほど超絶重いから

軽いのはCopyResourceの方な

492 :デフォルトの名無しさん:2014/03/05(水) 13:42:48.14 .net
>>485
そもそも描く時点でデプスバッファを更新しないようにする。

493 :デフォルトの名無しさん:2014/03/05(水) 15:39:37.66 .net
>>489
ID2D1DeviceContext以降のお前なら歓迎するよ^^

494 :デフォルトの名無しさん:2014/03/05(水) 18:28:40.38 .net
DirectShowについてってここでいいでしょうか?
動画ファイルに文字や絵を合成してまた動画ファイルにしたいのですが
こういうのは自分でフィルタを書かないと
ダメなものでしょうか?

495 :デフォルトの名無しさん:2014/03/05(水) 21:35:21.73 .net
つ AviUtl

496 :デフォルトの名無しさん:2014/03/05(水) 22:55:23.00 .net
DirectShowのストリームはアプリから触れないからねぇ。そういうぴったりのフィルタが
なければ自分でフィルタを書くしかない。
Windows7以降ならDirectShowじゃなくてMediaFoundation使えば?

497 :デフォルトの名無しさん:2014/03/05(水) 23:26:06.15 .net
>>495
プログラムでいじってみたいです。

>>496
自分でフィルタを書くものなのですね。
そうとわかればチャレンジしてみます。
MediaFoundationはDirectShow以上に情報が見つからないみたいなので
普及したら勉強してみます。

498 :381:2014/03/06(木) 01:12:09.17 .net
やっと頂点モーフィングを実装出来たぜ・・(結局CSで実装)
約1月、時間かけ過ぎたぜ
残るは剛体だけだぜ・・

499 :デフォルトの名無しさん:2014/03/06(木) 12:46:17.65 .net
キタ━━━━(゚∀゚)━━━━!!
http://blogs.msdn.com/b/directx/p/directx12.aspx

500 :デフォルトの名無しさん:2014/03/06(木) 13:01:37.43 .net
早速Mantle要らない子になるん?

501 :デフォルトの名無しさん:2014/03/06(木) 13:24:50.75 .net
Mantleは既に使える技術
DirectX12は早くても来年
対応するハードウェアはいつになるか未定

502 :デフォルトの名無しさん:2014/03/06(木) 16:39:18.72 .net
パートナーにQualcommがおる

503 :デフォルトの名無しさん:2014/03/06(木) 22:21:52.38 .net
来年なのか、じゃ11使っとくしかないか…

504 :デフォルトの名無しさん:2014/03/06(木) 22:46:52.31 .net
またOSに制約つけそう
もうDirectX自体がおわこん・・

505 :デフォルトの名無しさん:2014/03/06(木) 22:53:52.66 .net
当然8以降じゃないの?

506 :デフォルトの名無しさん:2014/03/06(木) 23:53:51.93 .net
どんなフィーチャーが付くのかなワクテカ

507 :デフォルトの名無しさん:2014/03/07(金) 00:21:27.14 .net
ここの馬鹿どもはベクトルの回転行列と座標変換行列の区別も知らんだろ。
期待するだけ無駄だ。なにせ両者の要素は全く同じだし。

508 :デフォルトの名無しさん:2014/03/07(金) 01:57:02.17 .net
おじいちゃんもう寝る時間よ

509 :デフォルトの名無しさん:2014/03/07(金) 02:38:30.35 .net
よくわからん煽り入れる場所を間違ってるつーの

510 :デフォルトの名無しさん:2014/03/07(金) 05:35:40.75 .net
次のDirectXは初期化が簡単になってると良いな。

逆にシェーダーがほとんどコンピュートシェーダ化して、
SMなんかのユニットを意識して書かなきゃならなくなるとか、そんなのになりそうだけど。

511 :デフォルトの名無しさん:2014/03/07(金) 19:16:01.59 .net
またちゃぶ台返しするんだろうな
XNAMathは廃止しまーす、代わりに○○を使ってね
DirectXTexはサポートしませーん、変わりに○○使ってね
D3DXEffectは廃止しまーす、代わり?いや無いけど?

512 :デフォルトの名無しさん:2014/03/07(金) 19:50:53.57 .net
また、ガラクタどもがしょうもないことをw

513 :デフォルトの名無しさん:2014/03/07(金) 19:54:29.68 .net
とりあえず知ってる単語並べてディスってみました感

514 :デフォルトの名無しさん:2014/03/07(金) 20:16:31.56 .net
DirectXの初期化で無事死亡した

515 :デフォルトの名無しさん:2014/03/07(金) 21:56:18.10 .net
>>511
わざと言ってるのか?w
すごい外し方だな

516 :デフォルトの名無しさん:2014/03/08(土) 00:15:49.39 .net
11でだいぶ良くなった。
もう一息ってとこだね。

517 :デフォルトの名無しさん:2014/03/08(土) 00:38:57.41 .net
どっちかって言うと
10でかなりまともになったが
11でまたおかしくなってきた

518 :デフォルトの名無しさん:2014/03/08(土) 01:03:19.38 .net
10のパワーアップ版が11なのにどこがおかしくなったんだよ

519 :デフォルトの名無しさん:2014/03/08(土) 01:28:23.30 .net
おかしいのはお前らのドタマ

520 :デフォルトの名無しさん:2014/03/08(土) 02:15:31.53 .net
使い物にならないテッセレーションの為に、節操なくシェーダステージを量産
ID3D11DeviceとID3D11DeviceContextの分離(性能の為に簡素さを犠牲)
CAPS的要素の復活(正しくは10.1からだが)
RWStructuredBufferやRWByteAddressBuffer、AppendStructuredBufferなど、非汎用的な拡張(例えばvector< struct >1本では無理だったのか)

全体的に10で洗練されてかなりシンプルなデザインになったのに
11でまた複雑化する方向に舵を取った印象
おかしくなってるとはそういうこと

521 :デフォルトの名無しさん:2014/03/08(土) 10:41:48.02 .net
うーん、そう言われると、たしかにもっと洗練された構造にできなかったのかな、と思う。

C++AMPなんかは裏でDirectCompute使ってるけど、
あれはかなり洗練されてる印象がある。

522 :デフォルトの名無しさん:2014/03/08(土) 10:42:27.20 .net
シェーダステージはハードのアーキテクチャに合わせてるだけだから別によくね?
無理矢理使わないとダメなものでもないし
複雑化はしてると思うけど、それだけ出来ることが増えてるとも言えるし

523 :デフォルトの名無しさん:2014/03/08(土) 17:25:21.54 .net
11>10
これは間違いない

524 :デフォルトの名無しさん:2014/03/08(土) 18:25:59.28 .net
ID3D11DeviceとID3D11DeviceContextの分離の部分は
個人的には便利だがな

525 :デフォルトの名無しさん:2014/03/08(土) 21:34:01.24 .net
DeviceContextとの分離はマルチスレッドのための設計だからじゃないのかな

526 :デフォルトの名無しさん:2014/03/08(土) 21:39:47.34 .net
ID3D11DeviceContextの分離は目的に対して素直な変更だし
Capsについても広いハードウェアをサポートしつつ先進的な機能をAPIに取り込むスタンスにおいて
最初っからただの幻想だと思ってたから、まあそうなるよねって感想しかないな

シェーダまわりがとっ散らかってるの完全に同意

527 :デフォルトの名無しさん:2014/03/08(土) 23:20:46.62 .net
DifferedContextの利点がいまいち分からんw

528 :デフォルトの名無しさん:2014/03/11(火) 16:21:55.90 .net
DirectX9の Presentには、 更新元、更新先矩形指定できたけど、
HRESULT Present( CONST RECT *pSourceRect,
CONST RECT *pDestRect,
HWND hDestWindowOverride,
CONST RGNDATA *pDirtyRegion
);

11のPresentには、矩形指定が無いのです。
別に指定方法ってありますか?

529 :デフォルトの名無しさん:2014/03/11(火) 16:52:24.69 .net
>>528
ドキュメントを読まない馬鹿は救いようがないな
もう一度リファレンスをよく読め

530 :デフォルトの名無しさん:2014/03/11(火) 17:53:36.61 .net
Present1

531 :デフォルトの名無しさん:2014/03/13(木) 16:51:05.51 ID:sXBITfll.net
DirectX 9.0 SDK Update - (October 2004)を
探しているのですが、microsoftのダウンロードセンターを
探しても見つからないです。どこかに置いてあるものなのでしょうか。

ちなみに、中に入っているdinput.libが欲しいのですが。

532 :デフォルトの名無しさん:2014/03/13(木) 17:41:01.98 ID:mfsOHz8n.net
>>531
探し方が悪いだけだろ
やり直し

533 :531:2014/03/13(木) 18:09:04.93 ID:sXBITfll.net
>>532
ありがとうございます。
結局、Microsoft内を探しても見つけられなかったので
仕方が無いので、怪しげなサイトに置いてある
dxsdk_oct2004.exeを見つけ、ダウンロードすることにしました。

SHA-1は8097bb69676a20e55a98a67d960a8b6edc89dff9のようなので
これが一致していれば大丈夫なはず、、、はず。。。
Microsoft内で簡単に見つかれば、こんな恐ろしい目に合わなくて済むのですが。。。

534 :デフォルトの名無しさん:2014/03/13(木) 18:19:53.43 ID:mfsOHz8n.net
>>533
「DirectX SDK October 2004」でググるという発想はないのか…

535 :デフォルトの名無しさん:2014/03/13(木) 18:24:08.44 ID:mfsOHz8n.net
>>534
自己レス
ごめん、ググって出てこない
というか、>>532のいうようにMSのDLセンターからSDKがほぼ消えてる
DXSDk October 2004
http://www.microsoft.com/downloads/details.aspx?FamilyId=B7BC31FA-2DF1-44FD-95A4-C2555446AED4%26displaylang=en
DLセンタートップにリダイレクトされる

一時的なものかDX12を前に一掃されたかわからん
確認せずにいい加減なレスしてすまんかった

536 :531:2014/03/13(木) 19:24:20.97 ID:sXBITfll.net
>>535
うちだけMicrosoftからブロックされたのかな?とか
訳のわからないことを考えてしまっていましたw

怪しい韓国サイトからDLしたものは、chromeさんに
「これ、危ないファイルだよ」と言われた上に、SHA-1も
異なっていたので、0と1に還元してあげました。

仕方がないのでしばらく様子見することにします。
ありがとうございました。

537 :デフォルトの名無しさん:2014/03/13(木) 20:04:37.05 ID:ehk1j1eU.net
純正品ならMSの署名ついてるだろ

538 :デフォルトの名無しさん:2014/03/13(木) 22:22:44.58 ID:tA2XNf3V.net
つかdinputって推奨されてないんじゃなかったっけ。

539 :デフォルトの名無しさん:2014/03/13(木) 23:07:57.86 ID:C3VukTft.net
http://www.microsoft.com/en-us/download/details.aspx?id=6812

540 :デフォルトの名無しさん:2014/03/13(木) 23:58:34.99 ID:0zqrsvP1.net
ttp://www.microsoft.com/en-us/search/DownloadResults.aspx?q=directx%20software%20development%20kit&sortby=availabledate
Oldest to Newestでソートしても、一番古いSDKはApril 2006になっちゃうみたいだね

541 :デフォルトの名無しさん:2014/03/14(金) 00:45:48.33 ID:eYqlzhTA.net
古いDirectX本のCDに付いてると思う。
正規に入手するならそれ位しかないんじゃない?

542 :デフォルトの名無しさん:2014/03/14(金) 01:09:44.21 ID:MXy7+zpF.net
>>541
無知。MSDNにはあるよ
http://msdn.microsoft.com/ja-jp/subscriptions/downloads/#searchTerm=&ProductFamilyId=251&Languages=en&PageSize=10&PageIndex=0&FileId=0

543 :デフォルトの名無しさん:2014/03/14(金) 02:02:01.99 ID:FYfc+HAB.net
いちいち口の悪い奴だ。

544 :デフォルトの名無しさん:2014/03/15(土) 14:37:10.27 ID:ZPMHjx2K.net
DrawInstancedIndirect()などIndirect系の利点がいまいちわからん。
DrawInstanced()の引数「uint x 4」がシェーダリソースになってるってことだが
描画がGPUで勝手にやってくれる訳でもなく、
CPUからのDrawInstancedIndirect()コールは必要な訳で、
それじゃDrawInstanced()コールしてんのと殆ど違いが無いよね。
引数「uint x 4」の転送がそんなに重いの?

545 :デフォルトの名無しさん:2014/03/15(土) 15:47:48.76 ID:rqH/Y87T.net
コンピュートシェーダ「俺が並列計算してインスタンス数をはじき出す、待ってろ!」
DrawInstancedIndirect「さすが、コンピュート先輩!」

546 :デフォルトの名無しさん:2014/03/15(土) 19:18:06.97 ID:OVnyPj77.net
ワロタw

547 :デフォルトの名無しさん:2014/03/15(土) 21:31:42.56 ID:m+I3XmHi.net
>>544
CPUとGPUは非同期で動いてるから、普通のDrawInstanced()だとコンピュート先輩が結果出すまでCPUは待ちぼうけくらうっしょ?
でもコンピュート先輩がシェーダーリソースに結果を書き出して、後続のDrawCallがそこからパラメータを読み取って動作するって命令があればGPUの中で完結するからCPUを止めずに済む。
それがIndirect系の命令。

548 :デフォルトの名無しさん:2014/03/19(水) 15:16:43.92 ID:pQvJpOb/.net
d3dx9.h:No such file or directoryと出たのでヘッダーファイルズにd3dx9.hとd3dx9.hでインクルードされているヘッダーファイルを入れたのですが結果は変わりませんでした。

何が問題なのでしょうか?よろしくお願いします

549 :デフォルトの名無しさん:2014/03/19(水) 16:41:05.97 ID:GyaDX1Bo.net
>>548
おまえが環境構築の何たるかを理解してないのが問題なんだよ

550 :デフォルトの名無しさん:2014/03/19(水) 17:48:56.55 ID:mmxkXVjV.net
FAQだからエラーメッセージやらファイル名やらでぐぐれ
あと勝手にコピーしたファイルは必ず戻しておくこと

551 :デフォルトの名無しさん:2014/03/19(水) 23:07:44.60 ID:3ifCllKW.net
もうDirectXでもなんでもないやんけそれ
プログラミングの基礎から勉強し直せ

552 :デフォルトの名無しさん:2014/03/20(木) 01:03:46.28 ID:l7cmVyTY.net
今そういえばVS2013とかにd3dx9.hって入ってないのか
sdk探して下ろしたり知ってる人間でも割と面倒かもしれない

と思った

553 :デフォルトの名無しさん:2014/03/20(木) 02:04:41.49 ID:x0ohoy4J.net
で、入ってないからと古いSDK入れようとすると

KB紹介:DirectX SDK をインストールしようとするとエラーが発生する
http://blogs.msdn.com/b/windows_multimedia_jp/archive/2013/09/05/kb-directx-sdk.aspx

こういうエラーに遭遇したり。めんどくさい。

554 :デフォルトの名無しさん:2014/03/21(金) 01:56:22.38 ID:Uok2eO6l.net
もう最新のDirectX11でイイよ。

555 :デフォルトの名無しさん:2014/03/21(金) 02:38:22.37 ID:/a5JnjE5.net
NVIDIA will support DX12 on Fermi, Kepler, Maxwell and forward!
古いハードウェアでも行けるのか

556 :デフォルトの名無しさん:2014/03/21(金) 02:40:46.00 ID:/a5JnjE5.net
Developers already have DX12 drivers. The Forza demo was running on NVIDIA!!!

つまりデモの映像はPCで動いてたのかよw

557 :デフォルトの名無しさん:2014/03/21(金) 04:40:26.50 ID:XBQxLLJ5.net
>>552
今までVSにD3DXのヘッダなんて入ってたことあったか?

558 :デフォルトの名無しさん:2014/03/21(金) 05:12:13.43 ID:vYyAx4Xx.net
http://blogs.msdn.com/b/directx/archive/2014/03/20/directx-12.aspx

Windows7対応しなさそうな感じだな

559 :デフォルトの名無しさん:2014/03/22(土) 03:21:12.09 ID:e5G6ta4Q.net
>>558
7対応するって
http://www.4gamer.net/games/033/G003329/20140321013/

560 :デフォルトの名無しさん:2014/03/23(日) 02:55:55.99 ID:Tm2ek9Zj.net
Directxに興味を持って2年くらい前から本を持っているのに
相変わらずサンプルのビルドすらできない
ライブラリとか指定済みのSampleBrowserのものすら動かないのは何が悪いのやら

561 :デフォルトの名無しさん:2014/03/23(日) 03:27:17.72 ID:tktLBKAf.net
>>560
おまえの頭

562 :デフォルトの名無しさん:2014/03/23(日) 03:59:50.76 ID:gvom7fcZ.net
Hello worldがコンパイル出来てるか心配になるレベル

563 :デフォルトの名無しさん:2014/03/23(日) 05:51:35.48 ID:YAORAhKQ.net
定数バッファを作ろうと思って

struct TEST
{
    float test;
};

というストラクチャを作り、

D3D11_BUFFER_DESC cb;
cb.ByteWidth = sizeof( TEST );
cb.Usage = D3D11_USAGE_DYNAMIC;
cb.BindFlags = D3D11_BIND_CONSTANT_BUFFER;
cb.CPUAccessFlags = D3D11_CPU_ACCESS_WRITE;
cb.MiscFlags = 0;
cb.StructureByteStride = 0;

ID3D11Buffer* ConstBuffer;
m_pD3DDevice->CreateBuffer(&cb, NULL, &ConstBuffer);

という風に書いたんですが、このCreateBuffer()で失敗します。
HLSLの方は

cbuffer cbBuffer0 : register(b0)
{
   float test;
};

何が問題なんでしょう?

564 :デフォルトの名無しさん:2014/03/23(日) 10:53:22.16 ID:mAtrOGhz.net
>>563
おいおい、買った本教えてみ。
非常に大事なお約束が抜けてるぞw
自分も最初に躓いたな、そこw

565 :デフォルトの名無しさん:2014/03/23(日) 11:33:44.93 ID:ZR9aiy74.net
>>563
D3D11が失敗するときは、エラーメッセージを吐くのでそれを参考に。
Bufferまわりはマニュアルにない制約が多いので注意。

D3D11 ERROR: ID3D11Device::CreateBuffer:
The Dimensions are invalid. For ConstantBuffers,
marked with the D3D11_BIND_CONSTANT_BUFFER BindFlag, the ByteWidth (value = 4) must be a multiple of 16.
ByteWidth must also be less than or equal to 65536 on the current driver.
[ STATE_CREATION ERROR #66: CREATEBUFFER_INVALIDDIMENSIONS]

566 :デフォルトの名無しさん:2014/03/23(日) 17:59:18.84 ID:qjHgMSQw.net
まあ、簡単に言うとだな・・・

struct TEST
{
float test;
float test2;
float test3;
float test4;
};

にしとけってことだ

567 :デフォルトの名無しさん:2014/03/23(日) 18:55:17.87 ID:FUgeXWae.net
>>560
持ってるだけじゃ意味ないですよw

568 :563:2014/03/23(日) 20:17:38.70 ID:YAORAhKQ.net
>>564-566
回答ありがとうございます。

sizeof(TEST) + ( 16 - (sizeof(TEST) % 16));

としたら通りました。
考えてみれば実用上はほとんどの場合、float4の型しか使いませんね。

>>564
今のところネット情報だけでやってます。良ければオススメの本教えてください。

569 :デフォルトの名無しさん:2014/03/23(日) 20:25:38.86 ID:mAtrOGhz.net
>>568
http://www.kohgakusha.co.jp/books/detail/978-4-7775-1537-0
定数バッファの制限とか基本的な事は抑えてる。
ただ、>>565も言ってるように、書かれてない制限もあるから注意。

570 :デフォルトの名無しさん:2014/03/23(日) 20:55:55.31 ID:qjHgMSQw.net
なんだ、二年前の本の人とは別人なのか

571 :デフォルトの名無しさん:2014/03/24(月) 23:47:47.10 ID:qqvrcyIg.net
DXVAで動画エンコしようと思っているんだけど、IDirect3DSurface9を使う場合って
やっぱりデバイスロスト対策は要るんだろうか?
もし要るとした場合、随時TestCooperativeLevel()でチェックすればいいのかな?

572 :デフォルトの名無しさん:2014/03/30(日) 23:47:50.94 ID:LHeEvqgF.net
>>560と同じ状況ですが
サンプルを動かすのに設定済み項目以外で変更すべき項目などありますか

573 :デフォルトの名無しさん:2014/03/31(月) 01:40:05.21 ID:VNf8PF+y.net
ビルドに失敗するならビルド時のエラーメッセージを無視せず必ず読め
そこに何が問題なのか8割方書いてある

574 :デフォルトの名無しさん:2014/03/31(月) 13:24:52.71 ID:E/15h4Ol.net
#includeは、おまじないじゃないんやで

575 :デフォルトの名無しさん:2014/03/31(月) 21:39:38.90 ID:OtQqQh/Y.net
せやな。

576 :デフォルトの名無しさん:2014/03/31(月) 21:41:40.85 ID:4R4NZLEn.net
プログラミングは宗教です

577 :デフォルトの名無しさん:2014/04/01(火) 00:47:46.28 ID:kcoRdAap.net
ならプログラマは神の奇跡を呼び起こす僧侶だな

578 :デフォルトの名無しさん:2014/04/01(火) 13:46:39.50 ID:SlVwWPQZ.net
アップルという名の宗教に入っています

579 :デフォルトの名無しさん:2014/04/03(木) 11:01:19.44 ID:tuuzFS5t.net
DX12はWindowsPhoneも対応だけど、.NETには対応しないの?

580 :デフォルトの名無しさん:2014/04/03(木) 11:49:04.76 ID:0Rw6D0p7.net
何を言ってるんだ君は

581 :デフォルトの名無しさん:2014/04/03(木) 11:54:53.35 ID:B4cDVk8c.net
SharpDXあたりが対応してくるんじゃね

582 :デフォルトの名無しさん:2014/04/03(木) 16:56:56.73 ID:1H4eKrwv.net
開発者さんやる気満々だったよ

583 :デフォルトの名無しさん:2014/04/04(金) 09:00:30.47 ID:GzdpzWxB.net
オープンソースになるって
http://www.publickey1.jp/blog/14/cvisual_basicroslynbuild_2014.html

584 :デフォルトの名無しさん:2014/04/10(木) 10:43:43.20 ID:T9oa77ZA.net
ゲイツが抜けてから迷走してるなぁ。
マカーなんか採用するからこんなことになるんだよ。

585 :デフォルトの名無しさん:2014/04/10(木) 12:36:49.50 ID:Tdl4/NAC.net
ゲイツまだいるし

586 :デフォルトの名無しさん:2014/04/10(木) 14:19:55.93 ID:ro2/cQQ+.net
ビル&メリンダ・ゲイツ財団にいるんじゃね

587 :デフォルトの名無しさん:2014/04/12(土) 01:09:50.13 ID:22hvsUpn.net
C#とSlimDXの質問ってここで良いの?

588 :デフォルトの名無しさん:2014/04/12(土) 01:11:50.33 ID:M8tgAww2.net
内容によっては↓
C# C# C♯ でゲームを作ろう Part2
toro.2ch.net/test/read.cgi/gamedev/1290300779/

589 :デフォルトの名無しさん:2014/04/12(土) 01:13:05.66 ID:22hvsUpn.net
Direct2D&DirectWriteは文字の表示のみなんでしょうか?
入力が必要になった場合コントロールの貼り付けで対応するんでしょうか?

590 :デフォルトの名無しさん:2014/04/12(土) 01:18:26.13 ID:22hvsUpn.net
SlimDXのDirect2Dでオブジェクトをアフィン変換する時に回転して拡大縮小を同時にするには
変換行列を使うとどう行列を設定すればいいんでしょうか?

591 :デフォルトの名無しさん:2014/04/21(月) 20:33:41.43 ID:wKHG/yUs.net
>>591
ググれ

592 :デフォルトの名無しさん:2014/04/22(火) 20:11:25.32 ID:j0qIwEs0.net
2010でデフォルトで追加されるようにって意味がよくわからんぞ
2010とdirectxインストールしろとしか言えんわ

・・・2012じゃだめなん?こっちは最初からdirectxが入ってるぞ

593 :デフォルトの名無しさん:2014/04/22(火) 20:16:36.18 ID:xLscFuQY.net
新規プロジェクトを作成したときに
追加の依存ファイルとしてd3d10.libとかが既に設定されている状態にしたいってことかね

594 :デフォルトの名無しさん:2014/04/22(火) 22:24:54.83 ID:opoOWVn8.net
プロパティシートでも自前で書けば?

595 :デフォルトの名無しさん:2014/04/24(木) 01:36:45.53 ID:spet179P.net
DirectX11のブレンドステートって加算用とか乗算用に変更しようとして
毎回CreateBlendStateとOMSetBlendState呼ぶのは間違ってる?

596 :デフォルトの名無しさん:2014/04/24(木) 02:55:13.63 ID:U9MVIO0k.net
速度的に問題ないと思ったら毎回呼んでもいいんじゃない?
同じステートがすでに制作済みならそのポインタを返すらしいぞ、CreateBlendStateは

・・・俺は毎回CreateBlendStateは呼ばんけどな

597 :デフォルトの名無しさん:2014/04/24(木) 07:56:13.21 ID:lBIIK8rX.net
さすがにCreate系は立ち上げの際に1回呼び出すだけだな。
Set系は毎フレームコールしてるわ。

598 :デフォルトの名無しさん:2014/04/24(木) 11:29:16.45 ID:J1TSy0dP.net
>>596>>597
じゃあ初期化の段階で加算用、乗算用とかのブレンドステート作っておいて、
いざ使う時にどれかを選んでSetする感じか
サンクス

599 :デフォルトの名無しさん:2014/04/24(木) 17:28:22.52 ID:DnZ7CeuU.net
>>598
DirectXTKってのにシングルトンのステートオブジェクトを返す丁度良い実装があるよ

600 :デフォルトの名無しさん:2014/04/24(木) 21:40:34.28 ID:TplQLG64.net
DirectXTKは使わないし、それほど素晴らしいとは思えないけど、
参考にはなると思う
実用的なモノのソースがぜんぶ見られるんだから、見て損はないよね

それはどうでもイイけど、>>595それは無いと思う
Direct3Dに限った話じゃないけど、C/C++的に、とても忙しいときに
リソース確保とかない

601 :デフォルトの名無しさん:2014/04/26(土) 16:40:29.83 ID:jarD8S8q.net
DirectX+C++でプログラムを作りたいと思っています。
PS4でソフトを出す人が言っていたのですが、今でもDirectX9使ってて、11は触ったこともないよと言っていました。
(DirectX9のプログラムをPS4でリリースするそうです)
11は9にあった機能がガンガン削られたというのも気になってて、9から勉強すれば大丈夫でしょうか?

602 :デフォルトの名無しさん:2014/04/26(土) 16:56:18.01 ID:kNj7CoHP.net
今さら9はないかな
機能が削られたといってもよりハードウェアよりになってパフォーマンスを重視するようになったってだけだし

603 :デフォルトの名無しさん:2014/04/26(土) 17:11:51.16 ID:hnCObsbS.net
9は参考書籍に良書が多いから、9スタートでもいいとは思うけど、
やる気の持続する人はこの質問する前にすでに両方試してると思う。つまり才能がな(ry

604 :デフォルトの名無しさん:2014/04/26(土) 17:36:17.40 ID:KAgGu5U7.net
触ったことも無い人間が語る内容を信じる意味が分からない。

605 :デフォルトの名無しさん:2014/04/26(土) 17:53:02.69 ID:OHeunlyf.net
9をかんだ程度で11に行きたいならやめておいた方がいい。混乱するだけだ
9を極めて11に行こうってんなら、移行は簡単だろうが時間の無駄すぎるだけだ

606 :デフォルトの名無しさん:2014/04/27(日) 06:55:45.29 ID:ean7wWfJ.net
0から始めるのに今更9は流石に無意味

607 :デフォルトの名無しさん:2014/04/28(月) 17:57:24.54 ID:6pILsLXV.net
DX11ってOpenGLみたいに描画がプリミティブになったんだっけ?

608 :デフォルトの名無しさん:2014/04/29(火) 09:44:48.70 ID:JlO62gth.net
意味不明

609 :デフォルトの名無しさん:2014/04/29(火) 14:43:35.70 ID:SJ6dwBtg.net
俺、次のDX12に期待するわ

610 :デフォルトの名無しさん:2014/04/29(火) 16:22:27.29 ID:h5iJ3BEz.net
じゃあ僕はDirextX15ぐらいで。

611 :デフォルトの名無しさん:2014/04/29(火) 17:23:56.29 ID:yQJI8F/r.net
12はまた大幅な変更なのかな

612 :デフォルトの名無しさん:2014/04/30(水) 00:23:04.03 ID:F/SK7ZLB.net
情報量は9が多いし、参考にしたらいいと思うけど、
今からプログラミングするなら断然11をオススメする。
9までのAPI増改築による複雑さが整理されているし、色々なアルゴリズムを適用し易い柔軟性もある。

613 :デフォルトの名無しさん:2014/04/30(水) 21:04:02.99 ID:F/SK7ZLB.net
骨まで理解するPCアーキテクチャ(GPU編) 第4回
http://pc.watch.impress.co.jp/docs/column/1month-kouza/20140425_646073.html

>CPUはどちらにもアクセスできるが、GPUの方はI/O空間のみにしかアクセスできないという問題がある。
>「ではプロセスもI/O空間だけを使ってプログラムを走らせれば?」というのは無理な相談で、
>元々この領域はI/Oデバイスとの通信用に設けられた特殊な領域なので、
>プロセスからアクセスはできるといっても、本来のメモリ空間と同じように扱えるわけではない。
>よって、旧来の方式では、

>1.CPUが元データをメモリ空間からI/O空間にコピー
>2.I/O空間にGPUがアクセスして処理を行ない、I/O空間に結果を書き戻す
>3.CPUが結果をI/O空間からメモリ空間にコピー

>という面倒な手順になっていた。

DirectX11でステージングバッファっていうのを介してGPU転送してるみたいだけど、
あれって上記記事のI/O空間のメモリ領域のことなの?

614 :デフォルトの名無しさん:2014/05/01(木) 04:30:33.34 ID:eDhN40up.net
DirectX11でテクスチャの設定された面とされてない面があるオブジェクトを描画する時はシェーダを切り替えなくてはいけないんでしょうか
シェーダ側からテクスチャが設定されているか調べる方法があると良い気がするのですが

615 :デフォルトの名無しさん:2014/05/01(木) 07:02:34.05 ID:M4OGqH6+.net
頂点情報に埋め込んどけばいいだけの話

616 :デフォルトの名無しさん:2014/05/01(木) 07:07:10.65 ID:5zg6LXgK.net
シェーダ内でif分岐するよりはシェーダを切り替えたり、
テクスチャなしの場合は白のテクスチャを張る、
とかにしたほうがパフォーマンス的にいいと思う。
実際に測定してないけど

617 :デフォルトの名無しさん:2014/05/01(木) 17:16:33.93 ID:w63nobuX.net
DynamicShaderLinkageってのがあってだな・・・

まぁ白テクスチャの方がお手軽だけどな

618 :615:2014/05/01(木) 23:00:51.16 ID:eDhN40up.net
DynamicShaderLinkageを勉強しつつまずは白テクスチャの方法をとろうと思います
ご指導ありがとうございます

619 :615:2014/05/01(木) 23:43:52.59 ID:eDhN40up.net
と思ったのですがテクスチャのない面では頂点色を使いたいときは白テクスチャだと対応しづらい気もします
頂点情報に埋め込むかDynamicShaderLinkageを使った方が良い気がしてきました
何はともあれ実践不足なので色々試してみたいと思います

620 :デフォルトの名無しさん:2014/05/02(金) 01:31:10.50 ID:ahIZpWLt.net
なんで?
頂点色って基本乗算だろ。白テクスチャと乗算しても変化ねーよ

621 :615:2014/05/02(金) 02:05:57.87 ID:F8VRsAqW.net
最初は白テクスチャなら乗算しても同じだから大丈夫と思ったんですけど
そうなると普通のテクスチャでも頂点色との乗算を行うってことでそれって大丈夫かなと思った次第です
なんか思考が迷走してる気もするので変なこと言ってたらすみません

622 :デフォルトの名無しさん:2014/05/02(金) 02:11:02.38 ID:ahIZpWLt.net
頂点色ってのはそういうものだ。最終的にテクスチャと合成される
テクスチャが頂点色で変わるのがいやなら普通は頂点色も白にするもんだ

623 :615:2014/05/02(金) 02:15:36.51 ID:F8VRsAqW.net
なるほど勉強になりました
では白テクスチャの方針で進めていきたいと思います
ご助言ありがとうございます

624 :デフォルトの名無しさん:2014/05/02(金) 02:17:18.81 ID:ahIZpWLt.net
まさか、頂点色だけでオブジェクトの色を決定してるってわけじゃないんだろ?
場合によってはありかもしれんが・・・

625 :615:2014/05/02(金) 02:36:59.87 ID:F8VRsAqW.net
今まで頂点色を設定したobjファイルを元に色々シェーダで遊んでいたのを
テクスチャに対応させようと思って色々混乱してしまった感じです

626 :デフォルトの名無しさん:2014/05/02(金) 09:49:23.59 ID:Cd4tkU62.net
普通は頂点色じゃなくて材質の減衰色とか拡散色を1描画命令ごとに変更するんよ

627 :デフォルトの名無しさん:2014/05/17(土) 18:42:02.76 ID:8IJQqYsm.net
CとC++の入門書を終えた程度の貧乏学生です。

DirectX 7〜9の本を親戚から何冊か貰ってきたので、
これから勉強していくのですが、
現在のバージョンからすると古いと思います。
勉強する上で注意する点とかありますか?

コンパイラーも古くライセンス毎もらったVC++2005で、
OSはWindows Vista(ノート)か7(デスクトップ)です。

628 :デフォルトの名無しさん:2014/05/17(土) 18:49:58.52 ID:klXatZDI.net
>>627
こんなとこで聞くんじゃなくて、勉強の方法から学習しなおせ
ググればいくらでも情報は手に入る

629 :デフォルトの名無しさん:2014/05/17(土) 20:01:53.65 ID:7SSEWvta.net
注意する点ではないと思うが、7があるんだろ
directx11と2012を使おうとは思わんのか?

630 :デフォルトの名無しさん:2014/05/17(土) 20:15:11.81 ID:OQzb2Hc/.net
>>627
DirectX7〜9はもう古いからDirectX11を勧める。
本は『DirectX11 3Dプログラミング』がオススメ。
環境は学生ならDreamSparkの登録をしてVisualStudio2012もしくは2013のPro版を入手。
あと趣味でなく研究用途ならOpenGLも検討すべき

631 :デフォルトの名無しさん:2014/05/17(土) 22:18:59.77 ID:Tu7n2zq5.net
研究は何故OpenGL?
Windows以外の環境があるから?

632 :デフォルトの名無しさん:2014/05/17(土) 23:44:07.05 ID:jcSfCTxN.net
XPが消えた今DX9を今更勉強するのもアレだしね
モバイルもDX10〜11相当のGLES3.xに移行中だし

633 :デフォルトの名無しさん:2014/05/17(土) 23:52:42.56 ID:jcSfCTxN.net
一応VC++2005のままでもDX11は一応使えるのかな
http://etwas.wolfish.org/blog/p2010020701/
http://www.microsoft.com/en-us/download/details.aspx?id=10084

634 :デフォルトの名無しさん:2014/05/17(土) 23:58:53.84 ID:OQzb2Hc/.net
>>631
そうです

635 :デフォルトの名無しさん:2014/05/18(日) 00:03:19.76 ID:7ynzBwDy.net
>>634
d。

636 :デフォルトの名無しさん:2014/05/18(日) 02:17:14.77 ID:UIXSU/XH.net
vc expressつかってると、デバッグができないので、pix復活希望なんだけど。

637 :デフォルトの名無しさん:2014/05/18(日) 02:30:36.62 ID:wwgrtV1p.net
ストア版の2013Expressではグラフィクス診断使えたり
D3D9ならDirectX SDKのPIXがまだ使えたりするんだけどねえ

638 :デフォルトの名無しさん:2014/05/18(日) 04:06:05.37 ID:LHYpYcUR.net
>>627
貴方のような意見を最近良く目にしますが、
学習するプロセスと調査するプロセスではメカニズムが相違します。
初めの学習においては、ネットで有益な情報を見極めるだけの知識が存在せず、
無知な状態でそれらを見極めようとする時間は無駄な時間と労力です。

>>627
とりあえずVistaや7にDirectX 9 SDKのインストールする方法はネットを参考にし、
DirectX 7の本はさて置き、
9の入門書を所持されているようであれば、そこから始め、
問題に陥った時に聞けば良いと思います。

ぼくはゲーム業界を退きましたが、ゲーム開発は楽しいので是非頑張ってください。

639 :デフォルトの名無しさん:2014/05/19(月) 20:47:49.43 ID:y8Ney476.net
DX9はそれまでのDXの集大成みたいなもんだから覚えておくべき。
DX10とかDX11はDX9に追加のAPIをつけたようなもんだから。

640 :デフォルトの名無しさん:2014/05/19(月) 20:55:18.17 ID:Ej7bmL02.net
>>639
それプラス、増改築で継ぎ接ぎだらけの状態をキレイに体系化して再構築した、だね。
DX11、初期化とか量がけっこうあったり、面倒に感じるところもあるかもしれないけど、
従来の複雑さ、ややこしさはだいぶマシになったし、色んなシェーディングを試しやすい柔軟性もある。
柔軟性については統合シェーダのおかげもあるけどね。

情報量はDX9。
実際のコーディングはDX11って感じかな。

641 :デフォルトの名無しさん:2014/05/20(火) 04:36:26.33 ID:f9YPeLav.net
柔軟すぎると初心者は手をつけれなくなるんだよね。

642 :デフォルトの名無しさん:2014/05/20(火) 13:02:53.77 ID:c/zSMJrz.net
javascriptのことですね

643 :デフォルトの名無しさん:2014/05/26(月) 21:00:59.60 ID:/c0SmoR4.net
スレが間違っていたら申し訳ありません。
質問なのですが、現在DirectXでpmdファイルを読み込むプログラムを作成しているのですが
サンプルプログラムで使用されていたpmdファイルを読み込むことには成功したのですが、
自分が使いたいLat式ミクを表示しようとするとフォルダの中に存在しているテクスチャが見つからないと
表示されアクセス違反が発生してしまいます。
なぜ指定されたデータは存在するのにプログラム側で指定されたファイルが見つかりません。
と表示されるのか原因がわからず困っております。
読み込みのプログラムはこちらのサイトのpmdモデルを表示を参考にしました。
http://www2.ocn.ne.jp/~mhage/PIC_Trap/
データはソースコードが置いてある場所にモデル用のフォルダを作成しその中にすべて
データを入れてあります。
パスの指定の方法は"フォルダ名/モデル名.pmd"で指定しております。
環境
Windows7
VisualStudio2008
DirectXSDK November2007を使用しております

644 :デフォルトの名無しさん:2014/05/26(月) 21:09:53.94 ID:/c0SmoR4.net
ちなみにフォルダ内のデータをすべてソースコードが置いてるフォルダ直下に移した場合は表示されております

645 :デフォルトの名無しさん:2014/05/26(月) 21:14:44.44 ID:PNgp/PCF.net
いきなりプログラミング始めると、パスの概念なかったりするのかね
単純に馬鹿なんじゃと言いたくなるが、最近の学習環境ってどうなんだろう

646 :デフォルトの名無しさん:2014/05/26(月) 23:11:34.10 ID:0ysSB4uuH
初心者からのステップアップとしてgcc&makeに手を付けてもらいたいものだ
IDEだけだと曖昧な理解になるからな

>>643
pmdファイルのテクスチャパスはpmdからの相対パスで格納している
つまり実行ディレクトリ(VisualStudioではソースのあるフォルダ)からの相対パスか、絶対パスで指定しなければならない

647 :デフォルトの名無しさん:2014/05/26(月) 23:28:36.37 ID:9uDw03cb.net
Direct2Dでテクスチャ描画するときに
特定の色だけ透過(色抜き)って出来ますか?

648 :デフォルトの名無しさん:2014/05/27(火) 18:30:57.13 ID:6Q8qjCFH.net
ああ、出来るよ

649 :デフォルトの名無しさん:2014/06/03(火) 22:13:03.43 ID:zF5jL880.net
2014-05-17 OpenGLでムカつくこと
ttp://cpplover.blogspot.jp/2014/05/opengl.html
2014-05-19 OpenGLドライバー品質の実情
ttp://cpplover.blogspot.jp/2014/05/opengl_19.html

OpenGLもいろいろ大変なんだね

650 :デフォルトの名無しさん:2014/06/03(火) 23:54:46.04 ID:i8lZwovg.net
なんだ、D3Dマンセー記事?

651 :デフォルトの名無しさん:2014/06/04(水) 00:31:20.30 ID:BscmL0e/.net
Valveの人の不満が書いてあるだけじゃね?

652 :デフォルトの名無しさん:2014/06/04(水) 00:34:06.51 ID:S+z4z//M.net
俺に使えないもの作るんじゃね
といってるように読めますが

653 :デフォルトの名無しさん:2014/06/04(水) 00:36:48.35 ID:BscmL0e/.net
思考停止してる人間はそう読めるのかもしれない

654 :デフォルトの名無しさん:2014/06/04(水) 17:41:25.61 ID:2ij5JthN.net
ハード屋はとりあえず自分の環境だけで動けばいいやってところが多い

655 :デフォルトの名無しさん:2014/06/08(日) 15:06:39.78 ID:DzOeG031.net
ゲームプログラミングのために勉強し始めたばかりなんですが例えば2Dなら2D、3Dなら3D、あるいはジャンル毎とかにDirectXの土台のコードの部分って似たり寄ったりになるものですか...?

656 :デフォルトの名無しさん:2014/06/08(日) 15:43:52.16 ID:2dlEo4xC.net
今の時代は2Dでも3DAPIをベースに作るほうが却って楽だよ。

657 :デフォルトの名無しさん:2014/06/08(日) 16:29:05.93 ID:WtdjODsB.net
2Dゲームしか作らないんですが9から11に移行する意味ありますか?
過去にDirectX9使って同人ゲームを2作作ったことがあるんですが
11ではSpriteとか2D関係の一部がなくなってると聞いているので代替えがあるんですよね?

658 :デフォルトの名無しさん:2014/06/08(日) 16:40:19.07 ID:2dlEo4xC.net
>>657
DirectX9でそこまで経験があるなら別にどちらでもかまわないと思うが、
高度なシェーダやGPUコンピューティングを行うなら11への移行を検討したほうがイイ。
いずれにせよほぼ作り直しになるようなら、継ぎ接ぎの多い9に対して
体系的に整理されている11のほうが美しいコードにできる。
個人的にはデバイスロストの面倒が緩和されただけでも11に移行する価値があると思う。
情報量的には9のほうが多いので、そのあたりを考慮しながら決定したらイイと思うよ。

659 :デフォルトの名無しさん:2014/06/08(日) 16:48:31.45 ID:14DSih8c.net
行列理解してれば3Dで2Dを表現するなんて楽勝なハズなんだけどな・・・

660 :658:2014/06/08(日) 16:48:41.24 ID:2dlEo4xC.net
>>657
ああ、あとSprite関係はD3DX11を使うなら同じようにできるが、MicrosoftはD3DX11の廃止を決定。
代わりにDirectXMathやDirectXTex、DirectXTKが作られた。
SpriteはDirectXTK。
乗算済みアルファフォーマットになっているなど多少注意は必要だけど、割と使い易かったよ。

661 :デフォルトの名無しさん:2014/06/08(日) 17:04:31.21 ID:3LWaPBPW.net
っつーか3Dなら行列、ってのも
行列が座標計算に便利だから使われてるだけであって
普通に手計算で拡縮・回転・移動させたって別に問題ない気がする
DirectX10以降でシェーダを自前で用意するようになった今では尚更

662 :デフォルトの名無しさん:2014/06/08(日) 17:23:18.64 ID:WtdjODsB.net
なるほど
代替えがあって使い辛くもないなら移行しても問題なさそうですね
とりあえず書籍やらサイトやらの情報漁って勉強してみようと思います
ありがとうございました

663 :デフォルトの名無しさん:2014/06/08(日) 18:29:19.13 ID:xd0WpNv5.net
>>659
シェーダを理解していれば2Dやるのに行列が必要なんて思わないんだけどね。
必要なパラメータを渡して頂点シェーダ側で計算すればいいだけなんだから。
2Dをやるのにいちいち行列なんて渡していたら、
不必要なデータが発生する上に柔軟性が失われるだけ。

664 :デフォルトの名無しさん:2014/06/08(日) 18:56:39.08 ID:JQupJLB1.net
>>663
おまえが真性の低脳なのはよくわかった

665 :デフォルトの名無しさん:2014/06/08(日) 19:13:47.24 ID:T2kLI3EL.net
DirectX12ではシェーダステージ全廃されて
パイプラインを自前で好きなように組めると風の噂で聞いたんですが本当ですか?
だとしたら凄くワクワクするんですが

666 :デフォルトの名無しさん:2014/06/08(日) 19:35:25.02 ID:Qkz9xepd.net
>>660
廃止されるのはD3DX(Direct3D 9)だろう?

667 :デフォルトの名無しさん:2014/06/08(日) 19:47:05.35 ID:Qkz9xepd.net
誤読した、すまん。

668 :デフォルトの名無しさん:2014/06/08(日) 19:48:49.86 ID:A9EXtXDT.net
これから2Dゲームを作ろうとしている者ですが、
APIを何にしようか悩んでいます。
>>660では、SpriteはDirectXTKとのことですが、
Direct2Dはどうなのでしょうか。

669 :デフォルトの名無しさん:2014/06/08(日) 21:08:40.14 ID:xd0WpNv5.net
>>664
テキスト通りの知識で3Dを学んで、それをそのまま何も考えずに2Dに適用しようとするから、行列って発想になるんだよ。
で、自分が無知なのに気がつかずに、初心者相手に「行列理解してれば」とか、
頭の悪い発言になっちゃんだよ。
行列を使うのが当たり前で、行列のせいで計算量が無駄に増えるだけなんて発想、全く持ってなかっただろう?
結局、中身の理解が出来ていないから、本当に必要なところに必要なものを持ってくることが出来ないんだよ。

670 :デフォルトの名無しさん:2014/06/08(日) 21:21:36.65 ID:xnXzh5OH.net
GPU側の計算量なんて無視できるが何か

671 :デフォルトの名無しさん:2014/06/08(日) 21:28:35.09 ID:9xUON02C.net
中身の理解ができていないから行列のせいで計算量が無駄に増えるだけって発想を持つのでは

672 :デフォルトの名無しさん:2014/06/08(日) 21:34:48.61 ID:W+1wAVIS.net
>>668
Direct2Dはゲームに使うようなもんじゃない

673 :デフォルトの名無しさん:2014/06/08(日) 22:29:47.53 ID:xd0WpNv5.net
>>671
3Dデバイスのせいで思考停止になっているようだけど、
例えばGPUは無関係に4頂点の回転をするとして、
いちいち回転行列を出してから計算するか考えてみるといい。
相当な馬鹿で無ければ、そんな無駄なことしないだろ。

674 :デフォルトの名無しさん:2014/06/08(日) 22:32:49.38 ID:14DSih8c.net
いやまぁ、なんだ。俺の書き方が癇に障ったんなら謝るよ
すまんな。別に馬鹿にしたわけじゃないんだ
ただ、どうやんの?って聞かれたら教えようと思っただけだ

あとGPUは行列とかの計算に特化してるからな

675 :デフォルトの名無しさん:2014/06/08(日) 22:48:36.52 ID:9xUON02C.net
なぜGPUを無視して考えようとするのかわからないんだが
3Dデバイスのせいで思考停止している相当な馬鹿でなければそんな無駄なことしないのでは

676 :デフォルトの名無しさん:2014/06/08(日) 22:49:22.86 ID:14DSih8c.net
>>673
ん、回転させるのに回転行列とかクォータニオン使わないなら、何で計算してるんだ?
サインコサイン使ってんの?

677 :デフォルトの名無しさん:2014/06/08(日) 22:58:54.94 ID:xd0WpNv5.net
>>676
三角関数は回転行列だろうがクオータニオンだろうが必要なんだけど、
いったい何を言っているんだ?

こういうレベルの人間が混じっているから、なんでもすぐ行列というのが不味いんだよ。

678 :デフォルトの名無しさん:2014/06/08(日) 23:09:07.92 ID:xd0WpNv5.net
行列をどうしても使いたいのならそれでもいいけど、
意味も分からず2Dの計算に無駄に4*4行列を渡しているコードとか、
少しは自分でおかしいかどうか判断しろと言いたい。

679 :デフォルトの名無しさん:2014/06/09(月) 03:07:46.82 ID:u4DxknMf.net
オレは行列を使わない方がありえんな

680 :デフォルトの名無しさん:2014/06/09(月) 04:23:39.59 ID:ZUk8BoLs.net
頂点データが極座標だとすればあるいは

681 :デフォルトの名無しさん:2014/06/09(月) 08:03:38.49 ID:oaydb6nj.net
>>676
>クォータニオン
いい教科書ないですか、ハミルトンの伝記もついているとうれしい

682 :デフォルトの名無しさん:2014/06/09(月) 09:24:32.06 ID:WQD38f8Z.net
俺頭悪いんでいきなりC++でDirectXとか無理なんだけど
そんなやつがDirectXなれるにはなにがいいかな

683 :デフォルトの名無しさん:2014/06/09(月) 10:12:27.69 ID:Go/OY78J0
>>682
SharpDXがいいよ
C++のDirectXをほぼそのまま移植しただけだからSharpDXに行くのもDirectXに帰るのも簡単
C#ということでVisualStudioの補完もきくし
ただメモリ管理が疎かになるのが注意ね

684 :デフォルトの名無しさん:2014/06/09(月) 10:54:58.69 ID:Bz4UVE6r.net
いきなりは高確率で挫折するからC をざっくり理解してからDXライブラリなりでゲームプログラミング自体に慣れた方がいい

685 :デフォルトの名無しさん:2014/06/09(月) 17:58:34.58 ID:zFo/cDF8.net
平行移動の行列と投影用の行列の計2個突っ込んで任せるのだと、気にするほど効率悪いか?

686 :デフォルトの名無しさん:2014/06/09(月) 18:17:03.66 ID:AvUMni/D.net
そうだね。2Dやるときに頂点シェーダが動く回数とピクセルシェーダのそれを考えると
行列を使うかどうかでパフォーマンスが大きく変わるケースは多くないと思う。ゼロとは言わんが。

687 :デフォルトの名無しさん:2014/06/09(月) 19:27:28.59 ID:q+E/nugM.net
計算が少々冗長でも問題ない。
ほとんどの場合、テクスチャなどのメモリアクセスで律速される。
ショボい内蔵GPUならなおさらだ。
ちゃんと計測した上でならいいが、そうでもないなら素直に行列使っとくほうがいい。

688 :デフォルトの名無しさん:2014/06/10(火) 01:36:55.38 ID:g5bh3hHp.net
最近本買って流し読みしてるけどちょっとさすがに難しすぎない?こんなのみんなどうやって習得したの...??

689 :デフォルトの名無しさん:2014/06/10(火) 01:41:11.60 ID:AlsGb3K8.net
パッと見てそう思ったなら浅はかすぎだろう
とにかく沢山コード書いて、ちょっとずつ覚えていくもんなんだよ

690 :デフォルトの名無しさん:2014/06/10(火) 05:12:19.45 ID:l3mk+UpB.net
決して難しいのではない
複雑なだけだ

691 :デフォルトの名無しさん:2014/06/10(火) 05:57:59.03 ID:LgC8TgHi.net
入門向けサイトもいっぱいあるからな
あの説明じゃわからなかったけどこの説明なら分かる!ってのもあるからとにかく数見るのも手

692 :デフォルトの名無しさん:2014/06/10(火) 09:51:05.05 ID:/BPYyfKW.net
本なら「15歳からはじめるDirectX 9 」でだいたいの事が分かった

693 :デフォルトの名無しさん:2014/06/10(火) 19:56:07.13 ID:Kjm/AmsM.net
>>688
たしかに何の予備知識もなく読めば面食らうだろう。
とにかく広範な知識が求められるので、手探りながらも一通りやって、
徐々に細部の理解を深めていくというスタンスでもよかろう。

694 :デフォルトの名無しさん:2014/06/10(火) 20:07:56.39 ID:61SU9kd8.net
覚えるのにも時間が必要だが、覚えた後もゲームを作るのは一朝一夕では出来ない
結局は長い目でやっていくしかないよ
いかにモチベーションを維持するかだから焦っても仕方ない

695 :デフォルトの名無しさん:2014/06/10(火) 22:19:45.97 ID:wZHt2a1z.net
dirextxをいじってみたくてVS2010express環境にDXSDK_Jun10を入れてみたのですが
directxのsamplesにあるプロジェクトを開こうとすると
「このバージョンのアプリケーションではサポートされないプロジェクトの種類(.vcxproj)です。」
となり開くことが出来ません
サンプルプロジェクトはVSの製品版じゃないと開けないのでしょうか?

696 :デフォルトの名無しさん:2014/06/10(火) 22:42:58.47 ID:n6nt8lTt.net
なぜ今更2010なのかは置いておくとして

2010のExpressは各言語ごとに別々になっている
インストールしたのがC++以外のものなのでは

697 :デフォルトの名無しさん:2014/06/19(木) 15:57:23.76 ID:MnDWZSiw.net
ストアアプリのDirectXってManagedなの?

698 :デフォルトの名無しさん:2014/06/19(木) 16:15:07.48 ID:4xoohYUJ.net
ネイティブ
C#等から使いたい場合SharpDX等を利用

699 :デフォルトの名無しさん:2014/06/19(木) 23:01:35.19 ID:DEKbTeq6.net
こんにちはー。DirectX初心者ですが、
まずサンプルコードが動かなくて困っています・・・。

/////////////////////////////以下環境///////////////////////////////

#include <WindowsXP>
#include <VC2008EE>
#include <DirectXSDKJune2008>

//コピペで使用したサンプルコード
http://k3tec.net/neko_wiki/index.php?DirectX%B9%D6%BA%C210%B2%F3
(
C系のインクルードディレクトリ Include指定済み,
リンカのライブラリディレクトリ x86指定済み,
画像ファイル ソリューションファイルと同じ場所にある
);

//グラボは普通に3Dゲーム等動く環境。

///////////////////////////////////////////////////////////////

以上の状態でデバッグ起動すると、ウィンドゥは正常に表示されますが
スプライトは出来ているがテクスチャが真っ白? 
のような状態になってしまいます。

このような結果の場合、どのような原因が考えられるでしょうか?
誰か助けてください・・・、丸一日死んだ・・・。
コードはサンプルコピペなので、環境の問題かと思うのですが・・・。

700 :デフォルトの名無しさん:2014/06/20(金) 00:52:44.95 ID:FvlWih/Q.net
>>699
サンプルは見てないが、画像ファイルへのパスが通ってないのでは?
カレントディレクトリが実行ファイルと同じと決めつけていないか?

701 :デフォルトの名無しさん:2014/06/20(金) 01:10:52.98 ID:dkRrjNPAq
>>699
VisualStudioならグラフィックスデバッグがかなり使えるぞ

702 :デフォルトの名無しさん:2014/06/20(金) 06:07:35.81 ID:GtLfnqy3.net
>スプライトは出来ているが
ってのがよくわからんけど
そこのzipそのまま解凍してビルドしたら普通に表示されてたぞ

703 :698:2014/06/20(金) 08:10:53.62 ID:Ma4Zhsm8.net
おおう、レスが来てる、ありがたやー。

>>699
「フルパスで指定してみる」
「いっそ実行ファイルから下のフォルダに全部つっこんでみる」
の二つを試みてみましたが、表示されず・・・。でもレスありがとう。

>>702
参考画像と同じ位置に白い四角は生成できてるので、
ポリゴン自体はできているのだと思うのです。
ただ、サンプルにある車の画像が表示されず、真っ白。

なので、「VCやらの環境でテクスチャが読み込めてない」か
「テクスチャは読み込めているがグラボやらの問題で表示が出来ない」
のどちらかだと思うのですが。

ビルドエラーは吐いてないので環境の問題なのでしょうか・・・?
ちなNVDIAでDirectXについてるテストツールでは3D表示正常。


ちょっとコード弄ってみたりしつつ、引き続きアドバイス待ちますー。

704 :デフォルトの名無しさん:2014/06/20(金) 08:17:29.25 ID:fPPfJ5gn.net
データが読めているかどうかなんて戻り値を確認すればいいだけだろう。
いったい何を言ってるんだ?

705 :698:2014/06/20(金) 08:37:44.58 ID:Ma4Zhsm8.net
うお、・・・誠に申し訳ない、フルパス入れ直したらいけました。
>>702さん正解です。>>702もありがとうー。

しかし下のフォルダ全部につっこんでるのに、
相対パスで表示されない意味はわからず。

まあ、もはやスレチなので色々試してみようと思います。
ありがとうございました! ・・・表示の環境依存じゃなくてよかった。

706 :698:2014/06/20(金) 09:03:13.23 ID:Ma4Zhsm8.net
>>704
うん、まあその、なんだ、正直アホなので、
どこをどう確認すればいいのかもわからなんだ。

このサンプルだとTextureのcartexにファイル名がはいるんだろうけど、
Textureって名前が汎用性高そうすぎて・・・。

まあ光明は見えてきたので、弄りながら覚えていってみるよ、ありがとうー。

707 :デフォルトの名無しさん:2014/06/20(金) 12:26:36.96 ID:jeg8+zum.net
デバッグ実行時のカレントディレクトリは
プロジェクトのプロパティで確認・設定できるぞ

708 :デフォルトの名無しさん:2014/06/20(金) 18:08:38.27 ID:wDTgOc3v.net
しかdxスレも伸びなくなってきたね
折れ5の出始めからだからもう15年近いよ
さすがに12を追う気にもならんし
dxはオワコンだな

709 :デフォルトの名無しさん:2014/06/20(金) 19:02:32.76 ID:pzjGDphu.net



d

710 :694:2014/06/20(金) 22:27:21.07 ID:4hFe3D1R.net
>>696
OSがXPなものでVS2010じゃないとインストールできなかったのです
ちなみにVC++2010 Expressが入ってます

色々やってみてダメだったので仕方なく過去のDirectX SDKを漁ってみました
2007novまで辿って試したところ2003の.vcprojであれば開けたので
それを読み込んでサンプルを色々参照してみることにしました
ちなみに2007novに入ってる2005.vcprojはやはり読み込み出来ませんでした

とりあえずサンプルを見たりいじれるようになったのでこれでやっていきます
お手数をおかけました、どうもありがとうございました

711 :デフォルトの名無しさん:2014/06/21(土) 10:05:51.14 ID:wX3ECV2n.net
directx11めんどくさすぎ
ポリゴン1つ出すまでに挫折しそうだわ

712 :デフォルトの名無しさん:2014/06/21(土) 10:42:50.65 ID:k3qwYJlT.net
まぁ、気持ちは分かる。
走り出すまでに数多の操作が必要な車みたいな問題。
でも、一度走り出したら速いし、小回りもよく効くから乗り越えるんだ。

713 :デフォルトの名無しさん:2014/06/21(土) 10:49:43.78 ID:2OQISpPs.net
かス



714 :デフォルトの名無しさん:2014/06/21(土) 19:28:50.94 ID:aUg341ff.net
これで面倒とか言ってたらプログラムの世界はつらいだけだ

Unityとか使ったほうがいい

715 :デフォルトの名無しさん:2014/06/21(土) 20:33:25.92 ID:F8oS7i3F.net
PictureBoxに描画するほうが楽だわ。

716 :デフォルトの名無しさん:2014/06/22(日) 06:25:00.16 ID:1JxOSEIV.net
今はUnityの資料多いし個人開発ならUnityが一番よさげ
Unityのみになっていくのはちょっとあれだけど

717 :デフォルトの名無しさん:2014/06/22(日) 10:37:43.52 ID:cj/sm+bXj
Unityが便利なのは認めるし、ゲームを作ることが最大の目的なら合理的なんだけど、
何かもの足りないんだよなぁ。
苦労して初めて3D表示してグリグリ動かせたり、衝突判定させたりアニメーションさせたりできたときの喜びは大きかったからね。

718 :デフォルトの名無しさん:2014/06/22(日) 13:24:53.59 ID:F4FTFoLl.net
うにてぃーなんぞ使わん

719 :デフォルトの名無しさん:2014/06/22(日) 13:57:18.30 ID:eAnL1X8F.net
ゲーム作るならある程度のめんどくささは受け入れなあかん

720 :デフォルトの名無しさん:2014/06/22(日) 14:07:35.33 ID:GwKr3Jwz.net
難しい方が俺すげー出来ていい

721 :デフォルトの名無しさん:2014/06/22(日) 14:21:28.27 ID:cj/sm+bXj
分かるw

722 :デフォルトの名無しさん:2014/06/29(日) 05:37:18.18 ID:L6H8VOVh.net
DirectXMesh geometry processing library
https://directxmesh.codeplex.com/

723 :デフォルトの名無しさん:2014/06/29(日) 14:32:21.72 ID:0/sduyfP.net
>>722
おお遂にxファイルやsdkmesh以来のMS謹製形式きたか!?
と思ったけど中身ざっと見た感じファイル形式どうこうじゃなさそうだね。

法線計算したりmesh関係の演算をすっきりさせるライブラリかな?
ファイル形式は独自形式でいいけど。

724 :デフォルトの名無しさん:2014/06/29(日) 14:34:41.60 ID:0/sduyfP.net
今気づいたけどDirectXTKってVistaもsupportedだったんだ。

725 :デフォルトの名無しさん:2014/06/29(日) 17:28:09.52 ID:ingZVccy.net
FBXのコンバート対応してくれたらうれしいなー

726 :デフォルトの名無しさん:2014/06/29(日) 17:41:54.46 ID:0/sduyfP.net
そのへんは色々厄介だから自分でやってちょんまげって書いてあった
DOCUMANTATIONのところ

727 :デフォルトの名無しさん:2014/07/01(火) 00:02:21.79 ID:Ur3jXhvp+
その方針は変わらずか。
アニメーションはけっこう便利だったんだけどなぁ。

728 :デフォルトの名無しさん:2014/07/10(木) 00:19:47.02 ID:eR5zwrsu.net
DirectX11のすっごい初歩的な質問なんだけど、一つのメッシュを複数のエフェクトで描画するとしたら、
それぞれのエフェクトごとに入力レイアウトを用意しないとダメなのかな?
例えば10種類のメッシュをそれぞれ5つのエフェクトで描画するとしたら、50種類の入力レイアウト用意しないとダメ?

729 :デフォルトの名無しさん:2014/07/10(木) 01:50:51.39 ID:/5JAOD2j.net
メッシュごとでなくエフェクトごとに作るから5個で十分
さらに頂点構造体とセマンティクスが同じなら、同じ入力アセンブラを使いまわせる

730 :デフォルトの名無しさん:2014/07/10(木) 23:08:04.32 ID:wsiOyS9d.net
>>729
d
DirectXTKのModelクラスでModelMeshPartごとにInputLayout保持してるんで、大量に用意しないとダメなのかなーと。

731 :デフォルトの名無しさん:2014/07/13(日) 19:23:53.60 ID:S46q9wPU0
DirectX9でフルスクリーン時にアスペクト比固定する方法知ってる人いますか?

16:9とかの横長のディスプレイでも左右に黒い帯出して4:3になるようにしたいんだけど、
全くやり方がわかりません……。

ディスプレイの設定を変えるとかじゃなくてプログラム側でやりたいです。

732 :デフォルトの名無しさん:2014/07/13(日) 20:33:53.70 ID:LBAuNXlKF
>>731
フルスクリーン切り替え時にディスプレイのアスペクト比を取得してビューポートを調整するのはどう?

733 :デフォルトの名無しさん:2014/07/14(月) 14:17:50.81 ID:YpP2gKKx6
>>732
レスありがとうございます。

http://maverickproj.web.fc2.com/pgMemo.html
ここの10番のようなことを試しましたが、SetViewportで描画領域を変更することはできましたが、肝心のアスペクト比がそのまま変わらず、
結果的には今までの横長画面の一部が黒くなるだけという状況になってしまいました。

何かさらに情報があればよろしくお願いします。

734 :デフォルトの名無しさん:2014/07/14(月) 21:20:30.55 ID:jBLe8I4vX
>>733
ああ、そうだそうだ、そのサイトに書かれているように、射影行列のアスペクト比もうまく設定しないといけないよ。
>>731のようなことをやりたいのであれば、射影行列のアス比は4:3、
ビューポートはディスプレイ解像度(プログラム内から取得できる)をW×Hとして、

VP.Width = H * 4 / 3;
VP.Height = H;
VP.X = ( W - VP.Width ) / 2;
VP.Y = 0;

でいけるはず。

735 :デフォルトの名無しさん:2014/07/14(月) 21:24:15.90 ID:jBLe8I4vX
ああ、あと、今は少ないと思うけど、5:4のディスプレイもあって、その場合は
上のビューポートは変わるからね。
(float)W/Hと4.0f/3.0fを比較して条件分岐するよろし。

736 :デフォルトの名無しさん:2014/07/15(火) 10:16:52.37 ID:4Hk/aMI9.net
DirectX9なんだけど、レンダーターゲットの大きさって制限あるの?マルチレンダーターゲットとかじゃなくて。
具体的には、
バックバッファに完全に収まるようなサイズのレンダーターゲットAと、収まらないサイズのレンダーターゲットBの2枚をつくる
Aにはちゃんと描画できて、テクスチャとして使って描画したときも問題ない。ところがBは作成時にも描画時にもなんのエラーも出さないにもかかわらず、レンダーターゲットには描画で傷、
テクスチャとして使って描画しても真っ黒なテクスチャが適用されてしまう
Device::Reset でバックバッファを大きめに再生成すると、AもBも正常病がされる。バックバッファを小さめにリサイズしてみると、AもBも描画されない。でも各種関数の戻り値は常にS_OK
この現象、いまのところ NVIDIAの4年ぐらい前のカードでだけ起こる現象なんだけど、心当たりある?

737 :デフォルトの名無しさん:2014/07/15(火) 14:56:47.49 ID:3oS5nfKd.net
バックバッファより大きいテクスチャが作れないという時代はあったけど
それは4年どころか15年くらい前だな。

大きすぎる問題じゃなくて、2の累乗のサイズじゃないとかじゃないの?
D3DPTEXTURECAPS_NONPOW2CONDITIONALの制限は4年くらい前なら
あったかもしれない。

738 :デフォルトの名無しさん:2014/07/15(火) 21:27:55.63 ID:4Hk/aMI9.net
ttp://www.kludx.com/capability.php?capability=147
テクスチャサイズの2^n縛りって、DirectX9あたりだと凄く多かったんだね。

739 :デフォルトの名無しさん:2014/07/15(火) 21:52:05.06 ID:7wv3aoJCc
>>738
ほほう。

740 :デフォルトの名無しさん:2014/07/15(火) 22:20:45.02 ID:opMmDOa9.net
モバイル系のGPUも今はまだ大体POT縛りあるな。
NONPOTサポートしててもパフォーマンス悪かったりするからまだ使わない方が無難。

741 :デフォルトの名無しさん:2014/07/15(火) 22:25:57.37 ID:4Hk/aMI9.net
というかよく考えたら、レンダーターゲットテクスチャにはn^2縛りなんてないよね?もともと。

742 :デフォルトの名無しさん:2014/07/15(火) 22:33:26.70 ID:opMmDOa9.net
>>741
スレチだけどOpenGLESではあるよ。
だから多分DirectXでもあると思う。ハードウェアの縛りだし。

743 :デフォルトの名無しさん:2014/07/15(火) 23:14:48.99 ID:4Hk/aMI9.net
マジか
普通のテクスチャは必ずn^2でつくるようにしてたからCapsはチェックしてなかったし、逆にレンダーターゲットテクスチャはサイズ気にしないでつくってたわ。
ひょっとしたらサイズ縛りがある状態で不正なサイズのレンダーターゲット作ろうとしても IDirect3DDevice9::CreateTexture は成功しちゃうもんなのかなあ。。。?
とりあえずD3DPTEXTURECAPS_POW2とD3DPTEXTURECAPS_NONPOW2CONDITIONALの値は調べてみることにする。

744 :デフォルトの名無しさん:2014/07/15(火) 23:53:03.50 ID:4Hk/aMI9.net
手元のWin8で試してみたら、バックバッファよりを超える大きさのレンダーターゲットは普通に作れて、別に真っ黒な描画になったりはしなかったものの、
バックバッファのサイズを超える部分には一切描画されていなかった。レンダーターゲットに描画する時に、バックバッファの大きさで自動的にクリッピングされている感じ。

ゆえに、利用する最大のレンダーターゲットのサイズか、ゲームで必要な解像度か、どちらか大きな方にあわせてバックバッファを作った方がよさそうだな。
ウィンドウに描画するときはバックバッファのうちウィンドウサイズに一致する部分だけ指定して転送すれば良いんだし。
…という結論に達した

745 :デフォルトの名無しさん:2014/07/16(水) 02:53:41.99 ID:074ZUeHaI
>>734
このサイトのプログラムと、助言を得てその通りに試しましたが、ダメでした。

ビューポートのほうはなんとなくやってることがわかった(描画領域が変わっていることがプログラムを弄っていてわかった)のですが、
アスペクト比だけが今まで一度も4:3になったことがなく、ずっと横長のままです。

D3DXMatrixPerspectiveFovLHの第三引数を4/3にしたりと色々試しましたが変わりません。

何かありましたら情報よろしくお願いします。

746 :デフォルトの名無しさん:2014/07/16(水) 02:50:08.80 ID:Umzqi2oG.net
ビューポートがバックバッファのサイズのままとかいうオチじゃないだろかソレ

747 :デフォルトの名無しさん:2014/07/16(水) 02:50:28.29 ID:vjZ1YrOP.net
バックバッファサイズ以上のレンダーターゲットが機能しないとか初耳なんだけど
ビューポート設定の問題ではない?
そんなに古くないNVIDIAのカードで起こるなら対処したいのでどのカードか教えてくれるとありがたい

748 :デフォルトの名無しさん:2014/07/16(水) 03:29:21.20 ID:kLmjvMae.net
レンダーターゲットと デプスステンシルのサイズとかAAが違うと無視するドライバとかエラー起こすドライバとかわかれてたりする?

749 :デフォルトの名無しさん:2014/07/16(水) 07:59:59.54 ID:d5hW3x90.net
そういえば、バックバッファよりも大きなViewportを設定した状態で IDirect3DDevice9::SetRenderTarget すると、
レンダーターゲットの大きさに合わせてViewportが勝手に変化するって仕様があるよね。>>744で試した時に起こった現象はそれかも。すまん。
でも>>736での真っ黒になるとかって現象とは別の気がするんだよなあ。
ちなみに>>736の現象がおきたのは NVIDIA GeForce GTX 570 ね

750 :デフォルトの名無しさん:2014/07/16(水) 08:01:54.81 ID:d5hW3x90.net
訂正。「バックバッファよりも大きなViewportを設定した状態で IDirect3DDevice9::SetRenderTarget すると」ではなく、
「最初に設定していたViewport よりも小さなレンダーターゲットテクスチャを SetRenderTargetすると」ね

751 :デフォルトの名無しさん:2014/07/16(水) 21:35:23.83 ID:XtfypiwjT
>>745
D3DXMatrixPerspectiveFovLHの第三引数は4/3で合ってるよ。
念のため聞くけど、4.0f / 3.0f あるいは(float)4/3ってな感じで小数点数になるように与えてるよね?

752 :デフォルトの名無しさん:2014/07/17(木) 04:21:13.88 ID:oDU8RPQX0
>>751
はい、そんな感じにしてます。

どうやらまだ知識が足りないようなので、一旦このままゲームを完成させて、次の機会にもっとじっくり見てみようと思います。
助言ありがとうございました。

753 :デフォルトの名無しさん:2014/07/18(金) 13:59:02.69 ID:7sN53WRo.net
これはXNAだけど、Direct3D と同じとみていいんじゃないかと思うけど
http://msdn.microsoft.com/ja-jp/library/ff604997(v=xnagamestudio.40).aspx


> レンダリング ターゲットを作成するときには、幅と高さの選択についても考慮します。
> たとえば、ゲーム ウィンドウのサイズに合わせてバック バッファーの幅と高さを選択する必要があります
> (ただし Windows Phone と Xbox360 では、最終的な結果はユーザーの画面に合わせてサイズが変更されます)。
> これにより、バック バッファーが画面にコピーされるときにサイズ変更が不要になっています。
> ただし、オフスクリーン レンダリング ターゲットは、バック バッファーと同じ幅と高さである必要はありません。

と明確に書いてあるな。

754 :デフォルトの名無しさん:2014/07/23(水) 22:59:59.04 ID:cx7MeMim.net
DxLibでいくつか2Dゲームを作ってきたんだが、そろそろ卒業してDirectXを始めようと思ってる
とりあえず2Dだけ扱えてDxLib同等のことができることが目標なんだが、
このスレ的にお勧めの参考書はどれだろうか。
あと、今は生でDirectX触るんじゃなく、何かしらのラッパーライブラリを使うのが普通なんだろうか?

755 :デフォルトの名無しさん:2014/07/23(水) 23:51:57.90 ID:l6A0aEh1.net
>>754
2Dなら乗り換えるメリットは少ないよ
ライブラリはCodePlexで提供されているDXUTかDirectXTKでいいと思うけど

756 :デフォルトの名無しさん:2014/07/24(木) 00:04:36.89 ID:SzCSi9rr.net
>>754
最近はUnityとかゲームエンジン使うのが流行りだけど、
ゲームだと生で使ってる方がまだ多いんじゃないかなぁ

757 :デフォルトの名無しさん:2014/07/24(木) 00:36:43.79 ID:N6ucGWbz.net
DXUTとかDirectXTKはもうサポート打ち切られて過去のものになったんじゃなかったっけ

758 :デフォルトの名無しさん:2014/07/24(木) 00:56:56.67 ID:BKPzqxWN.net
同人でやってるんだが、ある程度実績が出てきたので、
まずはただの2Dエロゲでいいから、いずれ商業でやりたいよな という話が出てきてな…
実際にやるかどうかは別として、仮に商業作品を作るならDxLibはダメだろう、という判断です
>>755 >>756
DirectXでは、今のところ特に主流になっているライブラリは無いので
まずは基本的なテキストから読み始めれば良い、ということですね
>>757
と思ったら、まずはライブラリを調べたほうが良さそうか

DirectXの入門サイトをさくっと見てみましたが、基本的なところはDxLibからやる方法と
だいたい同じだな、という印象でした
とはいえ実際にDirectXで何かを作るとなると、結果的にDxLibもどきのような
オレオレライブラリを作ることになるのでしょうか?
ゲーム作成のためのフレームワーク部分から作るとなると、ゲーム本体よりもよっぽど作成に時間がかかりそうですが、
2Dで済むようなゲームであれば、そこまでやらないものなのでしょうか?

759 :デフォルトの名無しさん:2014/07/24(木) 01:14:15.74 ID:YQItqAuA.net
現在C++/CLI上でDirectX11のプログラムを書いているのですが
XMMatrixTransposeの呼び出しでSystem.AccessViolationExceptionが発生してしまいます
それも必ず発生するのではなく実行する毎に発生したりしなかったりします
何かご助言を頂けないでしょうか

760 :デフォルトの名無しさん:2014/07/24(木) 01:26:10.83 ID:9PG9PKAB.net
>>757
CodePlexではDXUT11としてまだ開発続いてるけど?
https://dxut.codeplex.com

761 :デフォルトの名無しさん:2014/07/24(木) 03:33:13.15 ID:BB24B0yC.net
>>759
ぐぐったところ16byteアラインされて無い為だってさ
C#で作れば起きなくなるんじゃねえの?
C++でこれに真面目に対応するとクソみてえな
実装にする羽目になるよ

762 :デフォルトの名無しさん:2014/07/24(木) 03:43:25.24 ID:k8+CgiX6.net
__declspec(align(16)) XMMATRIX M;

763 :デフォルトの名無しさん:2014/07/24(木) 04:47:16.21 ID:YQItqAuA.net
>>762を記述するだけでは解決しませんでした
>>761を見て同様にググってヒットした海外フォーラムによるとSSE2とやらが問題あるように読めたので
/arch:AVXをセットしたところ何回か試した限りでは例外が発生しなくなりました

拡張命令がどういうものなのかも分からず問題もまた再発しそうな気もしますがとりあえず解決しました
ご意見ありがとうございました

764 :744:2014/07/24(木) 09:12:20.26 ID:I06JluIA.net
とりあえずDirectXは未経験だが2Dゲームが作れる程度にはなりたい、ということでテキストを探してるんだが
入門ゲームプログラミング (Professional Game Developerシリーズ)←テキストとして、これが良さそうかと思ったけどスレ的にはどうだろう?
DirectX11のものでないから、止めたほうがいいだろうか?
あと、上で挙げられてるDXUTやDirectXTKを使うテキストは無いのだろうか?
(やるなら開発が続いているDXUT?)

765 :デフォルトの名無しさん:2014/07/24(木) 09:36:22.82 ID:SzCSi9rr.net
>>764
長く続けるならどうせ後で作り直すことになるんだから、
将来性とかガン無視で選んでいいと思うよ

766 :デフォルトの名無しさん:2014/07/24(木) 11:25:33.05 ID:EOUySC/b.net
DirectXTKってもうサポート打ち切られてるの!?

767 :デフォルトの名無しさん:2014/07/24(木) 15:12:01.57 ID:UHRmHuoj.net
>>766
馬鹿は氏ねよ

768 :デフォルトの名無しさん:2014/07/24(木) 16:32:24.60 ID:QpOp4BZU.net
>>766
文脈から考えりゃD3DXと勘違いしてるだけでしょ
今でもwalbournさんが地道に更新し続けてるよ…

ちゅーかそもそもDirectXTKのサポート切れってなんだ

769 :デフォルトの名無しさん:2014/07/24(木) 16:42:03.48 ID:1LDDLF7N.net
C#でDirectXしたい!

770 :デフォルトの名無しさん:2014/07/24(木) 17:33:02.27 ID:33UO2C0U.net
>>769
SharpDXなりSlimDXなり自分でラッパーライブラリ作るなりどうぞ

771 :デフォルトの名無しさん:2014/07/24(木) 19:47:05.69 ID:R11duizh.net
>>768
何だD3DXのことか。びっくりした。
また「DirectXTKはもう更新しないから次のライブラリをお楽しみに!」みたいな状態になったのかと焦った。

772 :デフォルトの名無しさん:2014/07/24(木) 22:02:27.69 ID:1YpBpC/9.net
DirectXに全く触れたことがないが、DirectXTKなんかは
作成をどこまで手伝ってくれるものなんだろうか?
例えばDxLibならDirectXの知識が全くなくても物が作れるが、
DirectXTKの場合はDirectXの基礎的な知識があることが前提なんだろうか?

773 :デフォルトの名無しさん:2014/07/24(木) 22:58:35.14 ID:Fts4tkhb.net
もちろんDirectXの知識は必須
知識なしに手軽に的なものを期待するのならDxLibや
C++から外れるけどUnityとかの方がいい

774 :デフォルトの名無しさん:2014/07/24(木) 23:15:48.78 ID:DdCDCU8sF
その通り、ヘルパーライブラリはUnityで得られる利便性とはまったく異なる。

775 :デフォルトの名無しさん:2014/07/24(木) 23:15:26.29 ID:9PG9PKAB.net
DirectXTKはXNAを意識して作ってあるっぽい?

776 :デフォルトの名無しさん:2014/07/24(木) 23:33:13.17 ID:DdCDCU8sF
XNA意識してる。
スプライトなんか見てるとよく分かる。

777 :デフォルトの名無しさん:2014/07/25(金) 00:37:49.67 ID:jmbBFkgn.net
XNAっぽい事をC++で、ってコンセプトじゃなかったかな…
自分はテクスチャの読み込みのやつしか使ってないけど。

778 :デフォルトの名無しさん:2014/07/25(金) 01:09:14.68 ID:mIbzJgIi.net
WICTextureloaderは俺も使ってる。
DDSのほうも素材が用意できたらむしろこっちを使いたいんだけど。
あと使うのはSpriteBatch。

779 :デフォルトの名無しさん:2014/07/25(金) 07:29:20.92 ID:A6892mCG9
Spriteや文字表示はとても便利。

780 :デフォルトの名無しさん:2014/07/26(土) 11:27:04.14 ID:M7+I22qZ.net
DirectXTKのdds読み込み関数、古いバージョンのddsファイルで時々読めない事なかったっけ?

781 :デフォルトの名無しさん:2014/08/10(日) 12:44:14.56 ID:9tyyzNL4.net
XファイルのスキンメッシュでMeshの分割ってどういう基準でされてるの?
3Dモデルのパーツ単位とは違うと思うけど。

782 :デフォルトの名無しさん:2014/08/10(日) 15:25:10.82 ID:uO2H9CKP.net
>>781
スキンメッシュを理解してないのがもろ分かりだぞ
馬鹿はググるなりして勉強してから出直して…くるな

783 :デフォルトの名無しさん:2014/08/10(日) 17:25:32.68 ID:EuaRisUO.net
家でDirectXの参考書を読むより、
本屋で立ち読みする方が頭に入るんだけどなんでだろ・・・

784 :デフォルトの名無しさん:2014/08/11(月) 01:32:07.54 ID:Dc6DfrDR.net
今はDirectXTKとかいうので作るのが普通なの?
DirectXのSDKを直接たたいて作ったりはしないもんなの?

785 :デフォルトの名無しさん:2014/08/11(月) 03:35:20.14 ID:rvV7HXPE.net
>>783
あるある

786 :デフォルトの名無しさん:2014/08/11(月) 06:03:44.44 ID:zPWqpXYM.net
俺はC++でDirectX11を直接叩いてる
他の人間がどうしてるかは知らないし気にしたこともない

787 :デフォルトの名無しさん:2014/08/11(月) 09:18:21.18 ID:F8Vfbo9Uz
DirectXTKが使えるところは使ってるな。
スプライトとかたいへん便利だ。
コードもスッキリするしね。

かといってUnityを使うほど楽したいとは思わない。
ある程度はスクラッチで書くのが楽しいんだよな。

788 :デフォルトの名無しさん:2014/08/13(水) 19:16:34.30 ID:O6FDpoLd.net
あの、あまりにも初歩的過ぎて聞くのも気がひけるんだけどさ、何時間か調べてもさっぱり解決しないんだ。

DirectX9を触ってるんだけど、ビュー変換行列をD3DXMatrixLookAtLH関数で取得してる。
この第二引数(カメラ位置を指定してるやつ)に&D3DXVECTOR3(0, 10, -25)ってすると、原点に底面を接するように置いてある円柱オブジェクトの底面が見える。
&D3DXVECTOR3(0, -10, -25)にすると上面が見える。
DirectXは上がY軸のプラス方向のはずだから、前者はカメラを上に移動させ、後者はカメラを下に移動させるはずだよね?
なのに、なんで逆に動いたような挙動をするんだろうか。
この関数の第四引数(上方向を定義してるやつ)には&D3DXVECTOR3(0, 1, 0)を指定してる。
円柱はBlenderで作成し、左手系座標・上方向をYに指定してエキスポートしてる。
私が何を勘違いしてるのか教えてほしい。

789 :デフォルトの名無しさん:2014/08/14(木) 00:05:46.23 ID:lWeaChAv.net
シェーダと行(列)優先が合ってないとかかな?

790 :デフォルトの名無しさん:2014/08/14(木) 00:23:14.56 ID:a5s57Q02.net
射影行列が上下逆になってるとか?

791 :770:2014/08/14(木) 12:29:57.72 ID:xwoxC0+I.net
>>789-772

シェーダがなんなのかよく分かってないのと射影行列の上下というのも分からなかったので、地道に実験を続けてみた。

おかしいなーと思う部分は他にもいろいろあったものの、結局のところ
Blenderでエキスポートする際に、上方向にY軸を指定し、右手系座標を指定したところ、いくつかまとめて解決してくれた。
もしかしたらと思ったのは、Blender上でViewを回転させてY軸を上、X軸を右にあわせると、Z軸が手前になる。
「上方向をY軸にする」設定って、こういう形にしてくれるっていうことなのかなとおもった。
このままだとDirectXとはZ軸の向きが逆だから、右手系座標を指定するとZ軸の向きを反転させてくれるとか。
BlenderはY軸が奥向きだけど、右手系座標のZ軸は手前向きだし。
とはいえ、こんな不思議な仕組みなら、誰かが気になって調べた記事が検索に引っかかりそうなものだし・・・。全然見当違いな気もする。

とりあえず疲れたので、もうちょっとましな原因が分かったらまた報告します。

792 :デフォルトの名無しさん:2014/08/19(火) 06:03:27.00 ID:HnpRfGjq.net
もう少し詳細が欲しい

http://blogs.msdn.com/b/directx/archive/2014/08/13/directx-12-high-performance-and-high-power-savings.aspx

793 :デフォルトの名無しさん:2014/08/19(火) 19:08:32.34 ID:WM857LTb.net
DirectX12のパフォーマンス向上に関する記事とかはちょくちょく見るんだけど
APIというかプログラミングモデルというか、そういうのに言及されてる記事って無いですか?
シェーダの区分が無くなって、よりGPU寄りの低レベル操作ができるようになる、ってぐらいしか分かってないので
もうちょっと知っておきたいなと思って・・・

794 :デフォルトの名無しさん:2014/08/19(火) 19:36:39.09 ID:kG/pPDDM.net
まだ焦る段階じゃない

・・・って言ってみたかったんだ!

795 :デフォルトの名無しさん:2014/08/29(金) 02:22:44.67 ID:5b1Q5/CH.net
http://www.shader.jp/?p=1312
キター

シェーダの区分が無くなると言うよりは、全体が一つのステートの単位になるっぽい
一部分だけの変更にはClassLinkage(だっけ?)で対応してくれってことかな

796 :デフォルトの名無しさん:2014/08/29(金) 23:43:19.55 ID:e7IhPR5N.net
ドライバーなど再インストールしても
グラボのDirextDrawアクセラレータ、Direct3Dアクセラレータ、AGPテクスチャアクセラレータが「利用できません」ってなってる
オンボードは使用可能になってるのに

797 :デフォルトの名無しさん:2014/09/06(土) 12:09:35.98 ID:20e2eB+A.net
初心者丸出しでお恥ずかしいのですが、質問を。

MatrixのLookAtLHで、カメラの位置・カメラの見るポイント・カメラの上がどっち向いてるか、
の3点を与えるというところです。
カメラの上、というのが大抵のサイトなどでは(0,1,0)を入れておけばいいよ、で終わっています。
でも、実際に(0,1,0)にしておくと、上から見下ろす場合などで描画できませんし、
傾けた状態で見下ろすと期待と異なる結果になってしまいます。

このカメラの上ってヤツを算出するのに参考になる書籍・サイト等はありませんか?

798 :デフォルトの名無しさん:2014/09/06(土) 13:50:20.95 ID:UaIF+z7q.net
>>797
数学の勉強しろ

799 :デフォルトの名無しさん:2014/09/06(土) 15:00:34.60 ID:4S46Uu0i.net
http://marupeke296.com/DXG_No56_CameraBaseTrans.html
こことか参考になるかな

傾けた状態で見下ろす、ってのは、首をひねるみたいにカメラを横に傾けるイメージ?
だとしたら、上方向ベクトルを視線ベクトルを軸にして回転させる必要がある
MatrixRotationAxisとかその辺を使ってカメラを回せると思う

800 :デフォルトの名無しさん:2014/09/06(土) 23:07:58.77 ID:NyDeAvl5.net
これで十分だろう。

// cvector3_t camera_to_target; // 視線(正規化済)
cvector3_t up;
cvector3_t v = abs(camera_to_target);
float_t m = max(v);
if( m == v.x )
{
if( camera_to_target.x >= 0){ up = 視線が+x時の上ベクトル; }
else{ up = 視線が-x時の上ベクトル; }
}
else if( m == v.y )
{
if( camera_to_target.y >= 0){ up = 視線が+y時の上ベクトル; }
else{ up = 視線が-y時の上ベクトル; }
}
else
{
if( camera_to_target.z >= 0){ up = 視線が+z時の上ベクトル; }
else{ up = 視線が-z時の上ベクトル; }
}
up = cross(camera_to_target,cross(up,camera_to_target));

801 :デフォルトの名無しさん:2014/09/07(日) 00:21:31.52 ID:vXM6o9cR.net
>>800
内容は正しいが、コードがイマイチ
60点

802 :デフォルトの名無しさん:2014/09/07(日) 00:34:59.07 ID:eq6Jizsh.net
>>798>>801
もう少し情報量の多い書き込みをしてくれ

803 :779:2014/09/07(日) 03:41:21.39 ID:OJ0NVSOq.net
御礼が遅くなりました。

>>799
そこも見てはいたのですが、上向きベクトルを加工していないコードばかりで、
参考からは除外していました。

>>800
コードまでありがとうございます。
数学の勉強も含めて参考にしてみます。

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

804 :デフォルトの名無しさん:2014/09/07(日) 22:41:19.39 ID:+85s1gqZ.net
https://directxtk.codeplex.com/wikipage?title=GamePad

こんなの追加されてたのか

805 :デフォルトの名無しさん:2014/09/12(金) 15:44:43.53 ID:s+QUZ/hb.net
>>736で、バックバッファ以上の大きさのレンダーターゲットが機能しない問題にあっていたものです。
原因がわかりました。
D3DPRESENT_PARAMETERS の EnableAutoDepthStencil に TRUE を指定してデバイスを作成し、
SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE); で深度バッファを使わない設定にしてから、
バックバッファよりも大きなレンダーターゲットを作成し、
それを SetRenderTarget で設定していたのですが、その時に深度バッファを設定していませんでした。

そもそもZバッファは全く使っていなかったので、EnableAutoDepthStencil = FALSE でデバイスを作成したら問題が解決しました。

D3DRS_ZENABLE を FALSE にしてあったので深度バッファはあってもなくても無関係だと思い込んでいました。
たとえ使わない設定にしてあってもレンダーターゲットのサイズに合わせた深度バッファを設定しないといけないようですね。

※この現象は GeForce 7600GS で発生しました。


動作検証用に使ったコードを載せておきます
http://codepad.org/stFEdHmS

806 :787:2014/09/12(金) 15:46:51.17 ID:s+QUZ/hb.net
なので >>748 の考えが正しかったということですね。ありがとうございました

807 :デフォルトの名無しさん:2014/09/16(火) 15:59:22.42 ID:J/7ZfBpm.net
教えていただきたいです。
windows7でガンダムオンラインをやろうと思いDirectX 9.0をインストールしているのですが、
同じエラーが出ていつも停止してしまいます。
エラーの内容は、

Error creating prosess
<C:\Users\1\AppData\Local\Temp\IXP001.TMP|dxwsetup.exe>
Reason:指定されたファイルが見つかりません。

という表示が出てきます。
Windowsのアップデートは今朝やったので、最新のものだと思います。
どなたかわかる方いらっしゃいませんか?

808 :デフォルトの名無しさん:2014/09/16(火) 16:36:09.97 ID:3j+nE/Ry.net
糞ゲーなんてやめて君もDirectxいじろうぜ

809 :デフォルトの名無しさん:2014/09/16(火) 16:53:51.82 ID:OLoiq/Xq.net
>>807
そういうのはサポートに聞け
馬鹿が

810 :デフォルトの名無しさん:2014/09/16(火) 17:12:17.97 ID:CN8cyWpt.net
DirectXで使える、モデル描画ライブラリって今は何がいいんだろう。
スキンメッシュがまだサポートされてないみたいだけど、DirectXTKのModelクラス?

811 :デフォルトの名無しさん:2014/09/16(火) 18:12:29.91 ID:q/MSigzs.net
自分で組んだいいと思うがな
そんな労力がないってんならUnity使えって

812 :デフォルトの名無しさん:2014/09/16(火) 18:13:01.75 ID:q/MSigzs.net
組んだ方が・・・

813 :デフォルトの名無しさん:2014/09/16(火) 21:11:25.07 ID:MM+YdT1Gz
Xファイルのアニメーションサポート、便利だったのにね。
そんなに拡張性とか求めない(求めるなら自作する)から、簡易なアニメーションありフォーマットを
サポートしてもイイんじゃないかと思うんだけどね。
DirectX9時代ほどホビーユーザーに訴求しないとしても。

814 :デフォルトの名無しさん:2014/09/16(火) 22:05:24.80 ID:tRECZzPW.net
自前の方がいいって事は、「とりあえずこれ使っておけ」みたいな決定版が無いって事なのかな…
一応自前のはあるけど、アニメーションができないんだよね…
アニメさせないのならDirectXTKのModelでも全然問題なさそうなんだけど。

815 :デフォルトの名無しさん:2014/09/16(火) 22:25:54.89 ID:GYasISlT.net
単純な線形補間のアニメーション付きスキンメッシュなんて、ほんの数行の頂点シェーダー書くだけなのよ
質問の答えになってないけど

しかし右も左もUnityだな・・・ちょっと興味出てきちまったい
DirectX12早く来てくれー

816 :デフォルトの名無しさん:2014/09/16(火) 23:26:36.33 ID:tRECZzPW.net
>>815
簡単なモデルをプログラムで用意してスキンアニメさせるのは以前にやったけど、
モデリングツールから出したデータから抜き出してやるのがあまり上手くできないんだ。
Assimpで形状は取り出せたけど、アニメは何か上手く行かない。

817 :デフォルトの名無しさん:2014/09/17(水) 10:51:00.82 ID:k7ATJ22m.net
>>811
労組

818 :デフォルトの名無しさん:2014/09/18(木) 20:37:26.15 ID:lU17qMUH6
http://sygh.hatenadiary.jp/entry/2014/07/11/003515

>にVisual Studio 2013/Windows SDK 8.1付属のfxc.exeではエフェクトファイルをコンパイルしようとすると、
>FXC : warning X4717: Effects deprecated for D3DCompiler_47
>という警告メッセージが表示されます。MSは本気でエフェクトを抹殺する気らしいです。

EffectってMSにとって疎ましいものなの?
消えていく方向だとしたら依存しないように組んでいきたいな。

819 :デフォルトの名無しさん:2014/09/19(金) 21:28:28.65 ID:nfkFgcL0.net
DirectX11.3と12等など

http://www.anandtech.com/show/8544/microsoft-details-direct3d-113-12-new-features

820 :デフォルトの名無しさん:2014/09/19(金) 21:29:23.34 ID:nfkFgcL0.net
ついでに

http://blogs.msdn.com/b/directx/archive/2014/09/18/directx-12-lights-up-nvidia-s-maxwell-editor-s-day.aspx

821 :デフォルトの名無しさん:2014/09/19(金) 23:59:02.79 ID:8M2VE0JIs
OITサポートきたね。

822 :デフォルトの名無しさん:2014/09/24(水) 21:33:34.65 ID:JsNxbSSCy
DirectXTK Model
https://directxtk.codeplex.com/wikipage?title=Model

>NOTE: Support for loading keyframe animations is not yet included.

not yetってことは、いつかサポートするかもしれないということか!

823 :デフォルトの名無しさん:2014/09/24(水) 23:50:56.64 ID:MElg8okB.net
3Dオブジェクトに、そのオブジェクトのワイヤーフレーム線を重ねて描画するのってどうすればいいの?
ただ重ねるだけじゃなくて、ワイヤーフレーム線に対してもZバッファや陰線処理を適用させたいんです。
普通のポリゴン全部描画→zバッファクリアしないでそのままワイヤーフレームの線を描画
だと、Zテストの結果が不安定になっちゃうし。

824 :デフォルトの名無しさん:2014/09/25(木) 00:19:13.70 ID:GdO5e9qh.net
ほんの少し大きい3Dオブジェクトのワイヤーフレームを重ねて描画する。

825 :822:2014/09/25(木) 01:47:32.88 ID:e17gTPX8C
Model needs support for skinned animations
https://directxtk.codeplex.com/workitem/858

ここ見ると、どうやらスキンアニメーションはCMOでサポートされていて、
DirectXTKのSkinnedEffectというのを使ってできるみたいだね。
たしかにDirectXTKのフォルダにソースがあるわ。

これでXファイルの代替には十分になったのかな。

826 :デフォルトの名無しさん:2014/09/25(木) 02:29:38.02 ID:Ni7KtgAG.net
難しく考えなければいい
>>824のやり方をするならばジオメトリシェーダで頂点位置を法線方向にちょっと移動させるだけだ

827 :デフォルトの名無しさん:2014/09/25(木) 21:27:09.98 ID:3qfAPaZp.net
Model needs support for skinned animations
https://directxtk.codeplex.com/workitem/858

ここ見ると、どうやらスキンアニメーションはCMOでサポートされていて、
DirectXTKのSkinnedEffectというのを使ってできるみたいだね。
たしかにDirectXTKのフォルダにソースがあるわ。

これでXファイルの代替には十分になったのかな。

828 :デフォルトの名無しさん:2014/09/25(木) 23:21:28.28 ID:9htpaG4b.net
>>824-826
よくわからんなあ
普通は射影空間でZ軸方向にオフセットかますんじゃないの?
D3D11ならD3D11_RASTERIZER_DESC::DepthBiasに
適当な値(Zバッファの2^bit深度の逆数とか)を入れるだけで
良さそうな気がするが。(試してはいない)

829 :デフォルトの名無しさん:2014/09/25(木) 23:25:18.74 ID:9htpaG4b.net
つーかDX12はまだなの?
もう9月終わるけど

830 :デフォルトの名無しさん:2014/09/25(木) 23:35:32.18 ID:RsWozeYW.net
>>829
馬鹿は氏んでろ

831 :デフォルトの名無しさん:2014/09/27(土) 11:57:35.82 ID:0TauZUvj.net
だれかジオメトリシェーダー部分を書いて下さい
http://monobook.org/wiki/SL_Sharp

832 :デフォルトの名無しさん:2014/09/27(土) 11:59:35.78 ID:Tol0KhbM.net
まるち
http://peace.2ch.net/test/read.cgi/tech/1348409867/

833 :デフォルトの名無しさん:2014/09/27(土) 15:39:05.92 ID:TgC+Xkg5.net
パフォーマンスを稼ぐためにはDrawコールを減らすってのが鉄則みたいだけど、
その理由って、

Drawコールにより、前回のDrawコールから今回のDrawコールまでのコマンド
(デバイスコンテキストの各種Setメソッド)がGPUに転送(コマンドバッファのフラッシュ)
 ↓
その際に、ドライバプログラムを実行するために、OSがユーザーモードからカーネルモードになり、
そのオーバーヘッドがかなりのサイクルかかる。
 ↓
このオーバーヘッドがDrawコールの回数分効いてくる

でOK?

834 :デフォルトの名無しさん:2014/09/27(土) 17:17:42.74 ID:mzR2PUBj.net
CPU⇔GPUのやりとりは時間がかかります
で、おk。
理由なんてそれでいい、俺らがどうこう出来る問題じゃない・・・

835 :810:2014/09/27(土) 17:43:29.66 ID:TgC+Xkg5.net
>>834
おk把握

836 :デフォルトの名無しさん:2014/09/27(土) 17:56:44.90 ID:mzR2PUBj.net
わかってるかもしれんが
Drawを減らしたい場合は、例えば1000個のオブジェクトを描画したいなら1000回描画しろと一回の命令出せばいいんだ

837 :デフォルトの名無しさん:2014/09/27(土) 18:31:36.89 ID:TgC+Xkg5.net
ジオメトリインスタンシングのことかな?
あれならGPUさんへは一回コマンド送るだけで済むよね。

838 :デフォルトの名無しさん:2014/09/27(土) 19:00:24.39 ID:iZfhy6ID.net
完全に同一のオブジェクトならな

839 :デフォルトの名無しさん:2014/09/27(土) 19:32:17.71 ID:P/mAEKki.net
頂点フォーマットの違うdrawも一挙に発行できないのかな?
あと、VertexBufferに違うフォーマットの頂点入れる時も、オフセット開けたり面倒なんだけど。

840 :デフォルトの名無しさん:2014/09/27(土) 20:20:14.25 ID:mzR2PUBj.net
完全同一しか出来ないよ。パーティクル系とかに使えるってだけ

同一オブジェクトを構造化バッファーとテクスチャと変異マップを駆使して別物に仕上げる方法も一応あるよ

841 :デフォルトの名無しさん:2014/09/28(日) 19:11:49.32 ID:uBJ5g3Hm.net
映画とかアニメの演出で、カメラの画角を広げつつ拡大していくことで、撮影対象である人物の
画面に対する大きさを買えずに遠近感だけ変化させるやつがありますよね?
あれをゲーム画面で実現したいんですが、画角の変化の割合に対して、
拡大率をどのくらいに設定すれば良いのか、計算式はどうなるんでしょうか?

842 :デフォルトの名無しさん:2014/09/28(日) 19:23:42.26 ID:7DmkIXSs.net
>>841
自分で立ててみた式を披露してみよう

843 :デフォルトの名無しさん:2014/09/28(日) 20:22:52.58 ID:uBJ5g3Hm.net
考えてみました。
被写体が画面にちょうどぴったり収まるサイズだったとして、
被写体Zにおける画面幅に対応するワールド長さが、θ(Y方向の画角)変更前(θa)とθ変更後(θb)で同じになればいいわけですよね。
カメラ自身は移動しないので、被写体Zの値は定数になるから、
Scale = 画角θaでの近クリップ面の高さ / 画角θbでの近クリップ面の高さ でスケーリングすれば良い事になります。
Fov方式だと近クリップ面の高さは znear * tanθ で表せるので、
Scale = (znear * tan(θa)) / (znear * tan(θb))
となって、
Sclae = tan(θa) / tan(θb)
ですかね?

844 :デフォルトの名無しさん:2014/09/28(日) 20:29:02.69 ID:uBJ5g3Hm.net
ちょっと整理してみました。
被写体Zでの、画面高さに対応するワールド長さを H としたとき、
画角θ距離Zの場合 H = Z * tanθ ですから、
画角θa距離Zなら Ha = Z * tan(θa)
画角θb距離Zなら Hb = Z * tan(θb)
このとき、Ha = Hb * scale となるように scale を決定したいから
scale = Ha / Hb = tan(θa) / tan(θb)

845 :デフォルトの名無しさん:2014/09/28(日) 20:38:34.98 ID:uBJ5g3Hm.net
間違えました。tan(θ/2) で計算しないとダメですね。

846 :デフォルトの名無しさん:2014/09/28(日) 20:53:19.63 ID:7DmkIXSs.net
820で気になったので1点確認しておこう。
カメラと被写体(人物)の間の距離は変化させる・させないどっち?

847 :デフォルトの名無しさん:2014/09/28(日) 21:06:25.71 ID:gt/d/abt.net
よく分からんけどドリーインってやつ?
それならカメラを動かしつつ画角を変化させるんじゃないの?

848 :デフォルトの名無しさん:2014/09/28(日) 21:19:21.54 ID:uBJ5g3Hm.net
カメラも被写体も固定で、画角とスケーリング調整だけで表現するつもりです。
カメラの位置と動きが予め決まっているような場面では、
効果の掛け方によってカメラ座標が影響を受けない方がいいかな、と思ったので。

849 :デフォルトの名無しさん:2014/09/28(日) 21:27:35.09 ID:gt/d/abt.net
スケーリング調整って何に対してするの?

850 :デフォルトの名無しさん:2014/09/28(日) 21:30:41.39 ID:yB4VOdfw.net
背景だけ拡大したら似たような効果になるが、その場合は画角変える必要ないな。

851 :デフォルトの名無しさん:2014/09/28(日) 21:33:06.40 ID:7DmkIXSs.net
うむ、そこが問題なんですな。
824さんも言ってるけどカメラの位置を変えないと無理だよ。
3DCGでフツーにやる分には画角の変更とスケーリング(+トリミング)は同じことなので。
(実際のレンズだと魚眼効果みたいなやつで同等にはならないけど、>>841の演出はそれ抜きで可能)

852 :デフォルトの名無しさん:2014/09/28(日) 21:33:39.34 ID:uBJ5g3Hm.net
単純に ProjectionMatrix に対してスケーリング行列をかけていたのですが、実際にやってみた所、
画角変更前と変更後で得られる画像が全く同じになりました。
画角変更による画面変化が、スケーリングによって相殺された感じです。
ようやくわかりました。ドリーインていうのは必ずカメラ自体を動かす必要があったんですね。

853 :デフォルトの名無しさん:2014/09/28(日) 21:47:58.54 ID:uBJ5g3Hm.net
となると問題はカメラを元位置からどれだけ動かす?って事なんですが、画面にぴったり収まるように写っている長方形(サイズW,H)がカメラからの距離 z にあったとして、画角θを変化させたときに、この長方形の(見かけの)大きさが変わらないようにZを調整してみます。
画角θ距離Zの場合 H = Z * tanθ ですから、
画角θa距離Zaなら Ha = Za * tan(θa)
画角θb距離Zbなら Hb = Zb * tan(θb)
このとき Ha = Hb にしたいわけですから Za * tan(θa) = Zb * tan(θb) の関係を保つように変化させればよいことになりますね
カメラを移動させて Z を変更したなら、移動後の画角は tan(θb) = tan(θa) * Za/Zb ただし tanθ = H/Z なので
tan(θb) = (Ha/Za) * Za/Zb = Ha/Zb すなわち
θb = atan2(Ha, Zb) ですね!

854 :デフォルトの名無しさん:2014/09/28(日) 22:04:49.89 ID:7DmkIXSs.net
書き込み時間的に828前に自分で答え(>>852)を出したみたいで何よりですな。
830の式でいいと思うよ。θかθ/2かは些細な問題というか俺も覚えてない。

855 :デフォルトの名無しさん:2014/09/28(日) 22:34:55.37 ID:uBJ5g3Hm.net
ありがとうございます。この計算式で試してみます

856 :デフォルトの名無しさん:2014/09/28(日) 23:27:28.27 ID:hNgg5JkE.net
演出に関わるところは面白いね。
がんばれよ!

857 :デフォルトの名無しさん:2014/09/30(火) 15:26:17.45 ID:P/lAZU9v.net
D3D9+HLSLでぼかしエフェクトをかけようと思い以下のHLSLを書いたのですが、
http://codepad.org/j3Ma2y0E

D3DXCreateEffect で以下のエラーが出ます
(50): error X5200: (First source param) Invalid register number: 32. Max allowed for this type is 31.
(39): error X5200: (First source param) Invalid register number: 32. Max allowed for this type is 31.

これってどういう意味なんでしょうか??

858 :デフォルトの名無しさん:2014/09/30(火) 17:03:18.67 ID:FT3pFW2R.net
>>857
馬鹿としか言いようがない

859 :デフォルトの名無しさん:2014/09/30(火) 17:27:06.57 ID:JjKI4EMd.net
レジスターの番号が大きくて受け付けませんよ、って言ってる

860 :デフォルトの名無しさん:2014/09/30(火) 17:39:54.81 ID:P/lAZU9v.net
ひょっとして入力に配列 uniform float uBlurWeights[12] を使うとレジスターを消費するってことですか?

861 :デフォルトの名無しさん:2014/09/30(火) 17:49:58.13 ID:JjKI4EMd.net
50行目と39行目を参照

862 :デフォルトの名無しさん:2014/09/30(火) 17:55:15.37 ID:P/lAZU9v.net
color += uBlurWeights[i] * (a + b);
これってそんなに複雑な式には見えないんですけど、分解せよってことですかね
float x = uBlurWeights[i];
float y = a + b;
color += x * y;
こんなふうに。

863 :デフォルトの名無しさん:2014/09/30(火) 18:28:27.79 ID:CAppLoDM.net
単純なぼかしなら
縮小サイズで描画して元のサイズで表示させればいいねん

864 :デフォルトの名無しさん:2014/09/30(火) 18:44:23.38 ID:P/lAZU9v.net
それだと広範囲のぼかしを賭けたときにきれいにならないんで、縮小して、高品質のぼかしをかけて、元のサイズに戻してます。

865 :デフォルトの名無しさん:2014/10/01(水) 01:11:35.09 ID:SUPv33eR.net
川瀬式マルチガウシアンフィルタか。

866 :デフォルトの名無しさん:2014/10/01(水) 03:06:28.20 ID:auoNc3+l.net
どうやら配列サイズ12って時点でアウトみたいですね。
一度に半径12のぼかしをかけるのではなく、半径6でぼかして、得られた画像を再び半径6でぼかせばいいってことですかね。

867 :デフォルトの名無しさん:2014/10/01(水) 21:05:13.15 ID:SUPv33eR.net
>>866
ちなみにガウスブラーの係数は対称形だから、片側の配列だけ持ってれば済むけど、それは考慮してる?
もし直径12のことなら、係数は片側6個でイイよ。

868 :デフォルトの名無しさん:2014/10/01(水) 23:41:51.85 ID:auoNc3+l.net
>>867
そうです。12個の配列は片側12ピクセル分、直径24ピクセルのぼかしに使っています。
ここを参考にしやたつです。

t-pot: ガウスフィルタ
http://t-pot.com/program/79_Gauss/index.html

869 :844:2014/10/02(木) 00:48:28.31 ID:/QoLru9+.net
>>868
OK、今給黎さんのサイト見てるなら大丈夫だ。
>>857のエラー見ると、配列12要素が引っかかってるというか、レジスタスロットがfloat(4Byte)だと合計32個までってことで、
その配列12個と他のレジスタ(変換行列とか)の合計で引っかかったんだろう。
もし、World、View、Projection変換行列をバラでセットしてるようなら、それらを事前に掛け合わせておいて
WVP行列にしておくとかで圧縮できそうだけど、そんな余裕はないか。

それがダメなら、>>866の複数回に分けてブラーをかけるピンポンブラーで対応だね。
ひょっとすると一度にかけるよりもパフォーマンス的においしい・・・なんてことはないかな?w

870 :デフォルトの名無しさん:2014/10/02(木) 01:29:37.09 ID:xXSqVv1/.net
DirectX and Windows 10
ttp://blogs.msdn.com/b/directx/archive/2014/10/01/directx-12-and-windows-10.aspx

871 :デフォルトの名無しさん:2014/10/03(金) 00:47:01.91 ID:cbqlKRjv.net
>>869
PS2.0の定数レジスタ数はfloat4x32で、
プログラムに対し十分に大きい為、これが引っかかっている訳ではないと思う。
(また、変換行列の類はVSの引数なのでこれも関係なし)
恐らくHLSLコンパイラがコンパイル時にforループをアンロールしており
テンポラリレジスタを無駄に消費しているのでは。

872 :844:2014/10/03(金) 06:04:23.83 ID:2KZF4LLc.net
>>871
なるほど。
Direct3D11では、ガウスフィルタ(バイラテラルフィルタだけど)は[unroll]を指定しないとループで実行されたけど、
9は自動でアンロールするってことかな?
しかし、自動っていうんならレジスタ足りないようならループほどかないようにするとかも対応すべきだと思うけどw
ただ、一時レジスタが32ってのは、それこそ少なくない?
その数字だと、やはりfloatの定数レジスタ上限のことを指してたりしないかな?

>>857
PS2.0でコンパイルしてるけど、3.0にして解消したりしない?

873 :デフォルトの名無しさん:2014/10/03(金) 09:38:55.72 ID:cbqlKRjv.net
>>872
PS2.0の命令にフローコントロールは無い。
よってforは基本的に展開される。
フローコントロールが入ったのはPS2.xから。
またPS2.0のテンポラリレジスタの数は12〜32で
GPUにより変わる。
ちなみにこんな古い情報、今更知る価値は無い。

コンパイラがバカ過ぎる気がするが、
DX9はこんなもんだったっけ・・

874 :834:2014/10/03(金) 12:38:01.66 ID:Ccsqgbyx.net
いろいろアドバイスありがとうございます。
単純に配列サイズを 6 にしただけでも、思ったよりきれいにぼけたので、これでいこうと思います

ちなみに配列サイズ 12 のままでも PS 3.0 にしたら普通に動きました。
もしくは、現在 SDKには DirextX 2004 OCT を使っているのですが、これを JUNE 2010 にするだけでも動きました。
なぜわざわざ2004OCTを使っているかというと、それが D3D9_##.DLL を要求しない最後のバージョンだからです(これは発注元からの要求)

875 :デフォルトの名無しさん:2014/10/03(金) 23:07:17.72 ID:2KZF4LLc.net
お仕事か。
そんな古いSDKを要求してくる案件があるんだね・・・。

876 :デフォルトの名無しさん:2014/10/03(金) 23:29:55.66 ID:Bn8I2xCF.net
(発注元は客ではなく自分の上司なんですが、曰く、ゲームをインストールしようとした時に「D3D9_24.DLLがありません」みたいな
エラーが出るのが嫌だから、とにかく依存するDLLを最小にしろ、との事です。すごく面倒です。いまだにXPでの動作も保証しなくてはなりませんし。
そんなの、最新のDirextXをインストールしろ の一言で終わりだと思うんですけどね。以上チラ裏でした)

877 :デフォルトの名無しさん:2014/10/04(土) 00:12:04.81 ID:xg2A2cfA.net
入力値1〜入力値2(例、50〜69の20個)の、入力値1(例だと50)までの約数でないものを
小さい順に重複しないよう表示するプログラムを作りたいのですが
★の行で==とすると約数であるものが表示されるのに
!=とすると約数でないものが表示されません、どうすればいいでしょうか

#include <stdio.h>

int main(void)
{
int i, m, n,l;

scanf("%d %d", &m, &n);
for(i = 1; i <= n; ++ i){
int j;

for(j = m; j < n; ++ j){
if(j % i != 0){  ……★
if(10<i){
if(i<m){
printf("%d ", i);
break;
}
}
}
}

}
putchar('\n');

return 0;
}

878 :デフォルトの名無しさん:2014/10/04(土) 00:14:13.92 ID:mXWC5Nh/.net
>>877
もっと勉強しろ、低脳

879 :デフォルトの名無しさん:2014/10/04(土) 00:21:16.22 ID:mawtIk+E.net
>>877
まずは、それをDirectX使うように書き換えてからこのスレに来てくれ。

880 :デフォルトの名無しさん:2014/10/04(土) 00:21:19.86 ID:xg2A2cfA.net
すみませんでした

881 :デフォルトの名無しさん:2014/10/04(土) 02:38:17.40 ID:EbNp08vT.net
互いに透過しあう2つ以上のモデルを描画するにはどうしたらよいのでしょうか
BlendStateを色々いじってもダメでした、理解が足りないだけかも知れませんが
デプスバッファを切ればできるという記述があったので試すと互いに透過はしますが当然表示がおかしくなってしまいます
ご教授いただければ幸いです

882 :デフォルトの名無しさん:2014/10/04(土) 11:25:50.04 ID:D42fUjq8.net
そういう場合、普通はZソートにする。
2つのモデルのポリゴン片を整列し
遠い順から合成で描画する。
ポリゴン1枚とポリゴン1枚の交差が対応出来ないが
ポリゴンを分割するなどして。

883 :デフォルトの名無しさん:2014/10/04(土) 12:51:07.58 ID:Bbz92gUm.net
directx11ならOITを調べればいい。dirextx11のサンプルにもあるが、あれは遅すぎる。
検索すれば早いタイプの実装方法もある

ttps://sites.google.com/site/monshonosuana/directxno-hanashi-1/directx-110

884 :デフォルトの名無しさん:2014/10/04(土) 13:29:07.27 ID:YkAVz7zY.net
そのOITはゲームで実用にならなさそう
最近出たD3D9でも出来てそれなりの速さと品質を備えたOITがあるが
拘らないならメッシュ単位でZソートしとけばいいと思う

885 :デフォルトの名無しさん:2014/10/04(土) 13:55:17.88 ID:uBn60DPp.net
>>883
そのサイトのはAMDが発案した高速なアルゴリズムだよね。
その後も改良が進められたみたいだけど、DirectX12でサポートされるOIT(ROV)はAMDの改良実装を参考にするのかな?

886 :デフォルトの名無しさん:2014/10/04(土) 16:05:24.72 ID:D42fUjq8.net
矛盾が出ない半透明描画の方法考えたんだけど意見ちょーだい。

1、普通に不透明や半透明のメッシュを描画する。
-> カラーバッファとZバッファが出来る。

2、以下のピクセルシェーダプログラムを実行
 ・1で使ったメッシュを同じように描画。
 ・1で作ったカラーバッファとZバッファを引数にとる。
 ・Z値が「1で作ったZバッファ」の値以下ならclip()でピクセル描画を破棄。
 ・「1で作ったカラーバッファ」を材料に新しい半透明情報を加味しピクセルを出力。
-> カラーバッファとZバッファが出来る。

3、2で作ったカラーバッファとZバッファ引数に2を繰り返す。
  ピクセルが1つも描画されなくなったら終了。

887 :デフォルトの名無しさん:2014/10/04(土) 16:09:29.73 ID:lwfJG00e.net
なんで繰り返すの?
時間かかりすぎない?
そもそも終わらなくない?

888 :デフォルトの名無しさん:2014/10/04(土) 16:20:15.43 ID:D42fUjq8.net
>>887
>なんで繰り返すの?
半透明ポリゴンが4枚重なってたら、4回描画しないと終わらないじゃん。

>時間かかりすぎない?
上で出ている無理やりリンクリスト作る方法より早いと思う。
つーか全然軽いよ多分。

>そもそも終わらなくない?
そこはDirectXに何かあるんじゃないの(適当)

あと、>>886はカラーバッファの取り扱いに誤りがあるな。
1枚を繰り返し使うか、マージしないとダメだな。

889 :858:2014/10/04(土) 22:31:56.87 ID:EbNp08vT.net
ご助言ありがとうございます
Zソートを念頭にOITについても調べて見たいと思います

890 :デフォルトの名無しさん:2014/10/05(日) 15:04:17.39 ID:/qGZq4eV.net
http://msdn.microsoft.com/en-us/library/windows/desktop/bb509581(v=vs.85).aspx
ここにはcbufferの名前は省略可能と書いてあると思うんですが、本当に省略可能ですか
名前を省略するとコンパイルできないのですが…
基本的にcbufferの名前って必要ないですよね

891 :デフォルトの名無しさん:2014/10/05(日) 23:40:02.22 ID:ViF7ZlxB.net
>>890
とりあえずコードぷりーず

892 :デフォルトの名無しさん:2014/10/06(月) 11:30:40.68 ID:LgM+lc14.net
Visual Studio Express 2013を使ってビルドしていて、
HLSLファイルのプロパティから、HLSLコンパイラ設定の「頂点シェーダー(/vs)」「Shader Model 4 (/4_0)」を選択しています

エラーメッセージは
1>xxxxxxxxxxxxxxxxxxxxx.hlsl(1,9): error X3000: syntax error: unexpected token '{'

HLSLファイルはこの通りです
cbuffer {
float4x4 gTransform;
};

void main(inout float4 position : SV_Position)
{
position = mul(position, gTransform);
}

コードを要求されるあたり、書きようによっては省略可能という見込みがあるということなんでしょうか

893 :デフォルトの名無しさん:2014/10/06(月) 15:07:24.14 ID:Fe1jjbTf.net
俺も過去に省略しようとして怒られたから仕方なくなんかの名前を付けているよ
エフェクトでもない限り名前は触らないし、cbufferが一つだけとかだったら
省略できるなら省略してしまいたいんだけどねぇ・・・

894 :デフォルトの名無しさん:2014/10/08(水) 23:56:17.80 ID:U1AYKhGY.net
>コードを要求されるあたり、書きようによっては省略可能という見込みがあるということなんでしょうか
別に>>891がのーたりんなだけ

895 :デフォルトの名無しさん:2014/10/27(月) 15:12:29.17 ID:5Myx0Rhu.net
XInputのコンフィグ用に使うボタンの画像とかってMicrosoftが標準で配布してたりする?

896 :デフォルトの名無しさん:2014/10/30(木) 23:54:51.23 ID:P+CVnAvq.net
意匠権があるわけでなし、写真撮ってトレースすりゃよし

897 :デフォルトの名無しさん:2014/10/31(金) 15:35:21.81 ID:EAM6VZl0.net
西川善司の3DGE:新しく来るDirectXは「12」だけじゃない。突如浮上の「DirectX 11.3」とは何か? - 4Gamer.net
http://www.4gamer.net/games/033/G003329/20141020017/

898 :デフォルトの名無しさん:2014/11/03(月) 03:38:34.29 ID:N6prQvSh.net
ウィンドウモードのゲームを前提とします
よくコンフィグ画面からウィンドウサイズを指定して変更するようなものはよく見かけます
例えばデフォルト「650x480」から「800x450」を選択してウィンドウサイズを変更する

では、ウィンドウサイズは「650x480」のままで
ウィンドウのマウスドラッグ操作でウィンドウサイズを変更できるようにし
そのマウス操作に合わせてウィンドウ内の描画状態を拡大縮小するには
どのような技術を用いれば可能でしょうか

899 :デフォルトの名無しさん:2014/11/03(月) 05:28:31.15 ID:VWaLlR99.net
ダブルバッファリン

900 :デフォルトの名無しさん:2014/11/03(月) 06:40:23.54 ID:N6prQvSh.net
>>899
ありがとうございます
調べてみます

901 :デフォルトの名無しさん:2014/11/03(月) 11:18:57.96 ID:3K1WoPdJ.net
>>898
http://www.kohgakusha.co.jp/books/detail/978-4-7775-1537-0
この本にやり方載ってるよ。
ウィンドウサイズ変更に連動してレンダリング解像度を変更する。

902 :デフォルトの名無しさん:2014/11/07(金) 22:09:45.22 ID:NeVCnlku.net
Skinning10 サンプル
http://msdn.microsoft.com/ja-jp/library/ee416429(v=vs.85).aspx

だいぶ前の記事だけど、
Direct3D11&最近のGPUだったら、スキニング行列の配列はどのように持つのが妥当かな?
個人的には、パフォーマンスさえ問題なければ定数バッファに置くのが一番単純でイイように思う。

903 :デフォルトの名無しさん:2014/11/09(日) 00:07:00.83 ID:mRPDV88W.net
今DirectXってどの辺で使われてるの? Windowsの…PCゲーム?

904 :デフォルトの名無しさん:2014/11/09(日) 02:58:43.69 ID:Ncgt9DFn.net
Windowsのソフト全部で使われてるよ

905 :デフォルトの名無しさん:2014/11/09(日) 10:25:54.77 ID:XEYnbiYX.net
意識してDirectX APIを使用していなくても、Windows自身がデスクトップなどの画面描画をするのに内部的にDirectXの機能を使用してる。
GPUが機能をサポートしていなければCPUエミュレーションになるが。

906 :デフォルトの名無しさん:2014/11/09(日) 10:55:27.94 ID:QwjRsquy.net
DirectX以外のグラフィックスAPI(GDI/GDI+/OpenGL)は既にみんなレガシー扱いだしな。

907 :デフォルトの名無しさん:2014/11/09(日) 16:11:33.63 ID:kYz72p+3.net
DX11のシェーダを使うに当たっての質問なんだけど、
複数の異なるプリミティブに対して同様のシェーダを取り扱う場合って、
プリミティブ毎に入力レイアウト、定数バッファ、頂点バッファやインデックスバッファを作成する必要ってあったりするもんですかね?
エロい人教えてください…

908 :デフォルトの名無しさん:2014/11/09(日) 16:24:42.75 ID:IawmsfhJ.net
>>907
おまえ、実は何もわかってないだろ?
頂点バッファやら作らんで、なにを描画する気だよw

909 :デフォルトの名無しさん:2014/11/09(日) 16:34:06.04 ID:Ncgt9DFn.net
各ステージの入力と出力の整合性が取れていればレンダリングは問題なくできる

「異なるプリミティブ」ってのが、何が異なるものを指しているのかを
明確にした方が、いい回答がもらえると思う
頂点バッファのインスタンスが複数あって、ってことなのか
同じものを複数個描画したい、ってことなのか

910 :デフォルトの名無しさん:2014/11/09(日) 16:39:36.74 ID:kYz72p+3.net
>>908
あんま良く分かってないんですよ…
頂点バッファはそもそも頂点座標がわからないと
描画しようがないだろうから持っておく必要があると思うんだけど、
定数バッファってシェーダコードを流すために一時的に必要、
って認識なんで1つ作れば使いまわしできるんじゃないのかなーとか。

その認識がそもそも間違いだったりする?

911 :デフォルトの名無しさん:2014/11/09(日) 16:42:44.43 ID:kYz72p+3.net
>>909
あー、ごめんなさい…
「異なるプリミティブ」というか、異なるモデルという方がいいんですかね。
モデルが異なるので頂点バッファのインスタンスも複数存在する、ということで。

912 :デフォルトの名無しさん:2014/11/09(日) 16:47:23.12 ID:IawmsfhJ.net
>>911
インスタンスの意味も理解してないな

913 :デフォルトの名無しさん:2014/11/09(日) 16:54:39.90 ID:kYz72p+3.net
>>911
如何せん、まだ間もないもんでね…
どういう意味かも含めてご教授頂けると。

914 :デフォルトの名無しさん:2014/11/09(日) 16:55:15.98 ID:kYz72p+3.net
>>912
安価ミスったです…

915 :デフォルトの名無しさん:2014/11/09(日) 17:01:27.69 ID:Ncgt9DFn.net
同じ方式でレンダリングするのなら使いまわせる
入力サイドの情報(頂点バッファと、必要ならインデックスバッファ)を入れ替えればいいだけ

>>912
>>911で言ってる「頂点バッファのインスタンス」の意味は別に間違ってないと思うんだけど…

916 :デフォルトの名無しさん:2014/11/09(日) 17:11:18.90 ID:kYz72p+3.net
>>915
「同じ方式」っていうのは「入力レイアウトが同一であれば」ってことで合ってますかね…?

917 :デフォルトの名無しさん:2014/11/09(日) 17:25:31.37 ID:Ncgt9DFn.net
>>916
変換行列やマテリアルの設定とかまでまったく一緒で良いのなら完全に全部使いまわせる
って意味で「同じ方式」と書いたんだけど、野暮だった。紛らわしくてすまぬ。

ある複数の頂点バッファについて、各バッファの頂点フォーマットが同一であれば
そのフォーマットに対応した入力レイアウトは一つだけ用意すればいい
っていえばいいのかな・・・?

918 :デフォルトの名無しさん:2014/11/09(日) 20:14:57.59 ID:kYz72p+3.net
>>917
こちらこそ浅い知識で申し訳ないです…

バッファの取り扱いについては把握しました!
懇切丁寧にレス頂きましてありがとうございます!

919 :デフォルトの名無しさん:2014/11/13(木) 06:05:06.56 ID:KEpk3Boc.net
[速報]マイクロソフト、フル機能の無料版「Visual Studio Communiti 2013」公開 − Publickey
http://www.publickey1.jp/blog/14/visual_studio_communiti_2013.html

920 :デフォルトの名無しさん:2014/11/13(木) 08:31:33.45 ID:psnXtxWS.net
.NET Frameworkのオープンソース化も触れられてるけどUnityの開発とかで使われていたMonoとか.NET互換環境はどうなるんだろうか

921 :デフォルトの名無しさん:2014/11/13(木) 10:10:13.30 ID:EXd84l9k.net
>開発者5名以下の中小企業
え?

922 :デフォルトの名無しさん:2014/11/13(木) 10:42:47.83 ID:psnXtxWS.net
逆に言えば企業形態じゃなければ何人でもOKなのか

923 :デフォルトの名無しさん:2014/11/14(金) 23:45:36.54 ID:60Eu/NuW.net
ドロップダウンリストを作成したいのですが、検索しても全く見当違いの検索結果しかでないので
どなたか作成方法を教えていただけませんか?

924 :デフォルトの名無しさん:2014/11/15(土) 00:15:59.63 ID:hIWmb4Rf.net
DXUTのGUI実装部分が参考になるかも
ボタンとかチェックボックスとか一通りのUIはあるっぽい

925 :デフォルトの名無しさん:2014/11/15(土) 00:22:05.04 ID:mYSPecLt.net
各種GUIコンポーネント、DirectXTKに採用してほしいよね

926 :デフォルトの名無しさん:2014/11/15(土) 10:25:57.12 ID:wqk8JEIV.net
Direct2DってC言語での動作は保証とかされてない感じですか
C言語マクロのID2D1Bitmap_GetSize(hoge)を使ったりlpVtblからのGetSize呼び出しでも
ランライムチェックでESPレジスタの値がおかしいとかメッセージが出て止まります

ID2D1Bitmapだと他にGetPixelSize()もGetPixelFormat()もアウトなんで
たぶん戻り値が構造体になっている関数がアウトなんだと思うんですが、賢い回避策とかありますかね

927 :デフォルトの名無しさん:2014/11/15(土) 13:49:40.41 ID:8kaNLlbY.net
>>926
馬鹿は使うな

928 :デフォルトの名無しさん:2014/11/15(土) 17:48:45.38 ID:vYFtI7/G.net
32/64を間違ってるとエスパー

929 :デフォルトの名無しさん:2014/11/15(土) 20:35:48.31 ID:wqk8JEIV.net
32/64を間違ってるとはどういうことですか
プロジェクトプロパティのライブラリディレクトリは↓になっていて
ソース中に#pragma comment(lib, "d2d1.lib")と書いてリンクしてます
Win32時 $(VC_LibraryPath_x86);$(WindowsSDK_LibraryPath_x86);
x64時  $(VC_LibraryPath_x64);$(WindowsSDK_LibraryPath_x64);

↓のD2D1_Initという関数の90行目以下が問題の部分
http://codepad.org/GDr40N4L

930 :デフォルトの名無しさん:2014/11/16(日) 03:10:36.47 ID:sPDu10Ez.net
C++で呼び出してる時はGetSizeの第二引数に返値の構造体のアドレスをpushして
返値はeaxにそのアドレスがセットされる前提のコードが生成されてるけど
Cで呼び出すと第一引数のID2D1Bitmapのインスタンスだけpushして
返値はedx:eaxに返値の構造体の中身が入ってるコードになってる

両方callee側でスタックを戻す前提になってるから__stdcallで宣言されてるはずだが

931 :デフォルトの名無しさん:2014/11/16(日) 03:28:10.88 ID:SFYBi1Uv.net
>>929
アホす

932 :デフォルトの名無しさん:2014/11/16(日) 07:45:35.02 ID:sPDu10Ez.net
>>926
呼び出し規約の設計ミス or コンパイラのバグっぽい
グローバルの__stdcall関数とクラスメンバの__stdcall関数で構造体の返し方が違う
後者で実装されているID2D1Bitmap::GetSize()を前者の方法で呼び出してるので
スタックが不整合を起こす
Cで後者の呼び出し規約を使う手段はないだろうからお手上げ

バイナリ互換が失われるからコンパイラのバグだったとしても
修正されることもないだろうしなー

933 :デフォルトの名無しさん:2014/11/16(日) 10:08:53.22 ID:3ZHzhtpk.net
どうもお手数をおかけしました
簡単な手がなさそうなのでサイズはビットマップと抱き合わせで持っておくことにします
ありがとうございました

934 :デフォルトの名無しさん:2014/11/20(木) 22:32:26.02 ID:sPmtTKlZ.net
シェーダにhlslを流し込む前なのですが、初めてなので勇気が欲しいです。
何か良い祈り文句、呪文があれば、教えてください。

935 :デフォルトの名無しさん:2014/11/21(金) 00:35:03.14 ID:lPEX2OSX.net
般若心経

936 :デフォルトの名無しさん:2014/11/21(金) 00:44:17.73 ID:eKmyEZjy.net
般若parameter

937 :デフォルトの名無しさん:2014/11/21(金) 02:32:17.98 ID:8J5EpVQc.net
ハンニャハラミ!

チャイニーズオデッセイではハンニャハラミ言いまくってたけど
チャウシンチーの今度の西遊記映画でも言ってるか気になる。

昔の香港映画では、万能の呪文だったよね。
懐かしくなったので、ちょっとチャイニーズゴーストストーリー見てくる。

938 :デフォルトの名無しさん:2014/11/21(金) 03:11:02.83 ID:VCvFQ+4P.net
>>934
ワロタw
気持ち分かるわw

939 :デフォルトの名無しさん:2014/11/21(金) 08:44:25.30 ID:D59S7iCq.net
ダイレクトXでなく、普通のGDIでプリンターへの描画処理を書いて実行したら画面が暗転して、メーカーのロゴとBIOS画面が出てきたことがあったな
DIBとDDBを指し間違えたんだけど

940 :デフォルトの名無しさん:2014/11/21(金) 09:10:57.76 ID:R5E6cwET.net
般若波羅蜜多の波羅蜜多と
parameterは語源が同じらしい

941 :デフォルトの名無しさん:2014/11/21(金) 13:25:33.07 ID:qvHLjp++.net
>>934
「総員、心臓を捧げよ!」

942 :デフォルトの名無しさん:2014/11/21(金) 13:32:36.87 ID:y13pb5bU.net
光あれ

943 :デフォルトの名無しさん:2014/11/21(金) 14:45:22.73 ID:yHVAdYrq.net
バルス

944 :デフォルトの名無しさん:2014/11/21(金) 14:51:56.28 ID:RZqyoU6a.net
suka
pontan

945 :デフォルトの名無しさん:2014/11/21(金) 16:43:23.45 ID:UIxCyJbt.net
ささやき - いのり - えいしょう - ねんじろ!

946 :デフォルトの名無しさん:2014/11/21(金) 17:47:06.41 ID:XUGDnOSQ.net
ASHED

947 :デフォルトの名無しさん:2014/11/21(金) 18:31:09.76 ID:ava0sfSg.net
「シェーダにhlslを流し込む」がよくわからないから
流れに入れない・・・

948 :デフォルトの名無しさん:2014/11/21(金) 20:13:25.53 ID:VCvFQ+4P.net
考えるんじゃない、感じるんだ

949 :デフォルトの名無しさん:2014/11/21(金) 21:25:48.45 ID:fjtEyKUY.net
.cを.objに流し込むと同義

950 :デフォルトの名無しさん:2014/11/22(土) 12:07:58.42 ID:rrzuQBQt.net
シェーダに流し込むのは hlslをfxcでコンパイルしたコードだけど、感覚的にはそういうものかと

951 :デフォルトの名無しさん:2014/11/22(土) 12:21:07.69 ID:rrzuQBQt.net
スレ違いかもだけど、Direct2Dだけでピクセルシェーダは使える?
エフェクトインターフェースが無いっぽいからDXGI経由でテクスチャを持ち込まないとダメっぽい感触があるんだけど、
これだと2D使わない方がマシになる

952 :デフォルトの名無しさん:2014/11/22(土) 14:26:28.88 ID:Fg4QwLMY.net
使えると言っても良さそうっぽい

953 :デフォルトの名無しさん:2014/11/22(土) 22:11:29.41 ID:MacSfCt4.net
一応シェーダ突っ込めるようなカスタムエフェクトの仕組みはあるっちゃあるで

http://msdn.microsoft.com/en-us/library/windows/desktop/jj710194.aspx

動作要件はWin7 Platform Update以上になるからそこは注意だが

954 :デフォルトの名無しさん:2014/11/23(日) 00:02:24.09 ID:lS9ATFcQ.net
マルチプロセスでテクスチャとかサーフェスを共有する方法ってありますか?
DXGI_USAGE_SHARED
とか、
D3D11_RESOURCE_MISC_SHARED
って、複数のd3dデバイス間で共有できるみたいだけど、
マルチプロセスまで言及されてなくて、実際はどうなんだろうかと。
別なプロセスで描画させたのを、もう一つのプロセスから読み込みたいのだけど。

955 :デフォルトの名無しさん:2014/11/23(日) 05:32:07.56 ID:KGe40IZ5.net
http://msdn.microsoft.com/en-us/library/windows/desktop/ee913554.aspx

このへん見てると出来るっぽいね

956 :デフォルトの名無しさん:2014/11/23(日) 10:53:40.94 ID:6+l31Can.net
>>952
>>953
ありがとうございます。 確かに使えますね。 調査不足でした。
カスタムエフェクトは、インターフェースを派生させて独自に実装する方式、
予めビルドインも各種あるんですね。 検索サーバの誘導に釣られて日本語サイトに飛ばされたのが運の尽きでした。。orz
ありがとうございました。

957 :デフォルトの名無しさん:2014/11/28(金) 11:27:55.53 ID:N1ewiBns.net
directshowを用いてライブストリーミングでの動画再生ソフトを作ろうとしています。
http://www.geekpage.jp/programming/directshow/renderfile.php
を参考にしています。
そこでpMediaControl->RenderFile(FILENAME)でファイル名指定しています。
映像データの送受信などは自分で実装しているので、データを受け取ってバッファから読み込むといった方法はできないのしょうか?
ファイル指定ではなく、受け取ったパケットから再生しようと考えています。

958 :デフォルトの名無しさん:2014/11/28(金) 15:46:42.92 ID:/Irva71z.net
>>957
あなたの読んでいるページの下の方を読み進んでください

キーワードは以下のものです
・ビデオ入力デバイス
・サンプルグラバ
・キャプチャデバイス

あなたのコードがどのようなものか分からないので、これ以上は何とも言えませんが
ソースフィルターを作る必要があるかも知れません

959 :デフォルトの名無しさん:2014/11/28(金) 19:31:59.18 ID:KPnWE6eQ.net
エスパーレスで恐縮ですが、
youtubeDLを使えば解決
作る必要がなくなるでしょう

960 :デフォルトの名無しさん:2014/11/28(金) 22:44:33.75 ID:2YOxD1S1.net
ペカレコだけでflv見れなかった?

961 :デフォルトの名無しさん:2014/11/29(土) 08:43:35.22 ID:i2K4iPXr.net
一言でいえばグラフエディットで繋ぐできることのできる出力ピンを持つフィルター作ればおk

962 :デフォルトの名無しさん:2014/11/29(土) 09:24:59.34 ID:loHFubTg.net
COMプログラミングの地獄を思い出した・・・

963 :デフォルトの名無しさん:2014/11/29(土) 11:07:01.68 ID:v9PxAgfu.net
3D9から10.1への移行が済んだのだけど、工作意欲が無くなった
F-22を飛ばしてみたいがモデルデータがない
どっかにないかな()ちら

964 :デフォルトの名無しさん:2014/11/29(土) 12:40:31.93 ID:QAtRDfCw.net
なぜ11に移行しなかったし

965 :デフォルトの名無しさん:2014/11/30(日) 00:31:34.13 ID:WrqmjZVD.net
フライトシムで使う飛行機って、だいたい何ポリゴンくらいなんでしょうね?
まあ近年は戦闘機もののシムはあんまりないですけどね。

966 :デフォルトの名無しさん:2014/11/30(日) 04:54:10.24 ID:utV0mJ4H.net
>>965
お前が馬鹿なのはよくわかった

967 :デフォルトの名無しさん:2014/12/01(月) 00:51:36.70 ID:eipsUJ+7.net
>>966 どうも。

似たようなタイミングで似たようなことしてる人がいたんだな、と思ってね。
プログラミングも暇つぶし、モデリングも暇つぶしのレベルですわ。
形にもできないDirectXで暇つぶしている段階で、何言われても反論できないよ。

http://iup.2ch-library.com/i/i1334727-1417362414.jpg

968 :デフォルトの名無しさん:2014/12/01(月) 00:57:49.35 ID:Ux7ViK+b.net
>>967
うお、かっけーじゃん!
少ないポリで特徴を捉えれるのはセンスのある証拠だ。

969 :デフォルトの名無しさん:2014/12/01(月) 21:42:56.87 ID:hot7RSA9.net
>>958
メモリ上から再生しようとしています。
さらに調べた結果、ファイルソースフィルタを自作しないといけないようでした。

970 :デフォルトの名無しさん:2014/12/03(水) 10:50:54.27 ID:T2mQVCqa.net
directX9のプログラミング勉強がしたいのですが、今入ってるdirectX11をアンインストールしないと
X9のプログラムは組めないでしょうか?

971 :デフォルトの名無しさん:2014/12/03(水) 11:14:52.68 ID:+PNtgzjY.net
>>970
最近のDirectX SDKって9 〜 11までを包含してないっけ?
ランタイムじゃなくてSDKをインストール済みなら普通に行けると思うが。

てか
INCLUDE_PATH=$(DXSDK_DIR)\include;
の設定後に
#include <d3d9.h>
くらい試してみようぜ

972 :デフォルトの名無しさん:2014/12/03(水) 11:57:36.85 ID:8NdJaZh/.net
D3DXを使うのでなければ、SDKを入れなくても、
そもそもVSに最初っから入っている。

973 :デフォルトの名無しさん:2014/12/03(水) 19:49:20.53 ID:U2wzi8cW.net
>>970
X9は入門としてなめる程度にして、早めに10や11に進むのをお勧め
X9のレンダリングステート回りは、単なる制御フラグの塊だから、そんな事ができるんだな程度で充分。10から固定機能パイプラインが全部無くなる代わりに、HLSLで必要なベクトル計算だけ行うことができる
シェーダプログラムは、単に固定機能パイプラインをぶつ切りにしているだけで難しくない。
そっちのがベクトル計算の知識を要求される

X9の固定機能は本質がつかみにくいし、使いづらいよ。
教材には向かない

974 :デフォルトの名無しさん:2014/12/03(水) 21:42:15.87 ID:Bs6t2Qim.net
D3D9でマルチレンダーターゲット扱える位になったら11やればいい
固定機能関係は無視で。
9で書かれたソースがたくさん転がってるからスラスラ読めるようにしておくのは悪くない

975 :デフォルトの名無しさん:2014/12/03(水) 23:36:16.40 ID:9W/A025a.net
代表的な例だと、
よくD3D9でカメラ視線に対して垂直(いわゆるHUD表示)にテクスチャを貼る場合、
9だと現状のビュー、射影、ワールド行列の逆行列を固定機能へ与えて演算させる必要があるけど、
10以降の固定機能なしだと、単純にピクセルシェーダで行列計算をさせない(単純な頂点コピー)シェーダを選択するだけで実現できるしね。

976 :デフォルトの名無しさん:2014/12/03(水) 23:37:45.93 ID:9W/A025a.net
すまん。 ピクセルじゃない。 バーテックスシェーダだ。

977 :デフォルトの名無しさん:2014/12/04(木) 00:23:32.84 ID:s80bqfC+.net
>>975
いや、9でもそんなことする必要ないしw
どうしてそんな勘違いしたまま止まっているんだ。

978 :デフォルトの名無しさん:2014/12/04(木) 00:46:08.86 ID:Xqz0EfiZ.net
どうでもいい突っ込みは要らない。
建設的な反論を述べろ

979 :デフォルトの名無しさん:2014/12/04(木) 01:39:46.95 ID:7ZROUC2J.net
聞いてもいねえことをダラダラ並べたててる時点で建設的じゃないのでムリっすねえ

980 :デフォルトの名無しさん:2014/12/04(木) 01:43:41.76 ID:nBf56PgK.net
>行列計算をさせない(単純な頂点コピー)シェーダを選択するだけで実現できるしね。
行列計算するかどうかは好みに応じて

981 :デフォルトの名無しさん:2014/12/06(土) 23:21:38.55 ID:R6Q6bO5x.net
明らかな超絶初心者に言ったって分かることじゃないだろw
947は間違いなくまだC++の基本すらロクにわかってないはず

ちなみに9でプログラミングしたいなら9のSDKダウンロードしないとムリポ。10以降のプログラミングは11でいけるけど。
VS2013で試してみたけどDxErr.libにリンクさせてるのにdxerr9.lib読んでるとかいうエラーの原因わからなくて
腹立って投げちゃったw
まあポリシーなきゃ11から始めるのが無難

982 :デフォルトの名無しさん:2014/12/07(日) 05:07:03.12 ID:oatkVn1y.net
>>981
バカすぎワロタ

983 :デフォルトの名無しさん:2014/12/07(日) 05:38:49.01 ID:+OJhSYXf.net
自分も頭が悪いので他人の頭の悪さは痛いほどよくわかります

984 :デフォルトの名無しさん:2014/12/08(月) 13:40:44.15 ID:qdtwuYGK.net
11ってダイレクトライトとサーフェイスを共有できるようになったの?
3Dのみなら11も悪くないけど、10.1の方が利便性が高いような

985 :デフォルトの名無しさん:2014/12/08(月) 19:41:13.16 ID:eP/ewSt9.net
そう思うなら、そうなんだろうな・・・

986 :デフォルトの名無しさん:2014/12/08(月) 19:42:21.45 ID:US88gYi8.net
なった。Vistaは知らんが7と8ではできる。

987 :デフォルトの名無しさん:2014/12/09(火) 20:35:11.12 ID:HtJVPg8q.net
DirectXでエディットボックスみたいたことやりたいんだけど、参考になるサイトとかあったら教えてほしい
知りたいのは主にキャレットの表示周り
サンプルのCustomUIは今見てるところなのでそれ以外で

988 :デフォルトの名無しさん:2014/12/09(火) 21:28:59.72 ID:d3z79ecB.net
DirectXTKでGUIパーツも提供してほしいな。

989 :961:2014/12/09(火) 22:40:19.60 ID:1v5rgyWL.net
>>986
遅レスで申し訳ありません。 サンクスです。
取り敢えず、10.1でテクスチャと頂点、シェーダと定数バッファ、マトリクス、ジオメトリ(フォントフェイス)が扱えるようになったし、年末年始の休み頃に11に移行すると思う。

990 :デフォルトの名無しさん:2014/12/09(火) 23:34:03.84 ID:3Aq4S10c.net
>>987
具体的に期待する答えを書いた方がレスを貰いやすいと思う
取り敢えずテキストVRAMをエミュレーションするサンプルソースは見たことがない

991 :デフォルトの名無しさん:2014/12/09(火) 23:43:12.51 ID:b3bKIrm+.net
DXUTでいいじゃん

992 :デフォルトの名無しさん:2014/12/10(水) 00:30:36.92 ID:If47AJ4g.net
>>987
Ogreでの定番CEGUIでもDirectXを使ったレンダリングに対応してた気がする。

993 :デフォルトの名無しさん:2014/12/10(水) 02:06:31.07 ID:S95nuWVL.net
DirectXでテキストを扱うときは、文字幅や文字列幅の取得がわからんで困る
ググってもデバイスコンテキスト使って取得する方法ばっかだし

994 :デフォルトの名無しさん:2014/12/10(水) 02:24:39.76 ID:xebn7APd.net
>>993
DirectXTKのSpriteFontでサイズ取得できて便利よ。

995 :デフォルトの名無しさん:2014/12/10(水) 02:29:35.90 ID:+2mBOcWQ.net
>>993
FreeTypeでテクスチャ作れ。
動的につくってもいいし予め作ってテクスチャ内の座標とサイズ併せて持ったデータとして置いとくのでもいい

996 :デフォルトの名無しさん:2014/12/10(水) 07:28:36.31 ID:Ii7h0n5Y.net
フォントってかOutline扱うライブラリってDirectXだとみんなそれぞれ作ってるんだろうけど
公開されてる奴はないんだね

GDIとかGDI+の奴ならいくつかあるんだけど

997 :デフォルトの名無しさん:2014/12/10(水) 10:20:39.37 ID:c+p3R8TX.net
GDIで生成したイメージをテクスチャに流せばいいだけなんだから、
独自で作る必要性がない。

998 :デフォルトの名無しさん:2014/12/10(水) 13:50:13.31 ID:9n4pVCzB.net
ノベルじゃないならフォント使わずに画像として予め作っておけばいい
欧米圏なら文字数少ないし

999 :デフォルトの名無しさん:2014/12/10(水) 14:35:33.30 ID:888KcvnA.net
BMFontってツールでフォントテクスチャ作ったら、文字の幅や高さ、次の文字までのドット数などの情報が入ったXMLファイルも一緒に出力してくれるよ。

1000 :デフォルトの名無しさん:2014/12/11(木) 08:10:09.27 ID:g7NuR/qo.net
日本語入力対応と文字のデコレーションで詰むんじゃないか?

1001 :デフォルトの名無しさん:2014/12/12(金) 00:28:15.29 ID:cPBKTkBG.net
directwrite使えばいいねん

1002 :デフォルトの名無しさん:2014/12/12(金) 06:44:54.99 ID:0qgG78th.net
http://blogs.msdn.com/b/chuckw/
のブログ更新されてないと思ってたんだけどfeedでエラーが出てて
今までリーダーに更新が表示されてなかった

1003 :デフォルトの名無しさん:2014/12/12(金) 07:18:14.32 ID:kPyyfOyu.net
文字幅取得だけならHFONT取得して出力するわけじゃないからCreateCompatibleDCで作ったまんま1x1のHDCにGetTextExtendEx使えばいいやん

1004 :デフォルトの名無しさん:2014/12/12(金) 10:50:51.23 ID:7CN2W1ZV.net
>>1002
ありゃ?
PIX for WindowsってVS 2013 Expressで使えるようになってたんか。
まぁ、今はCommunityがあるんで、有難味は減ったが。

総レス数 1004
244 KB
掲示板に戻る 全部 前100 次100 最新50
read.cgi ver 2014.07.20.01.SC 2014/07/20 D ★