2011年8月1日月曜日

Tutorial : Mattpaint

How to Create an Amazing Futuristic Matte Painting in Photoshop

珍しいマットペイントのデータ付きのチュートリアル。

背景講座 : 彩玉

彩玉
かなり本格的な背景講座があります。
要チェックですぞ。

2011年7月28日木曜日

Softimage Tips : HeightMap で地形を作成

テクスチャを利用して、Softimage と、CityEngineで同じ地形のメッシュを作成します。
※下位VerのCEでは、地形のエクスポートが出来ないため
  必要になりそうです。



■PhotoshopなどでHeightMapを作成
・4000pix  x  2000pix 1Pix = 1mと見立てます


■Softimageで地形を作成する
Gridを作成、4000x2000 400x200に分割 10m間隔に



TextureMapを作成
・Property > TextureMap > xz 


 HeightMapを指定
・先ほど作ったTextureMapを選択
・プロパティにて、Photoshopで作った画像を選択

Pushオペレーターを適用
・Gridを選択
・Deform > Push


プラグを選択し、先ほどのテクスチャMapに接続




仕上げに高さを設定
Amplitude に 300を入力
テクスチャの色が0(黒)-1(白)になり、これにAmplitudeかけたものが高さとなります


CEへ、エクスポートをしたり、
SoftimageにCEの道路をインポートしたりしましたが、問題はないようです。

というか、テクスチャを利用した地形の作成って初めてしました(汗
ICE使う必要なかったですね。

8bit 256階調しかないので精度はさほど期待できませんが、
利用できそうですね。



CityEngine:Tutorial02 Street

チュートリアルの2の俺的まとめ

■MapLayer
画像ファイルを元に、地形の基礎を設定する

Obstacle
障害物用のMAP 黒が障害物 

HightMap
2枚使用。高さの設定、色の設定
・elevation Map = 高低さ 白:高い 黒:低い
・texture Map = Color

備考:
CEが一番下位のVerだと、地形のMapは書き出せない。
Softimage側で製作する必要があり。

あわせるには?
同じHightMapを利用し、地形を作成する。高さはCEと共通にしなければならない。
要検証

■Street
ベースの形
・major streets = 主要道路
・minor streets = 副道路
の組み合わせで作られる

要素
・ORGNICK
・RASTER
・RADIAL
サンプル











とりあえずここまで。CEのチュートリアルは良く出来てる。
Ver違いからかちらほら違う所も。それはしょうがない。



2011年7月26日火曜日

CGMovie : CHRONO CRAVIS


うーん凄い ワイバーンに似てるな〜と思ったらさもありなんw
製作初めて1年らしいですが、物作りへの情熱が凄いですね〜
今後の伸びが恐ろしい。

多分旦那さんはいろいろな意味でハラハラだと思うのですw


HP


CityEngine:Import Illustrator

Illustratorをインポートしてみる

1.IllustratorでDXFファイルを書き出す
・レイヤー名がImport時の選択の手段となる(2バイトは文字化けする)
・サイズはピクセルが基準


・書き出しサイズ 1Pix = 10Unit(チュートリアルの指定)
1Pix(10Unit) = 10mとなる

2.CityEngenでDXFファイルをインポート
・Splineは読み込めない、Illustratorのベジェ曲線は、事前に直線化の必要あり


■Illustrator 直線化
・フィルター > ジグザグ > でサイズを0にした後
・オブジェクト > アピアランスの分割

備考
・塗りつぶしの意味はない
・Shapesでのインポートは出来ない?


3.結果
・レイヤーは破棄される
オブジェクトをグループで分けたい場合、段階的にインポートする必要あり
・また、閉じたラインはかならず一部で接する必要がある。
(メッシュが濃いところは、接していないためにブロックが2重になっている)


サイズの検証
1Pix(10Unit) = 10m

2011年7月24日日曜日

SoftimageScript : ObjectBrake v01

1ポリゴン 1オブジェクトに分割するスクリプト

■オブジェクトを選択(複数化)

■実行

CEに渡すときはオブジェクトをポリゴンごとに分割する必要がある。
その補助を行うスクリプト。

オブジェクトごとに名前を持たせ、
CE側でオブジェクトごとに異なるルールを適用できる。

#Python
#ObjectBrake v0.1
#Create By Tera 2011 07 24

app = Application; log = app.Logmessage
oSels = app.Selection
oNames = []
oCounts = []
oColl = XSIFactory.CreateObject("XSI.Collection")

for oObj in oSels:
 oNames.append(oObj.Name)
 oGeo = oObj.ActivePrimitive.Geometry
 oPolys = oGeo.Polygons
 oCounts .append(oPolys.Count)

for i in range(oSels.Count):
 for j in range(oCounts[i]):
  temp = oNames[i] + '.poly[' + str(j) + "]"
  op = Application.ExtractFromComponents("ExtractPolygonsOp", temp, "polymsh_extracted", "", "siImmediateperation", "siKeepGenOpInputs", "")
  newObj = op(0)(0)
  newObj.Name = oNames[i] + "_" 
  oColl.Add(newObj)
oNull = app.ActiveSceneRoot.AddNull("CE_Export")
app.ParentObj( oNull, oColl )

■今後の展開
マテリアルごとに名前を変えたほうが好いかもしれない