ふたさこ 2023/08/26 23:43

【Unity】Fungus用のエディタ拡張配布

ふたさこのサクフウです。

今回はUnityでゲームを開発している人向けの記事です。
より正確には、Unityのアセット『Fungus』を使っている人向けです。

Fungusについては散々世話になってる手前、紹介しないのも不義理なので軽く説明します。

Fungusとは無料で使えるUnityのアセットの一つでプログラミング知識がなくても会話シーンなどが簡単に作れるのが売りです。

当ふたさこの作品においてもエロトラップダンジョン(R-18注意)ver.1を除いた全ての作品の会話シーンをこのアセットで作っています。
公式サイトはこちら

今回はそのFungusを使いやすくするエディタ拡張を作ったので配布したいと思います。

どういうものなのかは以下に基本的機能紹介と使い方を兼ねた動画を用意したので見ていただければと思います。

機能

改めて機能は以下の通り

・テキストから「」か()囲まれてる文字列を抽出して一つずつFungusに並べる。
・必要に応じて「」も抽出するか選べる。
・↑で「」を抽出しない場合、セリフの最後尾に”。”を追加するか選べる。(!や?の記号がある場合は追加されない)

注意点

あくまで抽出するだけなので誰が喋ってるかなどは別途手作業にて設定することになります。
また「」と()に囲まれた文字列のみ抽出するのでそれ以外で表現されたセリフなどを抽出したい場合はスクリプトを書き換える必要があります。

そしてなにより独学プログラマーが自分のために作ったものなのでおそらく粗があるかと思われますがご了承ください。

ダウンロードと導入方法

ダウンロードはこちらから。

Fungusエディタ拡張セリフ抽出.unitypackage (31.57kB)

ダウンロード

ダウンロードしたアセットをUnityで読み込むと導入完了です。
注意点としてFungus用のエディタ拡張なのでFungusを導入しないと使えません。
Fungusについては公式のGithubからどうぞ。

推奨環境

・Unity 2022.3.7f1
・Fungus v3.13.8

単純にこれ以外の環境を試してないのでこう書きましたが、たぶん違う環境でも全然動くと思います。
ただFungusについては上記の最新版を使ったほうがいいと思われます。

使い方

使い方は先程の動画のとおりですが改めてポイントだけ文章でおさえます。

1:導入したエディタ拡張のウィンドウを開く(Fungusと同じとこにいます)


2:「」や()だけを抽出したいテキストをStoryText欄にコピペ。
3:ブロック生成したいflowchartを一番上の欄にアタッチ
4:任意でオプションの設定してブロック生成を押す

(導入したエディタ拡張の様相)

以上でアタッチしたflowchartに新しいブロックが生成され、中に抽出した「セリフ」や(モノローグ)が並べられています。

作った所感

ふたさこの活動を始めてからFungusにはずっとお世話になっていますが会話シーンを作ろうと思うとセリフを一つずつコピペ(または手作業で入力)しなければならないのがずっと気になっていたので今回解決できて非常に満足しています。

今回特筆するべき点として「」や()に囲まれた文字列を判定するのに正規表現が必要でしたがよく分からなかったのでChatGPTに丸投げしました。

状況によって柔軟に条件が決められるがとっつきずらい正規表現とChatGPTの相性は抜群だと感じたのでこれからも積極的に活用していきたいと思います。

おかげで抽出する部分の実装はすんなりと終わることができました。

一方で苦戦したのはFungusをスクリプトでどうこうする部分。
そういうことに関しては日本語の情報が見当たらなかったので今回のエディタ拡張の開発はFungusのコードとにらめっこする時間がほとんどでした。

わかってしまえばどうということはないのですがそれを見つけるのに大きく時間がかかりました。
こういう要所を見つける嗅覚をどう発達させればいいか見つけるのが今後の課題でしょう。
プログラミングはとにかく調べ物に費やすのが面白くもあり、失われる時間も多いです。

また今回で初めて自分で作ったコードを公開することになりました。
意外にも「作ってはい公開!」というわけにもいかず公開するための準備が色々あることを知りました。
積極的に便利なものを公開している、または情報を発信しているプログラマー達には頭が上がりません。

統括しますとプログラミング結構好きかもしれないなというのが率直な感想です。
めんどうで退屈な作業を直接ぶちのめせるのはプログラミングだけ!
最高に気持ちいいぜ!

この記事が良かったらチップを贈って支援しましょう!

チップを贈るにはユーザー登録が必要です。チップについてはこちら

月別アーカイブ

記事を検索