Robot Kyle

ユニティちゃんに代えて Robot Kyle を動かします。

Robot Kyle を描画

  1. ユニティちゃんのモデルに代えて Robot Kyle をダウンロードして動かします。
    Unity Chan のプロジェクトをコピーして Assets/Main のダブルクリックで起動して下さい。
  2. メニューから [Window][Asset Store] を選択します。
    [カテゴリアイコン(三行マーク)] から [3D Models] を選択して [無料のみ] をクリックします。
    "Space Robot Kyle" を選択してインポートボタンをクリックすると Assets に Robot Kyle が追加されます。
  3. ヒエラルキービューから Main Camera を残して全て削除して下さい。
    Assets/Robot Kyle/Model/Robot Kyle をヒエラルキービューにドラッグするとロボットが表示されます。
    画面が真っ暗なので、メニューの GameObject→Light→Directional Light を選択して設定して下さい。
  4. ライトの配置が悪くモデルが暗くなるのと、モデルが大きすぎるので、カメラとライトとモデルの位置を調整します。
    再生ボタンで実行すると Robot Kyle が描画されます。
    確認が終われば [Save Scene] で保存して終了して下さい。

モデルを動かす

  1. モデルを動かすには3Dモデルにボーン(骨)を設定して、関節の動きに合わせたアニメーションクリップを使用します。
    アニメーションクリップを利用するには、ユニティちゃんのモデルに合った Avatar が設定されていなければなりません。
    Robot Kyle にはユニティちゃんに合わせたボーンが設定されているようです。
    これにユニティちゃんで使用されているアニメーションクリップを適用します。
    このようなモデルを作成するには、専用のモデリングソフト(かなり高価)が必要です。
  2. ヒエラルキービューから一度 Robot Kyle を削除して下さい。
  3. Assets/Robot Kyle/Model/Robot Kyle.fbx を選択して Inspector を表示します。
    [Rig][Animation Type] から [Humanoid] を選択して Apply すると Avatar が生成されます。
    [Configure] ボタンから [Save] をクリックすると詳細な確認が出来ます。
    ユニティちゃんのモデルと比べてみて下さい。
    Done ボタンをクリックして閉じて下さい。

  4. Assets/Robot Kyle/Model/ から Avatar を生成した Robot Kyle をヒエラルキービューにドラッグして下さい。
  5. プロジェクトビュー(Assets)を右クリックして Create→Animator Controller を RoboAniCon の名前で作成します。
    ヒエラルキービューの Robot Kyle の Inspector を表示して RoboAniCon を Animator コンポーネントの Controller の部分に適用します。
    アニメーターコンポーネントの設定項目は次のとおりです。
    名前 意味
    Controller アタッチされたコントローラー
    Avatar このキャラクタのアバター設定
    Apply Root Motion キャラクタの位置をアニメーションで制御する
    Update Mode 物理演算をするかどうか
    Culling Mode 表示されていないオブジェクトをアニメーションさせるか
  6. RoboAniCon をダブルクリックすると Animator 編集のウインドウが開きます。
    右クリックし Create State → Empty とすると新しい State ができます。
    最初の一つ目は自動的にデフォルトステートとなってオレンジ色になります。
  7. 作成したステートを選択しインスペクタを表示すると Motion の部分が None となっています。
    ここに Humanoid 用のアニメーションクリップを設定する事で自由にステートに動きを設定できます。
    Motion 右の〇をクリックして WIN00 を選択して実行してみて下さい。
    プレイモードにするとロボットが可愛く (^_^;) はしゃぎ始めます。
    同じく Motion 右の〇をクリックして LOSE00 を選択して実行してみて下さい。
    他にも沢山アニメーションクリップが用意されているので色々試して下さい。

前田稔の超初心者のプログラム入門
超初心者のプログラム入門(Unity)