Windows Subsystem for Linux in Terragen

Terragen 4.3.21現在、「VDB Export」の機能はLinux版のTerragenに限定されています。しかし、Windows 10の機能の一つ、"Windows Subsystem for Linux"を導入する事で、Windowsマシンから『Easy Cloud』のVDBをエクスポートする事が出来ます。

このガイドでは、"Windows Subsystem for Linux"の導入から、Linux版Terragenのインストール、「VDB Export」の実行までを解説します。

最後に、エクスポートしたVDBの雲を他3Dアプリケーションでインポートして確認するところまでを紹介します。

注:画像が見難い場合は、画像を別ウインドウで表示して下さい。縮小前の元サイズで表示します。

"Windows Subsystem for Linux"の導入

まず、 Windows Subsystem for Linux については、こちらを参照して下さい。新しくマシンを揃える事なく、既存のWindowsのOS上でLinuxを実行する事が出来ます。

スタートボタンから、または検索フィールドで「アプリと機能」と入力し、選択します。

パネルが開いたら、画面右側の「関連設定」にある"プログラムと機能"を選択します。

パネルが開いたら、「Windowsの機能の有効化または無効化」をクリックします。『Windowsの機能』のウインドウが開き、機能の一覧が表示されるので、"Windows Subsystem for Linux"のチェックボックスにチェックを入れます。

必要なファイルが自動でインストールされます。しばらく待つと、完了を知らせ、再起動を要求します。[今すぐ再起動]を選択して、マシンを再起動します。

再起動時にインストールした内容が再構築されます。さらにここから"Windows Subsystem for Linux"を機能させるための設定を行います。スタートボタンから「設定」を選択します。

パネルが開いたら、「更新とセキュリティ」を選択します(現在この設定は不要です)。

パネルが開いたら、左メニューから「開発者向け」を選択し、右側の"開発者モード"にチェックを入れます(現在この設定は不要です)。

スタートボタンから「Microsoft Store」を選択し、ウインドウが開いたら検索で"Ubuntu"と入力します。何種類かの類似アプリが表示されますが、無印の"Ubuntu"を選択し、[入手]ボタンを押してインストールします。(2018.12.29現在、Ubuntuバージョンは18.04.29)

『Ubuntu』を起動します。この時、右クリックでポップアップメニューから「その他」を選択し、"管理者として実行"を選択して起動します。

コマンドプロンプトのような黒地のウインドウが開きます。これがLinux画面です。初回の起動時はしばらく待っていると、"username(ユーザ名)"を聞いてきます。半角英数字で入力します。続いて"password(パスワード)"を聞いてきます。これは入力してもカーソルが動かず、入力した文字も表示されません。正確に入力し、確認のためにもう一度同じパスワードを入力します。設定が完了すると、"(ユーザ名)@(コンピュータ名): $"と括弧内が緑文字で表示されて入力待ちになります。

このままでも問題ありませんが、初期状態だとリポジトリのデータを取りに行くのが海外サーバーになっているため、下記のコードで日本サーバーに変更します。
"sudo"コマンドは権限者によるコマンドの実行を意味し、"sed"コマンドは2つの文字列の内容を置き換える働きを持ちます。

WindowsのOSと同じでLinuxも日々修正や改善が行われています。アップデートや、アップグレードを済ませておきましょう。
"apt"コマンドはパッケージ管理システムとして働きます。コマンドを入力するとサーバーからファイルをダウンロードし、自動でインストールを行ってくれます。

初期導入時はアップグレードにはしばらく時間が掛かります。途中で使用するディスク容量の追加を伺うメッセージが出ますので、"y"を入力して下さい。アップグレードが終了すると、コマンドの入力状態に戻ります。


"Linux版Terragen"の導入

事前に、"Terragen_4_Linux_43210.tar.gz (2019.12.25時点で最新版)"を用意して下さい。このガイドでは、入手したファイルは"S"ドライブの"work"フォルダに格納している前提で解説します。"()"で任意の場所を記述しますので、環境に合わせて変更して下さい。
  1. cp /mnt/(s)/(work)/Terragen_4_Linux_43210.tar.gz .
    格納された"Terragen_4_Linux_43210.tar.gz"のファイルを、Linuxの仮想ドライブのルートディレクトリにコピーします。
  2. tar xvzf Terragen_4_Linux_43210.tar.gz
    圧縮ファイル".tar.gz"を解凍します。場合によっては画像のように圧縮ファイルと認識してくれず、解凍せずに終了する事があります。これは".tar"、".gz"の二重に圧縮する事で起こる症状で、上手くいかない場合は下記のコマンドを入力します。エラーが出なかった場合は飛ばして下さい。解凍が始まるとファイルの展開がスクロールで表示されます。
    1. gunzip Terragen_4_Linux_43210.tar.gz
      二重に圧縮されたファイルを伸張し、".tar"の単純圧縮ファイルに変換します。
    2. tar xvf Terragen_4_Linux_43210.tar
      単純圧縮になった事で、パラメータから"z"がなくなり、".gz"の拡張子も外れます。
    3. ls
      解凍されたファイルを確認します。ホームディレクトリに「Terragen_4_Linux_43210」フォルダと、最初にコピーした"Terragen_4_Linux_43210.tar.gz"のファイルが存在します。さらにcd Terragen_4_Linux_43210で「Terragen_4_Linux_43210」フォルダに移動し、もう一度lsすると、Terragenの実行ファイルなどが格納されているのを確認する事が出来ます(フォルダ名は青文字で示されます)。
  3. mv Terragen_4_Linux_43210 (tg4321)
    「Terragen_4_Linux_43210」フォルダ名が長過ぎるので、「tg4321」とフォルダ名を変更します。
    1. cp /mnt/(s)/(work)/tg4key.lic ./(tg4321)
      Terragenの実行ファイルが格納された「tg4321」フォルダに、ライセンスキーファイルをコピーします。
  4. TerragenをLinux上で動かすために必要なライブラリ等があります。インストールする順番は任意ですが、下記の5つは必ずインストールして下さい。途中ユーザパスワードや、[y/n]を確認するコマンドが表示されます。正確なパスワード、"y"を入力して作業を継続して下さい。
    1. sudo apt-get install libgl1-mesa-dev
    2. sudo apt-get install libglu-dev
    3. sudo apt-get install freeglut3-dev
    4. sudo apt-get install libjpeg62
    5. "libpng12.so.0"のライブラリをインストールするには、いったんdebパッケージをダウンロードしてからインストールする必要があります(本来、Intel CPUの場合は、"libpng12-0_1.2.54-1ubuntu1_i386.deb"が用意されていますが、UbuntuはAMD CPUをエミュレーションして作動しているようで、「Windows Subsystem for Linux」では、i386.debをインストールする事が出来ません)。
      1. http://mirrors.kernel.org/ubuntu/pool/main/libp/libpng/libpng12-0_1.2.54-1ubuntu1_amd64.deb
      2. dpkg -i /mnt/(s)/(work)/libpng12-0_1.2.54-1ubuntu1_amd64.deb



『Easy Cloud』の作成

一旦Ubuntuは終了し、Windows上に戻ります。Terragenを起動し、お好みの『Easy Cloud』を作成します。出来上がったプロジェクトを保存します。ここでは、"vdb.tgd"と名付けて保存します。保存したプロジェクトファイルは、前工程の"Linux版Terragen"の導入と同じようにSドライブの「work」フォルダに格納した状態で解説します。
ここで注意すべき点は、VDB出力するためにクラウドレイヤーのノード名が必要になります。今回は、デフォルト名の"Easy cloud 01"のまま保存しています。

Ubuntuを起動し、LinuxのコマンドラインでTerragenを起動します。
./tg4321/terragen -p /mnt/(s)/(work)/vdb.tgd -exportvdb "(Easy cloud 01)" /mnt/(s)/(work)/cloud.vdb
()内は任意のドライブ名、フォルダ名、ノード名が入ります。実際のコマンドラインは以下のように入力しています。

Linux版Terragenが起動すると、処理が開始します。"cloud.vdb"ファイルのエクスポートが終了するとコマンド入力状態で待機します。画像は成功した時のログです。

"cloud.vdb"ファイルをVDB対応のソフトウエアでインポートして確認します。この解説では、『 e-on Vue 』のインポートオブジェクトでVDB形式を指定して読み込みました。