Skip to content

Blender2Camera2をCameraPlusフォーマットに変更したもの。主にScriptMapperでの使用を想定。

License

Notifications You must be signed in to change notification settings

rynan4818/blender2ScriptMapper

 
 

Repository files navigation

Blender2ScriptMapper

hibitさんが開発されているScript Mapperに、別のカメラスクリプトのカメラパスを読み込めるscriptコマンドを追加した改造版Script Mapper用の、Blenderで作ったカメラパスをCameraPlus用のカメラスクリプトとして出力するBlender用スクリプトです。

2023/12/11追記:本家のScript Mapper Version 1.09もscriptコマンドに対応しました。こちらはV3譜面にも対応しています。

これを使ってScriptmapperで作れないような複雑なカメラワークをBlenderで作って利用できます。

KandyWrongさんが開発されているBlenderからCamera2用のカメラスクリプトを作るBlender2Camera2をCameraPlusフォーマットに変更したものになります。

インストール方法

  1. Blenderがインストールされていない人は、ダウンロードしてインストールします。

    Blenderのインストール方法、基本的な使い方はWeb上に色々あります。

    3Dモデリングソフト「Blender」の操作を0から学べる1,400ページの解説書が無償公開などが、学生の講義用に作られていてわかりやすいです。最新は2021年度版にあります。第1回概要説明、Blenderの基本操作だけ読めば、本ツールの作業には支障はありません。

    また、元ツールのBlender2Camera2のマニュアルのUsing Blenderが英語ですが、本ツールの使い方に集約されており、動画もあるので大変参考になります。

  2. Releasesから最新のAssetsのSource code (zip) をダウンロードします。※専用のzipファイルは無いのでSource codeでOKです。

  3. ダウンロードしたblender2ScriptMapper-****-**-**.zipを適当なフォルダで解凍します。

使い方

  1. 解凍したblender2ScriptMapperのtemplateフォルダにあるtemplate.blendを作業用にコピー&リネームして適当に保存します。

    元ツールのBlender2Camera2では、プレイ録画した譜面の動画の音声と静止画分割したファイルを、templateフォルダにあるaudiovideoフォルダに入れて、Blender上でタイミングを測りながら、カメラパスを作成していく様になっています。本ツールでは、1カットのカメラパスのみ作成して、タイミングの調整などはScriptmapperを使うため、このあたりの作業は飛ばしています。 template.blendとカメラスクリプト出力用のb2sm_export.pyのみあれば作業可能です。 もちろん、最初から最後までBlender上で作ることも可能で、その場合はBlender2Camera2のマニュアル通りに作成してください。Blender2ScriptMapperはBlender2Camera2の出力フォーマットをCameraPlus用に変更しただけなので、それ以外はBlender2Camera2と同様に使えます。

  2. リネームしたtemplate.blendをBlenderで開きます。※.blendファイルをダブルクリック

    ここから先は、Blender2Camera2のUsing the Template Fileの手順と同じです。

  3. オブジェクトモードModelingタブにします。右側のシーンコレクションPathsグループのPath1は不要なので表示を消します。

image

  1. 画面の表示を見やすい様に上から表示(表示ツリーのZ軸をクリック)して、シーンコレクションPathsグループを選択した状態で、メニューの追加からパスを追加します。

image

  1. 追加されたNURBSパスを選択した状態で、'G' → 'Y' キーでマウスで前方に移動して、'R' → '90' → Enterで90度回転します。

image

  1. 横方向からの視点にするため、表示ツリーの'X'をクリックします。'G' → 'Z' で目線より上に上げて、'G' → 'Y' で少し後方(左)に移動、'R'で少し上方から目線まで斜めにします。

image

  1. パスの編集モード (NURBSパスを選択した状態で、'TAB'キー)にします。

image

  1. 端の編集点を選択して'E'キーを押すと編集点が追加できます。追加した編集点をCtrlを押しながら移動するとグリッドに乗って調整しやすいです。

image

  1. 末端を選択して'E'で追加でどんどんパスを伸ばしていきます。黒い細い線が実際のカメラパスになります。

image

  1. 編集点を選択して'G'キーで移動してパスの形状を調整します。

image

  1. 横からも見直してパスの編集点を調整します。

image

  1. Modelingタブでオブジェクトモードに戻して、Renderb2c2_mainカメラを選択して、下のオプションリストのコンストレイントFollow Path1ターゲットNURBSパスに変更します。

image

  1. オフセット-100~0の範囲で、どこを始点にするか決めます。オフセット項目をマウスの左ドラッグで移動します。

image

  1. カメラビューボタンで切り替えると、どの様に映るかわかります。

image

  1. カメラパスからTargetに向かって、カメラの角度が自動調整されます。Targetを選択して'G'キーで移動してアバターの顔の前あたりに調整します。

image image

  1. FOVの変更はデータのレンズのレンズ単位を視野角に変更すると、視野角で設定できます。

image

  1. カメラを始点位置にオフセットしたら、Layoutタブに移動して、下にもともとある不要なキーフレームを選択して、右クリックから削除します。

image image

  1. 開始フレームを0に移動して、オフセットの右にあるアニメーションをチェックすると、現在のフレームにキーフレームが追加されます。

image

  1. 終了フレームに値を変更します。終了フレームは、5秒間のパスなら60FPS☓5秒=300以上にします。実際にはScriptMapperで分割時間が自動調整されるので、多い分には問題ありません。短すぎると、長い時間で動かす時に動きがぎこちなくなります。終了フレームに変更したら、終了のオフセット位置に変更すると、終了のキーフレームが追加されます。

image

  1. 再生ボタンでパスの動きを確認します。

image

  1. Animationタブにして、b2c2_mainカメラを選択すると、オフセットの変化グラフが表示されます。表示はマウスのスクロールで大きくなるので、見やすく拡大します。バーを回転移動させると、イージングをかけることができます。

image

  1. Scriptingタブを開いて、開くからb2sm_export.pyを選択して開きます。Scriptingタブが見つからない場合は、タブの上をマウスの中ボタン(スクロールクリック)して左右に移動します。

image

  1. 再生ボタンを押してスクリプトを実行します。出力するカメラスクリプトの保存先、ファイル名を決めてエクスポートします。エクスポートされるファイル名は、設定したファイル名+カメラ名(デフォルトならb2c2_main)になります。複数のb2c2_で始まる名前のカメラがBlender上にある場合、それぞれ別のスクリプトで出力されます。※Fix camera FOV for Blender rendersのオプションはScriptMapperで使う場合はOFFで構いません。

image

  1. 出力したスクリプトをScriptMapperで使うには、scriptコマンドが追加されたScript Mapper Version 1.09以降を使いますので、対応していない場合はアップデートしてください。
  2. 譜面フォルダにscriptフォルダを作成して、その中にエクスポートしたスクリプトを置きます。

image

  1. ScriptMapperのブックマークにscript,エクスポートしたファイル名(.jsonなし)のコマンドで設定します。例: test_b2c2_main.jsonならscript,test_b2c2_main

image

  1. 作成したカメラパスで動作することを確認します。移動時間はScriptMapperで設定した間隔に自動調整されます。

image

カメラパスの作り方の参考

Blender2Camera2のAdvanced Techniquesに高度な制御方法など解説がありますので、参考にしてください。

その他にもBlenderのカメラパスの作り方のサイトはいっぱいあるので参考にしてください。リアルなカメラ手ブレのプラグインCamera Shakifyなどもあります。

About

Blender2Camera2をCameraPlusフォーマットに変更したもの。主にScriptMapperでの使用を想定。

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Languages

  • Python 100.0%