【Unity】キャラクターにUnityちゃんのモーションをさせる
マッチョのmachokoさんにかわいらしいモーションをつけるため、Unityちゃんのモーションデータをお借りすることにしました。今回は、その手順をご紹介します。
※UnityちゃんのAsset利用規約に「キャラクターのイメージを著しく損なわないこと」とあって、これに抵触しないか非常に不安ですが(汗
- machokoさんのデータをインポートする
- Unityちゃんアセットをインポートする
- Animator Controllerを作る
- Animator ControllerのStateにモーションを割り当てる
- Stateを遷移させる
- 結論
machokoさんのデータをインポートする
まずはメインキャラクターであるmachokoさんのデータをAssetストアよりダウンロード&インポートし、prefabフォルダからDimples.prefabをシーンビューにD&Dします。
TTポーズ・・・いや、Tポーズのmachokoさんがシーンビューに現れました。
これだけじゃ全くかわいくないですね。
machokoさんのかわいらしさが全く出ていません。(2回言った)
Unityちゃんアセットをインポートする
お次に、みんなのアイドルUnityちゃんアセットをダウンロード&インポートします。
もし過去にダウンロードしたことがある場合、Assets->Import Package->Custom Package...から直接インポートすることもできます。
なお、アセットストアからダウンロードしたパッケージファイルはAppData\Roaming\Unity\Asset Store-5.xに保存されています。
このパスを変えたい場合、下記サイト様にて紹介されている方法で実現することができるようです。
Animator Controllerを作る
プロジェクトビュー->Create->Animator Controllerを選択し、Animator Controllerを作成します。作成したControllerは、machokoさんのインスペクタのAnimatorにD&Dします。これで、machokoさんのモーションを制御できるようになりました。
作成したAnimator Controllerを選択した状態で、Windowメニュー->Animation->Animatorを選択し、Animatorウィンドウを表示します。
上のステートマシンが、実際に作成したmachokoさんモーション用です。
machokoさんのかわいらしさを全面的にアピールするため、idleモーションを多数用意しましたw
Animator Controllerの使い方は、いずれ別途記事にしたいと思っています。
Animator ControllerのStateにモーションを割り当てる
machokoさんのモーションは、
- アイドル
- 走る
- ゴール
上記3パターンとなっています。アイドルに関しては、かわいらしさをアピールするため(3回目)4パターンのモーションを入れています。
それぞれのステートをAnimatorウィンドウで選択し、インスペクタのMotionの横のボタンを押下すると、選択できるモーションが一覧表示されます。
Unityちゃんアセットをインポートしていれば、Unityちゃんのモーションがここに表示されるので、お好きなモーションを選ぶことができます。
Stateを遷移させる
Stateを遷移させるため、Animatorウィンドウ上でパラメータを作成します。
- idlePattern (アイドル用):int型(0~4)
- isRunning(走る用):bool型
- isGoal(ゴール用):bool型
アイドル状態は4パターンですので、スクリプトから1~4の値をランダムにセットしています。0になったら、アイドル状態を終了します。
machokoさんはWASDキー操作で移動するので、これらのキーが操作された際にidlePattern=0,isRunning=trueにセットします。
お題を達成できたらisGoal=trueにすれば、ゴールアクションしてくれます。
結論
- Animator Controllerを使用し、キャラクタの状態に沿ってモーションを定義できる。
- Unityちゃんアセットをインポートすると、モーションが選択できるようになる。
【Unity】unity1weekに参加しました!
unityroomの1weekゲームジャムに参加しました!
★タイトル:Run machoko Run
★URL:https://unityroom.com/games/run-machoko-run
★プレイ動画はこんな感じ
unity1weekゲームジャムとは、お題に沿ったゲームを1週間で作り上げて
投稿しよう!というコンテンツです。
今回のお題は「あつめる」でした。
私は参加2回目ということで、前回(というか、今まで)実装したことのない
キャラクターのモーションを入れることを自らのお題にしてみました。
マッチョのmachokoさんが、走り回って指定アイテムをゴールまで運ぶ・・・
と言うゲームです。
タイトルは、「Run Lola Run」という映画をインスパイアしました。
※え、古い?古すぎる?年代がばれる?昨今の若者は知らんだろう??
ほんとは、「TT筋肉体操」(machokoさんがTポーズで走るから)とか
「TTマッチョラン」とか、はやりに乗っかろうと思ったのですが
つい昔すぎる映画のタイトルに乗っかってしまいました・・・。
machokoゲームを実装するにあたり、使ったテク等をブログにまとめていこうと思います。技術ブログというか、備忘録も兼ねて。
もしお目に留まったなら、machokoゲームも遊んでいただけると嬉しいです。
「あー、ここでこーゆーことやってるのね」とか
「こーゆーやり方があるのか」など、実際の動きを見る方が理解しやすいと思うので。
次回以降、記事にしていきます!
リリースアプリのプライバシーポリシーについて
プライバシーポリシー
本プライバシーポリシーは、ヒナタ製作所が提供するアプリケーション(以下、本アプリ)における利用者情報の収集および取り扱いについて、説明するものです。
本プライバシーポリシーの内容をよくご確認の上、本アプリをご利用いただけますようお願いいたします。
利用者情報の収集および利用目的
広告配信
本アプリでは、広告配信のために「Unity Ads」を利用しています。
「Unity Ads」とは、Unity Technologies社によって提供されている広告配信ツールです。
利用状況解析
本アプリでは、利用状況解析のために「Unity Analytics」を利用しています。
「Unity Analytics」とは、Unity Technologies社によって提供されている統計データ取得ツールです。
Unity Technologies社の公開しているプライバシーポリシーについては、以下のサイトをご確認ください。
収集情報の取り扱い
収集した情報については、サービス改善や利用に関する動向調査等に利用させていただきます。
原則として、第三者へ提供することはございません。
プライバシーポリシーの変更
本プライバシーポリシーは、アプリのバージョンアップや事業内容の変更等により変更される場合があります。
お問い合わせ
本プライバシーポリシーに関するお問い合わせは、以下のメールアドレスにて受け付けております。
atelierhinata77@gmail.com
ヒナタ製作所について
はじめまして
SE暦20年のしっぽです。
2019年5月より、フリーランスエンジニアとして活動を始めました。
受託案件の隙間で個人ゲーム(Unity)を製作しています。
※現在は仕事量が逆転しておりますが・・・(汗
経歴
製造会社のソフトウェア部門に20年所属。
その間、C++、C#、JavaでBtoB向けデスクトップアプリを開発。
要件定義~テストまで、幅広く経験。
メンバー管理を行いつつ開発も担当する、ブレイングマネージャー(モドキ)。
案件
ヒナタ製作所は、将来的にインタラクティブなコンテンツの配信を目指しています。
現在はUnityでゲーム作成を主としておりますが
Unityを使った受託案件も募集しております。
Unityエンジニアとしては、まだまだ駆け出しではありますが
何卒よろしくお願いいたします!!
今後
グラフィックデザイナーが参戦するやも・・・!?