RAMDiskをCGソフトのテンポラリとして使う

Category : PC
32bit版のWindowsにはメモリをたくさん積んでも、3GB程度しか認識しないという制限があります。このブランドメモリが4GBで5000円以内で買える時代、PCを自作している方にはすでに4GBメモリを積んでいるということも多いと思います。
通常は余った1GBほどの領域は使えないのですが、その部分をRAMDiskとして使えるソフトが今年出てきました。RAMDiskは超速いハードディスクととらえてもらうと、分かりやすいかと思います。このRAMDiskをDazStudioやPoserのテンポラリ(作業フォルダ)として使ってしまおうというのが、今回のTipsです。

今回のエントリーはOSに依存しますので、32bit版のWindowsXPに限定して書かせていただきます。また、システムに深く依存する部分を調整しますので、やる場合は自己責任でよろしくお願いします。

■効果
RAMDisk上にソフトのテンポラリフォルダを置くとどういう効果があるのか。
RAMDiskの特性としては、アクセス速度が速い・シャットダウンすると内容が消える というのがあります。この特性により、データの一時保存場所として最適なのです。ただ、CGソフトでは大きなサイズの画像を扱うことが多いので、十分な容量のRAMDiskが欲しいところです。

Poser(7J)でテンポラリをRAMDiskに置いた場合アンドゥバッファ・レンダリング時のテクスチャキャッシュ・レンダリングイメージがそこに置かれます。これによって操作がキビキビし、レンダリングの繰り返しも早くなるというわけです。ファイルを覗いてみると、HDRなOpenEXRファイルのようで、RGB各32ビットのカラー情報を持った画像ファイルになってますね。

Daz Studio(以下DS)の場合は、テクスチャキャッシュ・レンダリングイメージなどがテンポラリに置かれます。テクスチャは3Delightレンダラに最適化されたtdlファイルになっています。また、シャドウマップなどのレンダリング時に作成されるテクスチャもここに保存されますので、高速化の恩恵はそれなりにあると思われます。


■RAMDiskを導入する
実はビデオカードを購入したのと同時に、メモリも4GB追加して8GBに増やしました。Photoshopのテンポラリとして使うのが目的で購入したのですが、せっかくの5GBものフリーエリア、それだけではもったいない!と思い、他のソフトでも使えないかと調べてみました。

OS管理外のメモリ領域を使えるRAMDiskソフトはいくつかあるのですが、ネットで使用者のレポートが最も多く見つかると思われる、「Gavotte Ramdisk」を今回は使用しました。
ダウンロード先とインストール方法は検索するとすぐ見つかるので、そちらでお願いします。本題はインストールしてからです。

このエントリーを書くにあたって、Gavotte Ramdisk まとめWIKIを参考にさせてもらいました。

インストール後、GeekなNooblogさんのバッチファイルを使用してNTFSフォーマットと、「Posertemp」「DStemp」などのフォルダの作成、状態の保存を行いました。RAMDiskはR:ドライブとして設定しています。


■テンポラリを設定する
PhotoshopPoserの場合、環境設定でテンポラリフォルダを指定できるので設定は簡単です。
Poser(7J)の場合は、メインメニューから 編集 > 環境設定 でダイアログを開き、『その他』タブのテンポラリファイルをRAMDisk上のフォルダ「Posertemp」に設定してやります。
テンポラリ設定Poser

Photohopの場合は、メインメニューから 編集 > 環境設定 > プラグイン・仮想記憶ディスク のダイアログを開き、仮想記憶ディスクの1番上の欄をRAMDiskに、その他は一つずつずらしてやるとよいでしょう。
テンポラリ設定Photoshop


■ジャンクションを設定する
では、テンポラリフォルダの設定ができないDSではどうするのか。

※DAZ Studio 3ではPreferencesにテンポラリフォルダを指定する項目があります。

それにはジャンクションを使います。これは、作成元に直接変更を反映させることが出来るショートカットです。乱暴な言い方かもしれませんが。Vistaではシンボリックリンクとして標準で実装されているようです。
ジャンクションを設定することで、DSは標準のテンポラリフォルダに読み書きしているつもりでも、実際はRAMDiskに読み書きしているということが出来ます。

上記Wikiの「ゲームにRAMディスクを使用する(仮)」のページを参考に、linkdというコマンドでジャンクションを設定してやります(Gavotte Ramdisk標準のrdutilでも同じことが出来るというのをあとで知りました)。
まず、DSのテンポラリフォルダは標準の場所にインストールすると『C:\Program Files\DAZ\Studio\temp』となりますので、これを『_temp』あたりに名前を変更します。
次に、

linkd "C:\Program Files\DAZ\Studio\temp" R:\DStemp


とコマンドプロンプトで打ち込みます。設定したジャンクションはテキストファイルなどに控えておくといいでしょう。これでDSのテンポラリをRAMDisk上に設定できました。

一度設定してしまえば、ココまでの行程はPCを再起動しても有効ですので、次回からはRAMDiskを気にすることなく作業できます。


■DSでの効果
実はレンダリング時間はほとんど変わりません。
シャドウマップを多量に使うLight Dome Pro 2で有効ではないかと思ったのですが、skylightsを64に設定して1時間30分かかったレンダリングが1時間25分に減っただけです。こればっかりはCPUの性能が大部分を占めるのに間違いはないようです。
あとはレンダリングに入るまでの時間が少し早くなったと感じます。

Comment

非公開コメント

著書
カレンダー
08 | 2017/09 | 10
- - - - - 1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
検索フォーム
プロフィール

Kotozone

Author:Kotozone
製品の取扱説明書を読むのが大好きです

FC2ブックマーク
最新記事
カテゴリ
タグリスト

DSプラグイン V4 マテリアル DSシェーダ ライト DS基本 セール Genesis IBL アニメーション タブ解説 iray LuxRender ダイナミッククロス スクリプト Genesis2 ShaderMixer セットアップ Download レタッチ カスタマイズ トゥーン バージョンアップ SSS Photoshop ウェイトマップ NGM ファー ERC D-Form Miki2 IDL 大気 物理シミュレーション M4 カラーコレクション ボリューム Terrain Genesis3 パーティクル モーフセット V5 アナグリフ カメラ インスタンス RAMDisk ロボット Genesis8 3Dプリント GIMP SLG V8 ダイナミックヘア K4 Python Linux 日本語訳 モーションキャプチャ Hexagon 

最新コメント
リンク
月別アーカイブ
ご意見ご感想はこちらに

名前:
メール: 
件名:
本文: 

ブロとも申請フォーム

この人とブロともになる

最新トラックバック
FC2カウンター