# FAQ

# Naninovel を既存のゲームの会話システムとして利用できますか?

Naninovel は典型的なビジュアルノベルゲームのための用途を想定していますが、エンジンは既存のプロジェクトと連携できるように設計されています。 3Dアドベンチャーゲーム、RPG、または他のジャンルのゲームを作成している場合でも、一時的な会話システムとして Naninovel を使用できます。

ほとんどの場合、そのような連携にはさまざまな範囲のC#スクリプト(または ビジュアルスクリプティング)が必要になりますのでご留意ください。 Naninovel の仕組みを理解するには、エンジンアーキテクチャー を参照してください。連携のオプションについては インテグレーションガイド をご覧ください。

# Naninovel にミニゲームを埋め込むことはできますか?

もちろんです。既存の Naninovel のフローにカスタムロジックを自由に挿入できます。ただしほとんどの場合、エンジンの C# API が必要です(カスタム C# スクリプトを記述するか、ビジュアルスクリプティング を使用します)。エンジンとのやり取りをするための利用可能な API 一覧は エンジンサービスガイド をご覧ください。他にも ステートのアウトソースカスタムアクターの実装カスタムコマンドが参考になるかも知れません。

# どの言語をサポートしていますか?

Naninovel はどの言語でも動作しますが、特定の言語の表示には互換性のあるフォントが必要です。デフォルトは Google Roboto で、Unicode 7.0 の全てのラテン文字、キリル文字、ギリシャ文字をサポートしています。カスタムUI 機能を使用して組み込みUIのフォントを変更できます。表示テキストメッセージについては、カスタムプリンターを作成 して希望のフォントを設定します。

できるだけ多くの言語をサポートしたい場合は、Noto フォント をご検討ください。

# Naninovel を購入するとソースコードへもアクセスできますか?

全てのソースコードは配布されるパッケージで参照可能です。いくつかの外部ライブラリ (NCalcNLayer) はコンパイル済みですが、これらは GitGub でホストされているオープンソース(MITライセンス)です。

# どうしてパッケージにはデモシーンが含まれていないのですか?

Naninovel は シーンから独立 して設計されており、Unity シーン を利用することがありません。したがって、どのような例やデモシーンも作成することはできません。 ゲームの開始時にエンジンが自動的に初期化され(エンジンのコンフィグウィンドウで手動初期化に切り替えることができます)、シナリオは Naninovel スクリプト と呼ばれるテキストドキュメントを介してスクリプト化されます。

このエンジンの使い方を理解するには スタートガイド を一読してください。様々な機能やスクリプトコマンドの使用例は、 ガイドAPIコマンドリファレンス で見ることが出来ます。実際のプロジェクトを参照したい場合は、デモプロジェクト をご覧ください。

# タイトル画面、背景、音楽、効果音、ボタンなどをカスタマイズするにはどうすればいいですか?

UIパーツ(ボタンまたはパネルレイアウトとスタイルの変更/追加)に関しては、カスタムUI 機能を使用します。それ以外の場合は、スクリプトコンフィグメニュー (Naninovel -> Configuration -> Scripts) で Title Script を設定し、シナリオを作成するときと同じようにスクリプトコマンドを使用してシーンを設定します。タイトルスクリプトは、タイトルメニューに入ると自動的に再生されます。

# Unityシーンにデフォルトで表示される空の背景を消すにはどうすればいいですか?

エディターメニューの Window -> Rendering -> Lighting Settings から Skybox Material を削除してください。

スカイボックスを削除すると、オブジェクトが表示されていないときはカメラの背景色で背景が塗り潰されます。この色(および他の関連設定)は、カメラのプレハブを作成し、 Naninovel -> Configuration -> Camera メニュー内にある Custom Camera Prefab プロパティに割り当てることで変更できます。

# メッセージ内に改行を入れるにはどうすればいいですか?

[br] コマンド を参照してください。

# テキストメッセージの中にコマンドを表示する方法は?

コマンドのインライン化 を使用してください。

# アクターの前後の並びを設定して表示する方法(Zソート)を教えてください。

z-axis のポジションを使用してください。 例:

; Sora を Felix の手前かつ下中央に表示する。
@char Sora pos:50,0,-1
@char Felix pos:,,0

# テキストプリンター内でキャラクターのアバターのみを表示し、キャラクター自体を非表示にすることはできますか?

キャラクターに visible:false を設定してください。アバターは表示されたままになります。例:

@char CharId visible:false

キャラクター自体を非表示にしたままでアバターを常に変更したい場合は、キャラクターの設定メニューで Auto Show On Modify を無効にすることを検討してください。無効にすると、非表示にするときに visible:false を指定してキャラクターのパラメーターを変更する必要はありません。

# 非標準の解像度(2048x1024など)の背景を使用したいのですが、背景がトリミングされてしまいます。

カメラのコンフィグメニュー (Naninovel -> Configuration -> Camera) で、 Reference Resolution を背景と同じ解像度に設定してください。また背景テクスチャが 正しい設定 でインポートされているか確認してください。例えば 最大サイズ で十分です。

# 対象プラットフォームで異なるアスペクト比に対応するにはどうすればいいですか?

スタンドアロン(PC、Mac、Linux)ビルドの場合、プレイヤー設定 で利用可能なアスペクト比を選択できます。Web、コンソール、およびモバイルの場合、特定のアスペクト比を強制することはできず、代わりにターゲットデバイスに適応する必要があります。

特定の解像度のソーステクスチャ(背景スプライト)でなければならない場合、それらを異なるアスペクト比に「適応」させる方法は、サイズ変更(イメージを歪める)、黒い縁の追加、またはトリミングです。 最も目立たない方法は、トリミングすることです。 Naninovelは、以下の条件で自動的にトリミングを行います: カメラ構成メニューで Auto Correct Ortho Size が有効になっていて、現在のアスペクト比がそのメニューで設定されている Reference Resolution アスペクトと異なる場合。自動修正を使用することで、ゲームの実行に使用されているディスプレイやデバイスに関係なく、黒い縁や歪みが生じなくなります。

アスペクト比の違いを手動で処理するには(たとえば、黒い縁を追加したり、トリミングではなく画像のサイズを変更したりする場合)、カメラコンフィグメニューの Auto Correct Ortho Size オプションを無効にします。その後 CameraManager エンジンサービス を使用して、Naninovelが使用するカメラの正投影サイズを制御できます。

# naninovelスクリプトからカスタム C# コードを実行するにはどうすればいいですか?

カスタムコマンド を使用してください。

最終更新 日: August 5, 2020