備忘録としてまとめました。
参考になれば嬉しいです。
GAME編
中級までしかできなかったので、上級にはふれていません。
初級①的を壊せ
BP_Projectile
オーバーラップ時に爆発して消える。
球を打ったキャラクターのところで爆発してしまうため初期状態ではNo Collisionにした。

BP_Target①
壊れたことを伝えてから消える。
壊れたことを伝える相手はInstance上で設定する。

初級②的を動かせ
BP_Target②


初級③ゴールを作成せよ
BP_Goal

初級④秒数が増える仕組み
中級③のUI表示まで実装。
開始からの経過時間はGameStateで管理。
GameModeはClientでは生成されないので不適。
bIsStartedの値はMyPlayerControllerの中で切り替えている。
MyGameState①

桁数を決めるのにTo Textのノードが便利だった。
Integral Digits:整数部分の桁数
Fractional Digits:小数点以下の桁数

WB_Count

MyPlayerController
Widgetを管理している。
初級⑤ステージを作成せよ
「モデリングツールを使ってみよう!」しか目に入っていなかった。
Blenderをちょっと使ったから問題ないかなぁと。
ステージって、この丸いやつのことかな。
作ってないので未達成。

Digital Content Creationの略称。
BlenderやMayaのことだと思っている。
何の略称かを知らなかったので調べてみた。
初級⑥当たると死ぬ棘
BP_Needle


BP_UQ4Player
DestoryActorでキャラクターを消さずに、Unpossessをするだけにした。
死ぬときにレティクルが残り続けると良くないので消しておく。


十字線、焦点板(weblioでの意味)
照準のUIの意味としてここでは使っている。
Reticle

BecomeRagdoll
今回はDestoryActorでキャラクターを消さずに、Unpossessをするだけにした。
Actorが消えないので、CapsuleのCollisionを消さないと邪魔になる。
Collisionを消すと重力などで下に落ちていくので、動きは止めておく。

DoRespawn

中級①ジャンプパッド作成

LaunchCharacterが便利。
アンリアルクエスト1のターザンロープの解説で使ってくれていた。
前回のアンリアルクエストでは、この存在を知らなかったので面倒な方法で実装していた。

中級②ドア
的に玉を当てると開くドア。
ターゲットが壊される際にイベントが実行され、壊されたターゲットの数をカウントしていく。
一定量を超えるとドアが開く。



中級③UIで秒数を表示
初級④にて解説済み。
中級④ゲーム開始までのカウントダウン
GameStateにおいて無理やり実装。UMGのアニメーション使うべきなのかも。
流れ
MyPlayerController
Serverがログインしてからの3秒間はClientがログインするのを待つためにLoadingのUIを表示(WB_Start)。ControllerからのInputは受け付けないようにする。
MyGameState
少し画面を明るくしてカウントダウンする(WB_Start)。
Goを光らせたあと、秒数のカウントを開始してUIを表示(WB_Count)。
また、ControllerからのInputを受け付けるようにする。
秒数のカウントを開始した1秒後、カウントダウンのUI(WB_Start)を消す。
WB_Start

MyGameState

中級⑤ゴール演出
ナイアガラで適当に作成。
中級⑥スライディング
はじめてMotionWarpingを使ってみた。
アニメーションによる移動はできたが、移動後に元の位置に戻ってきてしまった。
アニメーションの移動中に動きを無理やり加えて、元の位置に戻らないようにした。
アニメーションが移動量を持っていないのが原因なのか、ノードの組み方などが原因なのかは分からない。
スライディング中はCrouchにすることでカプセルの大きさを小さくした。
ただカプセルを小さくするだけだと、地中に埋まってしまう。

MOVIE編
Quest1だけです。
Quest2とQuest3はできませんでした。
Discord内で参加者の方が紹介してくれていた、こちらの記事を読みながら作成した。

Add Level Sequenceで、Cut_01からCut_03までを作成し、Add Master Sequenceで全てのカットをつなげた。
今まで単体のLevel Sequenceしか使ったことがなかったので、複数のSequenceを繋げることができたのが良かった。

またDiscord内で運営の方が紹介してくれた記事が面白かった。
プレビズ超重要。

疑問など
Game編
BP_UQ4PlayerのShootProjectileイベントについて。
NF_ShootというAnimNotifyによって呼び出されているのは分かった。
Anim_Shoot_MontageのどこかにNotifyが仕込んであるのだとは思うが、どのように仕込んであるのか知りたい。

NF_Shoot


Anim_Shoot_Montage

Movie編
KeyでカメラのRotationを操作するとき、180°をまたぐと予期しないカメラの動きになってしまう。
Rotationが-180から180の範囲でしか設定できないのが原因だとは思うが、解決策が思いつかなかった。

Twitterしてます
ブログの更新をお知らせ
コメント