プログラミングこんにちは。サークル側の公式サイトやTwitterでご存知かもしれませんが、ここ暫くの間、仕事と並行してUnityを色々いじっていました。その中でも、Unity上でノベルゲームを制作可能にするフレームワーク、JokerScriptは多機能かつ、省力化が可能という魅力的なシステムで、少し前にも、JokerScript用入力補完キット(要サクラエディタ)をGitHubにも公開し、製作者のシケモクMKさんからもコメントを頂いたりしていました。そんなJokerScriptですが、Unity5.3.0以降には対応しておらず、最新バージョンのUnityでも使ってみたいが、どうにかならないかと動作の妨げになっている要因を精査し、一先ずUnity2018以降の環境でJokerScriptを動かす修正ファイルを作りましたので公開します。許可を下さったシケモクMKさん、ありがとうございます。やりたかったのは、Unityでゲームを作った時、3Dゲームパートからノベルパートに切り替わったり、その逆を簡単に作れないかなという所だったんですが、ここは要研究といった所です。́Д`)※注意事項この暫定修正パッチはUnity2018.1.0f2とJokerScript0.4.1で構成された新規プロジェクトでのみ検証されています。パッチは暫定的な物であり、確実な動作や将来の更新対応、バグフィックスを保障する物ではありません。このパッチの使用で生じたいかなる損害においても、筆者は責任を負わないものとします。Standalone」に限定されます。それ以外のプラットフォーム向けにビルドする事は出来ませんのでご注意を。Download」ボタンをクリックしてダウンロードして、どうぞ。導入手順Unityで新規プロジェクトを2Dで立ち上げた状態でJokerScriptをダウンロード、解凍後、JOKER.unitypackageをダブルクリックそうするとインポートされるのでここまでは普通に全ファイルのインポートを実行。Assets\JOKER\Scripts\Novel\Core\SaveManager.csを差し替える。このSaveManager.csを今回ダウンロードした修正版SaveManager.csと入れ替えれば、一先ず動作します。("Player");と記述すれば、任意の条件でノベルシーンに遷移出来ます。そのままだとJokerScriptデフォルトの設定でノベルゲーム側のメニューシーンが最初に出てしまうのでAssets\JOKER_GAME\Resources\novel\data\scenario\first.txtで、title以外のシーン(scene1か、自作のJokerScript準拠のコード)を呼び出してあげるようにすればいいでしょう。Unityモデリングソフト・MarbleCrayは大変判り易いUIと使い勝手の良さから長年使っているのですが、メタセコイアなどに比べるとマイナーなのであまり知られていません......今後、モデリングに手を出してみたい人向けに情報をまとめました。テキストとその後にあるTwitterモーメントあわせてお読み下さい。判り易いUI←(ここ重要)が揃ってます。そこで、これからUnity用に何かさくっと何かを作りたい&作る上でのポイントを幾つか。0:まず、MarbleCray公式サイトでMarbleCrayのダウンロードしてインストールをして下さい。1:MarbleCrayでモデリング後は、各オブジェクトレイヤーを統合する。(こうしないと最後のレイヤーしか出力されない)2:ファイルコンバートの為の中間処理として、出来上がったモデルはLWO方式で出力。出力時は、オプションで「面を反転」を選びます。(元の作業ファイルの形式が特殊な為、これをやらないとポリゴンが破綻してしまいます)3:LWO形式のファイルはUnityでは使えない為、これをUnityへのインポートに最適なFBX形式ファイルにコンバートします。メタセコイアを起動してインポートを選び「座標軸」のメニューを「LightWave3D」に設定すると共に「Y軸反転」と「Z軸反転」を選びます。(アプリケーション別にデータの読み方が変わるらしく、こうしないと天地逆になります)4:メタセコイアのファイルメニューから名前をつけて保存→ファイル形式でFBX(Unity用途の場合)を選択して、保存。MMD用途ならPMD形式で保存して、これ以降の工程はありません。PMDへ保存でもOKです。方法は以下の捕捉の通りです。on)→Immport-exportを選ぶ。アドオン一覧にImport-export:LightwaveObjectがあるので、それにチェックを入れ、blenderを再起動すればLWOがインポート可能になります。次に、PMXへのエクスポートを行う為、mmd_tools公式サイトに行き、master.zipをダウンロードして解凍します。Foundation\Blender\2.79\scripts\addons)に設置してBlenderを再起動します。mmd_toolsを選び、チェックを入れれば準備は完了です。ファイル→インポート(import)を選び、2で用意したLWOをインポート後、Blenderの左側にあるMMDタブをクリックし、タブ横に表示されたCreateボタンをクリック。Modelとインポート済みモデル名の二つが表示されます。modelをクリックします。その後、はじめてFile→ExportでPMXを選んで出力できます。Unity用データ(FBXを)出力する場合は、Import-export:LightwaveObjectのインストールだけしておけば大丈夫です。5Unityを立ち上げ、画面上のシーンタブを選び、画面したのAssetsフォルダへ、出力したFBXファイルをドラッグアンドドロップすればUnityのアセットに取り込まれます。後は、アセットフォルダ上のモデルデータをシーンウィンドウに、ドラッグアンドドロップすれば、モデルが表示されます。注釈:MarbleCrayからいきなりDXF→Unityでもいいのですが、色(シェーダー)定義が消えたりデータが欠落したりしてあまり宜しくなかったので、比較的データ欠落が起き難いLWOを経由してコンバートする為、メタセコイアを間に挟んでます。本当ならMarbleCrayで即FBXエクスポート出来ると良いんですけどね......注釈2:メタセコイアからならPMDファイルを直で出力出来るので、FBXではなくPMDを出してMMDモデルを作りたいという用途でもMarbleCrayをモデリングの工程で使っても悪くないと筆者個人は思います。スクリーンショット込みのモーメントは下記の通りです。Unity日ごろ、Unityでの開発で気になった項目をモーメントでまとめてます。このサイトは、ニコニコ動画でごく稀に動画投稿やリクエスト生放送等を行っているstorchが動画紹介やリクエスト生放送関連の情報他、ニコニコ動画に纏わる様々な話題を緩く配信するサイトです。過去作品等については下記のユーザーリンクからどうぞ。