【Esri CityEngine 2012.1】30 日間無料体験版を使ってみよう! ~ CGA スクリプト編 ~

前回のブログでは、Esri CityEngine 2012.1 の Advanced の機能が試せる 30 日間の無料体験版を使って、CityEngine の操作方法についてご紹介しました。

CityEngine では、プロシージャルという技術を使用して、都市をモデリングします。
プロシージャル モデリングを行うには CGA スクリプトというファイルにルールを定義する必要があります。

ルールとは、モデルをどのように構築するかを設定した設計図です。そして、そのルールを書きこむのが、CGA スクリプト(ルール ファイル)という平面図形を起点として 3D モデル生成、テクスチャを適用するまでの一連の処理(コマンド)を記述したスクリプトになります。

Pic_01_2
今回は、CGA スクリプトを作成して、実際にルールをどのように設定していくかをご紹介します。


【下準備:新規プロジェクトの作成】
1. [スタート] → [すべてのプログラム] → 指定したフォルダ内(デフォルトでは [Esri] フォルダ)→ [Esri CityEngine 2012] をクリックし、CityEngine を起動します。

CityEngine を起動すると、自動的に Welcome Wizard ダイアログが表示されます。ガイドに従って、サンプル都市を作成します。作成方法はブログ記事「Esri CityEngine 2012.1 30 日間無料体験版を使ってみよう! ~操作編~」をご覧ください。
前回のブログで [SampleCity1] プロジェクトを作成している場合は、そのまま使用します。

Pic_02
<前回のブログで作成した SampleCity1>

2. [Scene] ウィンドウ → [Streetnetwork] → [Blocks] を右クリックします。[Select] → [Select Objects in Same Layer] をクリックします。すべての区画が選択されます。

Pic_03

3. [Viewport] ウィンドウ上で右クリック → [Delete Models] を選択して、すべてのモデルを消去します。

Pic_04

後程この削除した区画上に、これから作成する新規ルールを適用します。

【CGA スクリプトを書こう!】
1. 新規ルール ファイルを作成します。[File] メニュー → [New] を選択 → [Select a wizard] ダイアログで、[CityEngine] フォルダ → [CGA Rule File] を選択して、[Next] をクリックします。

Pic_05

2. [CGA Rule File] で、フォルダの格納先を選択し、[File name] に [House_rule] と名前を付けて、[Finish] をクリックします。

Pic_06

3. [Navigator] ウィンドウ → プロジェクト → [rules] フォルダ → [House_rule.cga] をダブルクリックします。

Pic_07

4. 画面の左下のウィンドウに [House_rule.cga] ルール ウィンドウが開きます。[rule] ウィンドウ内の右上の [maximize] ボタンをクリックして、ウィンドウを最大表示にします。

Pic_08

5. [Visual] ボタンをクリックすると、グラフィックス形式でスクリプトを作成できます。
[textual] ボタンをクリックすると、テキスト形式でスクリプトを作成できます。今回は、テキスト形式でスクリプトを作成します。

Pic_09

6. CGA スクリプトを記述するにはコマンドを使用します。
[Help] メニュー → [Contents] タブから [CityEngine Help] → [CGA Shape Grammar Reference] → [Shape Operation] の順に [+] ボタンをクリックし、展開します。すると、CityEngine で使用できるさまざまなコマンド方法が表示されます。その中から、今回は [extrude](立ち上げ)、[comp](シェープの構成設定)、[roofGable](切妻型の屋根)、[color](色の変更)オペレーションを使用して、一軒家のルールを作成していきます。

7. 各コマンドをクリックし、コマンド方法を確認します。

Pic_10

次に、[rule] ウィンドウにある [House_rule.cga] の中で、以下のように記述します。

Pic_11_2

8. ルールを定義したら、[File] メニュー → [Save] をクリックして、ルール ファイルを保存します。

9. [Viewport] ウィンドウで、[Selection](選択)ツールを使用して区画をいくつか選択します。

10. [Inspector] ウィンドウで、[Shapes] タブ → [Rule file] で、[Assign] ボタンをクリックし、保存し
たルール ファイルを参照します。このルール ファイルがモデル生成時に使用されます。

11. [Start rule] で、[Footprint] を選択します。スタート ルールとは、ルール ファイルの中でも実行される最初のルールを定義しています。今回はフットプリントから作成していくので、フットプリント ルールを選択します。

12. [Generate] ボタンをクリックすると、ルール ファイルで定義した家モデルが生成されます。また、区
画上に CGA ルール ファイルをドラッグ & ドロップすることでもモデルを生成することができます。

Pic_12

13. [Update Seed and Generate Models](モデル更新)ボタンを何度かクリックして、Random 関数で定義しておいた高さや色がランダムに変化するのを確認してください。

14. 最後に、モデルを 1 つ選択した状態で [Inspector] ウィンドウを開き、CGA スクリプトで設定した [Height]、[roofcolor]、[wallcolor] の変数(属性)パラメータをスライダバーやカラーパレットで値や色を変更してみましょう。

Pic_13_2

いかがでしたか?これらのコマンドを組み合わせて使用することで、より複雑なモデルを構築していくことができます。初めは取り掛かり難いですが、是非この無料体験版を利用して、さまざまなコマンドを使ってオリジナルのモデルを作成してみてください。

次回のブログでは、テクスチャを張り付ける方法をご紹介します。

正規版では、以下の Esri 製品サポートページから、インストールガイド(日本語)や日本語チュートリアル ガイドや、FAQ、Q&A サービスがご利用いただけます。
※注意:サポート サイトをご利用いただくには、ログインが必要です。

■関連リンク
Esri CityEngine 始めました
Esri CityEngine 2012.1 リリース!