Siv3D でハッカソン
この記事はSiv3D Advent Calendar 2016の記事 (12/06) です.
概要
私の所属しているサークルの夏合宿でSiv3Dを使った2日間のハッカソンを行いました. そして,成果物を大学祭で展示しました.
内容
Siv3Dを利用すると様々な機能を手軽に実装できます. リファレンスはまだ十分ではありませんが, 分かりやすい命名やサンプルのおかげで開発は容易です. 今回は2日間の中で, Siv3Dの様々な機能を組み合わせたゲームを制作するために, 次の内容を実施しました.
- プログラマに必要な基礎的な体力及びプログラミング力を向上する為の基礎トレ
- 1日目:ブレインストーミングによるアイデア想起
- 2日目:アイデアに基づいたアプリ開発
行程
一日目
時間 | 内容 |
---|---|
7:00 - 7:30 | 朝ごはん食べつつ開会式,フレンチトーストを用意する |
7:30 - 8:00 | ウォームアップ(ラジオ体操,ストレッチ) |
8:00 - 8:30 | 腕立て:30回,腹筋:30回,背筋:30回,スクワット:30回,外周1km |
8:30 - 10:00 | フレンチトースト食べながらACM-ICPC過去問 |
10:00 - 12:00 | ブレインストーミング |
12:00 - 13:00 | お昼,気まぐれパスタ |
13:00 - 14:00 | アイデアのまとめ,発表準備 |
14:00 - 15:00 | アイデア発表 |
15:00 - 18:00 | プロトタイプ制作 |
二日目
時間 | 内容 |
---|---|
7:00 - 7:30 | 朝ごはん食べつつ開会式,フレンチトーストを用意する |
7:30 - 8:00 | ウォームアップ(ラジオ体操,ストレッチ) |
8:00 - 8:30 | 腕立て:30回,腹筋:30回,背筋:30回,スクワット:30回,外周1km |
8:30 - 10:00 | フレンチトースト食べながらACM-ICPC過去問 |
10:00 - 12:00 | 開発 |
12:00 - 13:00 | お昼,気まぐれパスタ |
13:00 - 16:00 | 開発 |
16:00 - 17:00 | 発表準備 |
17:00 - 18:00 | 発表&閉会式 |
18:00 - | カレーパーティ |
成果
ハッカソンを行った結果以下の3つの作品が誕生しました.
スペクトルバスター
ブレインストーミング | タイトル | プレイ画面 |
---|---|---|
どういうゲーム?
作ってみてどうだったか
グループでブレインストーミングした結果, こんな面白いアイデアを数時間で思いつくことができました. また, タイトル画像, ゲームシーン, そして, タイトルシーンとリザルトシーンで役割分担することで協力して開発することができました. Siv3DのFFTの機能と当たり判定の機能を組み合わせました. 声で敵を倒すという斬新なアイデアを1日でゲームにできました.
by Jumpaku
QuizShooting
ブレインストーミング | プレイ画面 |
---|---|
どういうゲーム?
このゲームはシューティングゲームとイントロクイズを融合した斬新なゲームです. ゲームが始まると曲が流れてプレイヤーと敵が3体現れます. 3体の敵には1,2,3の番号が割り当たっています. 画面の右には曲名が書かれた選択肢が3つあり,敵の番号と対応しています. 流れている曲の曲名が分かったら敵の弾を避けつつ正解の番号の敵に自機の弾を命中させます.
ルール
このゲームは敵の弾を避けながら流れている曲を聴いて正解の敵を撃つゲームです. 敵の球に当たったり間違った敵に弾を当てると時間が減っていきます. 正解していくとスコアが上がり時間切れまでにどれだけスコアを稼ぐかというルールになります.
作ってみてどうだったか
時間的な制約があったので既存のSiv3Dのテンプレートを改良できる形でアイデア出しを行いました. その結果できたのがQuizShootingです. シューティングゲームのテンプレートを改良する形でゲームを作りました. 曲を流して選択肢を付けたりするだけでなかなかの完成度のゲームを作ることができました. しかし,イントロクイズの部分はよくできましたがシューティングゲームの部分はもっと作りこみたかったなと思いました. 具体的に言うと敵からの弾をもう少し多く派手に出したいと思いました.
by うっひょい
ピタゴラスイッチ with 神の手
ブレインストーミング | プレイ画面 |
---|---|
どういうゲームか
作ってみて気が付いたのですが,これはピタゴラスイッチではありません. 自分で引いた線の上を球が走るので,それをゴールに運ぶといういたってシンプルなゲームです. ただし,LeapMotionを使用することで「神の見えざる手」を利用することができます. 「神の見えざる手」は球に対して外力を与えることができ,カオスなゲーム性を生み出します.
作ってみてどうだったか
Siv3Dの新しい機能であるBox2DやLeapMotionを使用したゲームを作ろうという目的で製作しました. 物理演算とモーションキャプチャという一見難しそうなものでも,Siv3Dを使うことで簡単に扱うことができました.
まとめ
- 出したアイディアを短期間で実装できた
- 新しいゲームが誕生し, 大学祭で展示できた