スポンサーリンク

Unityでクイズアプリ(1)

とにかく、クイズゲームを作りたい。

Unityがクイズゲームになんとなく向いていなさそうだとは思っていたが、そこに解説があったので、以下のサイトを写経してみる!
難しそうだが、できるだろうか。。。

Labels:  iOS 投稿者:tsuyoshi
uGUIで簡単!Unityクイズアプリで社内コミュニケーションの活性化
2015.05.28
https://engineer.blog.lancers.jp/2015/05/ugui_quiz_unity/

ソースコードもこちらに公開してくださっていて、大変ありがたい!

なお、基本は、以下の本に沿ってやっていく。
Unityをやるときは、必ず、以下の本を読みながらやっている。

<Unityの流れ>
(1)プロジェクトの作成
(2)オブジェクトの配置
(3)スクリプトの作成
(4)スクリプトのアタッチ

(環境)
Windows8.1
Unity5.4.3f1
Visual Studio Community 2015

(用意する画像ファイル)
batsu.png

maru.png

quiz_image.png

title.png

(1)Unityの起動と、新規プロジェクト作成(2D)

●スタート画面を作る

用意した4つの画像ファイルを、Assets のところへドラッグ&ドロップ。

●スマートフォン用に設定

File > Build Settings で、Android を選択してから、Switch Platform をクリック。
さらに、Player Settings… をクリックして、Inspector 画面で、
Settings for Android > Identification > Bundle Identifier を、com.Company.Quiz002 に変更。
(これを行わないと、apkファイルにしたときに、うまくインストールできないことがある。)

 

●画面サイズの設定

Gameタブで、16:10 Portrait(10:16) を選択。縦長の画面になる。

●シーンの保存

File > Save Scene as から、title という名前でsceneを保存。

 

(2)オブジェクトの配置

title.png を、 Sceneタブ の中にドラッグ&ドロップ。

 

Hierarchyタブの、Main Camera をクリックして、Inspectorの中の、Camera > Backgroundの色をクリックして、白に変更。

 

Game Object > UI > Button

 

やたら大きいボタンが出てくるので、「Canvas」のInspectorから「ScreenSpace」を「Main Camera」に合わせる。
さらに、Button の InspectorのPosXやPosYなどで微調整する。

 

 

Ctrl + S で、こまめにSceneを保存しておく。

ボタンのテキストの変更。Hierarchyタブの、Canvas→Button→Text をクリックして、Inspectorタブの、Text(Script)のTextの部分を変更。

 

(2-2)Quizシーンの作成

File > New Sceneより、新規シーンを作成し、Quiz という名前で保存。

Hierarchyタブで、Main Cameraを右クリック > Delete

 

「File」→「Build Settings」を開いて、「Title」と「Quiz」をドラッグ&ドロップして追加。(これをやっておかないと、あとで画面遷移できない。)

 

(2-3)uGUIでの画面遷移 : onClickイベント

Assets > Create > C# Script で、GameStart.cs を作成

 

GameStart.cs アイコンをダブルクリックすると、しばらく時間がかかり、自動的にVisual Studio Community 2015 (インストールしていない場合は、)が起動する。

以下の文面で置き換える。

 

using UnityEngine;
using System.Collections;
using UnityEngine.SceneManagement;

public class GameStart : MonoBehaviour
{

    public void NextScene()
    {
        //今いるシーンがTitleという名前であれば、Quizという名前のシーンに移動する
        if (SceneManager.GetActiveScene().name == "Title")
        {
            SceneManager.LoadScene("Quiz");
        }
    }
}

 

(参考)
2016-01-13
Unity 5.3 で Application.LoadLevel が Obsolete になりましたhttp://ninagreen.hatenablog.com/entry/2016/01/13/033413

ボタンにスクリプトをアタッチ。
Titleシーンで、Canvas > Button に、GameStart.unity をドラッグ&ドロップ。

Buttonを選択した状態で、Inspector の、Game Start (Script)の、On Click() の、「+」ボタンをクリック。

Hierarchy タブの、Button を、Inspector > On Click() > None(Obje…) のところにドラッグ&ドロップ。

ドラッグ&ドロップしたすぐ右上の、「No Function」をクリックして、GameStart > NextScene() をクリック。

 

画面真ん中上の方の、△ボタンを押して、起動したあと、Gameタブの中のボタンをクリックすると、画面が遷移することを確認。そのあと、もう一度、△ボタンを押して、戻しておく。

これで、やっと、画面遷移ができた。

続きは次回に。

<Unityでクイズアプリ(1)(2)(3)の写経元と、リンク>

Labels:  iOS 投稿者:tsuyoshi
uGUIで簡単!Unityクイズアプリで社内コミュニケーションの活性化
2015.05.28
https://engineer.blog.lancers.jp/2015/05/ugui_quiz_unity/

ソースコードはこちらに公開してくださっていて、大変ありがたい。

http://twosquirrel.mints.ne.jp/?p=13021   (このページ)

http://twosquirrel.mints.ne.jp/?p=13137

http://twosquirrel.mints.ne.jp/?p=13263

Unity

Posted by twosquirrel