ゲーム開発備忘録

ゲームプログラマー UE4・5向けの記事を書いておりますので見ていただけるとありがたいです。

【UE4・UE5】Unity勢&入門者向け!ゼロからキャラクターを動かしてみる。~③ジャンプとマテリアル編~

はじめに

~②キー入力とカメラと移動編~の続きです。

まだ読んでいない方はそちらを先にご覧ください。

namiton.hatenablog.jp

 

今回はジャンプとマテリアル(見た目)の適応を解説します。

よろしくお願いいたします

やりかた

 

①ジャンプキーのバインディング

 

前回と同じようにプロジェクト設定から

インプット→アクションマッピングを行います。

名前をJumpとしスペースバーをバインドします。

f:id:namiton:20220215130358p:plain

 

BP_CubeCharacterを開きイベントグラフに作成したキーイベントを作成します。

f:id:namiton:20220215130701p:plain

 

②ジャンプの実装

Characterクラスを継承している場合ジャンプは機能として組み込まれています。

以下のようにジャンプノードを検索しつなげましょう。

f:id:namiton:20220215130922p:plain

 

実行してみましょう。

スペースを押してジャンプできることを確認しましょう。

f:id:namiton:20220215131038p:plain

 

ジャンプの高さや空中での移動なども移動速度の時と同様に詳細から変更できます。

値を変更して効果を確認してみましょう。

f:id:namiton:20220215131246p:plain

 

確認出来たら初期値に戻しておきます。

 

③マテリアルの説明とテクスチャのダウンロード

今後アニメーションなどを作成するにあたり今ののっぺらぼうでは

前後左右の確認がしにくいのでここで見た目を作りたいと思います。

 

アンリアルエンジンには通常のブループリントとは別にマテリアルを作成できます。

マテリアルもノードベースで記述できますので挑戦してみましょう。

〈注意〉今回作成するマテリアルは初回にダウンロードしていただいたモデル用のテクスチャになっています。基本的な考え方は変わりませんが、別のモデルに使用する場合はUV情報とテクスチャが異なるため見た目に違いがあることをご留意ください。

f:id:namiton:20220215132557p:plain

今回こちらでSubstancePainterで作成したテクスチャを用意しました。

以下のリンクからTexture.zipを解凍してください。

drive.google.com

 

ダウンロードしたテクスチャをコンテンツにインポートしましょう。

f:id:namiton:20220215133557p:plain

 

④マテリアルの作成

コンテンツを右クリックからマテリアルを選択します。

名前をMT_Cubeにします。

f:id:namiton:20220215133739p:plain

 

コンテンツにインポートしたテクスチャ3枚を選び

作成したマテリアルにドラッグアンドドロップします。

f:id:namiton:20220215134042p:plain

 

以下のように接続します。

色情報や金属感、表面反射、凹凸の設定が完了します。

f:id:namiton:20220215134236p:plain

つなぎ終わったら必ず保存を押しましょう。

f:id:namiton:20220215134413p:plain

 

⑤マテリアルの適応

SK_Cubeを開きメッシュを選択します。

マテリアルスロットの項目にある既存のマテリアルを

先ほどのマテリアに変更します。

f:id:namiton:20220215134503p:plain

 

無事に見た目を変更することができました。

f:id:namiton:20220215134727p:plain

 

⑥マテリアルパラメータを使用して色味を変更してみる。

マテリアルもブループリントと同じように変数を扱うことができます。

 

マテリアルエクスプレッションコンスタント3ベクターという

呪文のようなノードを作成します。

ショートカットは3+クリックです。

f:id:namiton:20220215134951p:plain

 

このノードを選択した状態で右クリックするとパラメータに変更できます。

名前をChangeColorとしておきます。

f:id:namiton:20220215135135p:plain

 

multiply(掛け算)ノード作成します。

ショートカットはM+クリックです。

画像のように組みます。

ChangeColorの初期値は1,1,1,1にしておきます。

f:id:namiton:20220215135411p:plain

 

必ず保存してください。

f:id:namiton:20220215134413p:plain

 

コンテンツフォルダーに戻り、マテリアルを右クリックして

マテリアルインスタンスを作成を押します。

名前はMI_Cubeとします。

f:id:namiton:20220215135524p:plain

 

MI_Cubeを開くとパラメータグループに先ほど作成した

ChangeColorが表示されます。

色を変更するとマテリアルの色も変わります。

f:id:namiton:20220215135909p:plain

 

SK_Cubeを開きメッシュを選択します。

マテリアルをMI_Cubeに変更しましょう。

f:id:namiton:20220215140031p:plain

 

このようにマテリアルパラメータを使用することでマテリアルの様々な値を制御することができます。

 

⑦キャラクターブループリントで向きを調整する。

BP_CubeCharacterを開きましょう。

ワイヤーフレームで確認すると矢印があることが分かります。

これはキャラクターの正面方向を向いているのですが、

メッシュと90°ズレてしまっています。

これは昔からの仕様でメッシュをカスタムするときは必ず-90すると覚えておきましょう。

f:id:namiton:20220215140318p:plain

 

Meshを選択し、トランスフォームの回転Zを-90します。

f:id:namiton:20220215140533p:plain

 

コンパイルして実行してみましょう。

無事に見た目を変更することができました。

f:id:namiton:20220215141050g:plain

 

練習問題を用意しました。

ぜひ挑戦してみてください

 

難易度★  色違いのマテリアルを3種類用意してみてください。

 

難易度★★ 鏡面反射率が高すぎるのでマテリアルパラメータを作成して反射率を制御できるようにしてください。

 

 

 

次回はアニメーションの作成とアニメーションBPについて解説できればと思います。

 

さいごに

UE4やUE5向けの記事を書いています。

皆様の応援が投稿のモチベーションになりますので

コメントやTwitterのフォローなどしていただけるとありがたいです。

それではよきゲーム開発を。