【第3回】超入門!Unityでパズルゲームを作ろう!「ゲーム画面の作成編」

第3回ゲーム画面の作成編
ゆくすぃ

ごきげんよう、Budding Lab.編集部のゆくすぃです!
「鬼武者」は約20年ぶり、「大神」は約18年ぶりの完全新作ということで、発売日が待ち遠しくてたまりません。

ゲームが大好きな皆さんなら、一度は「自分でゲームを作ってみたい!」と、思ったことがあるのではないでしょうか?

本連載では、ゲーム開発初心者のゆくすぃが、基礎的なスクリプトだけを使って、超入門・パズルゲームの作り方を解説します!

本記事は、第3回「ゲーム画面の作成編」です。

プログラミングの専門知識がなくたって、画像や音楽作成アプリが使えなくたって、案外、ゲームって作れるものです。興味が湧いたなら、ぜひ挑戦してみてください!

2D脱出ゲームの作り方も解説しています。ご興味があれば、ぜひご覧ください!

目次

ゲーム画面の構成を考える

今回のゲームは・・・

  1. ゲーム画面内をクリック(タップ)して、隠されたピース(5枚)を入手する。
  2. 入手したピース(5枚)の中から、正しい4枚を選んで正しい位置に置く。

・・・という内容です。

なので、ゲーム画面には、クリック(タップ)するとピースを入手できるゲームオブジェクト(UI:Image)を5つ配置します(下図左:黄色のハイライト)。このうち「2」と「5」以外には画像を設定せず、透明のままにしておきます。こうすることで、あたかも箱や家具の中からピースを取り出したように見せられます。

インベントリには、入手後に表示される5つのピース(UI:Image)を配置します。

さらに、インベントリからドラッグしたピースをスナップさせる場所(=スナップポイント)にも、透明なゲームオブジェクト(GameObject)を4つ配置します(下図右:水色のハイライト)。5つのピースのうち1つはダミーなので、インベントリから取り出したピースを元の位置へ戻せるよう、インベントリ側にもスナップポイントを用意しておきます。

dands-blog_31

では早速、このイメージ通りにゲーム画面を作っていきましょう!

準備:Imagesフォルダを作って画像を追加する

画像・音・フォントなどのゲーム作りに使われるアセットは、すべて Assetsフォルダに保存します。

まずは、Assetsフォルダの中にImagesフォルダを作成し、そこに画像を追加しましょう。準備した画像ファイルを、Projectウインドウの右側(フォルダの内容が表示されるエリア)にドラッグ&ドロップするだけで簡単に追加できます。

Assetsフォルダ > Imagesフォルダに画像を追加

dands-blog_33

ゲームパネル(GamePanel)を作る

ゲームの背景となる「GamePanel」を作ります。

ProjectウインドウのScenesフォルダから「シーン:GameScene」を選んで、ダブルクリックしてください。「シーン:GameScene」が開き、編集可能な状態となります

Hierarchyウインドウ(ヒエラルキーウインドウ)の左上にある「+」をクリックすると、コンテキストメニューが表示されます。その中から「UI」を選び、追加で展開されるメニューから「Panel(パネル)」を選んでクリックします。

dands-blog_32

すると、Hierarchyウインドウに新しいパネルが追加されるので、名前を入力して確定します。今回は「GamePanel」としました。

※「パネル:ParentPanel」作成と同時に「Canvas」と「EventSystem」が追加されます。これらは、パネルなどのUIを使う時に必ず一つ必要なものなので、削除しないでください。

「GamePanel」の位置とサイズは下図の通りです。

dands-blog_36

Hierarchyウインドウで「GamePanel」を選択したまま、InspecctorウインドウのImageコンポーネントにあるSource Imageプロパティの赤丸部分をクリックします。

dands-blog_34

すると、Imagesフォルダに保存した画像ファイルが表示されるので、ゲーム画面の背景に使いたいものを選んでクリックしましょう。最後に「Set Native Size」をクリックします。

dands-blog_35

ゲームの背景となる「GamePanel」が完成しました。

dands-blog_37

インベントリパネル(InventoryPanel)を作る

同じ要領で、入手したピースが入る「InventoryPanel」を作ります。

Hierarchyウインドウに新しいパネルを追加し、「InventoryPanel」と名前を入力して確定します。「InventoryPanel」の位置とサイズは下図の通りです。

dands-blog_38

「InventoryPanel」のImageコンポーネントにあるSource Imageプロパティで、インベントリの背景に使いたい画像を選びます。最後に「Set Native Size」をクリックすると「InventoryPanel」は完成です。

dands-blog_39

入手用のピース(UI:Image)を配置する

「GamePanel」上に、クリック(タップ)するとピースを入手できるゲームオブジェクト(UI:Image)を配置していきます。

dands-blog_40

見えているピースを配置する

例として「5」のピースを配置してみましょう。

「GamePanel」の上で右クリックし、コンテキストメニューが表示されたら、その中から「UI」を選び、追加で展開されるメニューから「Image(イメージ)」を選んでクリックします。

dands-blog_41

すると、HierarchyウインドウにImageが追加されるので、名前を入力して確定します。今回は「bg0_card0」としました。

Hierarchyウインドウで「bg0_card0」を選択したまま、InspectorウインドウのImageコンポーネントにあるSource Imageプロパティの赤丸部分をクリックします。

dands-blog_42

すると、Imagesフォルダに保存した画像ファイルが表示されるので、「5」用に準備したものを選び、最後に「Set Native Size」をクリックします。「5」の位置とサイズは下図の通りです。

dands-blog_43

「5」のピースを配置できました。

dands-blog_44

同じ要領で「GamePanel」の上に「2」を配置しましょう。「東・西・風・北・南」のピースは「InventoryPanel」の上に乗せます。

見えないピースを配置する

例として「4」のピースを配置してみます。

「GamePanel」の上に新しいImageを追加し、名前を入力して確定します。今回は「bg0_card3」としました。画像は設定しないので、ImageコンポーネントにあるSource Imageプロパティは「None(Sprite)」のままにしておきます。

dands-blog_45

ImageコンポーネントにあるColorプロパティの赤枠部分をクリックすると、Colorウインドウが開くので「A(Alpha):透過度」を「0」に修正します。

dands-blog_46

これで、透明な「4」のピースを配置できました。

※画像を指定せず、透過度も「0」にするなら「UI:Image」である必要はなさそうですが、後でButtonコンポーネントを持たせる都合上、初めからImageコンポーネントを持っているImageが使いやすいです。

同じ要領で「GamePanel」の上に「1・3」のピースを配置します。

スナップポイント(GameObject)を配置する

「GamePanel」上に、インベントリからドラッグしたピースをスナップさせる場所(=スナップポイント)を配置していきます。これには空のゲームオブジェクト(=Create Empty)を使います。

dands-blog_47

例として「1」のピースを配置してみます。

「GamePanel」の上で右クリックし、コンテキストメニューが表示されたら、その中から「Create Empty」を選んでクリックします。

dands-blog_48

すると、HierarchyウインドウにGameObjectが追加されるので、名前を入力して確定します。今回は「Snap0」としました。「1」の位置とサイズは下図の通りです。

dands-blog_49

同じ要領で「GamePanel」の上に「2・3・4」を配置しましょう。「5・6・7・8・9」のスナップポイントは「InventoryPanel」の上に乗せます。

ゆくすぃ

以上で、画面作りは完了です!次回からは「Microsoft Visual Studio」を使ってスクリプトを書いていきます!

まとめ

今回の記事では、ゲーム画面の作成について解説しました。
UI >Image で作られるゲームオブジェクト(=Image)と、Create Empty で作られるゲームオブジェクト(=GameObject)の使い分けが、現時点ではわかりづらいかもしれません・・・が、コツコツと作業を進めるうちに、だんだんとわかってくることなので安心してください。

次回は、【第4回】超入門!Unityで診断ゲームを作ろう!「ピースの入手とシーンの切替編」です。

以上、最後まで読んでいただき有難うございました!

よかったらシェアしてね!
  • URLをコピーしました!
目次