日経ソフトウエア2025年1月号

雑誌「日経ソフトウエア2025年1月号」で「生成AIでゲームを作ろう 前編」という特集記事を書かせて頂きました。

ChatGPTとMicrosoft Designerを使って、「三目並べ」や「リバーシ」や「ブロック崩し」を作るという記事です。筆者はコードを一切書かず、生成AIに全部コードを書いてもらうというのがポイントです。ゲームで使う画像の素材も生成AIで作ります。

 

今回はボツ画像が一杯できてしまったので、その一部を紹介します。こちらは「ブロック崩し」の画面です。ブロックの並びが正しくないので失敗です。ブロックが左側に寄ってしまうのはAIが座標の解釈を間違っているためです。スプライトは中心で座標と指定するのに、Rectは左上で座標を指定するのですが、それを取り違えてます。

あとChatGPTは「Pygame」と「Pygame Zero」を一部ごっちゃに学習していて、たまにPygame流でコードを書いて、文法エラーが出てしまう時もあります。

 

これもボツ画像です。パッと見て問題なさそうですが、「Score」の表示の優先度が間違っています。こういう仕様のおかしい部分を直すプロンプトを書かないといけません。理系よりも文系のスキルが必要な気がします。

 

これもボツ画像。

作って欲しいゲーム画面の画像をドロー系ソフトで描いて、それを添付して「コードを教えてください」というプロンプトを入力します。

その結果 ↓↓↓↓

指定した通りの見た目のコードが出力されました。ボールの挙動がおかしいですが、色やサイズ感がほぼそのままです。「パドル」や「ボール」とかの説明文と線を間違って画面に描画してしまうのかと思ったら、そんなことはなかったです。

 

これもボツ画像ですが、下書きを添付して、画像を描いてもらった結果です。期待した通りの画像が出力されました。こういう画像分析を組み合わせたテクニックは便利なのですが、画像を用意するのに手間がかかってしまうし、読者さんが再現しにくいのでボツにしました。

 

Microsoft Designerの実行画面です。「ブロック崩し」で使うブロックを描いて欲しかったのですが、どうやってもうまくいきませんでした。妙に斜めアングルの画像が作成されてしまいます。

 

というわけで、今回は試行錯誤の連続でしたが、そのうち生成AIの性能が向上して、一発でゲームが作れてしまうようになるかもしれません。