SetUseTextureToShader

シェーダー描画で使用するテクスチャを設定する

SetUseTextureToShader StageIndex, GraphHandle

int StageIndex : 設定するテクスチャステージ番号
int GraphHandle : 設定するテクスチャを持つグラフィックハンドル又は -1

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

解説

DrawPolygon3DToShader などのプログラマブルシェーダーを使用した描画で使用するグラフィックハンドルを設定する関数です。

DrawGraphDrawExtendGraph などの関数では使用する画像は一つと分かっているので関数の引数にグラフィックハンドルを渡しますが、
シェーダーを使用した描画では複数の画像を使用することができるので、DrawPolygon3DToShader などの関数の引数としてグラフィックハンドルを渡すことは無く、
代わりにこの関数を使用して事前に描画に使用するグラフィックハンドルを設定しておきます。

この関数で指定した番号と、シェーダープログラムでの対応ですが、


sampler DiffuseMapTexture : register( s0 ) ;

例えば↑の場合の s0 の 0 の部分が StageIndex の値になります。

なので StageIndex に 2 を渡して設定した画像は

sampler OtherTexture : register( s2 ) ;

という感じに s2 を指定することで使用することができます。

尚、この関数に渡すグラフィックハンドルが持つ画像は縦横のサイズが 2 の n乗では無い場合に正常な描画結果が得られませんので注意してください。

( 2 の n乗の値は 1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096, 8192 といった値です。

なのでこれに当てはまらない縦幅、横幅の画像を LoadGraph で読み込んでこの関数の引数に渡しても、正常な描画結果を得られません )

設定したグラフィックハンドルを外したい場合は GraphHandle の値を -1 にして関数を呼んでください。

戻り値:
  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