HLSLでグローバル構造体への代入

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
Milla

HLSLでグローバル構造体への代入

#1

投稿記事 by Milla » 12年前

HLSL側

コード:


typedef struct _LIGHT{
	float4 Diffuse,
	/*その他 必要な情報*/
}LIGHT;

LIGHT light;

C++側

コード:


LPD3DXEFFECT pEffect; // 実体化済み
D3DLIGHT9    light;

pEffect->SetValue("light", &light, sizeof(D3DLIGHT9));

このような構造体での代入が上手くいきません。
そもそも、これで構造体の代入が可能なんでしょうか?

milla

Re: HLSLでグローバル構造体への代入

#2

投稿記事 by milla » 12年前

解決しました。
D3DVECTOR型の中身がfloat * 3でwが定義されてないことによるサイズ違いでの代入ミスでした。
(HLSL側のposやdirをめんどくさくてfloat4で定義していた)

お騒がせしました。

閉鎖

“C言語何でも質問掲示板” へ戻る