検証目的
私たちのチームでは近年、世間に浸透しつつある「ChatGPT」と技術的に多様な活用が出来る「Python」のそれぞれの有用性の組み合わせに注目しました。
また「ゲーム製作」に興味のあるメンバーも多かったため、「ChatGPTを活用したPythonゲーム製作の実行可否」を検証しました。
成果物
- ChatGPTに質問を繰り返し、Pythonを用いてゲームを製作
⇒「テトリス」を作成
ChatGPTを利用したゲーム作成の詳細
①-1 広範囲の条件を指定して、ChatGPTに質問
(例)Pyhotnではどんなゲームをつくることができるか
①-2 作成したいゲームを考え、条件を指定してChatGPTに作成を依頼
(例)Pythonでテトリスの作成を依頼
②-1 追加したい機能について条件を指定して質問
(例)ゲームの背景にグリッド線を追加したい場合のコードを質問⇒"pygame.draw.line()"関数を利用した方法を解答
②-2 バグに対する解決策を条件指定して質問
(例)ブロック通過後にブロックの色が背景についてしまう現象について質問および解決策の提示を依頼 ⇒毎フレームごとに、背景にブロックの色が描画されないよう、フィールドの状態を一度クリアする方法を解答
③ 稀にエラーや想定外の挙動が起きるコードを提示されることがある
(例)ブロック消去の際、ポイント付与機能を追加しようと考え、コードを質問⇒実際にはエラーになり機能しなかった(今回は機能未搭載)
今後の展望
検証後の感想(メリット・デメリットについて)
- メリット(便利だと感じた点)
- ChatGPTに質問した際、明確な条件を付けた場合は詳細に提案及び回答してくれること。
- ゲーム作成の際、質問に対してChatGPTから具体的な回答やPythonのコード情報が得られた為、基本的な機能に関しては(一からのコード作成等)修正が不要であったこと。
- デメリット(不便だと感じた点)
- 詳細な質問や条件指定をしない場合、意図した解答が返ってこないことがあること。
- 稀に、機能しない情報(コード)を回答してくること。
今後の展望(作業活用の可能性について)
- 関連情報や製作に必要なコードを提示してもらえる為、一からの設計・情報収集の省略が可能。
ただし、情報を得る為に複数回の質問が必要になる場合がある。
→機能がアップグレードすれば、情報を得る為のやり取りが減る可能性がある為、機能向上に期待。 - 質問する際、内容や条件を明確にする必要がある。(具体的な質問をしないと必要な情報が帰ってこない。)
→ChatGPTに100%の答えを求めるのではなく、あくまで参考情報として柔軟に活用する必要がある。
また、質問内容によって回答内容も変わる為、質問者の理解度向上も重要。
終わりに
ChatGPTを利用してのゲーム作成を通じて、チーム全体的に以下のような取り組みを行うことができました。
- Pythonの学習の機会
- ChatGPTを使用してゲームを作成するプロセスにおけるゲーム構成やデバックを行うことで、Pythonの学習に役立てることができた。
- 新しいスキルを習得する過程で、文法、アルゴリズムの理解など、Pythonプログラミングの基本的な概念の理解を深めることができた。
- 実践的な経験
- ゲームを設計することで、プログラミングの実践的な経験を積むことができ、
理論的な知識だけでなく、実際の問題へ対処するスキルもChatGPTを通じて向上することができた。
- ゲームを設計することで、プログラミングの実践的な経験を積むことができ、