SetShadowMapDrawArea

シャドウマップに描画する範囲を設定する

SetShadowMapDrawArea SmHandle, MinPosition, MaxPosition

SmHandle:描画する範囲を設定するシャドウマップのハンドル
MinPosition:描画する範囲の座標値の小さいほうの頂点の座標
MaxPosition:描画する範囲の座標値の大きいほうの頂点の座標

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

解説

SmHandle が示すシャドウマップに対して、ShadowMap_DrawSetupShadowMap_DrawEnd を使用してシャドウマップに描画する範囲を設定します。

シャドウマップによる影の表現では『シャドウマップによる影の表現を行いたい3Dモデル』をシャドウマップに描画する必要があります。

シャドウマップに対して3Dモデルを描画する手順は、


1.SetShadowMapDrawArea を使用して『シャドウマップによる影の表現を行いたい全ての3Dモデル』が

存在する範囲を設定

2.ShadowMap_DrawSetup を呼び出してシャドウマップへの描画の準備


3.『シャドウマップによる影の表現を行いたい全ての3Dモデル』を MV1DrawModel で描画

4.ShadowMap_DrawEnd でシャドウマップへの描画を終了

となります。

尚、SetShadowMapDrawAreaShadowMap_DrawSetup を使用する前に呼んでおく必要がありますので注意してください。

また、描画範囲は必要最小限の大きさにする必要があります。

何故かと言いますと、描画範囲が広くなれば広くなるほど実際にシャドウマップを使用して影を描画した際の影が粗くなるからです。

( シャドウマップの解像度は変化せずに、シャドウマップに描画する範囲が広くなるため、単位距離辺りに割かれるピクセル数が少なくなるからです )

この関数を使用して描画範囲を明示的に指定しない場合はカメラの設定から自動的に描画範囲を決定しますが、
大抵の場合カメラはかなり広い範囲を描画範囲としているので、影が凄く粗くなります。なので、必要な範囲をこの関数で設定することをお勧めします。

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