これまで2Dのボールキャッチゲームと3Dのシリンダーキャッチゲームを作ってきたわけですが,無機質な円柱やパドルしか出てこなくて,やや華やかさに欠けたかもしれません,今回からはUnityの大きな魅力であるAssetの使い方についてご紹介します.ここでAssetと言ったら,主にUnityのAsset Storeなどで購入(無料のものも含む)できるほかの人が作ったゲーム素材を指します.
UnityちゃんとSD Unityちゃん
今回はUnityを触ったことがある人なら一度は動かしてみたことがあると思われるUnityちゃんのSDバージョンを動かしてみたいと思います.ちなみに 左が通常バージョンのUnityちゃんで右がSD Unityちゃんです.今回は右のSD Unityちゃんを使えるようにしたいと思います.
何故SDバージョンか?それは単なる僕の趣味ですw(おぃ)
今回の目標
さて,今回の目標はこんな感じです.
- SD Unityちゃんを直ぐに動かしたい!
- Cameraの設定方法も知りたい
- ビルドするとき少しでも容量を小さくしたい
以上の点に注意しつつ,SD Unityちゃんが動かせるようにしていきたいと思います.
新規Projectを立ち上げる
まず,Unityで新規Projectを作成します.今回は2018.4.31f1のバージョンを使用します: 細かい設定とかは僕自身良く分かってないのですが,ネットで集めた情報をもとに設定しても2019以降のバージョンではUnityちゃんが正常に動かせるようにはなりませんでした. バージョンダウンで上手く動いたという報告もネットでちらほら見かけますので,特に理由がないなら2018のバージョンでProjectを作成してください. ちなみに僕の環境では2018年のものならどれでも動きました.
次に出てくる画面でテンプレートを3Dにしてプロジェクト名と保存先を適当に決めて作成をクリックします. Unityのエディタが立ち上がります.
Standard Assetsの導入
まず,最初にするのはSD Unityちゃんを動かしたりカメラの設定をするためのAssetを導入することです. これはStandard AssetsというフリーのAssetで行います.
画面に出てくるSceneタブとGameタブの隣のAsset Storeタブをクリックします. するとしばらく待つとAsset Storeの画面が出ます(表示される広告等は時期によって変わります): Search for assetsと書かれている検索窓に「standerd assets」と入力してEnterキーを押します.出てきた画面の中から,Standard Assetsを探します: 上の画面の左端がStandard Assetsです.画面ではPurchasedと書かれ購入済みでグレー表示されてますが,初めて検索したときにはこの表示はされてなくグレー表示にもなってません. またFreeと表示されてますように無料です.そこでこのStandard Assetsをクリックして次の画面でDownloadをクリックします.しばらくするとDownloadのボタンがImportに変わるのでImportをクリックします: しばらく待つと,Importerが立ち上がりますので,次のようにチェックを入れてください: 今回の場合,本当はもっと除外できるのですが,説明が細かくなりすぎる割にはあまりファイルサイズを小さくできないので,上のようにしました. チェックが入っているところはその下のサブフォルダもすべて選択されていることに注意してください. チェック箇所があっていることをよく確かめたら,Importをクリックしてください. しばらく待つと問題なければStandard Assetsがインポートされます.
SD Unityちゃんのインポート
次にSD Unityちゃん本体をダウンロードします. Unityちゃんオフィシャルウェブサイト unity-chan.com のダウンロードページ unity-chan.com からSDユニティちゃん 3Dモデルデータダウンロードします. ダウンロードが成功するとSD_UnityChan-1 .unitypackageというファイルができるので適当なところに保存しておきます.
Unityに戻りメニューの[Assets]→[Import Package]→[Custom Package...]から先ほどダウンロードしたファイルを指定して開きます.しばらく待つとImporterが立ち上がりますので,AllをクリックしてからImportをクリックしてSD Unityちゃんをインポートします.
SD Unityちゃんが歩く舞台とSD Unityちゃんの配置
これでSD Unityちゃんがインポートされましたので,SD Unityちゃんが歩く舞台を作りましょう.今回は簡単に1×1の平面を用意します.
メニューの[GameObject]→[3D Object]→[Plane]で平面を作ります. この平面の上に先ほどインポートしたSD UnityちゃんのPrefabを配置しましょう. Projectビューで[Assets]→[UnityChan]→[SD_unitychan]→[Prefabs]と開いてSD_unitychan_humanoidを選択してこの平面の上にドロップします. 問題なければSD Unityちゃんが画面に表れているはずです:
AutoBlinkforSD.csのSystem.Security.Policyのコメントアウト
ただし,うちの環境ではこのままではたくさんのスクリプトエラーが出ますので, 対策が必要でした.といってもやることはすごく簡単で,Projectビューの[Assets]→[UnityChan]→[Scripts]の中のAutoBlinkforSD.csの using System.Security.Policy;の行をコメントアウトするだけです.
// //AutoBlinkforSD.cs //SDユニティちゃん用オート目パチスクリプト //2014/12/10 N.Kobayashi // using UnityEngine; using System.Collections; using System.Security.Policy; ←ここの行をコメントアウトする namespace UnityChan { 以下続く
// //AutoBlinkforSD.cs //SDユニティちゃん用オート目パチスクリプト //2014/12/10 N.Kobayashi // using UnityEngine; using System.Collections; //using System.Security.Policy; namespace UnityChan { 以下続く
上のようにコメントアウトしたらCtrl + sでスクリプトを保存します. ここでもしUnityがフリーズ等したら,再度Unityを立ち上げて同じProjectを開きなおします. 先ほどのPrefabのSD UnityちゃんをSceneの平面上に配置しても今度はスクリプトエラーが出なくなっているはずです.
SD Unityちゃんの設定
ここでSD_unitychan_humanoidのInspectorで以下のような設定をします. まず,AnimatorのControllerにThirdPersonAnimatorControllerを設定します: 次にIdle Changer,Face Update, IK Look Atのチェックを外します: 次にAdd Componentの検索窓に"Third"と入れて出てきた選択肢の中から"Third Person User Control"を選択します: すると自動的にCapsule ColliderとRigidbodyとThird Person Characterがアタッチされるので設定をします.Capsule ColliderのCenterのY座標を0.8,Heightは1.5にします. これでSD Unityちゃんを動かす基本的な設定は終わりました! お疲れ様です.
早速動かしてみよう!
早速Playボタンを押すとWASDあるいは矢印キーで移動,Spaceキーでジャンプするのが分かります.なお,いまSD UnityちゃんはUse Gravityにチェックが入っていますので平面の端まで行ったら当然落ちてしまいますのでご注意ください.
次回はカメラの設定について簡単にご説明します.