使用ソフトはUnityで使用した言語はC#です。基本的な構文はjavaと似ていましたが、それでも違う言語だったので大変でした。
Unityは全く触ったことがなかったので手探りの状態でのスタートでした。
制作方法
作成したい画面を図に起こしてそこからプログラムを作った。
デザインが大変だった。
大変だったところ
・クイズだけではなく図鑑機能も作成したところ
・デザイン。UIについて
・クイズのシャッフル機能
・ページの切り替え機能
こだわりポイント
・表情が変わる
・クイズのシャッフル、CSVデータ
基本的に作成したい画面を図に起こし、そこに必要なプログラムを考え作成しました。(ここら辺に下書きした画像)
1.クイズだけではなく図鑑機能も追加したこと
当初予定していたクイズだけでは少ないと考え、もう一つのアプリ案としてあった図鑑としての機能も追加しようと考えました。
操作の簡易化のために、ボタンでの操作とし、各地方のお茶が一目でわかるようデザインを作成しました。
(図1:原案 図2-a,b:実際に作成したもの)
(図1:お茶の種類を集めていく方式で考えていた)
(図2-a:地区ごとにお茶の品種を表示)
(図2-b:お茶の品種と説明をする画面)
図2-bの画面にある▶。ページを移動するプログラムを作成するのが大変でした。
2.ゲームの設計から作成したこと
グループで話し合ってどのようなアプリを作成してSDGsの解決に繋げるのかを0から考えました。
紙に実現したいシステムやUIなどをメモしてそれを元にプログラムを作りました。
ただプログラムを組むだけではなく、アプリの設計図から考えたので、大変でしたが勉強になりました。
(図1:作成時にしたメモ 図2:実際に作成した画面)
(図2:実際の画面)
「答えはXのY」として変数を作成し、XとYの部分に問題文と選択肢のデータから引っ張ってくる形で何とか実現しました。
3.アプリのビルド
完成したアプリを配布形式にする段階に移った際、度重なるエラーに苦労しました。
似たような症状のエラーを検索し、最適な修正を加えることで完成させることができました。
また、アプリへのビルド時からGoogle Play Consoleにアップロードが完了するまでに遭遇したエラーをまとめ、その解決法をまとめたものをQiitaで公開しようと考えています。(個別で作るのでリンク入れたい)
1.クイズのランダム性
苦労した部分でもあるクイズシステムは、CSVにデータを保存し、配列をシャッフルして出題しています。
これによって被ることなくランダムに問題を出題させることができ15問から5問。3つの難易度を合わせて9,009通りの順番です。
2.表情の切り替え
イラスト担当の人に差分をたくさん書いて頂いたので、それを活かせるように正解すると笑顔になったり不正解だと悲しい顔になったりと随所に表情を変化させるプログラムを作成しました。正解数によって天竜君の表情も変わるのでぜひ全問正解を狙ってみてください!