インパクト抜群で話題沸騰中のテクノロジー、ChatGPT って皆さん、もうお使いになりましたか?
さて、今回はプログラミング超初心者のコダシマが、なんと ChatGPT を使ってゲーム制作に挑戦しちゃいました!
「AI なんだし、プログラミングもきっと楽勝だろ?」なんてちょっぴり大胆な発想から挑戦してみることになりました。
ぜひ、この素晴らしい(?)試みの結果を、お楽しみいただければと思います!
それでは行ってみましょう!
ChatGPT でゲーム制作
ChatGPT についていろいろと、語りたいことはございますが、今回はそれをすっ飛ばして、まずは実践してみました。
とりあえず、Linux 環境でゲームを手軽に作る方法を ChatGPT に聞きました。
![【AI の力でゲーム制作!?】ChatGPT でプログラミング初心者がゲーム作りに挑戦!](https://i0.wp.com/pc-freedom.net/wp-content/uploads/2023/04/7edf59db22105e55c0655803c87cfd9d.png?resize=800%2C450&ssl=1)
ChatGPT のオススメは Python のようです。
Python のインストールから教えてくれています。
![【AI の力でゲーム制作!?】ChatGPT でプログラミング初心者がゲーム作りに挑戦!](https://i0.wp.com/pc-freedom.net/wp-content/uploads/2023/04/bb9b7dd38c2405cd3d064697f1f32f52.png?resize=800%2C450&ssl=1)
Python がインストールされているかの確認とインストール方法です。
ってか、特に指定していませんでしたが Debian ベースの方法ですね。
![【AI の力でゲーム制作!?】ChatGPT でプログラミング初心者がゲーム作りに挑戦!](https://i0.wp.com/pc-freedom.net/wp-content/uploads/2023/04/1723c56c29c0a1c2ee6c3c25568eaae1.png?resize=800%2C450&ssl=1)
このようにセットアップ順序を丁寧に教えてくれました。
これを元にまずはセットアップしました。
※使用した Linux は、開発中の open.Yellow.os です。
コマンドはコピペで入力します。
![【AI の力でゲーム制作!?】ChatGPT でプログラミング初心者がゲーム作りに挑戦!](https://i0.wp.com/pc-freedom.net/wp-content/uploads/2023/04/ee15b3c6afaed69d7db2262378059be1.png?resize=800%2C450&ssl=1)
Python はインストールされていますね。
![【AI の力でゲーム制作!?】ChatGPT でプログラミング初心者がゲーム作りに挑戦!](https://i0.wp.com/pc-freedom.net/wp-content/uploads/2023/04/c62dc68395865f92401218eec46deafc.png?resize=800%2C450&ssl=1)
すでに Python がインストールされているので、手順をひとつスキップします。
pip をインストールします。
操作はやっぱりコピペ。
![【AI の力でゲーム制作!?】ChatGPT でプログラミング初心者がゲーム作りに挑戦!](https://i0.wp.com/pc-freedom.net/wp-content/uploads/2023/04/afb593129738968d4d05fc3633e42b73.png?resize=800%2C450&ssl=1)
最後に pygame をインストール。
![【AI の力でゲーム制作!?】ChatGPT でプログラミング初心者がゲーム作りに挑戦!](https://i0.wp.com/pc-freedom.net/wp-content/uploads/2023/04/41ea618f7c7dafd431c84dcdf2e9d47d.png?resize=800%2C450&ssl=1)
これで準備が整いました。
セットアップができたら、早速ゲームづくり。
…とは言っても、ChatGPT に命令するだけです。
![【AI の力でゲーム制作!?】ChatGPT でプログラミング初心者がゲーム作りに挑戦!](https://i0.wp.com/pc-freedom.net/wp-content/uploads/2023/04/c0a1c748111b2bac1b77ccca3923ae6b.png?resize=800%2C450&ssl=1)
大定番 (?) のブロック崩しを作ってみます。
なんと、わずか数秒でコードが表示され始めました。
![【AI の力でゲーム制作!?】ChatGPT でプログラミング初心者がゲーム作りに挑戦!](https://i0.wp.com/pc-freedom.net/wp-content/uploads/2023/04/27fb10818ca6d52d451ae07a4e899ab7.png?resize=800%2C450&ssl=1)
しかもそれぞれの設定についてのコメントまで入っています。
![【AI の力でゲーム制作!?】ChatGPT でプログラミング初心者がゲーム作りに挑戦!](https://i0.wp.com/pc-freedom.net/wp-content/uploads/2023/04/00e26bbc8a16482b358c359ac92a1e2c.png?resize=800%2C450&ssl=1)
次々とコードが書かれていきます。
およそ1分で基本的なコードが出来上がりました。
![【AI の力でゲーム制作!?】ChatGPT でプログラミング初心者がゲーム作りに挑戦!](https://i0.wp.com/pc-freedom.net/wp-content/uploads/2023/04/92713a57a7a4c304d17325baf64bc9d4.png?resize=800%2C450&ssl=1)
でも、ちょっと半信半疑でコードをコピペして実行してみると…
ちゃんとブロック崩し!!!
![【AI の力でゲーム制作!?】ChatGPT でプログラミング初心者がゲーム作りに挑戦!](https://i0.wp.com/pc-freedom.net/wp-content/uploads/2023/04/3ff58ee0b108da831658fd746d3ee969.png?resize=800%2C450&ssl=1)
すごい!
コピペだけで、ゲームっぽくなってます。
ChatGPT 恐るべし!!!
パックマンを作ってみる
![【AI の力でゲーム制作!?】ChatGPT でプログラミング初心者がゲーム作りに挑戦!](https://i0.wp.com/pc-freedom.net/wp-content/uploads/2023/04/ea628a3c2fd2f310778d91ab438ef9d1.png?resize=800%2C450&ssl=1)
調子に乗って、もっと複雑なゲーム「パックマン」はどうでしょう?
ぉうん?画像が必要なのね?
![【AI の力でゲーム制作!?】ChatGPT でプログラミング初心者がゲーム作りに挑戦!](https://i0.wp.com/pc-freedom.net/wp-content/uploads/2023/04/6168adadf3893b4b77f7831f168fff11.png?resize=800%2C450&ssl=1)
サイズとかよくわからんのだが…
ちょっとそこらへんも聞いてみました。
![【AI の力でゲーム制作!?】ChatGPT でプログラミング初心者がゲーム作りに挑戦!](https://i0.wp.com/pc-freedom.net/wp-content/uploads/2023/04/4bff40f8fbe4be82ca276614c95b0911.png?resize=800%2C450&ssl=1)
イマイチわからなかったのですが 32×32 が最大っぽいので、とりあえずそのサイズでそれっぽいのを作成しました。
![【AI の力でゲーム制作!?】ChatGPT でプログラミング初心者がゲーム作りに挑戦!](https://i0.wp.com/pc-freedom.net/wp-content/uploads/2023/04/81cf1411bcc670803b9bfb57337a13a9.png?resize=800%2C450&ssl=1)
必要なファイルも準備できたので、早速プログラムを動かしてみましょう。
![【AI の力でゲーム制作!?】ChatGPT でプログラミング初心者がゲーム作りに挑戦!](https://i0.wp.com/pc-freedom.net/wp-content/uploads/2023/04/0c31cd9df20a96db88630bf86cff2737.png?resize=800%2C450&ssl=1)
おぉ!!!
画像では分かりづらいですが、しっかり動いています。
サンプルコードと用意した画像が一枚だけなので、キャラクターの向きは変わりませんが、ベースになるコードはこういうことなんでしょうね。
じゃ今度は、迷路を追加したやつ。
![【AI の力でゲーム制作!?】ChatGPT でプログラミング初心者がゲーム作りに挑戦!](https://i0.wp.com/pc-freedom.net/wp-content/uploads/2023/04/d3255e284f39876c734620633c4dd1dc.png?resize=800%2C450&ssl=1)
コードの中に、迷路っぽいのが表示されています。
なんか、めっちゃ解説されています。
![【AI の力でゲーム制作!?】ChatGPT でプログラミング初心者がゲーム作りに挑戦!](https://i0.wp.com/pc-freedom.net/wp-content/uploads/2023/04/c96915a226c21109a70b2bc8827ddd9a.png?resize=800%2C450&ssl=1)
動かないときの言い訳にも見えたりする…。
いずれにせよ、サンプルコードをコピペして実行してみます。
おぉ!!!
![【AI の力でゲーム制作!?】ChatGPT でプログラミング初心者がゲーム作りに挑戦!](https://i0.wp.com/pc-freedom.net/wp-content/uploads/2023/04/87fa020e74a533a95dc220f7bba58efc.png?resize=800%2C450&ssl=1)
っと、感動したのもつかぬ間、迷路の先に進めなかった…。
ここから色々と調整していかなきゃ無いわけです。
まぁ、ゲームの内容が複雑になれば、より人の手もかかるのは当たり前ですかね。
しかしながら、1ミリもプログラムの内容を理解していないのに、ここまでをほぼコピペで作れてしまうのって、ヤバくないですか?
いや、ほんと ChatGPT 恐るべし!!!
ChatGPT の実力は?
![【AI の力でゲーム制作!?】ChatGPT でプログラミング初心者がゲーム作りに挑戦!](https://i0.wp.com/pc-freedom.net/wp-content/uploads/2023/04/775e64e1b938c30565fcee9f5d23a52d.png?resize=800%2C450&ssl=1)
ここから、ちょっと ChatGPT について語りたいと思います。
もうメディアもこぞって ChatGPT だとか AI だとか…、 ChatGPT とかの文字を見かけない日はありません。
なので、今更 ChatGPT について説明しようとは思いません。
ただ、スゴい!スゴい!と言われている ChatGPT ですが、意外と「これ使えないじゃん…」とかいう声もちらほら聞こえます。
今回やってみても思いましたが、ChatGPT って、ほんと使い方なんだなぁって、Microsoft 365 Copilot(マイクロソフト365コパイロット)のプレスを眺めていて痛感いたしました。
![【AI の力でゲーム制作!?】ChatGPT でプログラミング初心者がゲーム作りに挑戦!](https://i0.wp.com/pc-freedom.net/wp-content/uploads/2023/04/ms365copilot.png?resize=800%2C450&ssl=1)
ってか、ChatGPT のことを調べていたら、「Garbage In Garbage Out」って言葉を見かけます。
これ、ゴミみたいな質問をすれば、ゴミみたいな回答が返ってくるってことで、要するに ChatGPT が使えないんじゃなくて、その人が ChatGPT を使えていないってことを指すようです。
![【AI の力でゲーム制作!?】ChatGPT でプログラミング初心者がゲーム作りに挑戦!](https://i0.wp.com/pc-freedom.net/wp-content/uploads/2023/04/46a91aac84490abcc95a9868a8537f07.png?resize=800%2C450&ssl=1)
皆さん御存知の通り ChatGPT の性能は日々向上しており、GPT-4 ではかなり自然な会話ができるようになっています。
あたかもそこに人がいるような感じで会話ができます。
もちろん英語ではなく日本語でもです。
そうなると「なんでもできる」みたいに思ってしまいますが、そうではないようです。
次のようなブログ記事を読みました。
ChatGPTのような言語モデルは、”言葉の計算機 “と考えてください。
という書き出しから始まるこの記事は次のようなことが書かれていました。
※要約文になります。
ChatGPT を検索エンジンのように使うことがよくある間違いです。ChatGPT は正確な情報を必ずしも提供できないため、事実を確認することが重要です。言語モデルは、「言葉の計算機」と考えると良いでしょう。
https://simonwillison.net/2023/Apr/2/calculator-for-words/
これにはまた、別の記事が紹介されており、そこには次のように書かれていました。
ChatGPT は、インターネット上のたくさんのテキスト情報をぼんやりした JPEG 画像に例えられるとお考えください。JPEG 画像が高解像度の情報を持っているように、ChatGPT もウェブ上の多くの情報を持っています。ただし、正確な情報の組み合わせを探している場合、必ずしも見つけられるわけではありません。それでも、ChatGPT は文法的に適切な文章で近似値を表現することが得意ですので、通常は問題なく利用できます。
https://www.newyorker.com/tech/annals-of-technology/chatgpt-is-a-blurry-jpeg-of-the-web
そして記事の続きです。
ChatGPT は、要約や質問に答えることが得意で、言語を操作するのに長けています。ただし、言語モデルには「幻覚」を見るリスクがあり、検索エンジンとしては信頼性に欠けます。基礎となるデータに根拠がないにもかかわらず、文の構造に合った新しい事実を作り出してしまうからです。
Bing や Google Bard などの検索エンジンを利用することが推奨されます。
言語モデルを効果的に使用するには、使い方を習得し、彼らがどのように機能し、何が可能で、どこで失敗しやすいかを理解することが重要です。電卓のように再現性があるわけではないので、同じプロンプトでも異なる答えが返ってくることを覚えておくことが大切です。
https://simonwillison.net/2023/Apr/2/calculator-for-words/
という内容で締めくくられています。
なんか、めちゃくちゃしっくり来ました。
「ChatGPT は平気で嘘をつく」という方もおられますが、そもそも考え方が違うようです。
![【AI の力でゲーム制作!?】ChatGPT でプログラミング初心者がゲーム作りに挑戦!](https://i0.wp.com/pc-freedom.net/wp-content/uploads/2023/04/e841ca860e4af866c22c5d083c48074c.png?resize=800%2C450&ssl=1)
ChatGPT が出す回答は、GPT-4 が学習した内容の中から計算して文章を構築しているということで、その文章のその単語の後に続く言葉を確率で割り出し、確率が高いものを並べているということのようです。(正しいか、誤っているかは別として)
そのため、その質問の回答をより望ましい形にするためには、望ましい回答に近づけるための確率を高める質問、つまりはプロンプトをしっかりと伝えなければいけないことを意味します。
より自然な会話に近づいた GTP-4 では、ついつい忘れがちになりますが、私達が ChatGPT に質問する内容は、プログラムに命令するプロンプトであるということ。
![【AI の力でゲーム制作!?】ChatGPT でプログラミング初心者がゲーム作りに挑戦!](https://i0.wp.com/pc-freedom.net/wp-content/uploads/2023/04/086b3a0eb5049806b10d7c17f9668a5b.png?resize=800%2C450&ssl=1)
それを踏まえた上で質問しない限り、ゴミのような回答しか返ってこないということです。
ヨーロッパでは AI が規制対象となってきました。
それほどまでに脅威であることは間違いないなく、さまざまな意見もあるでしょうが、もはや AI を全く使わないという選択肢は無いでしょう。
これまでのイノベーションの歴史がそれを物語っていると思います。
これからは、いかに上手に AI を利用できるかがカギになる世の中になることでしょう。
さてさて話題の ChatGPT、使うか使わないかは、あなた次第です!