2012年5月13日 (日)

CS6 Creative Cloudを契約する。

アップグレードポリシーで月5000円のが一年間3000円になったので。 プロダク...

» 続きを読む

| | コメント (0) | トラックバック (0)

2011年9月 1日 (木)

Windows7が唐突に起動しなくなったが勘で直す。

またすぐ忘れそうなトラブルなので記録記録(´・ω・`) 朝仕事に出がけにメインマ...

» 続きを読む

| | コメント (0) | トラックバック (0)

2011年7月20日 (水)

CityEngine サンプルCGAを解析してみる 番外編 textured_city編

City Wizardで作成した際に前回の検証では形状を見たい為にテクスチャの無いサンプルを参照してたのですが今回はテクスチャが適用されているサンプルを覗いてみようと思います。

余談ですが前回の検証の際に「U型やL型の形状をモデリングするのに用意されているオペレーションを利用していないのは何故だ?」という疑問がありましたが、開発元のページを確認した所、新機能としてそれらの形状オペレーションが追加されたとの記載がありました。推測どおりこれらのサンプルが作成された際には実装されていなかったみたいです。

Ws000080

textured_city_day.cgaで生成された都市。形状は前回のschematic_cityと変わり無い。
問題はテクスチャの貼り方。

» 続きを読む

| | コメント (0) | トラックバック (0)

2011年7月15日 (金)

CityEngine サンプルCGAを解析してみる その7 高層エリア後編

引き続き高層エリアのルールを見ていきます。

まずSetbackTowerルール。

Ws000075

ぎゃぁあ。お、おちつけ。俺!
えーと、('A`)、
・幅、高さどちらかが20m以下の場合LShapeルールへ。その際、以前設定してた高さ「highriseBuildingHeight」の30%の高さを引数として渡す。
・幅が30以下の場合、奥行きを80%に縮めて中央に寄せ、extrudeでhighriseBuildingHeight*高さ係数の0.7から0.95を掛けて押しだし、RecursiveSetbacksルールへ。さらに横に縮めた形状も作成。こちらは高さを弄くらずにそのまま押し出し。同じく次のルールへ。
たぶん高い部分と低い部分がクロスした形状になると予想。

残りのcaseも同様にクロス形状だと思われる。形状の選別をやってるのかねぇ。

» 続きを読む

| | コメント (0) | トラックバック (0)

CityEngine サンプルCGAを解析してみる その6 高層エリア中編


引き続き高層エリアの処理を見ていきます。

前回までで高層エリアの整地と選定が終わって引数としてランダムな高さ?が与えられてHighriseBuildingへ処理が受け渡されています。
その前に関数highriseBuildingHeightが定義されてる。

Ws000060

» 続きを読む

| | コメント (0) | トラックバック (0)

CityEngine サンプルCGAを解析してみる その5 高層エリア前編

最後の高層エリアのセクションを見ていきます。

Ws000051

まず最初、Lotから流れてきたHighriseBlockの処理で引数(0)。カウンターの初期化ですな。

それをHighriseBlock(index)で処理。
その処理だが例によって箇条書きで。
・まず引数として渡されたindexがgeometry.nEdgesを超えたらNIL。nEdgesの意味がわからん。ヘルプ見てもワカラン('A`;)
・alignScopeToGeometry(yUp,index+1)
 奥行きが50よりも大きい場合奥行き方向に分割。alignScopeToGeometryで地面に接地。カウント+1?ヘルプを見ると2個目の引数はfaceindexなので接地先を自分のインデックスより一つ多い奴を参照してる?そんなん出来るの?(´・ω・`) まだ次のインデックス持ってる奴生成されてないでしょ? うーむ、わからん。とりあえず接地した奴をカウント+1してループ。
・ランダムで40から80メータの長さで分割してHighriseRowへ流す。
・上記条件に当てはまらなくなったエリアは接地させてからHighriseRowへ。

» 続きを読む

| | コメント (0) | トラックバック (0)

2011年7月13日 (水)

CityEngine サンプルCGAを解析してみる その4 商業エリア

商業エリアのセクションに入って行きます。

Ws000040

まず関数commercialBuildingWidthを定義。中身は横幅が7割の確率で15から25メーター、3割が25から80メーター(!)横なげぇ!

続いて商業エリアのスタートルール。CommercialBlockはCommercialRowに(0)を与えてそのまま流してる。カウントの初期化?

続いて、CommercialRow(count)の処理
scope.sxで幅が30メーターより広い場合前述のcommercialBuildingWidth関数で算出した値でX方向に分割。分割されたShapeはそのままcommercialLotに流し、残ったShapeはカウントに+1して再帰。30m以下のサイズになるまでループ。

Ws000038最初の状態。

Ws000039ここまでのGenarate画面。

30m以上の幅のShapeが分割されますた(・∀・)

» 続きを読む

| | コメント (0) | トラックバック (0)

CityEngine サンプルCGAを解析してみる その3 集合住宅エリア

住宅エリアが完了したので集合住宅(Apartments)の生成ルールにとっかかります。

Ws000030

ここで完成版のノードエディタを確認してみる。共通のスタートルール「Lot」からbuildingTypeでエリア分けされたルールがあって、一番上の処理の流れが前回の住宅エリア、その下にその他のエリアの流れが見えます。いずれのエリアも流れは同じ様で、エリアに応じた形状の下地の作成を行い、最終的にMassに流れていって形状の起ち上げ、屋根形状の生成の様です。高層エリアの最後の方はなんじゃこりゃ(´・ω・`)

» 続きを読む

| | コメント (0) | トラックバック (0)

CityEngine サンプルCGAを解析してみる その2 住宅エリア後編

引き続き。
やっとブロック内の区画をふるいにかけて建物をモデリングするところまでたどりつきました。たぶん。

ちなみに前回までのCGAルールで生成したのがこちら


Ws000021_2
*注意 1ブロックのスタートルールをResidentialBlockに変更してるので本来空き地になるはずの中央部分にも生成されてます。
環境指定マップのせいで場所によって商業エリアになってて住宅の生成しか記述してないCGAが表示されない事がある為無理矢理住宅エリアにしました。地上げです。地上げ。


なんだかズレて見えてるのは地形自体がHeightMapで斜めに生成されてる所に水平に描画されてる為で真上から見るとちゃんと区画内に重ならない様に生成されてる。


Ws000018

ResidentialShapeでsオペレーション(拡大縮小)して3種類の形状を作成。どれも横長である。その後センターに寄せてrand()で指定した乱数をパラメーターとして与えてResidentialShape(h)へ。処理名が同じで引数が違うって事はjavaでいうオーバーライドみたいな物なのかしら?

Ws000022

構造としては道路にて区切られたブロック --> 分割された区画 -->建物毎の敷地 -->実際の建物の形状((・∀・)ノ今ここ)

» 続きを読む

| | コメント (0) | トラックバック (0)

2011年7月12日 (火)

CityEngine サンプルCGAを解析してみる その1 住宅エリア前編

ビデオチュートリアルやヘルプのおかげで使用方法はわりと簡単に覚えられるCityEngineなんですがサンプルのCGAルールファイルを見ながら組み方をイチから覚えようとすると途端に教材が見当たらないという壁にぶち当たっております。

そんな中、開発、販売している会社がカリフォルニアの地図サービス会社(?)に買収されたよーってメールが来たりして不安になったりして・・・(´・ω・`)価格下がってくといいね。個人的にはGoogleに買収されてSketchUPみたいにフリー版が出て普及→利用者増とか期待してたんだが。あとVueとの連携今後どうなるのだろう・・・

さて、愚痴ってても仕方ないので今回は起動時にウィザードで選択できるサンプルCityのCGAを最初からなぞって行きながらその都度ジェネレートして一体どういう組上げ方をしていけば町とか作れるのかを探っていこうと思うのです。めんどくさいですね。(´・ω・`)
なんでこんなに情報無いんでしょうねぇ・・・orz
日本語代理店で買ったらその辺教えてくれるのかしら・・・

» 続きを読む

| | コメント (0) | トラックバック (0)

«CityEngine チュートリアルについて