推しアイデア
Next.js上にp5.jsを用いてブロック崩しゲームを作成しました。
Next.js上にp5.jsを用いてブロック崩しゲームを作成しました。
高専生の我々にとって最も身近な「RED」とは何か... そう! 赤点です!!
p5.jsを使ったCanvasの描画!!!
今回のテーマが『RED』ということで、私たち高専生の頭に浮かんだのは「赤点」でした。 せっかくなので逆転の発送で単位を"落とす"アプリにしようと考えそこに最近話題の◯NE PIECE要素をひとつまみ。
単位を撃ち落として落単王を目指すゲームを!!! おれたちは作る!!!
ということになりました。
今回、メンバー4人の打ちハッカソン初参加が2人ということで「動くものを作り上げる」ということを第一に考えて、次のような技術構成にしました。
メンバー中3人が使用経験ありのお気に入りのフレームワークということでNext.jsを使用。 スタイリングはEmotionを使い、グローバルな状態管理には小さな構成で使いやすいRecoilを使用しました。
メイン機能であるブロック崩しゲームの作成にはp5.jsというアニメーションやゲームを描画するライブラリを使用しました。はじめは「canvasを使ったゲーム作成をして初参加の後輩ちゃんにJavaScriptに慣れてもらおう!」 といった発想だったのですが、仮想DOM上での操作が極めて難しくp5.jsをつかった実装に方向転換。 それでもNext.jsとの相性はあまり良くなく、不具合が起きないようレンダリングを極力なくす工夫をしつつゲーム担当の2人で最後まで実装しきってくれました!!!
今回のメンバーはフロントが得意なメンバーが主だったっためfirestoreを用いてサーバーレスに実装することで、フロントに注力できるようにしました。