【素人が挑戦】AIでバイブコーディング!非エンジニアがシューティングゲームをどこまで作れるか試してみた!【Cursor×Vibe Coding】

今回はAIバイブコーディングを使って、素人がどこまで面白いシューティングゲームを作ることができるのか挑戦しました!
▼目次
0:00 はじめに
4:58 Cursor:AIバイブコーディングでシューティングゲームを作る
11:21 ゲームプレイ(飛ばして良いですw)
21:10 まとめと感想
▼文字起こし
こんにちは、AIキャンプの中村です。今回のテーマはこちら、「ド素人によるバイブコーディング。素人がどこまで面白いシューティングゲームを作れるのか」に挑戦していきたいと思います。バイブコーディングというのはAIと一緒にノリで開発、つまりコーディングするという最近話題の用語でして、日本語でチャットを打ったり話しかけるだけで右側の図にあるようにコードが書けるというものになっています。AIがコードを書いてくれるので非エンジニアやプログラムがよくわからない方でも全然可能ですし、実はプログラム開発だけでなく執筆などにも使えるので、バイブコーディングは非エンジニアの普通のビジネスパーソンにも有効な手法になります。ツールはいろいろあるんですけど、今回はカーサーというツールを1つ使ってシューティングゲームを作っていこうと思います。実は私、中村俊也、2023年に全くのド素人ながらAIでシューティングゲームの制作に成功しています。その時の動画があるので少しご覧ください。コードを一文字も書いてないんですよね。「こんなふうに敵を作ってください」「上下左右に移動できるようにしてください」みたいな指示を出すだけでChatGPTがコードを出してくれるって、ほんとに脅威的だと思います。当時はChatGPTのモデルGPT-4で作業していたわけなんですけど、話しかけるだけでゲームができるってことで本当に驚いて、人生で初めてこういうシューティングゲームを作って感動したんですが、そこから2年経ちました。今ならAIのレベルも非常に高くなっていますし、開発もすごく簡単になりましたので、今回はもっと高いレベルに挑戦していきたいなと思います。今回はド素人がAIと一緒にどこまで面白いシューティングゲームを作ることができるのか挑戦していきます。下の映像はプロトタイプですが、見ていただいて分かる通り難易度も非常に高くて、かなり面白いゲーム感になっています。こんな感じで今回、楽しいものをお届けできるんじゃないかと思っています。今回使用するツールですが、AI開発ツールの「Cursor(カーサー)」を使っていきます。今までは「カーソル」と呼んでいたんですけど、これから正式の読み方にしていきたいなと私も思います。今までの開発と今回の開発で何が違うのかという話ですが、AIと開発が統合されているんですよね。今までプログラムを書こうと思ったら、ChatGPTにPythonのコードを書いてもらって、それを開発の環境、よくあるVS Codeに貼り付けて実行する。そこでエラーが出たらまたこのエラーを貼り付けてChatGPTで修正して…という感じで、2つのツールを行ったり来たりしなきゃいけなかったのでとても開発が大変でした。それを突破したのがカーサーというツールです。左側がVS Codeと同じような開発環境、右側がChatGPTのようなAIツールだと思ってください。開発環境とAIツールが1つのセットになっているので、AIに指示することでコードを読み取った上でやってくれますし、左側のコードも自動で修正してくれる。すごく簡単に開発できるようになったわけですね。この辺は実際に見ていただきたいと思います。そして今回のシューティングゲーム開発で使うものはこちら。まず開発環境としてはカーサー。この中ではGPTだけではなくClaudeとかGeminiとかのモデルも使用できます。今回使用する言語はPython。Pythonだけではゲームが動かせないので、それを動かすためのツール、ライブラリとしてPygameをインストールします。今回シューティングゲームに登場する画像はChatGPTの画像生成で作っています。特にテクニックはなくて、「シューティングゲームに登場する飛行機のイラストを書いて、赤い色で、背景は透過で」と指示してあげると画像生成ができます。また今回、BGMや効果音はフリー素材を使っています。和風シネマティック戦闘曲の「エピックバトルJ」と、効果音ラボさんからお借りしております。どうもありがとうございます。今日はこんな感じでやっていきますので、これから開発をスタートしていきたいと思います。このチャンネルではChatGPTや生成AIに関する役立ち情報をお届けします。よければチャンネル登録もお願いします。それではAIバイブコーディングで超面白いシューティングゲームを作っていきたいと思います。では実際に開発を始めていきましょう。まずカーサーをインストール。ここはできた状態で話を始めます。デスクトップでも何でもいいのでフォルダーを1個作りましょう。名前は何でもいいので、今回は「シューティングゲーム作るぞ」というフォルダーを作りました。この状態で「Open Project」でこのフォルダーを開きます。こんな感じの画面になります。カーサーの画面がどんな感じか簡単に説明します。いちばん左がフォルダー、このファイル一覧。今フォルダーを見ていますよというのがここにあって、その中にあるテキストやファイルがここに表示され、右側がAIとのチャット欄。ここはChatGPTと同じだと思っていただければ大丈夫です。例えばどうやって使うかというと、「シューティングゲーム作るぞ」フォルダーの中に新しくファイルを作って、テキストファイルを作成して「こんにちは」と書いてあげると、このフォルダー内に反映されます。実際にフォルダーを開くと中にテキストファイルができている。左側の2つはローカルファイルを操作していると思っていただければ大丈夫です。では消して、実際に作成していきましょう。右側のところにどんどん話しかけてあげればプログラムの開発が始まります。「今からシューティングゲームの開発を始めたいです。Pythonプログラムのファイル1つで簡単に作れるものを作りたいです。まず始めにPythonとPygameをインストールしてください。もう入っている場合は大丈夫です。」ということで、シューティングゲームを作るためにPythonとPygameをインストールして、ここでインストールが始まります。私の環境はすでに入っているので、これポチポチ押すだけでいいんですけど、皆さんの場合はPygameなどをインストールしてくださいって言ってくれます。そしたら指示を出していきましょう。「今から1枚のPythonファイルだけで、ものすごく簡単な縦スクロールのシューティングゲームを作ってください。シューティングゲームはこのターミナルで起動するようにしてください。本当に最低限の機能だけでいいので実際に開発してください。」こんな感じで指示を出しました。ここはChatGPTと同じなので、シューティングゲームのコードを書いてくれると思います。今書き始めてくれているんですけど、「このディレクトリに今からのファイルがありますね」と言っているので、このフォルダーの中にPythonのプログラムを書いてくれるということで、シューティングゲームの.pyファイルをこんな感じで作ってくれました。これがカーサーのいいところなんですよ。ChatGPTだったらここでプログラムを書いてそれを開発環境に貼り付けなきゃいけないんですけど、カーサーなら右側で指示しただけで真ん中にシューティングゲームのファイルがもうできてしまう。では実際に動くかどうか試してみましょう。最初は動かなかったので「ウィンドウを開いて実行するゲームにして」という指示を出しました。おお、ということでシューティングゲームが動き始めましたね。すごくシンプルなシューティングゲームができて…あ、ゲームオーバーになっちゃいましたね。もう1回やってみましょう。左右の移動とスペースキーで弾を撃つ、すごくシンプルなやつ。敵を倒さないと負けてしまうみたいですけど、こんな感じで開発を進めていくイメージになります。ここからどんどん指示をしてゲームを面白くしていきます。例えば「ウィンドウをもっと大きくして、弾を3方向に出るようにして」とか。こんな感じで指示をしてあげることでゲームをどんどん修正することができます。あとはこれをひたすらやっていこうと思います。実際にやっていきましょう。ウィンドウが大きくなって、弾が3方向に発射されるように進化していますね。いいですね。こんな感じで修正をしていきましょう。ゲーム性をもっと高めるために、ChatGPTで作ったこの画像と、こちらの効果音。この2つをアップロードした状態で指示をしていきましょう。「自分の機体に画像をつけてください。このPNGファイルを使ってください。敵を破壊した時に効果音をつけるようにしてください。」開発をしてくれている途中で「プレイヤーイメージはplayer.pngのファイルを使ってね」みたいな感じのプログラムができているかなと思います。では、プレイヤーの機体の画像と効果音が反映されているかチェックしていきましょう。始まりました。ほら、見てください。効果音が反映されていて、しっかりとプレイヤーの機体、ここですよ、ここ。ここに自分のプレイヤーの機体が反映されていますね。いいですね。こんな感じで少しずつ楽しいシューティングゲームになっていくと思いますので、このまま開発を続けていこうと思います。あれから何時間くらいやったかな、なんだかんだ5時間くらい、楽しすぎてずっと開発していました。結果的にはコードとして1896行のコードができました。こんな感じでバイブコーディングで開発が進みました。ちなみに今回いろいろ準備させていただきまして、敵とか自分の機体とか仲間の機体、パワーアップアイテム、効果音、チャージショットのアクションなど、いろいろ加えさせていただきました。本当に楽しくて寝るのも忘れて続けてしまいました。これでゲームをやっていきたいなと思います。ここからは実際にガチでプレイしていきたいなと思います。ここはゲームしてるだけなので結論だけ知りたいよって方は動画を飛ばしていただいて大丈夫です。今から実際にプレイを始めていきますので、どうぞご覧ください。 AIキャンプゲーム、めちゃくちゃ面白かったですね。今回のテーマが「本当に自分が燃えるもの」「めちゃくちゃ面白いもの」というテーマだったんですけど、正直めちゃくちゃハマってしまいまして、夜寝るのを忘れてシューティングゲームをやってしまいました。かなり満足いくものができたかなと思います。ちょっと力尽きましたので、一旦今回はここまでにしたいと思います。かなり面白いゲームができたんじゃないかなと思いますので、今回はここまでです。ありがとうございます。はい、それではまとめていきます。今回はAIでバイブコーディング、シューティングゲーム制作に挑戦ということでやらせていただきました。実際にやってみたまとめと感想ですが、AIの進化によって予想以上に開発がサクサク進むなと感じました。AIと開発環境が統合されているのでコピペも不要ですし、AIの精度も非常に高くなっていて、エラーが出た時の修正力も高い。2年前と比べると長いコードも読み込めるようになったのでサクサク開発ができるようになりました。今回の失敗が1つありまして、どんどん開発していくと過去のプログラムに上書きされてしまうので戻りたい時が結構あったんですよね。なので開発時のバージョン管理が必要で、GitHubとかを使うとそういうことができるらしい。開発する時に「GitHubがあるといいよ」ってよく聞いていたのが今までピンと来なかったんですけど、今回やってみたことでバージョン管理の必要性も学ぶことができました。また今回はバイブコーディングって感じでノリで開発をしたわけなんですけど、やっぱり専門知識があればあるほどいいなというのも強く感じました。AIがあるから何でもできるわけじゃないよってことは注意していただきたいと思います。そして今回のまとめ、特にこの2つ。何より重要なのは遊び心とモチベーションだなってことを改めて強く感じました。やっぱり遊びを通じてすごくスキルアップできる。シューティングゲーム作ったって何の役にも立たないじゃん、ではなくて、こうやって遊びを通じながらAIとかプログラムに詳しくなっていくことでいろんなところに応用できそうだなっていう実感がありますので、皆さんもどんどん遊んでいただきたいなと思います。またAI時代は何かを作りたい、成し遂げたいという情熱が本当に大事だなってことを再確認しました。結局AIが何かを作ってくれるようにはなったんですけど、自分が「これを作りたいんだ」という情熱がなければ始まらない。やっぱり遊び心とモチベーションがすごい大事だなってことを改めて感じる開発体験になりました。今回の動画、ここまで見ていただいてありがとうございます。皆さんもよければバイブコーディング挑戦してみてください。今回は以上です。ありがとうございました。


