本投稿は2024年9月時点の内容になります。アップデートにより変更となる場合があります。また環境によって違いがあると思いますのであくまで参考として、ご了承ください。
様々な書籍、ブログや動画を参考にさせていただきました。多すぎて一つ一つは紹介できませんが感謝です。
初心者の自分がUnity ソフトウエアでゲームを作ってみました。とりあえずシンプルなものということでモグラたたきに挑戦です。ゲーム作ってみるかという感じになったときに、いいタイミングで某ゲームのイベントシナリオ内ミニゲームにモグラたたきが実装されていたのでUIとかエフェクトとか、諸々の仕様をぱくって参考にして作ってみましたよ。様々なHowToの中の選択肢のひとつとして、同じ初心者さんの参考になればよいです。
\ チェック /
目次
ゲーム画面サイズを変更してシーンにスプライトを配置してみます
いよいよモグラたたき作成に入っていきます。
本記事のポイント
- ゲーム画面サイズの変更の仕方がわかる
- メインカメラのサイズの変更がわかる
- シーンビューの簡単な操作がわかる
- 配置したスプライトをシーンのサイズに合わせる方法がわかる
ゲーム画面サイズを変更してみよう
ゲーム画面サイズを変更していきます。今回はモグラたたきなので縦長9:16のアスペクト比に設定していきます。
ゲーム画面サイズの変更
- ゲームビューを開きます
- 「FreeAspect」となっている部分をクリックして任意のサイズを選択すると変更できます。今回は新たな設定を追加したいので「+」マークをクリックします。
- ラベルにわかりやすい名前を任意に入力(今回は9:16Aspectとしました)、タイプを選択(今回はアスペクト比)Xに9、Yに16と入力してOKをクリックします。
- ゲーム画面のサイズが変わったと思います。
ゲーム画面サイズにあわせてメインカメラサイズを変更します
メインカメラサイズの変更
- シーンビューに戻って、ヒエラルキーからMainCameraを選択
- インスペクターで投影方法から平行投影を選択、デフォルトでサイズ(ビューポイントのサイズ)がおそらく5になっているかと思います。シーンビューに目を戻すとY軸のグリッドが中心よりプラス側に5個(Y軸全体では10個)あると思います。
- それを踏まえてインスペクターでサイズを8にしてみます。
- 再度シーンビューをみるとグリッドがY軸に16個、X軸に9個並んだと思います。アスペクト比とグリッドの数が一致して見やすくなったと思います
ゲーム画面サイズとカメラサイズの設定は何を基準にするかで変わってきて結構奥が深そうです。今回はシンプルな構成のゲームなのでアスペクト比を基準に設定しました。2Dでもステージのあるアクションゲームや3Dゲームではサイズ設定の重要度は上がりそうです。ちなみに1ユニット(グリッド)=1mがベストプラクティスとのことです。ぜひ自分でベストだと思う設定をを探ってみてください。
シーンビューにゲームオブジェクト(スプライト)を置いてみよう
シーンビューにゲームオブジェクトを置いていろいろ動かしてみよう。
シーンビュー上の操作
- プロジェクトウィンドウから画像をシーンにドラッグアンドドロップすると配置できます
- ツールパネルからツールを選択することで、シーン上のオブジェクトを動かすことができます。パネルは上からビューツール(ゲームオブジェクトではなくビュー全体を移動させます。見たい場所を合わせたりするのに使います。)、移動ツール、回転ツール、スケールツール、矩形ツール、トランスフォームツールになります。正直インスペクターのTransformの数字を変えた方が簡単で正確なので、ビューツール以外はほとんど使わない感じです。表示の拡大縮小はマウスホイールでできます。
- 動かすときは色のついた矢印やラインをドラッグします。3Dモデルの操作にあまりふれてないと、ゲームオブジェクト(この場合はスプライト画像)を直接ドラッグしたくなりますが、それでは動きません。自分はどうして動かないのか把握するまでハマりました。。。
初心者がハマったポイント
- 大事なことなのでもう一回言います。ツールを使う場合はゲームオブジェクト(この場合はスプライト画像)を直接ドラッグしても動きません。動かすときは色のついた矢印やラインをドラッグしましょう。
配置したスプライトをシーンのサイズに合わせよう
シーンビューをみるとスプライトがゲームサイズに比べて大きすぎます。これを適正なサイズに合わせていきましょう
スプライトのサイズの調整法
- 配置したスプライトが大きいすぎますね。サイズを調整していきます。
- サイズ調整したいスプライトの元となるTexture 2Dをプロジェクトから選択します(Texture 2Dが展開されて右側にスプライトが展開している場合は左側を選択します)
- Texture 2Dが選択されていれば「インポート設定」がインスペクターが表示されます。その中の「スプライトモード」>「単位毎のピクセル数」を変更します。単位(ユニット)とはシーンビューのグリッドの1個で、これに対応するピクセル数を設定します。数字が大きいほど(1ユニットの密度が高いほど)スプライトは小さく表示されます(100ピクセルを表示するのに単位当たり50ピクセルだと2単位ですが、単位当たり100ピクセルだと1単位で済みます)。今回は「150」に設定しました。
- 変更したら必ず「適用する」をクリックしてください
- サイズ感が変わったのがわかりますね。
「単位ごとのピクセル数」をまとめて変更したい!
「単位ごとのピクセル数」の変更。一個だけなら簡単ですがアニメーション用の連続画像とか数が多い場合途方にくれますよね。でも大丈夫です。まとめて変更可能です。
「単位ごとのピクセル数」をまとめて変更する
- プロジェクトで変更したい画像を+shiftや+ctrlでまとめて選択します。
- インスペクターで「スプライトモード」>「単位毎のピクセル数」を変更して「適用をする」をクリック。これでまとめて変更できました。
- 今回のハマりポイントです。「Narrow the Selection」???のメッセージでインスペクターが表示されません。「選択を狭めてよ」ということで、要は選択に「Texture2D」と「Sprite」が混在していてUnityが混乱してる状態なのです。
- こいつのせいですね。知らぬ間に画像が展開されていたようです。
- メッセージの「Texture2D」をクリックしてください。
- 無事インスペクターが表示されました。
初心者がハマったポイント
- 「単位ごとのピクセル数」をまとめて変更しようとして「Narrow the Selection」のメッセージでインスペクターが表示更ないときは、メッセージの「Texture2D」をクリックすればOK
さて、ここまで書いてマケイヌは思いました。「もしもこの記事を読んでくれた人がいた場合、手元に素材がないとわからないかも。そうだ無料アセット『ユニティちゃん』を使おう!」。なのでこの後はモグラの代わりにユニティちゃんに頑張ってもらおうと思います。「ユニティちゃん」のインポートの仕方はこちらです。
\ ユニティちゃんの記事をチェック /
ユニティちゃんバージョン
スプライトのサイズの調整法「ユニティちゃんバージョン」
- スプライトを配置します。上記のもぐらの時とは反対に、今度はちっちゃて感じですね。
- インスペクターの「スプライトモード」>「単位毎のピクセル数」が「100」になっています。
- 数字が小さいほどスプライトは大きく表示されます。なので、今度はこの数値を小さくして調整します。
「20」「24」(作成中に微調整したところ24の方が良さそうです)にするといい感じですね
まとめ
まとめ
- ゲームビューでゲーム画面サイズを変更できる
- 平行投影設定のカメラのサイズでシーン内のユニット(単位)の数を調整できる
- 画像の「単位毎のピクセル数」(Pixels Per Unit)でシーンに対する画像の大きさを調整できる
\ 初学に使った書籍です /
動画×解説でかんたん理解! Unityゲームプログラミング超入門
大角 茂之/大角 美緒
おすすめ記事
Unity ソフトウエアでゲーム制作#1モグラたたき編(28.ゲームに効果音…
Unity ソフトウエアでゲーム制作#1モグラたたき編(27.エフェクト2パ…
Unity ソフトウエアでゲーム制作#1モグラたたき編(26.エフェクトその1)
Unity ソフトウエアでゲーム制作#1モグラたたき編(25.プレハブバリア…
Unity ソフトウエアでゲーム制作#1モグラたたき編(24.Buttonで…
Unity ソフトウエアでゲーム制作#1モグラたたき編(23.シンプルなアニ…