本シリーズの内容を簡単にまとめると、キーなどを操作してキャラクターに何らかの動作をさせ、それをアニメーションで表現するために必要となる設定を行うということになります。つまり、キー操作を受け入れるための設定、アニメーションを動かすための仕組みについて勉強することになります。素材となるものはすべて公式のサイトから入手できます。
なお、「サードパーソン」とは三人称視点のゲームのことです。つまりプレイヤーが動かすキャラクターは、プレイヤーからその全体が見えるようなゲームです (反対に、ファーストパーソンであれば、プレイヤーが操作するキャラクターはプレイヤーから見えません。プレイヤーそのものがキャラクターになった感じです)。また、ブループリントととは、ゲームを制御することができるスクリプトのことです。C++ などのプログラミング言語を使わなくても、素晴らしいゲームを作ることができるのです。
また、スクリプトとは備わっている既存の機能を組み合わせて何らかの動作をさせるもの、といったような感じです。ブループリントで言えば、C++ ですでに作られている機能をビジュアル的に利用できることになります。
(1) 本シリーズの紹介
(5:34)
これから作成するものと学ぶことのリストが紹介されています。具体的な作業はまだ行いません。
(2) プロジェクト作成と FBX のダウンロード
(3:59)
まずプロジェクトを作成することから学び、さらに、これからプロジェクトで使うアセット (ゲーム作成に利用できるデジタル データのまとまり) を入手できる場所が紹介されています。
▷まっさらの新規プロジェクトを作成する方法
▷スターターコンテンツを利用する方法
(▷UE4 備え付けのアセットを利用する方法)
(3) FBX のインポートとスケルトンの使用
(3:59)
スケルトン、スケルタル メッシュ、物理アセットの役割を学びます。簡単です。
▷FBX アセットを UE4 にインポートする最も簡単な方法
▷複数のスケルタル メッシュで同一のアニメーションを共有する方法
▷スケルタル メッシュをインポートした時にスケルトンを自動的に作る方法
▷FBX のインポート時に、FBX から法線をインポートする方法
(▷FBX のインポート時に、UE4 に法線を計算させないようにする方法)
▷ペルソナのビューポート内で視点 (カメラ) を自在に動かす方法
▷ペルソナでスケルトンを表示させる方法
▷コンテンツ ブラウザ内ですべてのファイルを選択する方法
▷コンテンツ ブラウザ内で複数のファイルが選択されている状態で、特定のファイルの選択を解除する方法
▷コンテンツ ブラウザで新規フォルダを作成する方法
▷未保存のファイルを見分ける方法
(4) ペルソナ入門
(9:50)
UE4 のアニメーション編集ツールであるペルソナについて、その操作方法の基本を学びます。
▷ペルソナを開く方法
▷コンテンツ ブラウザでアセットの種類別に参照する方法
▷ペルソナでソケットを追加する方法
▷ペルソナでソケットを移動させる方法
▷ペルソナのビューポートで視点を動かす方法
▷ペルソナのビューポートで特定のものをクローズアップする方法
▷ペルソナでアニメーションを逆再生する方法
▷ペルソナでアニメーションの最終フレームに飛ぶ方法
▷ペルソナのビューポートでメッシュにカメラを追随させる方法
▷ペルソナで表示方法を変更する方法
▷ペルソナのビューポートでソケットを表示する方法
▷ペルソナのビューポートでボーン名を表示する方法
▷ペルソナのビューポート内左上に表示される情報を非表示にする方法
▷ボーンの階層を確認する方法
(5) 入力の設定
(12:21)
ゲーム内でキャラクターを動かしたり、ジャンプさせたりするためには、キーボードのキーやゲームパッドを使うことになりますが、そのための設定 (キーバインディング) が必要となります。とても簡単です。
▷ゲームで移動/方向転換するための入力を設定する方法
▷ゲームで動作を制御するための入力を設定する方法
(6) キャラクターのための基本的なマテリアル
(11:35)
キャラクターに自前のマテリアルを貼り付ける方法を学びます。そのためには、マテリアルを作成することから作業します。
▷マテリアルを作成する方法
▷マテリアル エディタを開く方法
▷マテリアルのノードに関する情報を表示する方法
▷マテリアルのカラーを設定する方法
▷マテリアル エディタでカラーピッカーを使う方法
▷マテリアル エディタでワイヤを接続させる方法
▷マテリアル エディタでワイヤを切断させる方法
▷マテリアル エディタで Linear Interpolate (=Lerp) (線形補間) をショートカットキーで呼び出す方法
▷周辺部の色味を強くする方法
▷マテリアルでザラザラ感を出す方法
▷マテリアルで金属感を出す方法
▷マテリアル インスタンスを作成する方法
▷マテリアル インスタンスで設定を変更する方法
▷マテリアルをキャラクターに適用する方法
(7) ブレンド スペース
(9:23)
まず、ブレンド スペースとはどういうものかじっくりと学びます。さらにブレンド スペースを実際に作ります。これによって、ある条件 (たとえば、移動速度) に応じて、キャラクターの動作 (アニメーション) が混ざり合うように (ブレンドしながら) スムーズに変わります。
▷(1 次元の) ブレンド スペースを作成する方法
▷ペルソナでアニメーションのプレビューを有効にする方法
(8) アニメーション ブループリント入門
(6:41)
アニメーション ブループリントのためのエディタについて学びます。実際の作業はアニメーション ブループリントを作るだけです。
▷アニメーション ブループリントを作成する方法
▷ペルソナでアニメーション ブループリントのためのエディタを開く方法
(9) ステートマシン入門
(12:11)
ステートマシンの仕組みについて学びます。実技は次回チュートリアルからです。
(10) アニメーション グラフを作成する
(15:21)
いよいよステートマシンを作ります。最終的には、移動速度に応じてポーズが変化するステートマシンができあがり、プレビューでキャラクターの動きを確認できるようになります。
▷ペルソナでステートマシンを作る方法
▷ペルソナでステートを作る方法
▷値を変数化する方法
▷再生が完了した割合を算出させる方法
▷値の大小比較をする方法
▷条件を反転させる方法 (NOT)
▷ペルソナのビューポートでアニメーションを確認する方法
▷ステートマシンによるアニメーションの処理落ちを解消する方法
(11) アニメーション ブループリント のイベント グラフ
(6:09)
キャラクターはマウスやキーボードで動きますが、その動きは値となって変数に格納されます。そうすることによって、最終的にアニメーションを制御できるからです。今回は、イベント グラフ上で、変数に入る値が更新されるようにします。
▷イベントグラフを更新する方法
▷Event Blueprint Update Animation の使い方
▷Try Get Pawn Owner の使い方
▷Get Movement Component の使い方
▷Get Velocity の使い方
▷Vector Length の使い方
(12) Character ブループリントのコンポーネント
(13:43)
前回作成した Animation ブループリントに値を供給できる Character ブループリントを作成します。Character ブループリントに含まれている Movement コンポーネントが重要となります。また、スケルタル メッシュも割り当てます。
▷Character ブループリントを作成する手順
▷Pawn と Character の違い
▷ブループリントに関する解説が多数掲載されているページ
▷ブループリントにコンポーネントを追加する方法
▷Movement コンポーネントの概要
▷スケルタル メッシュを割り当てる方法
▷カメラを追加する方法
▷Class Defaults の設定について
▷キャラクターが空中で動けるようにする方法
▷キャラクターを移動方向に自動で回転させる方法
(13) Character ブループリントのキーボードとマウス制御
(12:43)
「⑤ 入力の設定」では、キャラクターを動かすためのキーボードのキーやゲームパッドのスティックを指定しましたが、それらに入力があった時にキャラクターを動くようにブループリントを組みます。
▷キーボードなどからの入力でキャラクターを動かす方法
▷Event MoveForward の使い方
▷Add Movement Input の使い方
▷Scale Value とは
▷World Direction とは
▷Get Control Rotation の使い方
▷Rotation とは
▷構造体を分解する方法
▷Break Rot の使い方
▷Make Rot の使い方
▷Get Forward Vector の使い方
▷Axis Event MoveRight の使い方
▷Get Right Vector の使い方
▷キャラクターを方向転換させる方法
▷Turn の使い方
▷TurnRate の用途
▷Axis Value の使い方
▷Add Controller Yaw Input (コントローラに Yaw の入力を追加) の使い方
▷LookUp の使い方
▷LookUpRate の用途
▷Add Controller Pitch Input (Pitch 入力をコントローラに追加) の使い方
▷Jump 関数の使い方
▷親クラスを Pawn ではなく Character にした理由
(14) Game Mode とテスト
(16:21)
Game Mode の用途と設定の方法を学びます。また、カメラの上下の動きをマウスで制御する場合、マウスを動かす方向を逆にできるようにします。
▷Game Mode の用途
▷ゲームで使うデフォルトのクラスを指定する方法
▷Game Mode ブループリントの作成方法
▷プロジェクトが Game Mode を使うようにする方法
▷カメラの上下の動きとマウスの動きとの対応関係を反転させる方法
▷カメラの上下の動きとマウスの動きとの対応関係を詳細パネルで反転させる方法
▷ツールチップを作る方法
(15) Character ブループリントのゲームパッドとタッチコントロール
(14:46)
ゲームパッドのサムスティックやモバイルのタッチ コントロールで操作できるようにするための方法が紹介されています。
▷ゲームパッドのサムスティックでカメラを動かせるようにする方法
▷タッチ コントロールでカメラを動かせるようにする方法
▷エンジンのコンテンツをコンテンツ ブラウザで表示させる方法
▷カメラの回転の量、回転の速度または見上げる速度を調節する方法
▷Delta time (単位: 秒) を得る関数 (Get World Delta Seconds)
▷変数をレベルエディタで編集できるようにする方法
▷変数のデフォルトの値を設定する方法
▷Add Controller Yaw Input 関数
▷Add Controller Pitch Input 関数
▷タッチコントロールのテストを行う方法
▷Input Touch イベント
▷Input Touch イベントの Finger Index の使い方
▷モバイルのプレビューでテストする方法
(16) アニメーション モンタージュの概略
(6:44)
アニメーション モンタージュとはどのようなもので、どのような使い方をするのか、その概略を説明しています。パンチ シークエンスをどのように設定するのか、その概略についても説明しています。
▷アニメーション モンタージュとは
▷パンチのアニメーション シークエンスはどのように作るか
▷Notify とは
(17) スケルトンのリターゲティングとモンタージュのセットアップ
(17:08)
前回の概略を受けて、アニメーション モンタージュを実際に作成し、パンチのシークエンスを設定します。合わせて、アニメーションのリターゲティングも行います。
▷アニメーション モンタージュを作成する方法
▷アニメーションをスクラブ再生する方法
▷リターゲティング機能の使い方
▷Translation Retargetting (トランスレーションのリターゲティング) にアクセスする方法
▷スケルトン ツリーの Show Advanced Options (高度なオプションを表示) について
▷アニメーションでキャラクターを接地させる方法
▷アニメーションでキャラクターの関節が外れている問題を修正する方法
▷シークエンスのループから脱出する方法
▷Notify Event の使い方
▷Add Notify (通知の追加) の使い方
▷シークエンスの再生速度を調節する方法
▷Slot とは
▷キャラクターで異なる複数のアニメーションを再生する方法
(18) アニメーション ブループリントでパンチを設定
(7:52)
キャラクターのブループリントとアニメーションのブループリントが互いに交信できるようにします。具体的には、Cast To ノードを利用して、キャラクターのブループリントで使われている変数をアニメーションのブループリントでも使用できるようにします。
▷キャラクターのブループリントとアニメーションのブループリントを交信させる方法
▷Cast To ノードの使い方
(19) アニメーション モンタージュを再生する
(10:35)
前回の続きです。アニメーション ブループリントの Event Graph を設定することによって、アニメーション モンタージュを再生します。現在のパンチから適切なエンディングのシークエンスにジャンプできるようになります。
▷アニメーション ブループリントを設定してアニメーション モンタージュを再生できるようにする方法
▷Cast To ノードとは (前回の補足)
▷Montage Play 関数の使い方
▷AnimNotify イベントの使い方
▷Montage Set Next Section の使い方
▷ノードを一度だけ実行する方法
▷DoOnce ノードの使い方
(20) スロット ノードを使う
(8:48)
前回の続きとして、CharacterAnimBP の AnimGraph でパンチ モンタージュを追加します。
▷ アニメーションをブレンドさせる方法
▷AnimGraph での設定方法
▷モンタージュの追加
▷Slot を追加する方法
▷Layered Blend Per Bone の使い方
▷Cached Pose の使い方
(21) パンチのための物理コンポーネントを追加する
(7:48)
キャラクターが球体にパンチすると球体が動くようにします。
▷両手にコリジョンを追加する方法
▷Sphere Collision を設定する方法
▷コリジョン プリセットの設定方法
▷Attach To 関数の使い方
▷Construction Script の役割
▷コリジョンを有効化する方法
▷Set Collision Enabled 関数の使い方
(22) UE4 でアニメーション Notify を作る
(11:44)
アニメーション Notify を使って、キャラクターが走る時に足の接地とともにホコリが立つようにします。
▷Notify とは何か?
▷Notify の設定方法
▷ソケットを追加する方法
▷ Anim Notify セクションでエフェクトを選択する方法
▷パーティクル エフェクトを編集する方法
▷カスケードの開き方
▷エミッタの利用方法
▷カスケードで Warmup Time の設定方法
▷カスケードの Lifetime の使い方
▷カスケードの Spawn の使い方
▷カスケードの Distribution の使い方
▷カスケードの Process Spawn Rate の使い方
▷カスケードの Required の使い方
▷カスケードの Emitter Loops の使い方
▷カスケードの Kill on Completed の使い方
▷カスケードの Color Over Life の使い方
▷カスケードの Alpha Over Life の使い方
▷カスケードの Initial Velocity の使い方
▷カスケードの Initial Size の使い方
▷カスケードの Drag の使い方
コメント
こんにちは!
いつもこちらで勉強させていただいており、たいへん助かっています。
(12)の動画が(13)の動画になってしまっているので、コメントさせていただきました。
これからも更新頑張ってください!
的確なご指摘、ありがとうございます!たいへん助かります。
最近、更新が滞りがちなのですが、より見やすいサイトに少しずつ改変しているところです。
お言葉を励みに、これからもお役に立てるような記事を書いていければと思います。
ありがとうございました!