UE5:Create Dynamic Material Instanceについて学ぼう!【UnrealEngine】

正式名称:Create Dynamic Material Instance
略称:CDMI(使われることは少ないが、略称として認識可能)
役割&目的
Create Dynamic Material Instanceノードは、指定したマテリアルインスタンス(Material Instance)の動的なコピー(Dynamic Material Instance)を作成するノード。
これにより、ランタイムでマテリアルのパラメータを変更できるようになる。
通常のマテリアルでは、エディタで設定した値しか使えないが、このノードを使うことで、ゲームプレイ中に変更が可能になる。
✅通常のマテリアル VS 動的マテリアル
項目 | 通常のマテリアル | 動的マテリアル |
---|---|---|
変更可能タイミング | エディタのみ | ゲームプレイ中 |
使用するノード | なし(デフォルトで適用) | Create Dynamic Material Instance |
代表的な用途 | 静的なオブジェクト | キャラクターの色変化、アニメーション、UIの色変更 |
動的マテリアルの主な用途
・キャラクターの服の色を変更(プレイヤーカスタマイズ)
・エフェクトの強さをリアルタイムで変更(炎の明るさを調整)
・UIの色を変更(ダメージを受けたら画面を赤くする)
・敵がダメージを受けたとき、一瞬だけ赤く点滅
関連するノード
Set Material | 指定したメッシュにマテリアルを適用 |
Set Scalar Parameter Value | 動的マテリアルの「数値パラメータ」を変更(例:明るさ) |
Set Vector Parameter Value | 動的マテリアルの「色パラメータ」を変更(例:RGBカラー) |
Set Texture Parameter Value | 動的マテリアルの「テクスチャ」を変更 |
テクニカル
✅パフォーマンスを考慮する
・Create Dynamic Material Instanceはマテリアルの新しいインスタンスを作成するため、乱用するとメモリを圧迫する
・可能なら一度作った動的マテリアルを使い回す(毎フレーム作るのはNG)
✅インタラクティブな演出に活用
・敵が攻撃を受けると赤く発光→0.5秒後に元の色に戻るなどの演出が簡単に実装できる
Set Scalar Parameter Valueを使って、時間経過で色を変えることも可能
まとめ
項目 | 説明 |
---|---|
ノード名 | Create Dynamic Material Instance |
役割 | 動的マテリアルの作成 |
主な用途 | 色変更、エフェクト調整、UI変更 |
最適化 | インスタンスを使い回してメモリ負荷を減らす |