Tech

【Unity】AssetStoreで取得したCharactorにThirdPersonCharacterの動きを設定する。

投稿日:

はじめに

こんにちは、suzukiです。今回は前回に続きUnityの記事です。インポートしたモデルを簡単に動かす方法について触れていきます。

AssetStoreからインポート

RPG Hero PBR HP Polyart

RPG Hero PBR HP PolyartというライブラリをAssetStoreからインポートします。
下記のディレクトリにPrefabがあるので今回はそちらを変更していきます。
/RPGHero/Prefabs/RPGHeroHP.prefab

StandardAssets

StandardAssets
をAssetStoreからインポートします。
下記のディレクトリにPrefabがあるので今回はそちらを利用していきます。
/Characters/ThirdPersonCharacter/Prefabs/ThirdPersonController.prefab

ThirdParsonCharactorの動きについて

ThirdPardonCharactorがどのように動いているのかを簡単に把握しましょう。
今回RPGHeroHPに設定するのは下記の2つのファイルです。
ThirdPersonUserControl
ThirdPersonAnimatorController

ThirdPersonUserControl

ThirdPersonUserControlはユーザーの入力によってどのようにキャラクターを動かすかという内容が設定されています。
このスクリプトを利用するには、ThirdPersonCharacterスクリプトが必要なのですが、RequireComponentで定義されているため自動でコンポーネントに追加されます。
また、ThirdPersonCharacterにもRequireComponentが定義されており、ThirdPersonUserControlを追加するだけで下記の5つのコンポーネントが追加されます。
・ThirdPersonUserControl
・ThirdPersonCharacter
・Rigidbody
・CapsuleCollider
・Animator
もし元から設定されている場合は新たに追加はされません。

Keyの入力部分としては下記がこのスクリプトでは実装されてます。

ThirdPersonAnimatorController

Animatorに設定されているControllerを確認すると、ThirdPersonAnimatorControllerが設定されています。
ThirdPersonAnimatorControllerによって様々なアニメーションが行われています。

下記にそれぞれのアニメーションが設定されています。
Ground:地面(通常)
AirBorne:空中
Crouching:地面(しゃがんでいる状態)

RPGHeroHPに設定を行う

Scene上に追加していない場合はRPGHeroHP.prefabをScene上に追加します。

ThirdPersonUserControlを設定

RPGHeroHPを選択しinspectorで表示し、Add Componentを選択します。

ThirdPersonUserControlを入力し、追加を行うと下記が追加されます。
・ThirdPersonUserControl
・ThirdPersonCharacter
・Rigidbody
・CapsuleCollider

ThirdPersonAnimatorControllerを設定

AnimatorコンポーネントのControllerの右側の◉を選択し、ThirdPersonAnimatorControllerに変更します。
これでユーザの入力を受け取り、アニメーションを行う準備ができました。

その他の調整

うまく動けばいいのですが、デフォルトで追加されたCapsuleColliderのあたり判定のサイズと、キャラクターのサイズによってはうまく動かない場合があります。
今回追加したRPGHeroHPには下記の設定をしております。
Center:0.92
Radius:0.4
Height:1.8
上記設定が完了するとThirdPersonCharacterと同じようにアニメーション付きで動くようになります。

追加したキャラクターによって調整するサイズは異なりますが、実際に動かして下記をチェックして調整してください。
・地面に着地すること
・cを押した際にきちんとしゃがむこと
・多少凸凹した地面で動きがおかしくならないこと

さいごに

Unityはちょっと動かすまでのハードルが低いのですが。調整に時間がかかるイメージですが、値を変更して思ったように動くと気持ちいいですね。

おすすめ書籍

Unityの教科書 Unity2019完全対応版 2D&3Dスマートフォンゲーム入門講座 作って学べる Unity 超入門 スラスラ読める Unity C#ふりがなプログラミング

blog-page_footer_336




blog-page_footer_336




-Tech
-

執筆者:


comment

メールアドレスが公開されることはありません。

CAPTCHA


関連記事

祝!iOS15でハーフモーダルが追加

1 はじめに2 早速使ってみる2.1 準備2.2 実装2.3 detents2.4 コードでの高さ切り替え2.5 モーダル内のスクロール許可2.6 グラバーの表示2.7 角丸2.8 親Viewとの併用 ...

【Unity】Animatorを利用するための基本知識

1 はじめに2 Animator3 Stateの追加4 Transitionの追加5 パラメーターの作成6 さいごに7 おすすめ書籍 はじめに こんにちはsuzukiです。今回はunityのanima ...

BlueZとは? bluetoothctlとPythonから使用する方法を紹介!

1 はじめに2 BlueZとは?2.1 D-Busとは?3 bluetoothctlでのペアリング3.1 ペアリング4 Pythonでの実装4.1 bluezeroでのペアリング実装5 さいごに6 お ...

MLKitで使えるTensorflow Liteについて調べてみた

1 はじめに2 そもそもTensorflowとは3 そしてTensorflow Liteとは4 Tensorflowの環境構築4.1 pyenv, pyenv-virtualenvをインストール4.2 ...

【Unity】AnimationControllerの基本的な使い方

1 はじめに2 事前準備2.1 キャラクター2.2 アニメーション3 Sceneに追加と設定4 AnimationController5 使い方5.1 State5.2 Transition5.3 P ...

フォロー

blog-page_side_responsive

2022年7月
 12
3456789
10111213141516
17181920212223
24252627282930
31  

アプリ情報

私たちは無料アプリもリリースしています、ぜひご覧ください。 下記のアイコンから無料でダウンロードできます。