戻る
連続レンダリングスクリプト
スクリプト名:

SerialRender for R6 ver3

整理番号:script_004
file名:

SerialRender.vbs

ダウンロード SerialRender.lzh (ANSI版)
概略:

レンダリング設定を変えながら登録した設定にしたがって連続的にレンダリングすることができます。
単にファイルを指定するのではなく設定ファイルを登録することで同じファイルでも別のカメラ設定、別の無限遠光源設定、別のレンダリング設定でレンダリングができます。

住宅のパースを作る際に同じモデルで別の角度から光源や画像サイズを変えながらレンダリングする必要性があったことから製作しました。
他のプラグインやアニメーションレンダリングでも連続レンダリングはできるのですが、別ファイルのモデルもまとめてレンダリングしたかったので自分のニーズに合わせて製作したものです。(要するに寝ている時間を活用したかったのです。)

似たような優れたスクリプトやプラグインが幾つもありますのでUPする予定は無かったのですが、TipsコーナーでFSO(FileSystemObject)を取り上げた際に、最も多くファイルの操作が取り入れられているのがこのスクリプトだったので参考になると思いUPすることにしました。
dictionaryオブジェクトや正規表現オブジェクトも(無理やり)使っているので参考になると思います。

Topへ
----------ご使用の前に(重要)----------
最初に このスクリプトはFileを扱うので、いくつかのパスを正しく設定しないと正常に動作しません。ディフォルトの設定でも必要なフォルダが作られていないとメッセージが出て中止されます。勝手にフォルダを作る仕様にはなっていません。
ですから以下の指示に従って正しいパスをあなたの環境に合わせて設定してからご使用ください
使用方法を読めば判ると思いますがレンダリング設定フォルダ以外はスクリプトでデータを登録する都度変更できます。ただデータを入力する時のダイアログにここで設定したパスが最初に現れるしくみになっていので、ここで決めたフォルダに各ファイルを保存することで入力の手間を減らすことができます。
最後の「注意事項」は必ずお読みください。

フォルダ作成

最初に以下のフォルダーを作成します。作成する場所は貴方が1番使いやすい場所でかまいません。
カメラ、無限遠光源、形状については、もし既存の決まった場所をしていする場合はフォルダを作成する必要はありません。(後でスクリプトのパスを書き換えます。)
レンダリングイメージフォルダについては別につくることをお勧めします。(一時置場と考えていただいた方がいいと思います。)

レンダリング設定フォルダ
・・・・このフォルダーにはレンダリングする形状ファイルパス、画像の保管場所、カメラ設定、無限光源設定、レンダリングの設定値などが入っている「レンダリング設定ファイル」が保存されます。
このファイル単位でレンダリングが行われるのでこのスクリプトの要となるフォルダです。
(初期設定では"C:\Shade\VBSデータ\レンダリング設定"の位置になりますので、初期設定でご使用になる場合はここにフォルダを作ってください。)

カメラ設定フォルダ
・・・・このフォルダーにはスクリプトから呼び出すカメラ設定ファイル(拡張子shdcmのファイル)が入ります。
これを利用することにより自由にカメラ設定を変更してレンダリングできます。
Shadeのカメラ保存を使ってここに登録しておけばスクリプトでここから呼び出すようになります。
(初期設定では"C:\Shade\VBSデータ\カメラ設定"の位置になります。)

無限遠光源設定フォルダ
・・・・このフォルダーにはスクリプトから呼び出す無限遠光源設定ファイル(拡張子shddltのファイル)が入ります。
これを利用することにより自由に無限遠光源設定を変更して連続レンダリングができます。
Shadeの光源保存を使ってここに登録しておけばスクリプトでここから呼び出すようになります。
(初期設定では"C:\Shade\VBSデータ\無限遠光源設定”の位置になります。)

レンダリングイメージフォルダ
・・・・このフォルダーにはスクリプトでレンダリングされた画像ファイルが保存されることになります。(初期設定では"C:\Shade\レンダリングイメージ"の位置になります。

形状ファイルフォルダ
・・・・このフォルダーにはレンダリングする形状ファイルが入ります。
普通は皆さん形状ファイルをどこに保管するか決めていると思うので後のパス設定でフォルダを指定すればいいと思います。(初期設定では"C:\Shade\形状ファイル"の位置になります。)


Topへ
初期設定でのフォルダの位置

初期設定では右図のようにc:直下に「Shade」というフォルダを、その中に3つのフォルダを「VBSデータ」「レンダリングイメージ」「形状ファイル」が配置され、さらに「VBSデータ」フォルダの中に「カメラ設定」「レンダリング設定」「無限遠光源設定」というフォルダが収まるようなパス設定になっています。

初期設定で設定する場合は右図のようにフォルダを作ってください。但し英数字は半角、カタカナは全角になっていますので注意してください。


スクリプトの
パス書換え
スクリプトのパス設定は最初以下のようになっています。(スクリプトの先頭部分)
option explicit

dim strMSG_DISP,strMSG_NEW,strMSG_DEL,strMSG_DELALL,strMSG_CHG,strMSG_EXE

Const INI_RENDER_SET_PATH="C:\Shade\VBSデータ\レンダリング設定\"

Const INI_CAMERA_SET_FULLPATH="C:\Shade\VBSデータ\カメラ設定\000000.shdcmr"

Const INI_LIGHT_SET_FULLPATH="C:\Shade\VBSデータ\無限遠光源設定\000000.shddlt"

Const INI_TEMP_FULLPATH="C:\Shade\temp.shd"

Const INI_IMG_OUT_PATH="C:\Shade\レンダリングイメージ\"

Const INI_SCENE_PATH="C:\Shade\形状ファイル\"

この部分を先ほど作成したフォルダのパスに置き換えます。メモ帳で開いて書き換えてください。
(初期設定の位置にフォルダを作成した場合は変更の必要はありません)

INI_RENDER_SET_PATHには先ほど作成したレンダリング設定フォルダのパス
INI_CAMERA_SET_FULLPATHには作成したカメラ設定フォルダのパスにデフォルトのカメラ設定ファイルのフルパス
INI_LIGHT_SET_FULLPATHには作成した無限遠光源設定フォルダのパスにデフォルトのカメラ設定ファイルのフルパス
INI_TEMP_FULLPATHには一時的に作成されるテンポラリーファイルを置くさしさわりの無いフォルダのフルパス(処理上必要なだけなのでどこでもかまいません。ファイル名(temp.shd)はこのままにしておいてください)
INI_IMG_OUT_PATHには作成したレンダリングイメージフォルダのパス
INI_SCENE_PATHには作成した形状ファイルフォルダのパス

INI_RENDER_SET_PATH と INI_TEMP_FULLPATH 以外は入力支援のために設定します。
プラグインのようにファイル入力ダイアログででファイルを選択できればいいのですがスクリプトではパスを長々と記述しなくてはならないので、登録の際入力ダイアログにここで設定したパスを最初に表示しておくことにより入力の手間を少しでも省く為に設定するものです。
カメラ、無限遠光源のパスがフルパスでファイル名まで記述するのは000000の部分を書き換えるだけで済むようにする為です。

注)フォルダのパスの最後に「\」を付けるのを忘れないで下さい。ファイルのパスの場合はもちろんいりません。
実際のフォルダの位置とこの設定が違っていると登録を受け付けてもらえないことになるので慎重に書き換えてください。

以上で準備は完了です。




-----使用方法----- Topへ

1.メニュー

1-1. スタート画面(メニュー)
スクリプトを実行すると左のダイアログボックス表示されます。
これはこのスクリプトのメニューになります。
ここでキャンセルを押すとスクリプトを中断できます。




ドロップダウンリストを押してメニューを表示させたのが左の図です。
メニューの内容は以下の通りです。
表示・・・登録されている設定ファイルの一覧を表示します。
新規登録・・・新規にレンダリング設定を登録します。
変更・・・登録されている設定ファイルの内容を変更します。
削除・・・登録されている設定ファイルを削除します。
一括削除・・・全ての設定ファイルを一度に削除します。
レンダリング実行・・・連続レンダリングを実行します。

このメニューの一つを選択し「OK」を押します。
ここでキャンセルを押すとスクリプトを中断します。

2.表示

2-1. 表示画面 Topへ
メニューで「表示」を選択して「OK」を押すと、現在登録されているレンダリング設定ファイルの一覧が表示されます。
確認した後「OK」を押すとメニューに戻ります。

3.新規登録

3-1 新規登録
メニューで「新規登録」を選択して「OK」を押すと、新規登録するレンダリング設定の設定名入力ダイアログが現れます。
上部にすでに登録されている設定名(設定ファイル名)が一覧表示されますので、それ以外の名前を付けてください。
この名前はそのままファイル名になりますのでファイル名に使えない文字で入力すると警告が出ます。
設定名を入力したら「OK」を押します。
キャンセルを押すとメニューに戻ります。


3-2

レンダリング設定値の入力ダイアログ
レンダリング設定入力用のダイアログが現れますので各設定値を入力します。
各種パスについては「ご使用の前に」で設定したパスがデフォルト値として表示されますので必要な部分を変更します。
設定する項目は以下の通りです。
形状ファイルパス・・・レンダリングする形状があるフォルダのパス。
形状ファイル名・・・・Shadeの形状ファイルの名前
画像フォルダパス・・・レンダリング画像を保存するフォルダのパス。
画像ファイル形式・・保存するレンダリング画像のfile形式。
カメラ設定ファイルを使用する・・・チェックした場合、次の項目のパスにあるカメラ設定ファイルの設定値が適用される。チェックしなかった場合、次の項目は無視されShadeファイルの設定のままとなる。
カメラ設定パス・・・適用したいカメラ設定ファイルのパス。上の「カメラ設定ファイルを使用する」をチェックした場合のみ有効
無限遠光源設定ファイルを使用する・・・チェックした場合、次の項目のパスにある無限遠光源設定が適用される。チェックしなかった場合、次の項目は無視されShadeファイルの設定のままとなる。
無限遠光源設定パス・・・適用したい無限遠光源設定ファイルのパス。上の「無限遠光源設定ファイルを使用する」をチェックした場合のみ有効。
レンダリング設定変更をする・・・チェックした場合、Shadeファイルの設定ではなく、この項目以下の設定を適用する。ここに無い設定値はShadeファイルの値が継承される。チェックしなかった場合、全てShadeファイルの値がそのまま適用される。
レンダリング手法〜クウォリティー・・・Shadeのレンダリング設定と意味は同じ。

入力したら「OK」を押して下さい。

※レンダリングの全ての項目が設定できるわけではありません。
私が仕事で必要な項目の抜粋なので....。

3-3 登録確認画面 Topへ

実際に無いパスが設定された場合は警告が出てこのダイアログに戻ってきます。
問題が無ければもう一度左のような確認画面が出ますので「OK」を押して下さい。キャンセルを押すと登録はされずにメニューに戻ります。

参考 「ご使用の前に」で設定したパスが間違っていると、あるはずのファイルがないと警告され頭を悩ませることがあります。
そんな時は冷静に全角半角が間違っていないかなどチェックしてみてください。

4.変更

4-1 変更(レンダリング設定の選択画面)
メニューで変更を選択して「OK」を押すと、変更するレンダリング設定を選択するダイアログが出てきます。
ドロップダウンリストで変更したいレンダリング設定の名前を選択して「OK」を押して下さい。

すると新規登録の時と同じダイアログが表示されます。
違うのは選択した設定ファイルのデータが表示されていることです。
変更したいところを変更して「OK」を押します。
内容も操作も新規登録の時と同じです。

パスなどに問題が無ければ確認画面が出てきますので「OK」を押して変更を保存します。

Topへ

5.削除

5-1 削除項目選択画面
メニューで「削除」を選択すると左のように削除するレンダリング設定を選択する画面が出てきますので削除したいレンダリング設定を選択して「OK」を押します。

5-2 削除確認画面
削除しても良いか確認の画面が出ますので、表示されたレンダリング設定のファイル名を確認して削除してもよければ「OK」を押して下さい。
キャンセルを押すと削除されずにメニューに戻ります。
削除したらそのデータは復帰できません。

6.一括削除

6-1 一括削除確認画面
メニューで「一括削除」を選択すると左のように登録されている設定ファイルの一覧を表示して、一括削除しても良いか確認の画面が出てきます。 削除してもよければ「OK」を押して下さい。
キャンセルを押すと一括削除されずにメニューに戻ります。

7.レンダリング実行

7-1 レンダリング実行選択画面
メニューで「レンダリング実行」を選択すると左のような画面が現れます。
ここには現在レンダリング設定フォルダに保存されているレンダリング設定ファイルの一覧が出てきますのでレンダリングしたい設定にチェックを入れて、良ければ「OK」を押してください。
レンダリング設定フォルダに保存されていてもここでチェックされていないとレンダリングされませんので注意してください。

7-2 Shadeファイル保存確認画面
次に現れるのは左の画面です。
スクリプトを起動した時に開いているファイルを保存するかどうかの確認です。
スクリプトはレンダリング設定ファイルに従い、新しいファイルを自動的に開きますのでこのチェックをしないと現在開いているShadeを保存することなく閉じてしまいます。
チェックした場合、「無題」つまり一度も保存していない時はShadeで保存する時と同じようにファイル保存ウィンドウが現れますので通常どおり名前を付けて保存してください。すでに保存したことのあるファイルは確認なしに上書きされます。
キャンセルを押すとレンダリングせずにメニューに戻ります。
※尚スクリプトの実行で変更される各種設定(レンダリング、カメラ、光源、画像など)は、開くShadeファイルには影響を与えません(保存されません)

Topへ
7-4 レンダリング実行確認画面
レンダリングされる順番で設定ファイルが表示されますので確認の上「OK」を押して下さい。
キャンセルを押すとレンダリングせずにメニューへ戻ります。

※尚、一度レンダリングをはじめると終わるまでとまりませんので注意してください。
どうしても停止させたい時は [ctrl]+[.]で強制的に停止させることになります。

7-5 メッセージウィンドウのレンダリング履歴
レンダリングの履歴はメッセージボックスに表示されますので確認してください。
通常はありませんが途中で止まった場合はパスの位置にファイルが無いというケースがほとんどです。
設定ファイルを入力後に 形状 光源、カメラのファイルが削除・移動されていないか等を確認してください。

レンダリングが終了したときは最後にレンダリングしたShadeファイルが開いた状態で停止しています。このファイルは各種レンダリング設定が適用され、レンダリングされた画像がイメージファイルに残っている状態です。

保存するかどうかに注意してください。

Topへ
----------一般的な作業の流れ----------
参考までに、このスクリプトを使った一般的な作業の流れを紹介します。(カメラや光源を変更する場合の例)
1.レンダリングするShadeファイルを開く

2.カメラ設定をする。

3.カメラの設定をカメラ設定フォルダに保存する。(ファイル名を忘れずに)

4.無限遠光源を設定する。

5.無限遠光源を無限遠光源設定フォルダに保存する

6.低画質でテストレンダリングし確認

7.別のカメラで6〜9を必要なだけ繰り返す。

8.別のShadeファイルを開き1〜7を必要なだけ繰返す。

9.スクリプトを起動する

10.[登録」でレンダリング設定を必要な数作成する
(1〜8で設定したカメラ、無限遠光源の設定ファイルを指定する。)

11.表示・変更等で内容を確認

12.「レンダリング実行]でレンダリングを開始

13.レンダリングイメージフォルダーの画像を確認

14.必要ならば画像を所定の位置に移動してファイル名を変更

※カメラ、光源を変更しない時(Shadeファイルのカメラ、光源をそのまま利用)は1〜8の操作は必要ありません。

Topへ
----------注意事項----------
ここで作成されるレンダリング設定ファイルはチェック用にmysetと言う拡張子を勝手につけていますが、中身は単純なテキストファイルですので一度はメモ帳などで眺めてみてください。(mysetという拡張子がすでに使われていたら使用しないでください、どうしても使用したいときはスクリプトの拡張子の部分を置換などで全て書き換えてください)

このスクリプトではファイルを操作しますのでパスの設定等につきましては十分気をつけてください。

レンダリング実行でシーンファイルの保存確認がありますが、苦労して作った形状が消えるといったトラブルを防ぐ為にもできるだけ保存するようにして下さい。(一応デフォルトではチェックされるようにしています。)

レンダリングが終了した時点で開いているのはスクリプトを実行したShadeファイルではありません。
最後にレンダリングされたファイルが開いていていて設定値も変更されたままですのでその後の処理にはきおつけてください。

このスクリプトで不具合が生じるのはファイル名やパスの指定が違う場合がほとんどです。
その原因は、最初のフォルダ作成ミス、パスの書き換えミス、レンダリング設定登録後に形状、カメラ、無限遠光源等のファイルを削除・移動した、フォルダパスの最後に[\]を付け忘れた、ファイルパスの最後に[\]をつけてしまった、半角全角を間違えた、といったところが多いのでそのあたりをチェックしてください。

画像ファイルはレンダリングイメージフォルダに保存されますが、ファイル名は設定ファイルの名称に画像の拡張子がついた形になります。
例---設定ファイル名がtest01-01.mysetならば画像ファイル(bmp指定の場合)はtest01-01.bmp

画像フォルダに同じ名前のファイルがある場合は確認なしに上書きされます。同じレンダリング設定名でレンダリングする時、以前にその名でレンダリングした画像ファイルを失いたくなければ別のフォルダに移すか、名前を変更してください。

尚、このスクリプトによって生じる不具合、損害につきましては一切その責任は負いかねますのでご了承ください。