MV1DuplicateModel

指定のモデルと同じ基礎データを使用してモデルを作成する

val = MV1DuplicateModel(SrcMHandle)

int SrcMHandle : 作成するモデルの基礎データを持つモデルのハンドル

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

解説

SrcMHandle が持つ基礎モデルデータを使用してモデルを作成します。

用途としては、たとえばアクションゲームの雑魚敵など、
同じ見た目で大量に登場するキャラクターが居る場合、
その数だけ MV1LoadModel をしてしまうと同じ3Dモデルデータが幾つもメモリ上に存在することになり効率的ではありません( それに読み込み時間も掛かります )、
なのでそんな場合にはキャラクターモデル一つに付き一回だけ MV1LoadModel で読み込んで、
後は MV1LoadModel ではなく MV1DuplicateModel を使用してモデルハンドルを作成するようにすれば使用メモリ容量と読み込み時間を大幅に削減することができます。

因みに画像ハンドルのように一つのモデルを使用して一体描画する度に位置や再生するアニメーションなどを切り替え、
再度描画するといったことをすることでモデルハンドル一つで複数のキャラクターを表現することは可能ですが、
2Dの画像一枚と違い3Dモデルには色々な状態情報が含まれていますので、キャラクターの数だけモデルハンドルを作成したほうが速度的には有利です。

なお、作成されるモデルハンドルには、SrcMHandle が示すモデルの座標値や回転値、
アタッチしているアニメーションなど MV1LoadModel 以降に設定された情報は基本的に継承されません。
( 特別に継承される情報を変更する関数には、その関数の解説でその旨を記載しています )

戻り値:
  -1    : エラー発生
  -1以外 : モデルのハンドル

情報

プラグイン / モジュール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