當(dāng)前位置: 首頁(yè)IT技術(shù) → CityEngine制作玻璃材質(zhì)反光效果

CityEngine制作玻璃材質(zhì)反光效果

更多

當(dāng)我們走在城市的大街上,經(jīng)常會(huì)看到很多棟寫(xiě)字樓,其外墻大多都是玻璃材質(zhì)的,使得建筑更有質(zhì)感。在本文中,我們利用CityEngine實(shí)現(xiàn)玻璃材質(zhì)反光效果。首先,需要確定做什么樣的效果?一是玻璃效果(即透明),二是反光。

CityEngine中提供了“Material”設(shè)置,即材質(zhì)。其屬性包括如下,本文用到了紅框內(nèi)的屬性。

編寫(xiě)規(guī)則如下:

version "2012.1"

#屬性參數(shù)定義

attr Floor=10

attr Floor_Height=3

attr Groundfloor_Height=4

attr HighBuilding_Color="#6892d7"

#變量定義

Building_Height=Floor*Floor_Height

const Tile_Width=1.8

const FloorTop_Hight=0.1

const Frame_Width=0.08

@StartRule

#生成建筑結(jié)構(gòu)

Lot-->

    extrude(Building_Height)

    HighBuilding

   

#切分出第一層和上面樓層

HighBuilding-->

    split(y){Groundfloor_Height:FloorVolume|{~Floor_Height:FloorVolume}*}    

#拆分出每個(gè)樓層的地面和側(cè)面

FloorVolume-->

    comp(f) {top : offset(-0.1, inside) FloorTop|side:FloorSides}

#樓層地面填充顏色

FloorTop -->  color(0.5,0.5,0.5)

#側(cè)面生成玻璃窗戶(hù)

FloorSides -->

    split(x) {~Tile_Width : FloorTile }*

FloorTile -->

    offset(-Frame_Width/2)

    comp(f) {border : color(0.2,0.2,0.2) Frame. | inside : Glass}

   

#制作玻璃反光效果

Glass -->

    color(HighBuilding_Color)

    set(material.opacity, 0.4)

    #鏡面反射

    set(material.specular.r,0.6)

    set(material.specular.g,0.6)

    set(material.specular.b,0.6)      

    set(material.shininess,50)

    #反射率

    set(material.reflectivity, 0.2)

生成效果圖:

熱門(mén)評(píng)論
最新評(píng)論
發(fā)表評(píng)論 查看所有評(píng)論(0)
昵稱(chēng):
表情: 高興 可 汗 我不要 害羞 好 下下下 送花 屎 親親
字?jǐn)?shù): 0/500 (您的評(píng)論需要經(jīng)過(guò)審核才能顯示)