よくある質問
プログラミングの知識は必要ですか?
Naninovelは、プログラマーでなくても使いやすいように設計されており、基本的なビジュアルノベルを作成するためにプログラミングの知識は必要ありません。例えば、WebGLデモ は、カスタムC#スクリプトを一切使用せずに作成されています。スタートガイド や ビデオチュートリアル で基本的なワークフローを確認できます。ただし、独自の機能(ゲームプレイ)を追加したり、他のサードパーティパッケージと統合したりする場合は、ほとんどの場合C#(または ビジュアルスクリプト)が必要になります。特定の機能(例:UIのカスタマイズ)では、Unityエディタの経験が必要になる場合もあります。
既存のゲームに会話システムとして組み込めますか?
Naninovelは主にビジュアルノベルを作成するための基盤として設計されていますが、あらゆるジャンルのゲームの会話やカットシーンシステムとしてそのまま使用することも可能です。そのようなユースケースのために特別に設計された 専用モード も含まれています。
なぜノードグラフを使わないのですか?
一見すると、ノードグラフは会話を作成するのに便利なように見えます。しかし実際には、コンテンツが増えるにつれて、すぐに管理不能な混乱状態に陥ります。複雑な会話はテキスト形式で扱う方がはるかに優れており、きれいに拡張でき、ワークフローを効率的に保つことができます。
例えば、このスクリーンショット を比較してみてください。左側はノードグラフで会話を作成する人気のUnityアセットの一つで、右側はNaninovelで書かれたまったく同じスクリプトです。ご覧のとおり、テキスト形式の方がはるかにシンプルで管理しやすいことがわかります。扱いにくいUIもなく、編集のためにUnityアセットを探し回る必要もありません。それでもビジュアルエディタをご希望の場合は、ノードグラフよりもはるかに優れたプロセスを処理できる 専用エディタ を用意しています。
とはいえ、ノードグラフは物語の分岐フローを追跡・整理するのには便利です。そのため、Naninovelには ストーリーグラフ が含まれており、物語の全体像を明確に把握することができます。
ミニゲームを埋め込むことは可能ですか?
もちろん、デフォルトのNaninovelフローに任意のカスタムロジックを「注入」することができます。ただし、多くの場合、これにはエンジンのC# APIを使用する必要があります(カスタムC#スクリプトを記述するか、ビジュアルスクリプト ソリューションを使用します)。利用可能な公開APIのリストについては エンジンサービスガイド を確認してください。これによりエンジンとの対話が可能になります。また、その過程で 状態のアウトソーシング、カスタムアクターの実装、カスタムコマンド を利用することもできます。
特定の言語をサポートしていますか?
Naninovelはどの言語でも動作しますが、一部の言語でテキストを表示するには、互換性のあるフォントが必要です。詳細については、ローカライズガイド の「フォント」セクションを参照してください。
ソースコードにはアクセスできますか?
すべてのUnity関連のソースは、配布パッケージに含まれています。共通のNaninovelモジュールは動的アセンブリにプリコンパイルされており、ソースは プライベートGitHubリポジトリ でホストされています。ライセンスを登録 した後、アクセス可能になります。
利用規約はどうなっていますか?
Naninovelは、以下のエンドユーザー使用許諾契約(EULA)に準拠しています:naninovel.com/eula。アプリケーションをダウンロードまたは使用する前に、ドキュメントをよくお読みください。
アセットストアのライセンス登録時に「asset wasn't downloaded」というエラーが出るのはなぜですか?
Unityのアセットストア経由でNaninovelを購入した場合、アセットのダウンロード検証が必要です。検証を成功させるには、アセットを購入したユーザーがUnityの パッケージマネージャー 経由でNaninovelを少なくとも1回ダウンロードする必要があります。アセットを複数購入した場合、各コピーは関連する組織のユーザーによってダウンロードされる必要があります。すべての手順を完了しても問題が解決しない場合は、Unityサポート にお問い合わせください。
WARNING
アセットが組織アカウントから購入された場合、チェックを満たすには組織の所有者がアセットをダウンロードする必要があります(割り当てられたメンバーはカウントされません)。これはアセットストアの制限であり、このような場合に回避策を提供することはできません。詳細とサポートについては、Unityサポートにお問い合わせください。
タイトル(メイン)メニューをカスタマイズするには?
UI部分(ボタンの変更・追加やパネルのレイアウトとスタイル)については、組み込みタイトルUIプレハブを変更 してください。その他すべてについては、スクリプト設定メニュー(Naninovel -> Configuration -> Scripts)で Title Script を設定し、シナリオを書くときと同じようにスクリプトコマンドを使用してシーンを設定します。タイトルスクリプトは、エンジンの初期化後および @title コマンドを使用するときに自動的に再生されます。
背景が切り取られてしまうのはなぜですか?
背景テクスチャの解像度のアスペクト比が、カメラ設定で設定された参照解像度と一致していることを確認してください。また、テクスチャが 正しい設定(例:Max Size が十分に高い)でインポートされていることを確認してください。
画面のアスペクト比が参照解像度の比率と異なる場合、背景アクターはデフォルトで一致させようとするため、切り取られる可能性があります。詳細については、一致モードガイド を参照してください。
テキスト表示中にコマンドを挿入するには?
コマンドのインライン化 を使用してください。
コマンドが同時に実行されるのを防ぐには?
すべての非同期コマンドで使用可能な wait パラメータを指定してください。例:
; キャラクターが非表示になった後にプリンターがフェードアウトを開始します。
@hideChars wait!
@hidePrinterまたは、スクリプトプレイヤー設定で Wait By Default オプションを有効にします。これにより、wait が否定(falseに設定)されない限り、すべてのコマンドがデフォルトで待機状態になります。
INFO
非同期(並列)コマンド実行の詳細については、専用の記事 を参照してください。
アクターの表示順(Zオーダー)を変更するには?
Z軸での配置を使用してください。例:
; Soraを中央下、Felixの手前に表示します
@char Sora pos:50,0,-1
@char Felix pos:,,0透視投影(Perspective)カメラモードでソートの問題が発生する場合は、「Edit > Project Settings > Graphics」エディタメニューにある Transparency Sort Mode を Orthographic に変更してみてください。Unityでのオブジェクトのソート方法の詳細については、2Dソートマニュアル を参照してください。
キャラクター自体を隠してアバターだけを表示することはできますか?
隠したいキャラクターに !visible を指定してください。アバターは表示されたままになります。例:
@char CharId !visibleキャラクター自体を隠したままアバターを頻繁に変更する場合、キャラクター設定メニューで Auto Show On Modify を無効にすることを検討してください。無効にすると、隠れているキャラクターのパラメータを変更する際に !visible を指定する必要がなくなります。
または、アクターをテクスチャにレンダリング する機能を確認してください。
シナリオスクリプトから独自のC#コードを実行するには?
C#の動作(例:シーン上のゲームオブジェクトへのアクセス)を呼び出すには、カスタムコマンド を使用します。C#メソッドから値を取得してシナリオスクリプトで使用するには、式関数 を使用します。