Pre 2023/03/04 23:50

Unityでのメッセージウィンドウシステム

みなさんお久しぶりです。
前回から相当期間が空いてしまいましたが……このアカウントは気楽に投稿する予定で作ったものなので、気にせずやっていきたいと思います。

今回はゲームエンジンUnityに関する内容、具体的には「メッセージウィンドウシステム」がテーマになります。
RPGツクールがメジャーですが、Unityでゲームを作る方もだいぶ増えてきたように思います。

ただの雑記ですが、Unityに興味のある方の参考にでもなれば嬉しく思います。

メッセージウィンドウシステム

キャラクター同士の会話やナレーションなどのテキストを表示するシステムは、余程特殊なゲームでない限りは必要となるシステムでしょう。

UnityにはAsset Storeがあり、ここにいくつかのメッセージウィンドウシステムがあります。
軽く調べると出てくるのは「宴」や「fungus」といったところでしょうか。
「Dialogue System for Unity」なんてのもあります。

この中でも宴は、よくできているアセットだなと感じています。しかも日本人の方が制作者なのでマニュアルも日本語でしっかりと用意されています。
なのでどれがおすすめかと言われれば、私は宴をお勧めします。


ただ実は、宴はノベルゲームのためのアセットなんですね。「Unity用ビジュアルノベルツール」とあります。

一応、ノベルゲーム以外でも利用できるようには作られており、この点でもアセットとして非常に優秀だと思います。
それでもやはりノベルゲームで使用することを前提とした作りとなっているので、通常のゲームで利用しようとするとどうしても気になる点は出てきてしまいます。

私が遭遇した問題の1つは、立ち絵をはじめとするリソースのメモリ管理でした。宴と、宴以外で同じリソースを使用すると面倒なことが起こります。

宴はビジュアルノベルツールとして、とても適切にリソースのロード・アンロードを管理をしてくれています。
そこに、こちらが勝手にUnityで同じリソースを使おうとするので話が面倒になってくるわけですね。

宴はこの点も考慮していてくれて、リソースをアンロードしないなどもできるのですが、結局はこちらがそのアンロードも管理しないと使用するメモリはどんどん増えていき……

結局、何が言いたいかというと
『アセットはクリエイターが手間をかけずにそのシステムを利用できるためのものであるはずなのに、結局その手間が掛かってしまう』
ということです。

なので私としては、やはり宴はUnity用ビジュアルノベルツールであるので、ビジュアルノベルゲームを作る場合に利用すべきかなと思っています。

他にも、宴とUnityでの情報や命令のやり取りをするために、「少々回りくどい手段」を用いなければならないなどの問題もありました。


個人的には宴が一番良いメッセージウィンドウシステムの候補です。
「fungus」や「Dialogue System for Unity」なども触りましたが、そもそもExcelで管理できない(多分。できたとしてもその手順が明確に示されていない)など、どうしても気になってしまうポイントが出てきてしまいます。

ただそれでも私は、通常のゲームでメッセージウィンドウシステムを扱いたいのなら、結局は『自作するべき』という結論に行き着くのではないかと思っています。

自作のメリットは何といっても『表現したいことを表現できる』ということですね。あとから「これをしたい!」と思っても、既存のアセットだとそれができずに悶々とする可能性がありますが、自作であればこれを回避できます。
それに、自分の資産にもなりますからね!

メッセージウィンドウシステムに関しては、手間が掛かっても自作する価値があるものだと思います。


自作するならおそらくはエクセルに会話情報(会話ID、話し手、セリフetc……)を記載し、それをCSV形式で出力して読み込むのが現実的かなと思います。




今回の記事は以上になります。
またお付き合いしていただければ幸いです。



コロナ治りかけの時に描いていたソニア。まだラフですが早く作中で見せたいですね。

最新の記事

月別アーカイブ

限定特典から探す

記事を検索