今回のテーマは、「StandardAssetsでユニティちゃんを動かそう!」です。
StandardAssetsの三人称コントローラーを利用してユニティちゃんを歩かせたり、ジャンプさせたり、カメラを追随させたりします。
以前の記事でも、StandardAssetsを使ったキャラの動かし方は紹介していたのですが、記事の一部分として紹介したわりに、他の記事で参照リンクを貼ることが多かったので、改めてStandardAssetsとユニティちゃんのアセットで紹介します。
前準備
Unityのバージョン
この記事では、エディターバージョン「 2020.3.30f1」を利用しています。
StandardAssetsとUnitychanアセットの入手とインポート
以下から無料アセットを入手し、Unityプロジェクトに追加します。
Window>Package Managerから入手した上記のアセットをインポートします。
StandardAssetsでユニティちゃんを動かす
まず、床をPlaneで作成します。3D Object>Planeで新規で作成します。
次にユニティちゃんを出現させます。
unity-chan!>Unity-chan! Model>Art>Modelsの中から「Unitychan」をHierarchyにドラッグアンドドロップします。
次に、StandardAssetsでエラーになっている箇所を直します。これは、Unityのバージョンによる変更が原因ですが簡単になおすことができます。
「Console」 をクリックしてエラーになっているところを探します。
Visual Studio上で確認すると「GUIText」に関する項目でエラーが出ています。
これを直していきましょう。一番上のエラーをダブルクリックしてエラー位置へ移動します。
「GUIText」は仕様がかわっており、「UnityEngine.UI」に統合されていますので、 新しいUnityの仕様になおします。
using System;
using UnityEngine;
using UnityEngine.UI;
#pragma warning disable 618
namespace UnityStandardAssets.Utility
{
public class SimpleActivatorMenu : MonoBehaviour
{
// An incredibly simple menu which, when given references
// to gameobjects in the scene
public Text camSwitchButton;
public GameObject[] objects;
これを治すと、全てのエラーがなくなりました。
保存してUnityに戻ります。 UnityのConsoleに出ていたエラーがなくなりました。
まず、Standartd_Assets>Characters>ThirdPersonCharacter>Prefabs>ThirdPersonControllerをHierarchyにドラッグアンドドロップします。
ドラッグアンドドロップした、「ThirdPersonController」をクリックし、スクリプトの「ThirdPersonUserControl」、スクリプトの「ThirdPersonCharacter」のコンポーネントを右クリックして、「Copy Component」でコピーを行います。unitychanのInspectorへ移動し、「Paste Component As New」で各コンポーネントをコピーペーストします。
コピーすると、自動でRigidbodyとCapsuleColliderが追加されます。
Capsule Colliderのあたいを以下のように設定します。
これで、HierarchyのThirdPersonControllerは不要になるので右クリックのDeleteから削除します。
次にunitychanのAnimatorコンポートに◎をクリックから、「ThirdPersonAnimatorController」をセットします。
これでUnitychanを操作できるようになりました。
キャラに追随するカメラ設定
次にカメラの設定を行います。 Asssets→Standard Assets→Cameras→Prefabs から「FreeLockCameraRig.prefab」を「Hierarcy」へドラッグドロップします。
元々あった「Main Camera」は不要なので右クリック→Deleteで削除します。
UnitychanのインスペクターからTagをPlayerに変更します。
これで完成です。再生して動作を確認してみましょう。
まとめ
今回、「StandardAssetsでユニティちゃんを動かそう!」を紹介しました。
- アセットの入手とインポート
- StandardAssetsの修正
- ThirdPersonControllerのユニティちゃんへの設定
- 追随するカメラの設定
今回紹介した内容はいろんなUnityのプログラムを開発する際の検証を行うときに非常に重宝します。
今後作成する記事でも、このプロジェクトを流用した記事を多く書くと思いますので、よければコピーして保存しておくと便利かもしれません。
今回の記事が、皆さんの助けになると嬉しいです。
もしこの記事が気に入りましたら、ぜひテクリエイトへのブックマーク登録をして頂けると喜びます。
以上、おつかれさまでした!
© Unity Technologies Japan/UCL