おもちゃバコ

主に趣味について

UE4: 簡単な懐中電灯の機能を作る

こんにちは

今回はUE4で簡単な懐中電灯を作成した時の備忘録です.


参考文献

この記事の元ネタです.
ここでは簡単に下記の内容をまとめます.
www.youtube.com


開発環境

Unreal Engine4 4.27.1
Windows10 Home


コンポーネント設定

FirstPersonテンプレートについてくるFirstPersonCharacterのBluePrintを下記のように設定します.
いらないものを削除するとBulePrintがエラーを吐くので,その箇所も削除します.

ライトはSpotLightです.
f:id:lambda410:20211209084336p:plain

ライト設定

ライトを下記のように設定します.

Intensity: 光の強度
Light Color: 光の色
Attenuation Radius: 光の範囲
Inner Cone Angle: 最大輝度を放つ範囲?
Outer Cone Angle: フォールオフが発生する範囲?

InnerとOuterは下記URLを参考にしてください. docs.unrealengine.com

f:id:lambda410:20211209084721p:plain

ライトのソケット設定

親子関係にするだけでも良いですが,モデルの動きにライトも合わせたいですよね.
そんなときはソケットの親ソケットとしてhand_lを指定します.

ソケットは「稼働用のボーンに物体をアタッチするための機能」で,この例では左手に持たせる設定となります.
設定してあげると腕の動きに追従してライトも揺らいでいるはずです.

ライトファンクション

ライトにマテリアルを適用して,ライトの範囲をマスクする機能です.
通常だと光が当たっているだけですが,ライト用のマテリアルを適用することでそれっぽくなります.
(左: 適用, 右: なし)
f:id:lambda410:20211209090616p:plain

テクスチャは何でもよいですが,ここでは動画のものを使用しました.
0. 画像をインポート
1. 画像エディタを開き,圧縮設定をグレースケールに変更(画像1)
2. 画像からマテリアルを作成
3. マテリアルエディタを開く
4. 「マテリアル」の「Material Domain」を「Light Function」に変更
5. エミッシブカラー(発光色のこと?)にRGBを接続(画像2)
6. FirstPersonCharacterのLight Functionに作成したマテリアルを適用

f:id:lambda410:20211209091448p:plain f:id:lambda410:20211209091416p:plain


BluePrint

右クリックでライトをカチカチさせます.
f:id:lambda410:20211209090234p:plain


実行

ここまで設定すると右クリックでライトカチカチできると思います.
(屈伸機能を入れると某ゲームのライト煽りが再現できそう)

箱がぶっ飛んでいる理由はわかりません.
機嫌が悪かったのでしょうか?
f:id:lambda410:20211209092354g:plain


まとめ

次はモデルに懐中電灯の機能を追加したものを作成したいです.