執筆時点ではNaninovel 1.21は「preview」のステータスで、まだ開発途中のため今後大きな変更が加わる可能性があります。
それを踏まえて、2025年6月時点での感想をメモしておきます。
一般的にノベルゲームは、想像以上にリソースを使います。
背景、立ち絵、BGM、SE、ボイスなどを常に同時並行で再生しているためです。
ゲームによっては、ムービー、アニメーション、VFXなどが加わります。小道具のイラストや立ち絵差分なども付けようと思うと、ますます膨大になっていきます。
そのため、必要な時に必要な分のリソースをロードして、使わない場面ではアンロードしないとまともに動きません。
短編でリソースが少ないゲームなら問題ないかも知れませんが、インディー〜商業のフルボイス長編ノベルゲームではメモリ管理は必須です。
前置きが長くなりましたが、Naninovelでは1.19以降このメモリ管理機能がついていて、管理方法を選べます。
そこに1.21から、メモリ制約が非常に厳しいデバイス向けのモードとして、Lazyモードが追加されました。
Lazyモードではスクリプトを再生しながら動的にリソースを読み込んでいき、再生が終わると即アンロードします。そのためロード画面が表示されません。
それ以前のバージョンでは、まとまった量のリソースを一度に読み込むため、どうしてもロード時間が長くなっていたのですが、Lazyならロード時間の問題を解消できそうです。
Lazyを試したところ、たまにラグが発生することがありましたが、それ以外は概ね想定通りの動作でした。まだ開発途中だと思いますが、今後かなり期待できそうです。
カスタム変数でBool型などを扱えるようになって便利そう。(1.20からすでに変わっているらしい)
ただC#で扱う時の書き方も変わるので、アップデート時は記述変更の必要あり。Naninovelのカスタム変数専用の型が用意されるようになったので、扱う時は「カスタム変数型をString型などの任意の型に変換する」という手順が加わる。
詳しくは公式ドキュメントに書いてある。
公式サーバーに入るとgitHubへのCommitがリアルタイムで流れてくる。更新頻度がすごい。速い。
Discordへのリンクは公式サイトに載っている。
アップデート後何か表示がおかしいな? と思ったらUIのプレハブを確認しよう。追加で設定する項目ができているかも知れない。特にTips周り。
コンフィグ画面のScriptsで「Script Parser」の選択が外れてしまうので、Naninovel.ScriptParserを再選択。その上でスクリプトを再インポートしよう。
DefaultUI.txtなどのフォーマットが変わっているようなので、再生成しないと文字が正しく表示されない。
エディターの Tool>Managed Text から再生成するのだが、今までの記述が何故か一部消えてしまうので、カスタムで記述した内容なども含めManaged Textで管理しているテキストは全てどこかにバックアップしておき、再生成してから逐次コピペで復元しよう。