【C++】 DirectX初心者質問スレ Part21 【C】 at TECH
[2ch|▼Menu]
[1からを表示]
50:デフォルトの名無しさん
09/01/08 20:12:39
<usingnamespace std>

51:デフォルトの名無しさん
09/01/08 20:17:46
URLリンク(research.microsoft.com)

52:デフォルトの名無しさん
09/01/08 23:12:39
仕事で普段.netフレームワーク(主にC#)を使ってて
趣味でゲーム作りしてみようと思ったんだけど
VC++.netでDirectX開発(DirectX+.netフレームワーク)って可能ですか?

C#でManagedDXとかXNAも検討して
結局、不都合が多く
C++かなと考えたんだけど
.netフレームワークは使いたいと思い、このスレで質問しました。

53:デフォルトの名無しさん
09/01/08 23:30:30
D3DXRotation○ と D3DXVec3TransformCoordの違いは

軸を中心に回転とその場で回転って感じでいいんですか?

54:デフォルトの名無しさん
09/01/08 23:36:58
>D3DXRotation○
そもそもそんな関数は存在しない

55:デフォルトの名無しさん
09/01/08 23:39:27
ごめんなさい
D3DXMatrixRotation○です

56:デフォルトの名無しさん
09/01/08 23:41:03
回転行列を作る関数と、ベクトルをトランスフォームする関数で、
全く違う用途が違う関数なんだが何を言っているんだ?

57:デフォルトの名無しさん
09/01/09 02:42:39
DirectSoundについて質問です。
色々なサイトを見ると最初にプライマリバッファを作り、次にセカンダリバッファを作ると載っているのですが、
MSDNのリファレンスを見ると少なくとも1つのセカンダリバッファが必要であるとしか書いていません。
実際にプライマリバッファを作らず、セカンダリバッファのみを作って音を鳴らしたところしっかり鳴りました。
プライマリバッファを弄らない場合でもプライマリバッファは作る必要があるのでしょうか?

58:デフォルトの名無しさん
09/01/09 08:47:11
プライマリのフォーマットを変更するために作る。
変更する必要がないなら作る必要もない。

59:57
09/01/09 10:39:31
>58
なるほど。
分かりやすい説明ありがとうございます。

60:デフォルトの名無しさん
09/01/09 11:43:12
Cについての質問です
CSVファイルをカンマ区切りで読み込みたいのですがやり方を教えてくれませんか?
今までVBAしかやっていなくて混乱しています

61:デフォルトの名無しさん
09/01/09 12:08:31
>>60
DirectXと何の関係が
↓で聞いてみたら
C言語なら俺に聞け(入門篇) Part 42
スレリンク(tech板)

62:デフォルトの名無しさん
09/01/09 12:46:27
>>61
すいません。ありがとうございます

63:デフォルトの名無しさん
09/01/09 23:47:58
質問させていただきます。
サンプルのスキンメッシュと、こちらのサイトを参考にアニメーションの勉強をさせていただいているのですが
URLリンク(www.shader.jp)
こちらのサイトのコードを見て実行してみたところ、F5でHLSLに切り替えようとしましたら
// setup the material of the mesh subset - REMEMBER to use the original pre-skinning attribute id to get the correct material id
m_pd3dDevice->SetTexture( 0, pMeshContainer->ppTextures[pBoneComb[iAttrib].AttribId] );

// Set CurNumBones to select the correct vertex shader for the number of bones
m_pEffect->SetInt( "CurNumBones", pMeshContainer->NumInfl -1);

// Start the effect now all parameters have been updated
UINT numPasses;
hr = m_pEffect->Begin( &numPasses, D3DXFX_DONOTSAVESTATE );
for( UINT iPass = 0; iPass < numPasses; iPass++ )
{
hr = m_pEffect->BeginPass( iPass );
// draw the subset with the current world matrix palette and material state
pMeshContainer->MeshData.pMesh->DrawSubset( iAttrib );
}

このあたりで、どうも挙動がおかしくなりHLSLでの描画ができない状態です。。
何が原因かわかる方はいないでしょうか・・

64:デフォルトの名無しさん
09/01/10 01:16:32
別に特に問題なく実行できるけど?
どうおかしくなるのか
なぜ、そこがおかしいと思ったのか書こうぜ
あとビデオカードの種類とか
頂点シェーダのバージョンとか定数レジスタの数とか

65:デフォルトの名無しさん
09/01/11 14:24:09
画面のカラー品質を16ビットに固定したいのですが
Direct3Dの機能で変更することはできるんでしょうか?

66:デフォルトの名無しさん
09/01/11 15:20:36
21世紀に32bppより下を使う意義とは…

67:デフォルトの名無しさん
09/01/11 15:30:01
ゲームのHPゲージの部分など大体ビルボードで描画されているのが多いですか?

68:デフォルトの名無しさん
09/01/11 15:45:41
たとえば3D格ゲーとかだと、ゲーム世界を描画するレイヤと、ステータスを表示するレイヤを分けてるから
ビルボードとかあんまし関係ないような気もする

逆にゲームキャラクターの脇にゲージを表示するような場合ならビルボードで描いてる気がする。

69:デフォルトの名無しさん
09/01/11 15:58:19
無きにしも非ずってことですな、
子官庁が泣く前に巣にもどるとしますわ。

お暇します。

70:デフォルトの名無しさん
09/01/11 16:00:46
スマートポインタとCOM理解できないやつはプログラムやらなくていい。

71:デフォルトの名無しさん
09/01/11 16:23:27
お前は本当にCOMを理解してんのかよ
どうせインタフェース取得して使ってるだけだろ

72:デフォルトの名無しさん
09/01/11 16:29:29
>>71

お前がCOMがC++のクラス(仮想クラスの延長)
ってことも知らないくせに出しゃばるなよ。

73:デフォルトの名無しさん
09/01/11 16:31:59
独り言はチラ裏に書いてろカス

74:デフォルトの名無しさん
09/01/11 16:41:13
COMなんて過去の技術で
知る価値なんてないのに・・

75:デフォルトの名無しさん
09/01/11 17:14:12
>>74

使いこなせないからって負け犬の遠吠えはするなw

恥を知れ。

76:デフォルトの名無しさん
09/01/11 17:22:41
>スマートポインタとCOM理解できないやつはプログラムやらなくていい。
何の脈略もなく、流れと関係ないことを突然喚く>>70みたいな奴って、
リアルでもコミュニケーションがまるでとれないんだろうね。

77:デフォルトの名無しさん
09/01/11 17:26:23
>>74
今会社で使いまくりだぞ・・・。

78:デフォルトの名無しさん
09/01/11 17:30:49
馬鹿が一つ覚えてはしゃぎ回る光景が、正に今ここに。

79:デフォルトの名無しさん
09/01/11 17:33:23
また質スレで雑談してるハゲ共がいるのか

80:デフォルトの名無しさん
09/01/11 17:43:39
COMないとWindows動かねーしw

81:デフォルトの名無しさん
09/01/11 17:49:23
>>80
そもそもWindows95発売当時はCOMが存在していないんだが、一つ覚えの知識はその程度。
どうせこの後、真っ赤になりながら恥の上塗りで言い訳を続けるんだろうけどさ。

82:デフォルトの名無しさん
09/01/11 18:10:08
95なんて化石を持ち出されても・・・

83:デフォルトの名無しさん
09/01/11 18:16:13
>>82
>81はWin95でゲーム作ってんだろうし別にいいんじゃないの?

84:デフォルトの名無しさん
09/01/11 18:16:40
COMについて熱く語るスレはここですか

85:デフォルトの名無しさん
09/01/11 18:23:39
てかCOMって何?w

86:デフォルトの名無しさん
09/01/11 18:27:50
>>82-83
顔を真っ赤にしながらの自作自演オツ

87:デフォルトの名無しさん
09/01/11 18:29:43
DirectX使うのに必要なCOMの知識なんてインターフェイスがどうとか
その程度あれば十分だと思うけどな

88:デフォルトの名無しさん
09/01/11 18:30:03
>スマートポインタとCOM理解できないやつはプログラムやらなくていい。

>COMないとWindows動かねーしw
>COMないとWindows動かねーしw
>COMないとWindows動かねーしw
>COMないとWindows動かねーしw

89:デフォルトの名無しさん
09/01/11 18:36:13
誘導
スレリンク(tech板)

適切なスレの選択も出来ない馬鹿はプログラムがどうこう言う以前だろ

90:デフォルトの名無しさん
09/01/11 18:46:32
COMにこだわってる阿呆は一人だけだろ。

91:デフォルトの名無しさん
09/01/11 18:48:05
.NETでおk

92:デフォルトの名無しさん
09/01/12 13:14:47
某ブログから抜粋
---------------
こんにちわ プログラム担当Uです。
私は主に3Dプログラミングとシステム周りの設計をしています。
使用言語はC++とOpenGLです。あえてOpenGLを選んだ理由は最近の3DプログラミングはDirectXなどの左手座標系から右手座標系に移動しつつあるからです。
(現にOpenGLはプレステ3のメインエンジンとして使用)

最近の私の仕事はグラフィクのUとIが作ったモデルデータを読み込んで動かす仕事をしています。
これからが大変だと思いますが、卒業制作や作品集に入れるつもりなので休日返上?で頑張りたいです。
----------------
そうなのか・・・?

93:デフォルトの名無しさん
09/01/12 13:19:39
なにがそうなの?

94:デフォルトの名無しさん
09/01/12 13:31:50
世界的にプレステより売れてるXBOXはDirectX9なの知ってて書いてるなら大したやつだと思うけど。
そもそも行列の問題でしかねぇんだし、DirectXでも右手座標が普通に使えるじゃねーか。

95:デフォルトの名無しさん
09/01/12 13:58:34
完全に座標系を誤解しているな。

96:デフォルトの名無しさん
09/01/12 14:02:09
そもそもOpenGLもDirectXもエンジンじゃなくてAPIだろって話

97:デフォルトの名無しさん
09/01/12 14:13:36
ビデオカードのアンチエイリアス設定をプログラムから制御したいのですがどうすればいいでしょうか?
ビデオカードのアンチエイリアス設定の「アプリ制御」に対応するようにしたいんですが・・・
検索して色々レンダーステートなど試してみたんですが中々上手く行かないので質問させてください。

具体的には

自分のPCのビデオカード(GeForce4 Ti4200)のアンチエイリアス設定には
オフ 2x 2xQ 4x 4xS 制御されるアプリケーション の6種類があるんですが

これを「制御されるアプリケーション」に設定して
プログラムを実行したら「4xS」のアンチエイリアスが効くようにしたいのです。

directXのバージョンは9.0cを使用しています。
よろしくお願いします。

98:デフォルトの名無しさん
09/01/12 14:16:20
SDKのサンプルコピペじゃ駄目なのか?

99:デフォルトの名無しさん
09/01/12 15:13:57
サーフェイスをMSAA対応で作成してちゃんと対応したプログラムを組む必要がある。

アプリでコンパネのヤツを気軽に設定してアンチエイリアスが使えたりはしない。

100:デフォルトの名無しさん
09/01/12 16:22:47
>>97
D3DPRESENT_PARAMETERSのMultiSampleType

101:デフォルトの名無しさん
09/01/12 23:01:34
VS2008でのプロジェクトの作成で少し疑問に思ったことが・・・

Visual C++ の win32API でDirectXを使用する 〇
Borland C++ の win32API でDirectXを使用する 〇
ならば
Visual C++ の C++/CLI でDirectXを使用する ?
これはどうなんでしょうか?
ライブラリを組み込んだら普通に使える予感がするんですが・・・


102:デフォルトの名無しさん
09/01/12 23:37:49
XNAやMDXが何で書かれているとお思いで?

103:デフォルトの名無しさん
09/01/12 23:41:34
んー独学で、感覚で打ってるのでそういうツールやインターフェイス、専門用語には疎いんです・・・
わかりやすくお願いします

104:デフォルトの名無しさん
09/01/12 23:47:05
URLリンク(slimdx.mdxinfo.com)
これのソースでも見れ。
ようは、こーゆーの作るための言語なんだから当然使える。

105:デフォルトの名無しさん
09/01/12 23:57:33
DirectXのライブラリはC++でできているので、WinAPIやC++/CLIも元を辿ればC++であることから使える
てところでしょうか?とりあえず使えることが分かったのでほっとしました。ありがとうございます。

106:デフォルトの名無しさん
09/01/13 10:29:31
全然違うけど結果は同じだからいいか・・

107:デフォルトの名無しさん
09/01/14 02:26:54
DirectX 10 って、Xp で動かないんですか?

108:デフォルトの名無しさん
09/01/14 02:29:18
そうだよ

109:デフォルトの名無しさん
09/01/14 04:03:34
#include <d3d9.h>
#include <d3dx9.h>
#pragma comment(lib, "d3d9.lib")
#pragma comment(lib, "d3dx9.lib")
#pragma comment(lib, "dxguid.lib")



って入れてっても'g_pD3DDevice' : 定義されていない識別子ですって出る
どうしてだろう
libフォルダとincludeフォルダは設定してある

110:デフォルトの名無しさん
09/01/14 05:52:34
DirectX以前だからスレ違い

111:デフォルトの名無しさん
09/01/14 08:22:31
>>109
それは自分で定義しないとだめでしょう

112:デフォルトの名無しさん
09/01/14 10:06:53
g_がつくとこみるとグローバル変数だな。
どこからコピーしてきてんだか知らないけど、全部持ってくれば。

113:デフォルトの名無しさん
09/01/14 19:06:03
ていうか根本的な部分が理解できてないだろ
Cからやり直せ


114:デフォルトの名無しさん
09/01/14 21:21:37
意味不明な質問かもしれませんが・・・。

DirectMusicの解放処理をするタイミングはDirectMusicクラスのデストラクタで大丈夫ですか?

CDXMusic::~CDXMusic()
{
m_performance->Stop(NULL, NULL, 0, 0);
m_performance->CloseDown();
m_loader->Release();
m_performance->Release();
m_segment->Release();
CoUninitialize();
}



115:デフォルトの名無しさん
09/01/14 21:37:05
終了処理メンバ関数作ってもいいし、好きにすればいいと思うけど何が不安なの?

116:デフォルトの名無しさん
09/01/14 21:50:30
>> 115 エスありがとうございます

もうひとつ質問なのですが

1>_Lib_DXMusic.obj : error LNK2001: 外部シンボル "_CLSID_DirectMusicPerformance" は未解決です。
1>_Lib_DXMusic.obj : error LNK2001: 外部シンボル "_IID_IDirectMusicPerformance8" は未解決です。
1>_Lib_DXMusic.obj : error LNK2001: 外部シンボル "_CLSID_DirectMusicLoader" は未解決です。
1>_Lib_DXMusic.obj : error LNK2001: 外部シンボル "_IID_IDirectMusicLoader8" は未解決です。
1>_Lib_DXMusic.obj : error LNK2001: 外部シンボル "_GUID_StandardMIDIFile" は未解決です。
1>_Lib_DXMusic.obj : error LNK2001: 外部シンボル "_CLSID_DirectMusicSegment" は未解決です。
1>_Lib_DXMusic.obj : error LNK2001: 外部シンボル "_IID_IDirectMusicSegment8" は未解決です。
C:\Documents and Settings******** : fatal error LNK1120: 外部参照 7 が未解決です。

と出るのですが何が原因でしょうか?

これはインクルードしてあります #include <dmusici.h>

117:デフォルトの名無しさん
09/01/14 21:59:29
何を見て勉強してるのか知らないけれど、資料どおりに書くことからはじめた方がいいと思う。

118:デフォルトの名無しさん
09/01/14 22:03:05
>>166
DirectXSDKインストールしろよw

119:116
09/01/14 22:24:35
ゲームコーディング2を見ながら勉強しています。

サンプルをビルドしてみたのですが 116 と同じエラーが出ます。

DirectXSDK 2008 Novenber
DirectXSDK 2007 August
インストールしてあって両方VC++ディレクトリのインクルードファイルとライブラリファイルに追加してあります

リンカ→入力のdxguid.libなど本に書いてあるやつはすべて追加されています

誰か解決方法ご教授お願いします

120:デフォルトの名無しさん
09/01/14 22:26:41
本に書いてあるやつ、なんていわれてもわからん
ちゃんとリンクしてあるlibを全部書け

121:デフォルトの名無しさん
09/01/14 22:27:10
>両方VC++ディレクトリのインクルードファイルとライブラリファイルに追加してあります

海に帰れ

122:デフォルトの名無しさん
09/01/14 22:29:19
申し訳ございません

dxerr9.lib gdiplus.lib d3dxof.lib d3dx9.lib d3dx9d.lib d3d9.lib
dxguid.lib winmm.lib Version.lib comctl32.lib

です

123:デフォルトの名無しさん
09/01/14 22:50:32
とりあえず2007と2008のライブラリの優先順位をいれかえてみたら

124:116
09/01/14 22:50:35
原因がよく分からないのでSDKを再インストールしてみます

125:デフォルトの名無しさん
09/01/14 22:52:07
>>123

もうアンインストールしちゃいましたw

たぶんそれかもしれません

お昼にビルドできたノートパソコンは優先順位が逆だったと思います

結果が出たら報告します

レスありがとうございます

126:デフォルトの名無しさん
09/01/14 23:09:08
優先順位以前に混在させるなよ

127:デフォルトの名無しさん
09/01/14 23:17:24
色々アドバイスありがとうございます

優先順位を変えたら、無事ビルドできました


128:デフォルトの名無しさん
09/01/14 23:54:34
DirectMusicで音楽を再生するプログラムを勉強しているのですが
wavだと要領をかなり取るのでoggで再生しようと思うのですが

oggを読み込む→wavに変換→wavを再生 って感じでおkですか?

129:デフォルトの名無しさん
09/01/14 23:56:18
容量です すいません;

130:デフォルトの名無しさん
09/01/15 00:00:18
wavはコンテナであって、容量を食うかどうかは中の圧縮形式次第
DirectMusic云々以前に基本的なところから出直せ

131:デフォルトの名無しさん
09/01/15 00:05:03
そのまま再生する関数あるぞ?
教えないけどな

132:デフォルトの名無しさん
09/01/15 01:04:42
不動高校のまとめ

●殺人者    :10名
●犯罪者    :2名
●死亡者    :19名
●行方不明者 :1名


133:デフォルトの名無しさん
09/01/15 06:22:51
>>128

そんな古臭い方法誰も使わないぞ

134:128
09/01/15 07:45:17
>> 130

勉強不足でした、すいません

128のはogg再生の手順としては一般的ですか?

135:デフォルトの名無しさん
09/01/15 09:38:34
ビルボード用のテクスチャも2のn乗正方形にしないとまずいですか?

136:デフォルトの名無しさん
09/01/15 09:42:39
なにをもってまずいとするのか、まずは定義を明確にしろ。

137:デフォルトの名無しさん
09/01/15 15:33:33
135じゃないが、テクスチャのサイズは2のn乗にしないと
ビデオカードによっては正常に動作しないらしいが
レンダリングターゲットのサーフェイスとして生成したテクスチャも
2のn乗のサイズにしなきゃいけないの?
それかなり無駄な領域があるし絶対おかしいと思うんだけど
そこんとこどうなの?

138:デフォルトの名無しさん
09/01/15 15:37:37
普通のテクスチャでも無駄な領域はあるがこっちは絶対おかしいとは思わないんだな

139:デフォルトの名無しさん
09/01/15 15:41:01
で、実際のところどうなんですか?

140:デフォルトの名無しさん
09/01/15 15:45:38
ビデオカード次第
それ以上でもそれ以下でもない

141:デフォルトの名無しさん
09/01/15 15:48:02
そっちの方がビデオカード的に都合がいいんだからしょうがない

142:デフォルトの名無しさん
09/01/15 16:30:17
都合が良いかどうかもビデオカード次第

143:デフォルトの名無しさん
09/01/15 16:41:02
2のn乗じゃないと不具合が出るビデオカードってそんなに多いの?
ていうか具体的にはどんな不具合が発生するの?

144:デフォルトの名無しさん
09/01/15 16:48:50
メーカーにお聞きになればいいと思いますよ

145:デフォルトの名無しさん
09/01/15 16:53:51
不具合が出るビデオカードは現在ほとんどないと思われる
しかし、2のn乗じゃないとパフォーマスンが落ちる場合があると
公式でアナウンスされている以上従っといた方が無難
ターゲットとなり得る全てのビデオカードで
パフォーマンステストして問題ないと判断したなら別だが・・・
開発マシンでは問題ないが別のビデオカードだと処理落ちなんて
原因のよくわからない不具合で悩みたくないしな

146:デフォルトの名無しさん
09/01/15 16:57:20
見かけ上は2の累乗でないテクスチャでも
VRAM上では2の累乗になるように
余分な(無駄な)領域が確保されている場合もあるそうだ
あくまでビデオカード次第だが

147:デフォルトの名無しさん
09/01/15 17:11:07
なるほどー
ありがとうございます

148:デフォルトの名無しさん
09/01/15 17:11:30
ここで2の累乗云々騒いでいる奴って、ビデオカードの能力の確認方法や、
どのCAPSが該当する制約を示しているかすら調べてないんだろうな。

149:デフォルトの名無しさん
09/01/15 17:13:23
なぜそうなるw

150:デフォルトの名無しさん
09/01/15 17:26:04
むかーし、あったね
256 までの 2の累乗の正方形でないと受け付けないビデオカード

RivaTNT とかがまだ最新だった時代。

151:デフォルトの名無しさん
09/01/15 17:37:25
CAPS上は制約がないけど内部では何やってるか分からんって話

152:デフォルトの名無しさん
09/01/15 17:57:39
質問です。

D3DXMatrixRotationYawPitchRoll で作った行列を、逆にオイラー角度式に逆算するD3DX関数はありますでしょうか?
いや、一応一通り見て「なさそうだ」とは思ったのですが・・・

一応、YawPitchRollのように角度のかけ方を定めれば、逆算自体は可能なようなのですが。
URLリンク(www7.atwiki.jp)

153:デフォルトの名無しさん
09/01/15 18:13:32
スレリンク(tech板)

詰め物に関してはここの最後のあたり読むとよろしい。


154:デフォルトの名無しさん
09/01/15 18:49:39
Direct3D10+DXUTの組み合わせで、表示色がおかしくなるんだがだれか同様の現象を体験したことない?
例えばTutorial12のエフェクトファイルの110行目、ピクセルシェーダの出力部分に
cTotal.rgb = float3(.5, .5, .5)
と追加してから実行すると、なぜか#bcbcbcの色で表示される。
グラボはGeForce9600MGT。
Tutorial3みたいにDXUTを使っていないのでは正常に表示されるから、DXUTのせいだと思うんだけど。

155:デフォルトの名無しさん
09/01/15 19:37:55
>>153
CPUじゃねーか

156:31
09/01/15 23:18:53
31です。以前質問させていただいたきり他の事で忙しくプログラミングできませんでした。
あのあと、結局いろいろ試してみましたが結局アニメーションのつなぎはうまくいきませんでした・・・
そもそも、ほとんど同じモーションなので座標変換や回転もないようなモーションですら変更できないという。
何がいけないのでしょう。。xファイル出力するときに何か他の設定が必要なのだろうか・・

157:デフォルトの名無しさん
09/01/15 23:54:05
ソースも出さずにその「独自」仕様とやらをエスパーしろとな?

158:デフォルトの名無しさん
09/01/16 01:25:05
>>何がいけないのでしょう

こんなところで聞いてるのがいけない。

159:デフォルトの名無しさん
09/01/16 06:37:45
main.obj : error LNK2019: 未解決の外部シンボル "long __cdecl LoadTextureFromImageFiles(char const *,struct IDirect3DTexture9 * *,char const *,struct IDirect3DDevice9 *)" (?
LoadTextureFromImageFiles@@YAJPBDPAPAUIDirect3DTexture9@@0PAUIDirect3DDevice9@@@Z) が関数 "long __cdecl SetupFVFTexture(struct IDirect3DDevice9 *)" (?SetupFVFTexture@@YAJPAUIDirect3DDevice9@@@Z) で参照されました。

これがどうしても解決できません。ライブラリとの整合性が取れてないエラーとのことで、インクルード/ライブラリのフォルダ設定・並び順、プロジェクトとの.libの関連付けもいじってみましたが上手くいきません。
それ以外に何が問題として考えられますか?

160:デフォルトの名無しさん
09/01/16 07:34:05
>>159
LoadTextureFromImageFiles に一致する情報は見つかりませんでした。
Googleに聞いてもわからない

161:デフォルトの名無しさん
09/01/16 08:56:56
>>159
自分で定義した関数だろどう考えても。

162:159
09/01/16 09:19:13
>>161の言う通り、プロトタイプ宣言した物を実装していませんでした。サンプルからコピペのミスでした。

163:デフォルトの名無しさん
09/01/16 10:31:05
陰線消去したくてZバッファ法というのをやってみたのですがうまくいきません
エスパーお願いします

164:デフォルトの名無しさん
09/01/16 10:51:03
>>163
それはグラボのせい
GeForce GTX 285を使うときっと治る

165:デフォルトの名無しさん
09/01/16 13:04:27
試しにZバッファ法というのをやってみたらうまくいきました

166:デフォルトの名無しさん
09/01/17 17:34:41
D3D の質問です。

フルスクリーンでない、ウィンドウのアプリを作っているのですが、
ウィンドウのサイズが変更されたときに、画像が縦に伸びたり
横に伸びたりするので困っています。
正方形が正方形のまま、拡大して欲しいのですが、どうすればいいのでしょうか

C# とかじゃなくて、Windows API で作っています。
よろしくおねがいします。

167:デフォルトの名無しさん
09/01/17 18:00:11
矩形を指定してdevice.Presentする。

168:デフォルトの名無しさん
09/01/17 19:51:21
Reset

169:デフォルトの名無しさん
09/01/18 02:43:41
>>168さんの reset でできましたー!
>>167さんのは、ごめん、うまくいきませんでした。

170:デフォルトの名無しさん
09/01/18 02:44:25
>>169です。

テクスチャを一度 Release して、もういちど読み直さないと行けないのがすこし面倒でした。

171:デフォルトの名無しさん
09/01/18 10:33:18
こんにちわ、DirectSoundでwavファイルを再生しようと思い
ゲームコーディング2という本を見ながらコードを書いていたのですが
同じようにやっても再生されません
コードに間違いがないか5回くらい見直しました

全てのコードを書くと長くなるので大まかな流れだけ書きます

DirectSoundオブジェクトを生成 Wavファイルを読み込む セカンダリバッファ作成
バッファに音データを書き込む 再生という手順です

一応コードをUPするので違うところがあれば指摘してもらえると幸いです
URLリンク(www7.uploader.jp)

宜しくお願いします

172:デフォルトの名無しさん
09/01/18 11:07:48
>>171
Play()の戻り値見てないだろ?
DSERR_PRIOLEVELNEEDED が返ってきてるよ。
SetCooperativeLevel()呼べばいいと思うよ。

173:デフォルトの名無しさん
09/01/18 12:12:25
DirectSoundを初期化する時に

// 協調レベルの設定
if(FAILED(m_pSound->SetCooperativeLevel(hWnd, DSSCL_EXCLUSIVE))) {
return E_FAIL;
}

としてありますが上手くいきません

174:デフォルトの名無しさん
09/01/18 12:34:22
やってみたのかよ。
Play直前に呼んだら鳴ったぞ

175:デフォルトの名無しさん
09/01/18 12:36:11
実際やりもしない、戻り値を確認もしないでただ質問するだけってどうなんだろうね。

176:デフォルトの名無しさん
09/01/18 12:42:20
ところで実際の本ではどうなってるんだ?
ウィンドウができる前にSetCooperativeLevel呼んだって意味がないだろうに。

177:デフォルトの名無しさん
09/01/18 12:49:10
ついでにデバッグしてみたが、、、

// gamemainの初期化
_gamemain = new CGameMain();
hr = _gamemain->FInit(m_device);
_gamemain->GetHWND(m_hwnd);

これを
_gamemain->GetHWND(m_hwnd);
hr = _gamemain->FInit(m_device);
のように入れ替えれば動作した。元はどうなってんの?

178:デフォルトの名無しさん
09/01/18 12:52:30
ごめんなさい

戻り値の確認方法分からなくてクラスビューとかブレークポイントとかいろいろ試してました

179:デフォルトの名無しさん
09/01/18 13:05:14
>>178

かわいいなお前w

180:デフォルトの名無しさん
09/01/18 14:21:13
Zバッファと深度バッファというのはまったく同じと考えていいんですか
それとも、文書を読むときは微妙な差異に気をつけるべきですか


181:デフォルトの名無しさん
09/01/18 16:36:07
DirectInputってライブラリに組み込んだほうがいいですか?

182:デフォルトの名無しさん
09/01/18 16:57:44
何のライブラリよ

183:デフォルトの名無しさん
09/01/18 17:32:02
DirectInput を使わないで、
やりたいことが全て出来てる or 出来るのだったら
組み込まなくていいんじゃね?

184:デフォルトの名無しさん
09/01/18 17:50:02
リティアクス・ネマインズライブラリーです

物理演算なども組み込まれています

DirectX9対応です

185:デフォルトの名無しさん
09/01/18 17:57:28
URLリンク(www.google.co.jp)

186:デフォルトの名無しさん
09/01/18 18:00:59
>>185

自作の物理演算ライブラリなので探しても出ないです

187:デフォルトの名無しさん
09/01/18 18:06:38
>>181
ポールペンって絵を描くための道具に含んだほうがいいですか?

188:デフォルトの名無しさん
09/01/18 18:15:52
俺の環境では、なくても動くから必要ないと思うな。
そのライブラリの中に使いたいものがあるなら別だけど

189:デフォルトの名無しさん
09/01/18 18:19:25
DirectInputを使うかどうかは別として
入力インターフェースの提供は最優先だと思うが

190:デフォルトの名無しさん
09/01/18 18:24:57
>>181
必要かどうかは仕様を知っている自分が判断しろ。
指示待ち人間で、他人の指示がないと動けないのなら、
他人にわかるようにきちんと仕様を説明しろ。
中途半端な情報で説明した気になるな。

191:デフォルトの名無しさん
09/01/18 18:26:57
質問する場所を間違えてね?
内容を加味すると、もっとも適切な相手は占い師だろ。

192:デフォルトの名無しさん
09/01/18 18:27:43
公開して他人に使わせようって言うんだろ?
変わった用途じゃない限りInputは付けておくべきだろ

193:デフォルトの名無しさん
09/01/18 18:30:27
演算ライブラリならDirectInputどころか、
そもそもDirectXスレとは何の関係もない。

194:デフォルトの名無しさん
09/01/18 19:00:52
誰か>>154再現しない?
再現しなかったって報告ならそれはそれでありがたいんだけど……

195:デフォルトの名無しさん
09/01/18 23:39:33
引数を渡す方法が分かりません

inline void SetAmbient(D3DCOLORVALUE &col) { m_material.Ambient = col; };

CDXMaterial material;

material.SetAmbient();

1つ例を見せていただけませんか・・・


196:デフォルトの名無しさん
09/01/18 23:40:15
MSNDでD3DCOLORVALUEについて調べたのですが解決方法が分からなくて・・・

197:デフォルトの名無しさん
09/01/18 23:46:42
まずはC言語の勉強が先だ

198:デフォルトの名無しさん
09/01/18 23:50:45
>>196

D3DCOLORVALUE col;
col.r = 1.0f;
col.g = 0.0f;
col.b = 0.0f;
col.a = 1.0f;
material.SetAmbient(col);

こんな感じ?
なんか別に変なところ無い気がするけど・・・

199:デフォルトの名無しさん
09/01/18 23:52:05
参照渡しが解からんと言う意味ならC++の領分だが
そもそも質問の意図が良くわからんので
「日本語でおk」としかいいようがない

200:デフォルトの名無しさん
09/01/19 00:13:20
もしかして入れても反映しないから悩んでるんじゃね?
光源計算してないときはLightEnableをオフに設定しないと表示されなくてだな

ってそんなこと聞いてない?

201:デフォルトの名無しさん
09/01/19 11:54:28
例を見せてと言ってるんだし、>>198でよさげ・・・

202:デフォルトの名無しさん
09/01/19 11:55:20
失敗してるんなら、自分のとこでどうやったらどうなったくらい書けば早いのにな。

203:デフォルトの名無しさん
09/01/19 17:07:08
test

204:198
09/01/19 17:08:22
D3DCOLORVALUE col = D3DCOLOR_COLORVALUE(, , ,);

でcolを引数で渡そうとしてました・・・

205:デフォルトの名無しさん
09/01/19 17:14:35
やっぱり判らない。 ていうかお前が判ってないから無理。
さっさとCの初心者スレでソース*全部*晒して質問してこい。

206:デフォルトの名無しさん
09/01/19 17:16:02
>> すいません勉強不足でした

ちなみに187さんの例で解決しました

207:デフォルトの名無しさん
09/01/19 17:34:24
初期化したいってことか?
D3DCOLORVALUE colorValue = {0,0,0,0};
ってC/C++の話だな。参照(&が付いてる)の話だったらこれもC++


208:デフォルトの名無しさん
09/01/19 22:29:43
D3DXMATRIXA16
をnewした後にdeleteするとメモリーのバグを引き起こすんだが、解決策はないものか・・

209:デフォルトの名無しさん
09/01/20 12:35:27
D3DXMATRIXを使うとか。

210:デフォルトの名無しさん
09/01/21 00:17:09
そもそもバグがあるとは思えないが、
A16の実装自体たいしたことないし
自前の作れば?

211:デフォルトの名無しさん
09/01/21 08:46:50
>>208
ヘッダファイルを見れば分かるけど、
A16系は16byteアライメントのためにnewをオーバーロードしてる。
ステップ実行でちゃんとこのnew/deleteが呼ばれてるか確かめてみれば?

#define new DEBUG_NEW

とかやってて死亡とかありがち。

212:デフォルトの名無しさん
09/01/21 17:02:37
トゥルータイプ形式のアンチエイリアスがかかったフォントを表示するにはどのようにすればいいのでしょうか。
GetGlyphOutlineのAPI使ってもグレースケールのビットマップデータしか得られませんでした。

213:デフォルトの名無しさん
09/01/21 17:24:46
そのグレースケールのデータを
α値としてテクスチャに書き込んで表示

参考
URLリンク(marupeke296.com)

214:デフォルトの名無しさん
09/01/21 17:29:34
それって結局出力も一色になりませんか?
それとも半透明化するときに、うまい方法があるのでしょうか・・・

215:デフォルトの名無しさん
09/01/21 17:37:19
グレースケールのフォントをα値にして半透明で描画すれば、それでちゃんと
アンチエイリアスかかるが、何を求めているんだ?

216:デフォルトの名無しさん
09/01/21 17:39:45
>>214
言ってる意味が分からん
A8R8G8B8とかA4R4G4B4とかαチャンネル付きテクスチャを作る
RGBは表示したいフォントの色にして
Aの値にグレースケールの値を入れる

αの設定(テクスチャのα値*ポリゴンのα値)
デバイス->SetTextureStageState(0, D3DTSS_ALPHAARG1, D3DTA_TEXTURE );
デバイス->SetTextureStageState(0, D3DTSS_ALPHAOP , D3DTOP_MODULATE );
デバイス->SetTextureStageState(0, D3DTSS_ALPHAARG2, D3DTA_DIFFUSE );

217:デフォルトの名無しさん
09/01/21 17:40:38
XPだと、ディスプレイのRGB出力の並びに応じて、ピクセル未満の補間をするために
文字のRGBを設定していると思うのですが、その情報をどのように手にすればいいのかと思いまして・・・

218:デフォルトの名無しさん
09/01/21 17:43:14
ClearTypeをしたいなら、GetGlyphOutlineにはそういう機能はない。
GetGlyphOutlineは単純に大きめに描画して縮小したデータを返すだけ。

219:デフォルトの名無しさん
09/01/21 17:44:59
それ以前にアルファチャンネルを理解してない悪寒

220:デフォルトの名無しさん
09/01/21 17:48:39
端的にいうと、Color=AARRGGBB
             ↑ここでしょ
普通にフォントを表示することはすでにできています。

221:デフォルトの名無しさん
09/01/21 17:52:57
じゃあ、そこの色(値)がどうRGBに影響するのか言ってみろ

222:デフォルトの名無しさん
09/01/21 18:10:06
描画先 Ad Rd Gd Bd 描画元 As Rs Gs Bsとすれば
As/255=a 1-a=bとおいて
結合後 (Ad) (Rs*a+Rd*b) (Gs*a+Gd*b) (Bs*a+Gd*b)でしょ。
単にかけ合わせの比率じゃないんですか?

223:デフォルトの名無しさん
09/01/21 18:11:48
ClearTypeは、CLEARTYPE_QUALITYかCLEARTYPE_COMPAT_QUALITYを
指定してフォント作って、GDIのテキスト描画機能を使うくらいしかAPIでの
サポートは無いと思う。

224:デフォルトの名無しさん
09/01/21 18:28:05
文字の縁の外にむかって透明度を上げていけば
背景と馴染んでアンチエイリアスがかかるよね?って話
どういう段階で透明度を変えるかの情報としてグレースケールの情報を使う

225:デフォルトの名無しさん
09/01/21 21:58:00
デバイスをリセットする時に、テクスチャとかも一度破棄しないといけない場合があるけど、
その場合って元の画像ファイルを再び最初から読み込むのがいいの?
それとも、アプリケーションの一時ファイルみたいなのに画像のビット列だけ保存してしまうとか、どうしてるの?

226:デフォルトの名無しさん
09/01/21 22:10:18
状況に合わせて自分の好きなようにやれよ。
なんで何でもかんでもお伺いを立てて、逐次指示されないと行動出来ないんだよ?

227:デフォルトの名無しさん
09/01/21 22:12:07
好きにすればいいんじゃない?
その辺の判断がつかないならおとなしくD3DPOOL_MANAGED使っとけ
DirectX10からデバイスロストなくなるみたいだし
いずれは気にしなくてよくなる領分だ

228:デフォルトの名無しさん
09/01/22 00:29:38
>>DirectInputのDIJOYSTATE2のlYって下が+で上が-ですか?

229:デフォルトの名無しさん
09/01/22 05:51:55
LightWaveでボーン仕込んでXファイルのエクスポータで出力した。
そのファイルを読み込んでウエイトの値を調べたらどの頂点も0だったんだけど
これって正常に出力されてないってこと?

230:デフォルトの名無しさん
09/01/22 06:31:05
エクスポータがどこまで対応してるのか調べた方がいいんじゃないかな。
あとたぶんここじゃなくてLightWaveのスレで聞くべきじゃないかなそれは。

231:デフォルトの名無しさん
09/01/22 18:10:03
// DirectInputオブジェクトを作成
if(FAILED(DirectInput8Create(GetModuleHandle(NULL), DIRECTINPUT_VERSION, IID_IDirectInput8, (VOID**)&m_pDInput, NULL))) {
return E_FAIL;
}

// DirectInputDeviceオブジェクトを作成
if(FAILED(m_pDInput->CreateDevice(GUID_SysMouse, &m_pKeyDevice, NULL))) {
return E_FAIL;
}

// デバイスをマウスに設定
if(FAILED(m_pKeyDevice->SetDataFormat(&c_dfDIMouse2))) {
return E_FAIL;
}

// 協調レベルの設定
if(FAILED(m_pKeyDevice->SetCooperativeLevel(hWnd, DISCL_NONEXCLUSIVE | DISCL_FOREGROUND))) {
return E_FAIL;
}

// デバイスを取得する
m_pKeyDevice->Acquire();

この設定で初期化して実行したのですがこのアプリが起動しているときに他のウィンドウをクリック
すると強制終了してしまいます

原因エスパーしてみてもらえませんか
お願いします

232:デフォルトの名無しさん
09/01/22 18:11:51
デバッグしなさい

233:デフォルトの名無しさん
09/01/22 18:56:16
解決しました

return E_FAILで落ちてました

ありがとうございます

234:デフォルトの名無しさん
09/01/22 21:23:31
スレリンク(gamedev板:609-番)

235:デフォルトの名無しさん
09/01/22 21:33:01
すくなくとも公式サイトのはちゃんと出力される

236:デフォルトの名無しさん
09/01/22 22:35:00
229です
もしかして、D3DXLoadMeshFromXで読み込んだメッシュの頂点情報ってウエイトは含まれてないんですか?


237:デフォルトの名無しさん
09/01/22 22:44:34
ファイル自体のウエイトはどうなってるんだ?


238:デフォルトの名無しさん
09/01/22 23:33:50
>>237
ファイル見たら、ちゃんと設定されてました
ってことは読み込みがだめなのか・・・

239:デフォルトの名無しさん
09/01/23 00:18:05
>>238
スキンメッシュは専用の関数が合ったはずだが

240:デフォルトの名無しさん
09/01/23 09:09:25
\(^o^)/ I'm a dreamer! ひそむパワー!

                      ヘ(^o^)ヘ
                        |∧  私の世界
                    /  /
                (^o^)/
               /(  ) 夢と恋と不安で出来てる
      (^o^) 三  / / >
\     (\\ 三
(/o^)  < \ 三 でも想像もしないもの
( /
/ く 隠れてるはず!

241:デフォルトの名無しさん
09/01/23 09:10:16
DirectInputでマウスやキーボード使うなよ
てかXInputの時代

242:デフォルトの名無しさん
09/01/23 12:23:34
Direct3Dで複数のウィンドウに同一のテクスチャを表示したいのですが、
この場合、ウィンドウごとにデバイスを作成して、
デバイスごとにわざわざ同じテクスチャを何度も読み込むしかないのでしょうか。
・一つのテクスチャを複数のデバイスで共用する
あるいは
・一つのデバイスで複数のウィンドウに描画する
というようなことは出来ないのでしょうか。どなたがご教示下さい。


243:デフォルトの名無しさん
09/01/23 12:28:45
DirectX3D始めようと思うんですが、なにからすればいいですか?
どのぐらいの期間である程度使えるようになってくるんですか?

244:デフォルトの名無しさん
09/01/23 12:35:54
なにが分かっていないのかも分かってない人間に
ものを教えることは非常に難しい
とりあえず出来る範囲で自分でやって
具体的な質問が出来たときにもう一度おいで

245:デフォルトの名無しさん
09/01/23 13:12:03
>>243
sample動かしてソースを眺めてあきらめろ

246:デフォルトの名無しさん
09/01/23 13:24:42
もう一度おいでとか言われるとつらい
あきらめろとか言われると燃える
しかしthx

247:デフォルトの名無しさん
09/01/23 14:05:04
>>242よく知らんけどデバイスの画素フォーマットが同じなら使い回せんじゃねーの

248:デフォルトの名無しさん
09/01/23 14:14:03
1. 開発環境をダウンロードする。
2. 現在の技量と熱意次第だね。とりあえず、そんなことも判らない君は技量は初学者レベルですぐ飽きると思うので 100年はみておこう。


249:デフォルトの名無しさん
09/01/23 14:19:22
D3DPRESENT_PARAMETERS で hDeviceWindow をとっかえひっかえして reset
すればいけるんじゃねーの?

あ、そうすると、テクスチャいちいち読み直す必要があるのか。だめじゃん。

250:デフォルトの名無しさん
09/01/23 14:25:53
>>242
つCreateAdditionalSwapChain

251:249
09/01/23 14:30:40
なんだ、Present の第三引数を描画したいウィンドウにすれば良さそうじゃん。

252:デフォルトの名無しさん
09/01/23 15:31:21
IDirectXFileから、ID3DXFileに変わって、
保存方法の流れがヘルプにかかれなくなったこともあって、
なんかアホみたいに使いにくくなっている気がするんですけど、
IDirectXFileData::GetData的なものは諦めるとしても、
IDirectXFileSaveObject::SaveTemplatesの様な動作をさせるコトてできないんですか?

253:デフォルトの名無しさん
09/01/23 16:47:47
質問です。
何か手順の間違いの指摘や、避ける方法はないでしょうか?

下記のように、すでにAnimationSetに登録されているAnimationを削除した後、新たにアニメーションを追加するとメモリーリークするようです。
DirectXの初期化と、下記コードのみの最小構成でも起こりました。

下記ですと
D3DX: MEMORY LEAKS DETECTED: 4 allocations unfreed (54 bytes)
54byteということで、"1\0"で2バイト、RSTそれぞれを合計すると20+16+16=52ですから、丁度アニメーションがそのままリークした換算となります。
これは数を増やしてみたり、渡すRSTの量を変えたりしても同様の結果がでました。

削除だけ。追加だけという場合はリークせず、削除&追加をした時のみリークするようです。
察するに、削除といっても内部ではカウンターを減らしているだけで、追加の際「delete せずに上書きしてしまう」ことによるライブラリ側のケアレスミスな気がします。

Microsoft DirectX SDK (March 2008)
Microsoft DirectX SDK (November 2008)
両方で再現しました。

以下コードです。
CComPtr<ID3DXKeyframedAnimationSet> test;
D3DXCreateKeyframedAnimationSet("Test", 4800, D3DXPLAY_LOOP, 2, 0, NULL, &test);
D3DXKEY_QUATERNION r; // 中身を入れていませんが、中身をきちんとした値にしても結果は同じでした
D3DXKEY_VECTOR3 s;
D3DXKEY_VECTOR3 t;
HRESULT hr;

hr = test->RegisterAnimationSRTKeys("1",1, 1, 1, &s, &r, &t, NULL);
hr = test->RegisterAnimationSRTKeys("2",1, 1, 1, &s, &r, &t, NULL);
hr = test->UnregisterAnimation(0);
hr = test->RegisterAnimationSRTKeys("3",1, 1, 1, &s, &r, &t, NULL);


254:デフォルトの名無しさん
09/01/23 16:50:08
追加情報です。
どうやらリークするのは、上書きした側の "3" のアニメーションのようです。
"3AAAA"など、最後のアニメーションの名前を長くしたところ、それにあわせてリーク量が増えました。

つまり「新規登録したアニメーションはちゃんとdeleteするが、上書き登録したアニメーションはdeleteしない」という動きのようです。

255:デフォルトの名無しさん
09/01/23 18:18:34
容易にライブラリのバグだと疑うな。

256:242
09/01/23 18:49:22
>>247 >>249 >>250
いくつも方法があるみたいですね。一つ一つ検討してみることにします。
御回答どうもありがとうございました。


257:デフォルトの名無しさん
09/01/23 20:36:57
勝手に Release されてたら気持ち悪いだろうが。

258:デフォルトの名無しさん
09/01/23 20:42:13
ID3DXFileSaveObject使って、STRINGをXファイルに保存するとき、
何故か2バイト文字が変に変換されて保存されてしまいます。
たとえば、
"田中太郎 -abcd- 鈴木次郎"
なら、
"\223\田\222\中\221\太\230\郎\201\ -abcd- \227\鈴\226\木\216\次\230\郎"
の様な具合です。
\223は、C言語のエスケープシーケンスで8進定数のことらしいと言うことまでは分かったのですが
(田は\0x93,\0x63(\223,\143)なので) '\田'とか出てきたり動作がかなり変です。
始末の悪いことにID3DXFileEnumObjectで読み込んでも元に戻りません。
何か問題の所があるのでしょうか。

char strDxTemplate[] ="xof 0303txt 0032\ntemplate ID { <60F23340-4686-472f-AA91-4D1212D26476> STRING strName; DWORD dwID;} ";
std::vector<char> Buff; DWORD dwBuff = 0xff00;
const char strName[] = "田中太郎 -abcd- 鈴木次郎"; LPCSTR strNameBuff = strName;
LPD3DXFILE pDxf; LPD3DXFILESAVEOBJECT pDxfSaveObj; LPD3DXFILESAVEDATA pDxfIDData;

D3DXFileCreate(&pDxf);
pDxf->RegisterTemplates(strDxTemplate, strlen(strDxTemplate));
pDxf->CreateSaveObject("test.x", D3DXF_FILELOAD_FROMFILE, tc - _T('0'), &pDxfSaveObj);
Buff.resize(Buff.size() + sizeof(strName));
memcpy(&Buff[Buff.size() - sizeof(strName)], strName, sizeof(strName));
Buff.resize(Buff.size() + sizeof(dwBuff));
memcpy(&Buff[Buff.size() - sizeof(dwBuff)], &dwBuff, sizeof(dwBuff));
pDxfSaveObj->AddDataObject(IDID, NULL, NULL, Buff.size(), &Buff[0], &pDxfIDData);
pDxfSaveObj->Save();

pDxfIDData->Release(); pDxfSaveObj->Release(); pDxf->Release();

SDKのバージョンは たぶんMarch 2008
そして、std::vectorの使い方が無茶苦茶なのは気にしないでください。

259:デフォルトの名無しさん
09/01/23 21:04:13
もう1ヶ月やってるのにウィンドウ作ってテクスチャを表示することすらできない・・・
本とか見ても著者が作ったクラスとか構造体のことについて触れてなくて解析するのが大変だ
手取り足取り教えてるサイトとかありますか?

260:デフォルトの名無しさん
09/01/23 21:29:20
本とか読むより、DirectX SDK のチュートリアルやった方がいいぜ?


261:デフォルトの名無しさん
09/01/23 22:01:37
>>258
const char strName[] = "田中太郎 -abcd- 鈴木次郎";
この時点でおかしくね?

262:デフォルトの名無しさん
09/01/23 22:11:38
今時Ansiでビルドなんて天然記念物級だよ

263:デフォルトの名無しさん
09/01/23 22:24:46
でも、XFileのリファレンスをみると
STRINGテンプレートはASCIIのBYTE列ってあるぜ
やっぱ、これが原因じゃね?

264:デフォルトの名無しさん
09/01/24 01:12:43
ウィンドウが作れないならDirectX以前の問題。
DirectXの本なんて読んでもWindows初心者には理解できないのは当然だ。

265:デフォルトの名無しさん
09/01/24 01:16:02
GAME CODINGって本のサンプルは書き写せばそのまま動くから
Windowsプログラミングに不安の残る貴方にもおすすめですよ

266:デフォルトの名無しさん
09/01/24 02:37:03
PIX って便利だね。

初めて知った。

267:デフォルトの名無しさん
09/01/24 03:04:02
まるぺけの最小コードを動かしてみて、猫でもも読んで、MSDNで確かめて、
ウィンドウが作れたのが1年半前
今では立派なサンデーコピペプログラマですw
まー、APIスレの範疇なのかな

268:デフォルトの名無しさん
09/01/24 03:41:14
ビルボードの縮小に、Lanczos フィルタとか使えない?

269:デフォルトの名無しさん
09/01/24 03:43:28
mipmap

270:258
09/01/24 04:11:48
>>261,262
Unicode非サポートなんですわ。

>>263
つまり、2バイト文字非対応ってこと?

仕方がないので、古いIDirectXFile系のインターフェース使ったら、
2バイト文字でも書き込めたけど、
今度は配列に配列いれたら(2次元配列という意味ではない)、
ちゃんと書き込めるのに、
読んだとき外側の配列が全て始めのデータで同じになってしまう…

なんでこんなに挙動変なんだ…
動作確認しないなら、カスタムテンプレートなんか作るなよ…

271:デフォルトの名無しさん
09/01/24 08:49:19
拡張するなら自前のフォーマットを作れって話ですわ。

272:デフォルトの名無しさん
09/01/24 19:35:54
>>271
そらそうですわな…

273:デフォルトの名無しさん
09/01/24 19:38:46
DirectXを最初から勉強するにあたってこれだけは読んどけって本ない?

274:デフォルトの名無しさん
09/01/24 20:38:18
SDKのヘルプ

275:デフォルトの名無しさん
09/01/24 20:59:16
>>273
高額社の本でもよんどけ。
全く使えないというほどひどくもないから。

シェーダーにHLSLを使ってないのが時代遅れだが
インフィニティの本はそれなりの質だと思う。


次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

5032日前に更新/141 KB
担当:undef