moao blog

生活記録

Unityでノベルゲーム作成をしてみました

高校生、大学時代に強く思っていた夢であるノベルゲーム作成に挑戦することにしました。

GWに何かやるぞと思い、複数のタスクを用意していたんですが、迷って試しにchat GPTにどのタスクが良いか依頼するとUnityでノベルゲーム作成が優先度高く出してくれたのです。 ならばと、半信半疑ですが、挑戦です。

基本構成

以下の通り進めれば、ゲームのベースは作成できました!!

【絶対できる!】Unityでの2Dノベルゲームの作り方を詳しく解説

その他実施内容

↑のベースだけでは不足あるため、以下実施しました。

  1. 立ち絵表示実装
    →背景とかと同じように実装。right/leftは名前で条件分岐してposition設定

  2. ストーリ創作
    chat GPTに作成依頼し、修正実施

  3. 音声鳴らし
    audio sourceコンポーネント使用してplaysound関数で音を鳴らすように実施

  4. 音声重複避け
    ⇒ audio鳴らす前にstopする
     audioSource.Stop();
  5. オート再生
    字の文は5秒。その他は音声が途切れたら次に進むようにプログラム構築。
    !audioSource.isPlaying
    【Unity C#】音が鳴り終われば実行する - プログラミング教室 フタバゼミ

  6. escで終了追加
    【コピペ可】Unityでゲームを終了する方法|4パターン紹介‼│Unity#学習

  7. Unityのメインカメラがゲーム画面より小さい問題の対処
    →カメラサイズを6にすればできた。ゲームを出力すると問題ないのが不思議 画面のサイズ(CameraのorthographicSize)をアスペクト比に合わせて自動で調整する【Unity】 - (:3[kanのメモ帳]

  8. ゲーム動画の録画
    → Unity Recorder。音声も録音してくれるので助かる

  9. 実行ファイル作成
    Windows用の実行ファイル (exeファイル) をビルドする : Unityプログラミング | iPentec

  10. イベントCG作成
    → 背景はAIで生成し、立ち絵と合わせて合成(gimp)

素材

すべてAIで生成しようとしてましたが、なかなかクオリティ高いものができないので、 諦めて借りてきました。

できたもの

youtu.be

あとがき

というわけで休みなので普段できていなかったことをふんだんに実施することにしました。 何であれ作ることは楽しいものです。

今後取り入れたいこと

  1. 音声生成などをpower automateやpythonで自動化
     新規点はAIをふんだんに。テキストもAIに生成させる。  読み上げも可能な限り自動化
     Windowsの入力も自動
  2. プログラムの非効率な部分が多いので最適化
    audio sourceの登録を一音一音登録。変数多すぎになるので配列使う、自動登録など何らかの対処