「UnityでCSVを使ってテキストを管理したい」
「ノベルゲームのシナリオを、コードから分離して管理したい」
「外部データを読み込む実装方法を知りたい」
このような悩みを持つ方向けに、Unityでノベルゲームを制作することを前提として、CSVファイルからテキストデータ(シナリオ)を読み込む実装方法を解説します。
✨ この記事でわかること
- ノベルゲームでCSVファイルを使ってシナリオを管理するメリット
- CSVファイルを読み込む基本的な実装方法(コード例付き)
- CSVを使ったシナリオ管理システムの作り方
- コードを変更せずにシナリオを更新する方法
- ノベルゲーム制作における効率的なデータ管理のコツ

シナリオ管理を楽にするために、まずは基本的なCSV読み込み方法から確認していきましょう。
\あなたにピッタリのゲーム制作講座を見つけよう!/
おすすめ第1位
Unity ノベルゲームの
作り方講座
かまいたちの夜・ダンガンロンパ風のノベルゲームをゼロから開発。会話システム・シナリオ分岐・セーブ機能まで、初心者から上級者まで対応の丁寧な解説で確実に完成できます。
初心者にもおすすめ
Unity ノンフィールドRPG
+スレスパ風JRPG講座
Unity6対応・スマホ化対応の三拍子。トレンドのデッキ構築型システムを最速で実装できます。初心者が最初に学ぶ一本として最適です。
AI開発力が身につく
経営シミュレーション×
農場ゲームの作り方講座
Unity6対応・農場×経営の2ジャンル融合。AIエージェントを独自実装できる唯一の講座。未経験でも完成まで到達できる丁寧な解説が魅力です。
あなたのオリジナルゲーム、今年こそ完成させませんか?
RPG・アクション・ホラー…Unityで本格ゲームを作りたい人のための学習サイトです。
実際に完成するゲームを題材に、
ソースコード・素材・プロジェクト一式をすべて公開。
仕事や学校の合間の1〜2時間でも、
「写経→改造」で自分のゲームまで作りきれる環境です。
CSVファイルを使ったノベルゲーム向けシナリオ管理のメリット

ノベルゲームでは、シナリオ(セリフや文章)の量が多くなりがちです。
CSVファイルを使えば、シナリオをコードから分離し、効率的に管理できます。
✅ CSVファイルを使うメリット
- シナリオをコードから分離:ノベルゲームのセリフをスクリプトに直接書かずに管理できる
- 更新が簡単:コードを修正せず、CSVを書き換えるだけでシナリオを変更できる
- 管理がしやすい:Excelやスプレッドシートで直感的に編集できる
- 多言語対応が簡単:言語ごとにCSVを分けるだけで翻訳データを管理できる
CSVを使えば、ノベルゲームのシナリオをシナリオライターが直接編集できます。
そのため、プログラマーが毎回コードを変更する必要がなくなり、制作効率が大きく向上します。
CSV読み込み処理の実装方法

ここでは、ノベルゲームのシナリオをCSVから読み込む処理を実装します。
CSVを使うことで、セリフや文章をコードから分離して管理できるようになります。
所要時間は2時間程度です。
ステップ1:CSVファイルの準備(所要30分)
まずは、ノベルゲームのシナリオを記述するCSVファイルを作成します。
以下の内容で dialogue.csv を用意してください。
|
1 2 3 4 |
ID,Character,Text,NextID 0,主人公,こんにちは、ノベルゲームの世界へようこそ!,1 1,主人公,今日から一緒に冒険しましょう。,2 2,主人公,楽しみですね!,3 |
IDでシナリオの順番を管理し、NextID で次に表示するセリフを指定します。
ステップ2:CSV読み込みスクリプトの作成(所要1時間)
次に、CSVファイルを読み込むスクリプトを作成します。
以下のコードを CSVReader.cs として作成し、コピー&ペーストしてください。
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 |
using UnityEngine; using System.Collections.Generic; using System.Linq; [System.Serializable] public class DialogueData { public int id; public string character; public string text; public int nextID; } public class CSVReader : MonoBehaviour { public TextAsset csvFile; private List<DialogueData> dialogues = new List<DialogueData>(); void Start() { LoadCSV(); } void LoadCSV() { string[] lines = csvFile.text.Split('\n'); for (int i = 1; i < lines.Length; i++) { if (string.IsNullOrWhiteSpace(lines[i])) continue; string[] values = lines[i].Split(','); DialogueData data = new DialogueData { id = int.Parse(values[0]), character = values[1], text = values[2], nextID = int.Parse(values[3]) }; dialogues.Add(data); } } public DialogueData GetDialogue(int id) { return dialogues.FirstOrDefault(d => d.id == id); } } |
コードの説明
DialogueData:ノベルゲームのセリフ情報をまとめたデータクラスLoadCSV():CSVファイルを読み込み、リストに格納する処理GetDialogue():IDを指定して対応するシナリオデータを取得するメソッド
ステップ3:CSVファイルの設定(所要30分)
- 作成したCSVファイルを「Assets」フォルダに配置
- CSVファイルをUnity上で Text Asset として認識させる
- CSVReaderスクリプトをアタッチし、Inspectorの「CSV File」にCSVを指定
以上で、ノベルゲーム用のCSV読み込み処理が完成します。
ノベルゲーム向けシナリオ管理システムの作り方

ここでは、CSVから読み込んだシナリオデータを使って、ノベルゲーム用のシナリオ管理システムを作成します。
スペースキーでセリフを進める、シンプルなノベルゲームの基本構成です。
所要時間は2時間程度です。
ステップ1:シナリオ管理クラスの作成(所要1時間)
まずは、シナリオの表示と進行を管理するクラスを作成します。
以下のコードを ScenarioManager.cs として作成し、コピー&ペーストしてください。
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
using UnityEngine; using TMPro; public class ScenarioManager : MonoBehaviour { public CSVReader csvReader; public TextMeshProUGUI dialogueText; private int currentDialogueID = 0; void Start() { ShowDialogue(currentDialogueID); } void Update() { if (Input.GetKeyDown(KeyCode.Space)) { NextDialogue(); } } void ShowDialogue(int id) { DialogueData data = csvReader.GetDialogue(id); if (data != null) { dialogueText.text = data.character + ": " + data.text; } } void NextDialogue() { DialogueData currentData = csvReader.GetDialogue(currentDialogueID); if (currentData != null) { currentDialogueID = currentData.nextID; ShowDialogue(currentDialogueID); } } } |
コードの説明
ScenarioManager:ノベルゲームのシナリオ進行を管理するクラスShowDialogue():指定したIDのセリフを画面に表示するNextDialogue():CSVのNextIDを使って次のセリフに進む
ステップ2:実行して動作を確認(所要1時間)
- Unityエディタで再生ボタン(▶)を押す
- CSVから読み込んだシナリオが画面に表示されることを確認
- スペースキーを押すと、次のセリフに進むことを確認

問題なく動作すれば、CSVを使ったノベルゲーム用シナリオ管理システムは完成です。
データの更新方法

CSVファイルを更新する方法を解説します。
所要時間は30分程度です。
Excelで編集する方法
CSVファイルは、Excelで編集できます。
- CSVファイルをExcelで開く
- セリフを編集
- 保存(CSV形式で保存)
- Unityで再読み込み
この方法で、コードを変更せずにシナリオを更新できます。
多言語対応
言語ごとにCSVファイルを用意すれば、多言語対応が簡単です。
例:
- dialogue_jp.csv(日本語)
- dialogue_en.csv(英語)
言語に応じて、読み込むCSVファイルを切り替えます。
効率的なデータ管理のコツ

効率的なデータ管理のコツを解説します。
- CSVファイルを分割:章ごとにCSVファイルを分ける
- ID管理:IDを連番で管理する
- バックアップ:CSVファイルを定期的にバックアップ
この方法で、効率的にデータを管理できます。
さらに高度なデータ管理手法を学ぶなら

さらに高度なデータ管理手法を学びたい方は、Unity入門の森で実践的なスキルを身につけましょう。
ノベルゲーム制作に特化した講座も用意されています。
よくある質問

ノベルゲームを作りたいなら!Unity入門の森の講座でオリジナルゲーム開発に挑戦しよう
Unity入門の森には、ノベルゲームをはじめ幅広いジャンルのゲームを作れる講座が揃っています。作りたいゲームや身につけたいスキルに合わせて選んでみてください。
Unity ノベルゲームの作り方講座【全14回!会話システムからシナリオ分岐まで他ジャンルにも応用できるUIスキルが身につく!】

- かまいたちの夜・ダンガンロンパ・逆転裁判風のゲームをゼロから開発
- テキスト文字送り・選択肢・シナリオ分岐・セーブまで完全実装
- Googleスプレッドシートを使ったシナリオ管理システムを習得
- 会話システム・UI遷移は他ジャンルのゲームにも応用可能
- 初心者から上級者まで対応の丁寧な解説とソースコード付き
Unity ノベルゲームの作り方講座は、かまいたちの夜・ひぐらしのなく頃に・ダンガンロンパ・逆転裁判のようなテキスト主体のゲームを作るための講座です。
会話システム・シナリオ分岐・セーブ機能はもちろん、UniTaskを用いた非同期処理やGoogleスプレッドシートを使ったシナリオ管理など、中・上級者のスキルアップにも直結する実践的な開発テクニックが身につきます。
ノベルゲームに限らず、会話システムやUI遷移はあらゆるジャンルに使える汎用スキル。ゲーム開発の引き出しを大きく広げたい人におすすめの一本です。
会話システム・シナリオ分岐・セーブまで完全実装
ノベルゲームで身につくUIスキルは全ジャンルの武器になる
→ Unity ノベルゲームの作り方講座を見てみる
汎用性の高いUIスキルを今すぐ習得して開発の幅を広げよう!
Unity ノンフィールドRPG+スレスパ風JRPG講座【Unity6対応!デッキ構築×JRPGをスマホ向けに作れる!】

- Unity6対応・スマホ化対応で最新環境のゲーム開発が学べる
- Slay the Spire風のデッキ構築システム×JRPGの組み合わせを実装
- 初心者でも取り組みやすい丁寧な解説構成
- ノンフィールドRPGとデッキ構築JRPGの2つを合わせて学ぶのがおすすめ
Unity ノンフィールドRPGの作り方講座+Slay the Spire風デッキ構築JRPGの作り方講座は、今もっともトレンドのデッキ構築型ゲームシステムをJRPGと組み合わせて実装する方法を学べる講座です。
Unity6対応・スマホ化対応の最新カリキュラムで、デッキ構築の核となるシステムをしっかり習得できます。ノベルゲームで培ったUI・シナリオ設計の知識とも相性がよく、ゲーム開発の幅がさらに広がります。
「Slay the Spireみたいなゲームを自分でも作ってみたい!」という人の最初の一歩として最適な講座です。
Unity6対応・スマホ化対応の最新カリキュラム
トレンドのデッキ構築×JRPGを最速で実装しよう
→ Slay the Spire風デッキ構築JRPG講座を見てみる
スマホ対応の最新環境で、ゲーム開発の第一歩を踏み出そう!
経営シミュレーション×農場ゲームの作り方講座【Unity6対応!AIエージェント実装まで学べる唯一の講座!】

- 未経験でも完成まで到達できる丁寧な解説
- 農場×経営の2ジャンルを同時に作れる
- 賢く自律行動するAIエージェントを独自実装できる
- 完成後も街づくりゲームに応用可能な高い拡張性
- Unity6対応のモダンな開発手法が身につく
経営シミュレーション×農場ゲームの作り方講座は、シムシティ・牧場物語・どうぶつの森のようなゲームを自分で作れるようになる講座です。
農作物の育成・収穫・販売システムはもちろん、NavMeshを使ったお客さんAIの来店・購入・帰宅の自律行動や、ルールベースAIによる従業員エージェントの実装まで、本格的なゲームAI開発が学べます。
ノベルゲームのシナリオ設計とは異なる「AI・ゲームロジック設計」のスキルを身につけて、開発できるゲームの幅をさらに広げましょう。
Unity6対応・AIエージェント実装まで学べる
農場も経営もコレ1本で完成させよう
→ 経営シミュレーション×農場ゲーム講座を見てみる
応用・拡張性は無限大!自律行動するAIを実装して一歩先のゲーム開発へ!
まとめ

UnityでCSVファイルからテキストデータを読み込む実装方法を解説しました。
CSVを使えば、シナリオをコードから分離できます。
所要時間は2時間程度で、CSV読み込み処理が実装できます。
さらに高度なデータ管理手法を学びたい方は、Unity入門の森で実践的なスキルを身につけましょう。
✅ 今日から始める3ステップ
- STEP1:CSVファイルを作成(所要30分)
- STEP2:CSV読み込みスクリプトを作成(所要1時間)
- STEP3:シナリオ管理システムを作成(所要1時間)
本格的にUnityを学びたい方は、Unity入門の森で実践的なスキルを身につけましょう。
あなたのペースで、少しずつ進めていけば大丈夫です。
あなたのオリジナルゲーム、今年こそ完成させませんか?
RPG・アクション・ホラー…Unityで本格ゲームを作りたい人のための学習サイトです。
実際に完成するゲームを題材に、
ソースコード・素材・プロジェクト一式をすべて公開。
仕事や学校の合間の1〜2時間でも、
「写経→改造」で自分のゲームまで作りきれる環境です。





コメント