面白いノベルゲーム開発
現代のゲームユーザーに向けて、短時間で楽しめる、ノベルゲーム。
ノベルゲームは、かつて人気を博したジャンルだが、近年ではその人気がやや衰退している。特に現代のユーザーは長時間のゲームプレイに対する集中力が保てないケースが多く、小説などを読む人々が減ってきていることもあり、ノベルゲームのような読むことに重きを置いたゲームは敬遠されがちである。
しかし、一方でソーシャルゲームのストーリーが非常に充実しており、これに慣れ親しんだユーザーが増えているため、ノベルゲームの世界観や物語の進行には親しみやすい下地が存在する。
長時間のプレイに苦手意識があったり、文章を読み続けることに苦痛を感じる方でも楽しくプレイでき、空き時間でプレイしやすいという利点もあることから短時間で楽しめるノベルゲームを制作する。
短時間でできる親しみやすいゲーム制作。
Webで公開できるノベルゲーム。
プロジェクトの期間|2024.09.16 - 2024.12.09
AI活用には、大きく分けて以下の2つのアプローチがある。一つは、ラフなAI出力を人間が仕上げる方法、もう一つはラフな人間の出力をAIが仕上げる方法である。
今回のプロジェクトでは、UI、キャラクターイラスト、背景イラスト、サウンドをAIによるラフ案を基に、人間が細部を調整。シナリオを人間が作成したラフ案をAIで洗練させる。
AI加筆で制作
詳しくは水田修太朗のページへ
画像生成AI、Fireflyを活用し、実写風のイメージを生成した。その上で、Adobe Illustratorを使用してアニメ風イラストに調整を行った。Fireflyはネガティブプロンプトが使用できないため、自然な景色や光の表現に重点を置いた素材を変換することで、ゲームの全体の雰囲気を統一している。
AIツールで提案されたデザイン案を基に、UnityやIllustratorを派用して改良を行った。また、ChatGPTも活用し、コードの効率化に役立てた。人間とAIが互いに協力する作業ワークフローとしても最適な活用例だった。
各名前
ネームプレート テキストウィンドウ
AI
C#によるUnityコードの実装を行った。これまでプログラミング経験がない言語でしたが、ChatGPTを活用して問題解決の迅速化を図り、問題点を一気に解決することができた。C#の基本知識から導入を行い、ゲームを一つの形にするまでにたどり着けた。これにより、ゲーム作成の中で実際に動作するものを見ながら問題点を解決していく作業の方法を学ぶことができ、不確定要素に備えた安定した開発プロセスを実施できるようになった。
ChatGPTの力を借りて製作
UnityのコードはOneDriveに置いています。
LogicProを使用して、AI Test Kitchenの生成音を元に、人間が加工したり、エフェクト音をきめ細かに調整することで、世界観を保つようにした。
AIと人間の協力によるタスク分担が大きな成果をもたらした。AIを活用することで作業効率が飛躍的に向上し、人間の手による調整を組み合わせることで、より高い完成度を実現することができた。背景イラストやUIデザインにおけるAIの提案と、人間の感覚を反映させた調整プロセスは、効率性と創造性を両立する新しい制作の形を示した。
プログラミングにおいては、ChatGPTを活用して課題解決をスムーズに進め、未経験からでもゲームの完成までたどり着くことができた点が大きな成長につながった。これらは、サウンドでも同じことが言える。
これらの成果を通じて、AIの可能性と限界を理解し、それを補完する形で人間の感性を活用することの重要性を確認した。今後も、AIを効果的に活用しながら、さらなる技術力と創造力を高めていくことを目指す。
シナリオが完成したので、全ての素材の組み込みをした。
シナリオ待ち、作業することがなかった。
Unityでの組み込み作業。
Adobe Fireflyの研究。
UIデザインを終わらせた。
UnityでC#コーディングをした。
storyの分岐で選択できるようにした。
UIのサンプル
ノベルゲーム自体の人気は低くないが、高いとは言い難い。単調であるため、長時間のプレイは現代のユーザーにとってしんどいのではないか。
インターネットを見ていると、平均して一年制作期間がかかっている。
3ヶ月でできれば、大幅な時間短縮ができる。
残りの時間をブラッシュアップなどに当てることにより、クオリティの向上ができる。
魔法を使う女の子、ノベルゲームなどという設定から考えることにする。
ChatGPTを利用し、会話パートの基盤ができた。
メモ
薄紫に決定
紫は短波光線で最も認識しづらく見えにくい。
だから、神秘的に感じる。
魔法と相性が良いのでは?
生成AIで制作したラフ
AIを活用したノベルゲーム制作
UnityとC#で行う