本投稿は2024年9月時点の内容になります。アップデートにより変更となる場合があります。また環境によって違いがあると思いますのであくまで参考として、ご了承ください。
様々な書籍、ブログや動画を参考にさせていただきました。多すぎて一つ一つはtお紹介できませんが感謝です。
初心者の自分がUnity ソフトウエアでゲームを作ってみました。とりあえずシンプルなものということでモグラたたきに挑戦です。ゲーム作ってみるかという感じになったときに、いいタイミングで某ゲームのイベントシナリオ内ミニゲームにモグラたたきが実装されていたのでUIとかエフェクトとか、諸々の仕様をぱくって参考にして作ってみましたよ。様々なHowToの中の選択肢のひとつとして、同じ初心者さんの参考になればよいです。
\ チェック /
目次
今回はPanelを設置しながらアンカープリセットを使ってみます
前回はTextMeshProを配置しました。背景が明るいと少し見えづらいので下にパネルを設置してみようと思ます。
前回の「19.TextMeshPro」もチェックしてみてください。
\ 前回のTextMeshPro編です /
本記事のポイント
- UIのPanelを設置する
- アンカープリセットへの理解を深める
Panelを使ってみよう
表示が見やすくなるようにPanelを設置します
Panelの設置
- ヒエラルキー上で、前々回に作ったCanvas「UI」に「Panel」を作成。「UI」の上で右クリック>「UI」>「パネル」をクリック 作成された「Panel」に任意の名前を付けます。今回は「UIPanel」としました。
- 「UIPanel」の「Image」コンポーネントにプロパティの「色」を「0,0,0,100」としました。
- 他のUI要素より後ろになるようにヒエラルキー「UI」の中で一番上にします。
- 「RectTransform」コンポーネントの設定で「アンカープリセット」が「Strech,Strech」になっているので、「Shift+Alt」を押しながら「Strech,Top」をクリック
- 「RectTransform」の「高さ」を任意に設定します。今回は「200」に設定しました。
アンカーを理解しよう
UIを設置するのに非常によく使うのがアンカープリセットです。アンカープリセットの概要を解説する前にRectTransformのアンカーとピボットに関して見てみます。
RectTransformのざっくり解説
- RectTransformコンポーネントは親に配置された4つのアンカー(Anchor)とそれに対応する子の4つの角のオフセット(どの方向にどれだけ離れているか)の関係で親オブジェクトに子オブジェクトを配置している。
- RectTransformのイメージは壁に(親のオブジェクト)に固定具から出たひも(オフセット)で画(子のオブジェクト)を飾るイメージ。
- アンカー(Anchor)の元の意味は「錨」とか「固定具」。壁(親オブジェクト)に4つの固定具(位置の基準となる点)を設定します。シーンでは白線の三角で表示されています。位置はシーン上でドラッグするか、インスペクターで設定できます。
- アンカーの位置は親オブジェクトの大きさの割合で、X方向の最大最小、Y方向の最大最小の組合せで主に4パターン。①4つが同じ位置にある1点パターン、②X方向で2つが重なる2点パターン、③②のY方向パターン、④4つが矩形に配置された4点パターン
- 2つ(もしくは4つ)重なったアンカーは重なり方向のオフセットを子オブジェクトのピボットの位置で参照する
- Pivot(ピボット)とは元の意味は「枢軸」「回転軸」。これはピボットモードの時に回転の軸になるポイントのためです。ピボットの位置はRectTransformのサイズやスケールの基準点にもなります。
- 少しわかりづらいですがインスペクターでみてみましょう。
- まずはPivotを見てみます。ピボットをX「0.5」、Y「0.5」(中心)に設定します。
- インスペクターで幅と高さを変更します。変化がピボットを基準に起きてると思います。
- 次にアンカーを見ていきます。
- アンカーを最小 X「0.9」Y「0.9」最大X「0.9」Y「0.9」(すべて重なる1点パターン)にするとオブジェクトはアンカーからピボットまでのX方向/Y方向の位置とそれぞれの方向にあたる高さと幅で設定される
- アンカーを最小 X「0.1」Y「0.1」最大X「0.1」Y「0.9」(X方向で重なる2点パターン・アンカーが垂直に分離されているパターン)にするとアンカーからピボットまでのX方向の位置と幅、Y方向にあたるアンカーから上下までの余白(パディング)で設定される。
- アンカーを最小 X「0.1」Y「0.1」最大X「0.9」Y「0.1」(Y方向で重なる2点パターン・アンカーが水平に分離されているパターン)にするとアンカーからピボットまでのY方向の位置と高さ、X方向にあたるアンカーから左右までの余白で設定される。
- アンカーを最小 X「0.1」Y「0.1」最大X「0.9」Y「0.9」(4点パターン)にするとX方向にあたるアンカーから左右までの余白と、Y方向にあたるアンカーから上下までの余白で設定される。
言語化が難しいように、結構複雑ですね。これを簡単に設定できるようにしてくれたのがアンカープリセットです。
アンカープリセットとは
アンカープリセットとは、アンカーとピボットの位置の中で一般的によく使われる、「それぞれの4角とその中央値の組合せ」をワンクリックで設定できるようにしたもの
アンカープリセットの概要
- アンカープリセットとは、アンカーとピボットの位置の中で一般的によく使われる「それぞれの4角とその中央値の組合せ」(最小最大を「0」、「0.5」、「1」に限定したもの)をワンクリックで設定できるようにしたもの。
- 4角とその中央値「Left、Center、Light」「Top、Middle、Bottom」の組合せが、上記の1点パターン。
- それに「Strech」を加えたのが2点パターンと4点パターン。
- 「Shift」を押しながらだとピボットも変更
- 「Alt」を押しながらだと位置も変更
ぜひ公式のマニュアルもチェックして、覚えてしまいましょう!
まとめ
まとめ
- アンカープリセットはUIを実装するうえでの必須級の項目。ポイントを押さえて使いながら覚えてしまいましょう。
\ 初学に使った書籍です /
動画×解説でかんたん理解! Unityゲームプログラミング超入門
大角 茂之/大角 美緒
おすすめ記事
Unity ソフトウエアでゲーム制作#1モグラたたき編(29.ゲームにBGM…
Unity ソフトウエアでゲーム制作#1モグラたたき編(28.ゲームに効果音…
Unity ソフトウエアでゲーム制作#1モグラたたき編(27.エフェクト2パ…
Unity ソフトウエアでゲーム制作#1モグラたたき編(26.エフェクトその1)
Unity ソフトウエアでゲーム制作#1モグラたたき編(25.プレハブバリア…
Unity ソフトウエアでゲーム制作#1モグラたたき編(24.Buttonで…