【Unityゲーム作成①】アセット編 ~ ドラゴンの作成 part1 ~


今回の内容


今回からドラゴンのアセットを適用していきます。
プロトタイプ段階では何だかよくわからないオブジェクトでしたが、ようやくドラゴンっぽい見た目になります。

※初めての方はこちらから
【第1回記事】この連載について

★前回までのソースコード
GitHub

アセットをインポートする


ドラゴンのアセットは以下を使用します。

検索は「Dragon the Soul Eater and Dragon Boar」で検索すると見つかります。

さらにドラゴンが吐き出す炎のアセットに以下を使用します。

検索は「Unity Particle Pack 5.x」で検索すると見つかります。

これらをインポートしておいてください。

※アセットのダウンロード・インポートは第15回の記事で説明しています。

ドラゴンを配置する


インポートしたドラゴンを配置していきたいと思います。
GameScene3 を開いて、以下をシーンに配置してください。
FreeDragons > Prefab > DragonSoulEaterPBR > DragonSoulEaterGreenPBR

位置とサイズを以下に設定してください。

また、既存の Dragon は非表示にしておきましょう。(名前の横のチェックを外す)

これでまずは以下のような画面となります。

細かい設定はこの後行っていきますが、まずは名前だけ「GreenDragon」に変更しておきましょう。

ドラゴンにコンポーネントを追加する


配置した GreenDragon にコンポーネントを追加していきます。
既存の Dragon に登録されている、Transform 以外の3つを追加します。

追加の方法は直接追加しても良いですが、今回はコピーの方法を使いたいと思います。
BoxCollider を例に操作すると、以下の手順です。
① Dragon の BoxCollider の「︙」をクリックし、Copy Component をクリック

② GreenDragon のいずれかのコンポーネントの「︙」をクリックし、Paste Component As New をクリック

これで GreenDragon に BoxCollider が追加され、設定値もコピーされます。

同様の手順で、Dragon から DragonScript と Rigidbody もコピーしておいてください。
この時点で、GreenDragon のコンポーネントは以下の通りになります。

これで必要なコンポーネントは揃いましたが、設定値は調整が必要となるので、
次のセクションで対応していきます。

コンポーネントの調整


先ほど追加したコンポーネントの設定値を調整します。
まず BoxCollider についてですが、以下画像の通りサイズが小さいことと、基準位置が足元になっています。

まずサイズについては、ドラゴンを配置した時にサイズ調整で Scale を 0.25 としたために、
プロトタイプ時点のコライダーの範囲より小さくなっています。
そのため対応としては、コライダーの範囲を4倍することとします。
位置に関しては、中心位置の y軸を2, z軸を8 に設定します。

これで以下の通り、元のプロトタイプと同様の範囲となるはずです。

BoxCollider の調整についてはこれで完了となります。

次に、DragonScript の Fire についても調整が必要で、
コピーすると設定されているオブジェクトが、元の Dragon の Fire となっています。

GreenDragon の下に Fire を配置してそれを設定するよう変更します。
Dragon の Fire をコピーして、GreenDragon 直下に Fire をペーストしてください。

さらに、DragonScript の Fire の箇所にドラッグ&ドロップしましょう。

これで、DragonScript に関する調整も完了となります。

以上が追加した3つのコンポーネントに関する調整内容です。

タグの設定とコライダーの追加


最後にタグの設定とコライダーの追加を行います。
タグについては、Dragon を設定してください。

次にコライダーですが、先ほどのセクションで追加した BoxCollider はプレイヤー検知用のコライダーで、
IsTrigger が設定されていました。
ここで追加したいのは、ドラゴンの当たり判定用のコライダー(IsTriggerではない)になります。

プロトタイプの時は子要素の Cube のコライダーがその役割を果たしていましたが、
今回は親である GreenDragon に直接 BoxCollider を追加します。

Add Component から BoxCollider を追加して、以下の設定として下さい。

およそドラゴンの形状に沿ったコライダーとなります。

ここまでで一旦ある程度の置き換えが完了となるので、シーンを再生してみましょう。
以下2点が確認できればOKです。
・プレイヤーが視界に入ると炎を吐く事
・ドラゴンが針に触れると消滅する事

ちなみにアニメーションはまだ調整しておらず、しばらく放置しているとドラゴンが勝手に動作を始めます。
こちらは次回以降調整するので、今は気にしないでください。

※コンパイルエラーが出る場合
以下のようなエラーが出るかもしれません。

その場合は Window > Package Manager をクリックして、

開いたウィンドウで Postprocessing を選択し、Update を行ってください。

これで関連するコンパイルエラーが消えるはずです。

おわりに


今回の実装はここまでとします。
まずはドラゴンの本体部分の置き換えを行いました。
まだアニメーションの設定など細部は調整していないのでそれは改めて行うこととします。

次回は今回は使わなかったもう一つのアセットを使って、ドラゴンが吐き出す炎の置き換えを行いたいと思います!

★今回までのソースコード
GitHub


連載一覧

1.導入・準備編 ~ この連載について ~
2.導入・準備編 ~ 初期設定とUIの作成 ~
3.プロトタイプ編 ~ 壁・床・天井の作成 ~
4.プロトタイプ編 ~ プレイヤー作成 part1 ~
5.プロトタイプ編 ~ プレイヤー作成 part2 ~
6.プロトタイプ編 ~ プレイヤー作成 part3 ~
7.プロトタイプ編 ~ 箱の作成 part1 ~
8.プロトタイプ編 ~ 箱の作成 part2 ~
9.プロトタイプ編 ~ シーンの制御 part1 ~
10.プロトタイプ編 ~ シーンの制御 part2 ~
11.プロトタイプ編 ~ ゴール・トラップの作成 ~
12.プロトタイプ編 ~ ギミック(ドラゴン)の作成 part1 ~
13.プロトタイプ編 ~ ギミック(ドラゴン)の作成 part2 ~
14.プロトタイプ編 ~ ギミック(ドラゴン)の作成 part3 ~
15.アセット編 ~ アセットストアの使い方と壁・床・天井への適用 ~
16.アセット編 ~ 箱の作成 part1 ~
17.アセット編 ~ 箱の作成 part2 ~
18.アセット編 ~ トラップの作成 ~
19.アセット編 ~ ゴールの作成 ~
20.アセット編 ~ 背景の作成 ~
21.アセット編 ~ ドラゴンの作成 part1 ~(今回の記事)
22.アセット編 ~ ドラゴンの作成 part2 ~
23.アセット編 ~ ドラゴンの作成 part3 ~

 

© Unity Technologies Japan/UCL

  • このエントリーをはてなブックマークに追加

PAGE TOP