MV1SetUseOrigShader

モデルの描画にオリジナルシェーダープログラムを使用するかどうかを設定する

MV1SetUseOrigShader UseFlag

int UseFlag : オリジナルのシェーダーを使用するかどうかのフラグ
( TRUE:使用する  FALSE:使用しない )

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

解説

MV1DrawModelMV1DrawFrame などのモデル描画関数を使用してモデルを描画する場合に関数
SetUseVertexShader, SetUsePixelShader で設定したシェーダーを使用するかどうかをこの関数で設定します。

TRUE を渡してこの関数を呼び出した場合は、SetUseVertexShaderSetUsePixelShader で設定したシェーダーで描画が行われます。

その際の頂点シェーダーに渡される頂点データの形式については LoadVertexShader の解説を参照してください。

また、メッシュに含まれるトライアングルリストがどの頂点データ形式が頂点シェーダーに渡されるかは、以下のプログラムによって判断することができます。

int MeshNo = 0 ;   // 任意のメッシュ
int TriangleListIndex  ;
int TriangleListDataType ;

// メッシュに含まれるトライアングルリスト番号 0 のモデル全体でのトライアングルリスト番号を取得
TriangleListIndex = MV1GetMeshTList( MeshNo, 0 ) ;

// トライアングルリストの頂点データタイプを取得
TriangleListDataType = MV1GetTriangleListVertexType( TriangleListIndex ) ;

上記プログラムの結果、TriangleListDataType に代入された値が

DX_MV1_VERTEX_TYPE_1FRAME の場合は

LoadVeretxShader の解説にある「剛体メッシュの場合」のデータ形式、

DX_MV1_VERTEX_TYPE_4FRAME の場合は

「1頂点へ影響を与えるフレームの数が1~4個のスキニングメッシュの場合」のデータ形式、

DX_MV1_VERTEX_TYPE_8FRAME の場合は

「1頂点へ影響を与えるフレームの数が1~8個のスキニングメッシュの場合」のデータ形式、

DX_MV1_VERTEX_TYPE_NMAP_1FRAME の場合は

「法線マップ付き剛体メッシュの場合」のデータ形式、

DX_MV1_VERTEX_TYPE_NMAP_4FRAME の場合は

「1頂点へ影響を与えるフレームの数が1~4個の法線マップ付きスキニングメッシュの場合」のデータ形式、

DX_MV1_VERTEX_TYPE_NMAP_8FRAME の場合は

「1頂点へ影響を与えるフレームの数が1~8個の法線マップ付きスキニングメッシュの場合」のデータ形式、

となります。

また、SetUseTextureToShader で特にテクスチャが設定されていない場合は3Dモデル描画時はデフォルトで

StageIndex 0 にディフューズマップテクスチャが、

StageIndex 1 に法線マップテクスチャが

StageIndex 2 にスペキュラマップテクスチャが、

StageIndex 3 にトゥーンレンダリング用のディフューズグラデーションテクスチャが、

StageIndex 4 にトゥーンレンダリング用のスペキュラグラデーションテクスチャが、

StageIndex 5 にトゥーンレンダリング用の数値飽和処理用のボリュームテクスチャが、

StageIndex 6 にトゥーンレンダリング用のスフィアマップテクスチャが、

それぞれ存在する場合は設定されます。

尚、この関数で TRUE を設定したとしてもプログラムを実行するPCがプログラマブルシェーダーに対応していない場合はシェーダープログラムを使用しない描画になりますので注意してください。
( プログラマブルシェーダーが使用できるかどうかは GetValidShaderVersion で確認することができます )

戻り値:
  0:成功

情報

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