ネットの海を漂う達人の皆様こんにちは。ハッカソン15班、高級茶漬けです。
この班では、「調味料の達人」というミニゲームを作りました。
この記事では、このプロジェクトを完遂するに至るまでの記録とそこからの反省について書いていきたいと思います。
開発者
てねしん (@Tennessine_699)
21B, Game班/SysAd班所属, 全般担当
島猫 (@Shimaneko613)
21B, Game班所属, プログラミング担当
へびぞっち (@hebizo)
21B, Game班/Algorithm班所属, プログラミング担当
えお (@eo)
20B, Graphics班所属, 3Dモデル/グラフィック担当
ゲーム内容
制限時間(60秒)内に画面中央部に流れてくる料理に、正しい調味料を選択してかけるゲームです。
素早くトッピングを終え、料理に合う調味料を選べば得点が大きく上がります。また、料理によっては薄い指示ラインが表示されるので、それをなぞる様にかけることでも得点が上がります。
開発の流れ
チーム分け発表から開発開始まで
顔合わせの後話し合いを行った結果、開発環境は全員が使用した経験あるUnityを用いることになりました。話し合いの過程でチーム名を決める最中、なぜか「高級ふりかけ」に意識が集中したため、良い感じに分割してこのチーム名とこのゲームタイトルが決定されました。
チーム名が決定後はゲーム内容についてどのようなものだと面白そうかと互いに案をひたすら出し合い、全てメモを残していく形でアイデアを練る形となりました。最終的に実装しきれないほどの様々な案が飛び交いましたが、その結果開発途中で詳細を考え直す必要が無くスムーズに完成まで流れを運ぶことができたのが良かったと感じています。
また、ハッカソン期間開始前にチーム内で中間集会・最終集会を行う日程を詳しく定め、メンバーの予定をお互いに把握することでほぼ毎日進捗度合いの確認を行うという決まりも立てました。
他に、開発計画の細分化と可視化を行い、プロジェクトの進行度合いや現状把握を簡単にするような工夫を行いました。具体的には下記のような図を作成したり、詳細についてを言葉で伝えるのではなく全て文面にして記録しました。これらを行うことで、必要になったらいつでも見返して自分がやってきたことを再確認したりすべきことを確認できるようにしました。
開発開始から中間まで
開発序盤では、細かなタスク分けの後全員が各々振り分けられた仕事を進めていきました。しかし、見通しの甘さと技術面の問題から開発があまりうまく進まず、後回しでもなんとかなると考えていた料理のモデルが、インターネット上で収集できる数がそこまで多くないということが判明し、難航の兆しが見えてきます。
中間集会以降
中間集会の時点で全体に対する完成度は甘く見積もっても25%といったところでした。これに危機感を覚え少しづつ開発を詰め始めました。今考えたら急ぎ始めるのが相当遅かったように感じます。
また、このゲームには本来今回のハッカソンで使うことが許可されたVRoidSDKを利用するつもりでした。その案内が中間集会直前に送られてきて、中間集会後からVRoidSDKの設定にリソースを割くこととなりました。が、設定がうまくいかず… 認証系に対する知識が足りていなかったこともあり、多くの時間を取られた上に最終的に実装が間に合いませんでした。強い無力感を感じる。
終盤
最後の二日は地獄のような開発となりました。最終形を分割した状態の部品たちはほとんど完成していたのですが、似たような二つの実装を別の人間が行ったことによる調整や、分割状態の物を組み合わせる作業に予想以上の時間がかかってしまったというのが大きな原因だと考えています。それでも何とか今まで以上に時間をかけ、デスマーチ寸前まで追い込んでギリギリ完成にこぎつけることができました!
感想・分析
原因
今回開発日程が地獄になってしまった原因としては、端的に言えば序盤の失速だと言ってしまえばそれで終わりなのですが、序盤失速してしまった大本の原因が二点があるように考えられました。
まず「自分たちの力量の把握不足」があります。言って言葉の通り、自分たちがどれくらいの時間で何をこなせるかというものを把握していなかったことに問題がありました。ここに大きな見誤りがあったことで一日にどれくらいの時間を開発に回せばよいかという前提が崩壊し、序盤の進行が必要な速度に全く達していないという状態が生まれてしまいました。
次に、「開発開始前に満足してしまった」という原因もありました。これは、開発開始直前に開発計画を大きく練って完璧に完成させたことで、なにか満足感のようなものが生まれてしまったのだなと考えています。本来は直前でなく、もう少し… 3,4日ほど前に開発計画を完成させておいた方が良かった、それか十分連携の取れるメンバーなら、ある程度の決定で完了しておいて、開発中に開発の度合いに応じて少しづつ内容を決定していった方が良かったのかもしれません。おそらくメンバー全員がハッカソンというものに対する慣れが足りていなかったという点もあるので、次回からはここにも十分気を付けて計画を進めたいです。
それぞれの感想
- てねしん (@Tennessine_699)
流れでいつのまにか進行役を務めさせてもらいました。代表してプロジェクトを引っ張った経験が皆無であったので多少無理な開発計画を組んでしまったこと、それに巻き込んでしまったを申し訳なく感じています。チームでなければけして完成することのなかった作品だったと思っているので、メンバーには多大なる感謝をしたいです:pray:
また、全般担当としてプロジェクトを通して足りない部分の埋め合わせに回ったりした結果普段手を出さない3Dモデルやグラフィックの領域について学びを得る機会となったのが今回の個人的な大きな収穫だったと感じています。VRoid認証、似たような機会があったら次は絶対実装してやるぞ。みんなもハッカソン参加しよう。
- 島猫 (@Shimaneko613)
今回プログラムをさせてもらいました。てねしんさんに全面的に引っ張ってもらって完成したと自分では思ってるので本当にありがとうございました!実装したかったものがいくつかできなかったことが心残りですが、最終的に楽しかったので満足です!
- へびぞっち (@hebizo)
求:説明力 譲:ありったけの感謝
- えお (@eo)
このゲームで高得点を取得して君も調味料の達人になろう!