Unity AssetStoreまとめ

アセットストア日替わりタイムセールの記事を書いていきます。

【PuppetMaster】ユニティちゃんが熊とおっさんに襲われた?ユニティちゃんが走ってラグドールをする機能実装に挑戦

f:id:assetsale:20170621022246p:plain

 

第4回 PuppetMaster特集

パペマスでユニティちゃんをいじる記事一覧はこちら

 

PuppetMasterは、Ragdoll(ぐったりする機能)の拡張版です。

Final IKの作者さんによるアセットで、

キャラクターが走って衝突した時に、モーションを再生させたまま、

ダメージを受けた体の部位だけリアルな衝撃を受けるスクリプトです。

PuppetMasterはじめての方はこちらの記事をチェック

 

今回はユニティちゃんを歩かせて倒れたり衝突したりさせることを目標に挑戦!

 

サンプルシーン「Melee」のプレイヤーを参考に色々やってみた。

f:id:assetsale:20170621023033g:plain

 

実験1 無料アセットで検証

 

f:id:assetsale:20170609190738j:plain

f:id:assetsale:20170609190732j:plain

RPG Character Mecanim Animation Pack FREE

アニメーション/二足歩行

無料

数々の武器アニメ、はしごを登ったり泳ぐ事もできるアニメーションパックお試し版

 

いきなり別アセットからですが、苦戦している途中段階の頃の話。

 

サンプルシーンのキャラを引っ張ってきてコピペで実装してみた。

コンポーネントをコピペしてパラメータを調整して何とか動けるキャラになりました。

 

スペランカーのような、ちょっとした段差で転ける最弱キャラを作りたい。

f:id:assetsale:20170621005849g:plain

物体があれば体が重ならない。

PuppetMasterを実装したことによって、キャラが元より滑らかに動くようになった。

f:id:assetsale:20170621005928g:plain

こちらが元の記事。

RPG Character Mecanim Animation Pack FREE

ユニティちゃんを動かすセットアップ方法を書いた記事です。

外部エディタPuppetMasterが連携できたら素敵!」っと思って試し、

以外とすんなりいけそうだったけど、倒れた時に問題が・・・

・キャラがダウン時にキャラクター本体が点滅する。(地下と地上を高速で行き来してる)

 

実装方法が間違ってる可能性あり。正しい方法は実験3で紹介

 

引き続き検証中。

動いたら手順を公開します。

 

実験 2 ボクセルキャラは動くかな?

 

f:id:assetsale:20170621011302j:plain

f:id:assetsale:20170621011319j:plain

Voxel Importer

エディタ拡張/モデリング

$27    割引無し

 

日本作家さんのボクセルエディタ!

こちらの完成キャラクターを使って検証しました。

 

f:id:assetsale:20170621011555g:plain

 

かなり無茶な設定で動かしてみた。

全然動いてませんが、練習すればいけそうな気もする。

 

引き続き検証します。

 

Voxel Importerについてはこちらの記事をご覧下さい。

実験 3

 

PuppetMasterのサンプルシーン「Melee」のキャラをユニティちゃんに置き換える

 

f:id:assetsale:20170621010958p:plain

 

作業方針:チュートリアルで使われてる兵士キャラを元にコンポーネントをコピーして動かす。

 

無理矢理コンポーネントをコピーさせて何度もトライするが上手くいかない。

f:id:assetsale:20170621012749g:plain

ムズい・・・何が悪いのか調べて3時間、、まるでなってない挙動。

 

苦戦した内容

・ユニティちゃんが棒をキャッチできない。

 └手動で設定して持てるようになる。攻撃アニメの手の位置が微妙。

・ユニティちゃんのCapsule Colliderが邪魔して物質に当たらない。

 └ProjectSettings->Physicsで、Capsule Colliderのレイヤーを分けた。

・障害物に当たったとき吹っ飛ぶと、Character Controller(PuppetMaster専用の)が衝撃前の位置で止まってWASD操作がむちゃくちゃになった。

 

対処法に悩み、進捗記事を書いていたら・・・

 

 

気になるコメントを発見

f:id:assetsale:20170621015643p:plain

このシーンでは、BehaviourPuppetによって制御される2つ以上の人形がどのように衝突に対処し、どのように打撃やバット打撃などのアクションを設計できるかを示しています。

特に長いロープを使用する場合は、そのようなシステムの設定を正しく行うには、多くの調整と繰り返しが必要です。

バットを振りながら、同じ方向にWASDでキャラクターを回転させると、より強いヒットを得ることができます。

「Character Controller」のCharacterMeleeDemoコンポーネントで、ヒューマノイドキャラFBXまたは既製のラグドールを「キャラモデルの置き換え」として割り当て、「置換」をクリックすると、キャラモデルを簡単に置き換えることができます。

 

「キャラセットし「置換」クリックで、キャラモデルを簡単に置き換えできます」

は!?

 

Character Controllerオブジェクト

f:id:assetsale:20170621015509p:plain

あった。これずっと気になってた。

f:id:assetsale:20170621013029p:plain

Character Melee Demoコンポーネント

「Replace Character Model」ここか。

「キャラクターコントローラー」のCharacterMeleeDemoコンポーネントで、ヒューマノイドキャラFBXまたは既製のラグドールを「キャラモデルの置き換え」として割り当て、「置換」をクリックすると、キャラモデルを簡単に置き換えることができます。

 

ヒューマノイドキャラFBXで良い!?

 

ってことは、「unitychan」Prefabを入れてReplaceしてみる。

f:id:assetsale:20170621020659p:plain

f:id:assetsale:20170621020750p:plain

 

何も設定せず、いきなり実行してみた。

すると、アニメーションがおかしい状態で始まった。

 

同じAnimatorが2つ付いてたので片方消してみると、

ラグドールの設定もしてない状態なのに、いきなり綺麗に動いた!!うおー!

f:id:assetsale:20170621014031g:plain

落ちてる棒も拾えて、Eキーで攻撃もできた!

f:id:assetsale:20170621013946g:plain

クマさんとおっさんに××されるユニティちゃん

f:id:assetsale:20170621014115g:plain

凄い!PuppetMaster、最高ー!!

あとはAnimatorでユニティちゃんのアニメに置き換えたら完成ですね。

他のキャラも出来るか次回まとめたいと思います。

 

 

 

f:id:assetsale:20170616174948p:plain

この作品はユニティちゃんライセンス条項の元に提供されています

 

PuppetMasterのバックナンバーはこちら