ブログBlog

[アカデミック]

2026年02月02日

生成AIプログラミング〜GUIゲーム編〜

生成AIプログラミングGUI編 前回の復習です。
昨今生成AIを利用して、多くのコンテンツが日々生成されています。
今回も、汎用型生成AIである、ChatGPTGoogle GeminiMS Copilotを試してみました。
世の中には、コード生成AIのDifyやClaude Codeなどもありますが、手軽に使用できる前者を選びました。



今回各AIに作成を指示したのは、GUI(グラフィック形式)のゲームをC++&DirectXで作ってもらいました。
ゲーム内容は、簡単にするために、じゃんけんゲームを題材としました。

コマンドプロンプトには
「C++とDirectXでじゃんけんゲームを作ってください。」 を入力。

はたして、各生成AIは、どの様なソースコードを作り上げるのでしょうか?
次のステップを提示してくれるのでしょうか?


ChatGPT:完成版(約175行4,500文字)
Gemini:データ構造と描画以外のフレーム(約50行1,500文字)
Copilot:DirectX9版完成版(約250行6,500文字)
が作られました。



まずは、ライブラリ選定についてです。
DirectXは、Windowsの特にゲームを制作する上での下層に位置するライブラリ群となります。
現在は12が最新ですが、私なりに一応の完成系とみている9が現状多いように思えます。

ChatGPT、GeminiはDirectX11にて作成されていました。
一方のCopilotでは9を利用して作られました。
ChatGPTやGeminiは最新技術(正確には最新ではありませんが)、Copilotでは初心者に優しいレガシーなバージョンが選ばれたのでしょう。

ここが、ユーザの導入の分かれ目でしょうか。
いずれも、DirectX9,11を指定すれば、作成してくれました。
またGeminiにも「全コードがみたい」と命令すれば、完成版を示してくれました。



次に、それぞれのコードを、各AIに検証してもらいました(セルフチェックも含む)。
結論から申し上げますと、いずれも文字コードに対する危険性が指摘されました。
日本語を使用する場合、SJIS(Shift-JIS)かUnicodeを選択するのが一般的です。
各AIが共通して指摘したものは、文字コード処理に関してでした。


その他にも、C++言語/DirectXの仕様的セーフティーの弱いところを指摘された点が数点。
検証結果に気が付かされることもありました。
(自分でビルドアップしていないので、流し見しかしていないのもありますが)


次の課題としては、グラフィックスの表示や、ライブラリの紹介などがありました。



結論として、簡単なソースコードに限定すれば、
・生成AIでも高精度なソースコードを生成できる
・生成されたソースコードにもバグや危険性が潜んでいる
・セルフチェックをかければ、対応は可能。
という結論にいたりました。



いずれは、本格的なプログラミングや多言語でも検証してみたいと思います。


今回は生成AIを利用した、DirectXを用いたゲームの作成を記事にしました。


ハードウェアの教科書は、ソフトウェアに比べると圧倒的に不足しています。
当社では大学等の実験テキスト、新人教育向けのテキストなどの相談も承っております。
お困りの際は、お気軽にご相談ください。

WEBでのお問い合わせはこちらから

ブログ記事一覧

PageTop

MENU