ぷちスタ作業初日
公式チュートリアルで肩慣らし
一か月ほどUE5を触ってきたが、各種機能を掘り下げていったっきりで、通しでアプリの作成を1度もしていない。ぷちコンのDiscordでもお勧めされていた公式チュートリアルの Your First Hour in Unreal Engine 5 で復習をする。 Epicランチャーからいけるオンラインチュートリアルとは別のチュートリアル?のようで、その辺どうなっているのかよくわからないが少なくともこちらはUE 5 向けとあるので情報は新しそう。
0.手を動かす前に
実際にTPSテンプレートでプロジェクトを作成した状態
室温33度下で、何もしていないテンプレ状態のプロジェクトがこれだと暑すぎる
Edit -> Project Settings -> Engine -> General Settings
の Framerate を Use Fixed Frame Rate
にチェックして Fixed Frame Rate
を 30 にした。
心なしか涼しげな風が・・・来るわけない。この設定変更が難かしらの副作用を生むかもしれないので一応注意しておく。
1.Levelを作成する
emptyなLevelを作成して要素を配置していく
- フロアを配置
適当なStatic Mesh
を配置・・・Alt + xyz軸でその場で複製できる - ワールドを照らす明かりを追加
Lights -> DirectionalLight
で配置する - プレイヤーの初期位置を指定
All Classes -> PlayerStart
・・・Endキーで最短のmesh表面に張り付く - 大気の追加
Visual Effects -> Sky Atmosphere
で大気を追加し、DirectionalLightのDetailでAtmosphere Sun Light
にチェックを入れる。最初からtrue
だった - フォグの追加
Visual Effects -> ExponentialHeightFog
でフォグがかかる。大気の下が真っ黒だったのがましになる。 - 雲があったりなかったり
Visual Effects -> VolumetricCloud
で雲を追加できる
ここまででの作業で画面はこんな感じに
プレイしたらbuildしてね的なメッセージが出たのでBuild -> Build Lighting Only
でビルドしたら警告?メッセージは消えた。
2.ビジュアル要素を体験
LearningKitを使用したチュートリアル
Migrateしたlevelをロードする
3分くらいPCが唸る
SkyLightについて
環境光だったり、シャドウ内のライトらしい。これを0にしてもなお光っているのはemissiveな属性を持っているとか。SkyLightを赤くしたら影がこんな感じに赤くなる
- 明暗順応について
ポストプロセスボリュームが有効だと、暗いところから明るい場所へ人間の目が徐々に慣れていく感じの効果を再現するPostProcessVolume -> Detail -> Lens -> Exposure
で露出パラメータを設定できる
Min Brightness
とMax Brightness
で設定した範囲でAuto Exposureが動作する。同じ数値を設定した場合は順応の変化がなくなる。Metering Mode
をmanualにして固定とかにしていたが、どっちがいいんだろう。 - ライトシャフト
DirectionalLight
のLight Shafts
でLight Shaft Occlusion, Light Shaft Bloom
を有効にすると、こんな感じに光のアレが表現される。Scalability:Hight
以上でないと表示されなかった。
- ライトの種類
- Static: あらかじめシャドウとライトがベイクされる光源
- Stationary:光源は移動できないが、シャドウが動的に生成される
- Movable:動的にライト・シャドウが生成される
- Lumen
初期設定でProject Settings -> Rendering -> Global Illmination -> Dynamic Global Illumination Method
はLumenに設定されている
これをNone
にするとパフォーマンスが改善するがこんな感じになる
3.ブループリントを触る
- LerningKitをプレイする
なぜかそのままプレイできないので、ひとまずWindow -> World Settings
でGame ModeをオーバーライドしてDefault Pawn Class
をBP_ThirdPersonCharacter
にすると動かせた
動かなかった理由
インポートしたLevelなので、もとのTPテンプレートプロジェクト設定と整合性が無くて動かない。
プロジェクトのInput設定
TPテンプレートのプロジェクトセッティングでは以下のようになっている。Input関係のノードを置き換える
LearningKitのBPでWARNING!の出ている箇所はInputEvent関連なので、TPテンプレートのInput設定に置き換えていく。
Action Mappingsの追加
BPに表示されているWARNINGはProject Settings -> Input
に同じ名前でActionを新規作成してコンパイルを実行すると消えた。
4.まとめ
公式チュートリアルは、ここまでで作成したプロジェクトで色々試してみよう!というまとめで締めくくられている。 Content Examplesが各種機能を網羅されていていいらしい。
最初の1時間というタイトルから肩慣らしのつもりが
- チュートリアルを見る
- 動かしてみる
- メモを取る
と、3倍の時間が掛かってしまった。
Q:UE5でゲーム作れそうですか?
A:まったくできる気がしない