私用UnrealEngine忘備録

UnrealEngine4の勉強をしている私が忘備録として残しているブログ。

UnrealEngine4で感知式ライトの作成

どうもどうも、ぼこぼこニートです。

 

違います。

もこもこフードです。

 

今回はUnrealEngine4で感知式のライトを作成してみました。

こちら

UE4:Eventノードを使った簡単なBluePrintの作り方 - 僕の私のUnrealな日々)

のサイトを見ながら作ったので大体同じですが、

個人的に分かりにくかった所とかを補完していきます。

 

・・・あくまで自分用のメモとして。

 

では早速やっていきます。

 

そもそも、感知式ライトとは何か。

一定の範囲に入ったら電源の入るアレです。

なんか急に明かりがつくとビクってなるよね。

 

はい。

 

まずは新規プロジェクトから「Third Person」のテンプレートを開きます。

そしてこんな感じの暗室を作ります。

私は適当に作りました。

 

f:id:mokomokohudo:20150507125052p:plain

・・・そんなに暗くなかったです。

後で暗くしましょう。

 

次にこの暗室の中に何かしらのオブジェクトを置きます。

何にもないところに明かりがついたら変でしょ?

今回はライトを置いていますが、

立方体でも、球体でも、何も置かなくても構いません。

f:id:mokomokohudo:20150507125519p:plain

オブジェクトを配置したら、その配置したオブジェクトの

ブループリントを作成します。

 

作成して開くとこんな感じのものが出ると思います。

f:id:mokomokohudo:20150507125853p:plain

私が配置したライトは既にサンプルとして

ブループリントが組まれていますが、今回に限っては消してしまっても

構いません。

 

次に左側にある「コンポーネントの追加」から

「PointLight」を選択し、任意の位置に配置します。

f:id:mokomokohudo:20150507131446p:plain

余談ですが、このオブジェクトには初期でPointLightがあります。

これも消して大丈夫です。

消さない場合は上記の配置する所はしなくていいです。

 

PointLightを配置したら、右側にあるPointLightの詳細から

Visibleのチェックを外しておいて下さい。

このチェックを外して置く事でプレイ開始時に

明かりが消えるようになります。

また、明かりの強さを最大にしておきましょう。

同じくPointLightの詳細から、LightのIntensityの数値を

100000.0とかにしておいてください。

f:id:mokomokohudo:20150507132702p:plain

 

・・・書くのがしんどくなってきました。

 

はい、次。

感知する範囲を決めていきます。

コンポーネントの追加から、Collisionの所にある

「Box Collision」を選択してください。

大きさを整えたら、こんな感じになるかと思います。

f:id:mokomokohudo:20150507133414p:plain

この透明な箱の中に入ると明かりがつくように設定していきます。

このBoxも右側のVisibleのチェックを外しておいてください。

 

また、円形の範囲にしたいなどがあれば

Box Collisionではなく「Sphere Collision」などに変えてみてください。

 

そして、いよいよブループリントを触っていきます。

そんな大した処理ではないですが・・・

 

Event Graphのタブをクリックしてブループリントを開きましょう。

まず、左側のBoxを選択している状態にします。

次にブループリント上で右クリックしましょう。

こんな画面が出ます。

f:id:mokomokohudo:20150507135508p:plain

 

「Collision」を開くと3つくらい出ると思います。

その中の

OnComponentBegineOverlap」と

OnComponentEndOverlap」を出します。

f:id:mokomokohudo:20150507135936p:plain

 

それでは次に左側にあるPointLightをブループリント上に

ドラッグ&ドロップします。

f:id:mokomokohudo:20150507140203p:plain

こんな感じにしてください。

 

PointLightから線を引っ張って新規ノードを配置します。

f:id:mokomokohudo:20150507140403p:plain

配置するノードは「Toggle Visible」です。

注意 : PointLightから線を引っ張ってノードを作成してください。

     右クリックで検索を掛けると複数出て来てしまい、混乱します。(私が)

f:id:mokomokohudo:20150507140750p:plain

 

すべて配置し終えたらノードをつなげていきます。

こんな感じにして下さい。

f:id:mokomokohudo:20150507141306p:plain

そして、PointLightをターゲットにつなげたら作業終了です。

 

あとはビルドをして、プレイしてみましょう。

書いてる時に私がビルドしてない事に気がつきました。

 

範囲外

f:id:mokomokohudo:20150507141645p:plain

 

範囲内

f:id:mokomokohudo:20150507141821p:plain

 

うんうん。いい感じです。

 

/* 書いてて思った事 */

ほんとに大したことしてなかった。