SetVSConstFMtx

頂点シェーダーの FLOAT4 型定数に行列を設定する

SetVSConstFMtx ConstantIndex, Param

int ConstantIndex : 変更する FLOAT4型定数の番号( 0~252 )
MATRIX Param : 設定する MATRIX型の値

(プラグイン / モジュール : DxLibW)

解説

( この関数は Direct3D 9 用の関数です、Direct3D 11 では効果がありませんので注意してください )

SetVSConstF は FLOAT4型の構造体一つ分を頂点シェーダーの FLOAT4型定数として設定する関数でしたが、
この関数は FLOAT4型定数4つ分を一度に設定します。

何故4つかといいますと、MATRIX型は 4×4 の行列で、float型変数16個が中にあり、FLOAT4型構造体の一つが float型変数 4個分なので、
16 ÷ 4 = 4 というわけです。

具体的には

定数番号 ConstantIndex に MATRIX構造体の m[0][0] m[0][1] m[0][2] m[0][3] が、

定数番号 ConstantIndex + 1 に MATRIX構造体の m[1][0] m[1][1] m[1][2] m[1][3] が、

定数番号 ConstantIndex + 2 に MATRIX構造体の m[2][0] m[2][1] m[2][2] m[2][3] が、

定数番号 ConstantIndex + 3 に MATRIX構造体の m[3][0] m[3][1] m[3][2] m[3][3] が、

それぞれ左から順に x, y, z, w に代入されて設定されます。

頂点シェーダーで使用できる FLOAT4型定数の数が256個なのに対し ConstantIndex で指定できる値が252までなのは、指定した番号から4個分の定数が必要だからです。

尚、この関数で値を設定した場合は、DrawGraph 等の描画関数を使用する前に ResetVSConstF 関数で設定した値を無効にする必要がありますので注意してください。

戻り値:
  0:成功

情報

プラグイン / モジュールDxLibW
バージョン3.24f
作成日2026/04/12
著作者DxLib: Takumi Yamada / HSP binding: IronHSP Project
URLhttps://dxlib.xsrv.jp/
備考hspdxlib.as をインクルードして使用
タイプDxLib ゲームライブラリ
グループDxLib その他
対応環境
  • Windows 版 HSP
hs ファイルhsphelp\hspdxlib.hs