Unity3D自帶功能:樹物體(Tree)


通過菜單GameObject > 3D Object > Tree可以為當(dāng)前場景創(chuàng)建一個Tree (樹),同時還會把相應(yīng)的Tree asset資源存放在項目文件夾中弊知。

unity_tree_01.png

Tree是標(biāo)準(zhǔn)的Fractal(分形)結(jié)構(gòu)慧瘤,按“第一層主干上長出數(shù)根枝干俺泣,然后枝干上又各自長出數(shù)根細枝,……最后細枝上長出多片樹葉”這樣一層層搭建而來蜓氨。Maya中的筆刷樹也是用的這種構(gòu)成方法圆恤,但Unity3D相對來說更簡化了一些突倍。

TreeStructureDiagram.png

樹編輯器及節(jié)點

Unity3D提供一個簡單的樹編輯器,讓我們可以從主干開始創(chuàng)建一顆完整的樹哑了。這個樹編輯器很像Xfrog(Maya中集成了一個簡化版的Xfrog插件)赘方。

一顆比較完整的樹的結(jié)構(gòu)至少要如下圖所示,有多個層級弱左,最下方是1個樹節(jié)點窄陡,然后接一層枝節(jié)點當(dāng)樹干,然后再接1~2層枝節(jié)點當(dāng)樹枝拆火,最后接一層葉節(jié)點來生成樹葉跳夭。

unity_tree_00.png

編輯器中間的結(jié)構(gòu)圖示代表了不同層級的節(jié)點,Unity3D的Tree只有3個不同類型的節(jié)點:樹節(jié)點(Tree)们镜、枝節(jié)點(Branch)币叹、葉節(jié)點(Leaf)。每個節(jié)點上的數(shù)字代表該節(jié)點中總共有多少根“樹枝”或者多少片“樹葉”模狭。

選擇一個枝節(jié)點颈抚,我們可以通過右下角的圖標(biāo)為它創(chuàng)建一個下級枝節(jié)點或者葉節(jié)點,或者復(fù)制/刪除任意枝節(jié)點或葉節(jié)點嚼鹉,葉節(jié)點之下不能創(chuàng)建別的節(jié)點贩汉。

樹節(jié)點只能有一個,不可刪除锚赤。


樹節(jié)點(Tree)

樹節(jié)點是最底部的節(jié)點匹舞,用來控制整棵樹的參數(shù)設(shè)置

unity_tree_02.png
  • Distribution
    • Tree Seed:這是一個“種子數(shù)”,所謂“種子數(shù)”是計算機中控制“假隨機數(shù)”的一個關(guān)鍵參數(shù)线脚,大家只需要知道我們?nèi)绻龊昧艘豢脴湟院笙氲玫搅硪豢妙愃频灰耆粯拥臉浯突涂梢灾苯訌?fù)制這棵樹,什么調(diào)整都不用做浑侥,只修改一下新樹的“種子數(shù)”就好了姊舵。做好的樹樣子不太理想,改改“種子數(shù)”也許就能獲得一個好看些的結(jié)果
    • Area Spread:區(qū)域散布距離寓落,值越大括丁,刷出來的樹離筆刷路徑距離越遠
    • Ground Offset:這棵樹離地面的高度
  • Geometry
    • LOD Quality:設(shè)置LOD(隨距離變化而改變模型精細度),因為Tree物體的mesh都是由程序根據(jù)參數(shù)來自動生成的零如,所以天生就有LOD屬性
    • Ambient Occlusion:環(huán)境自遮罩陰影設(shè)置
    • AO Density:AO的程度
  • Material
    • Translucency Color:透明區(qū)域顏色
    • Trans. View Dep.:透明區(qū)域渲染深度
    • Alpha Cutoff:貼圖上半透明區(qū)域的切除程度躏将,leaf通常都用透明貼圖來呈現(xiàn),但Tree物體會將透明通道做Cutoff處理考蕾,也就是不呈現(xiàn)半透明的效果
    • Shadow Strength:陰影強度
    • Shadow Offset:陰影偏移
    • Shadow Caster Res.:陰影分辨率

枝節(jié)點(Branch)

枝節(jié)點是創(chuàng)建枝干的節(jié)點祸憋,枝干是一根可以扭曲的長圓錐體,通常會貼上樹皮的貼圖肖卧,用來作為樹干或者主要分叉樹枝蚯窥。

unity_tree_03.png
  • Distribution
    • Group Seed:這個“種子數(shù)”是控制這一“群”枝條如何隨機分布的
    • Frequency:在一根上級枝條上會出現(xiàn)多少根本級枝條,對于主樹干來說這個值設(shè)置為1塞帐,其他的枝干這個值通常大于1
    • Distribution:這些枝條如何分布
    • Growth Scale:通過一根曲線控制這些枝條從長出點到尖端的截面粗細拦赠,通常是會設(shè)置成越靠近尖端越細
    • Growth Angle:通過一根曲線控制這些枝條從長出點到尖端的彎曲程度,大部分樹越靠近尖端會越指向天空
  • Geometry
    • LOD Multiplier:LOD的設(shè)置葵姥,次級枝條的LOD會讀取上級枝條的LOD然后用這個倍乘數(shù)來調(diào)整
    • Geometry Mode:幾何體模式荷鼠,可以是branch(枝條)模式,那就是一個長圓錐榔幸;也可以是一個fronds(蕨類復(fù)葉結(jié)構(gòu))允乐,那就是一個扁平的長條雙面片;還可以是branch+fronds削咆,那就是兩者都有
    • Branch Material:指定枝條的材質(zhì)球
    • Break Material:指定枝條斷口(頂端)的材質(zhì)球
  • Shape
    • Length:枝條長度牍疏,會隨機在指定范圍內(nèi)取值
    • Relative Length:是否使用相對長度
    • Radius:枝條的最大直徑
    • Cap Smoothing:斷口處的光滑度
    • Crinkliness:枝條的扭曲度,0代表筆直的枝條拨齐,1代表彎彎扭扭的枝條鳞陨,可以用曲線來控制從根部到頂端使用不同的Crinkliness
    • Seek Sun:枝條尖端朝向太陽的程度,如果做向日葵的話當(dāng)然就設(shè)成1咯
    • Noise:給枝條根部到頂端的粗細變化添加一個噪波隨機紊亂瞻惋,值越大越紊亂
    • Noise Scale U:噪波貼圖的大小U值
    • Noise Scale V:噪波貼圖的大小V值
    • Flare:只有主干(緊跟樹節(jié)點的那個枝節(jié)點)才能設(shè)置Flare厦滤,F(xiàn)lare可以讓主干底部變得很粗,且最底部截面根據(jù)Noise值而變得形狀不規(guī)則熟史,用來模擬樹根有一部分突出在地面以上的效果
      • Flare Radius:主干根部變粗程度
      • Flare Height:主干根部變粗部分高度
      • Flare Noise:主干根部截面
    • Weld:非主干的枝節(jié)點上出現(xiàn)的是下面3個屬性馁害,用來模擬長出數(shù)值的接口處的過渡效果
      • Weld Length:銜接區(qū)域長度
      • Spread Top:向上方擴展程度
      • Spread Bottom:想下方擴展程度
    • Break Chance:枝條斷裂的可能性,值越大蹂匹,越多該層級的枝條出現(xiàn)斷裂碘菜,斷裂的枝條會有斷口,而且也不會有次級枝條或葉片產(chǎn)生
    • Break Location:斷裂的位置限寞,會隨機在指定范圍內(nèi)取值
  • Wind
    • Main Wind:風(fēng)力大小
    • Main Turbulence:(非主干的枝節(jié)點上才會出現(xiàn))主要紊亂場力度大小
Flare相關(guān)參數(shù)獲得的根部效果
Weld相關(guān)參數(shù)獲得的過渡效果
Break屬性獲得的斷口效果

我們可以手動對branch進行調(diào)整:

  • Move Branch:branch的中軸控制曲線及其節(jié)點會顯示在Scene View里忍啸,選擇一個節(jié)點然后移動可以改變整個枝條的形狀
  • Rotate Branch:branch的中軸控制曲線及其節(jié)點會顯示在Scene View里,選擇一個節(jié)點然后旋轉(zhuǎn)履植,可以旋轉(zhuǎn)自這個節(jié)點開始以后的枝條部分
  • Free Hand:可以手動在Scene View中畫出枝條形狀

注意:手動調(diào)整之后计雌,很多參數(shù)就不可用了,編輯器中的節(jié)點圖示上也會多出一個筆形符號做為提示玫霎。


葉節(jié)點

葉節(jié)點是創(chuàng)建葉片的節(jié)點凿滤,葉片是一個Quad面片妈橄,通常會貼上樹葉貼圖,但一般不會用奢侈到用單個面片做1片樹葉翁脆,常見的用法是單個面片上貼上一枝帶若干葉片的細小樹枝的貼圖眷蚓,來模擬枝繁葉茂的樣子。

unity_tree_04.png
  • Distribution
    • Group Seed:這個“種子數(shù)”是控制這一“群”葉片如何隨機分布的
    • Frequency:在一根上級枝條上會出現(xiàn)多少葉片
    • Distribution:這些葉片如何分布
    • Growth Scale:通過一根曲線控制這葉片的大小
    • Growth Angle:通過一根曲線控制這些葉片的彎曲
  • Geometry
    • Geometry Mode:幾何體模式
      • Plane:單個Quad面片
      • Cross:十字交錯的2個Quad面片
      • TriCross:十字交錯的3個Quad面片
      • Billboard:單個Quad面片反番,但永遠面朝攝像機
      • Mesh:指定一個多邊形mesh作為葉片形狀
    • Material:指定葉片的材質(zhì)球
  • Shape
    • Size:葉片大小
    • Perpendicular Align:葉片垂直方向?qū)R程度
    • Horizontal Align:葉片水平方向?qū)R程度
  • Wind
    • Main Wind:風(fēng)力大小
    • Main Turbulence:主要紊亂場力度大小
    • Edge Turbulence:邊緣紊亂場力度大小

我們可以手動對leaf進行調(diào)整沙热,leaf沒有中軸線,所以只能移動或者旋轉(zhuǎn):

  • Move Leaf:沿著上級brunch移動leaf
  • Rotate Leaf:繞leaf和上級branch的接觸點旋轉(zhuǎn)leaf

注意:手動調(diào)整之后罢缸,很多參數(shù)就不可用了篙贸,編輯器中的節(jié)點圖示上也會多出一個筆形符號做為提示。

關(guān)于風(fēng)場和動力學(xué)解算:

要產(chǎn)生樹被風(fēng)吹動的效果枫疆,需要創(chuàng)建一個Wind Zone(風(fēng)區(qū))爵川,我們可以點擊Create Wind Zone按鈕創(chuàng)建,或者從菜單欄創(chuàng)建息楔。

樹物體的“主干”雁芙、“枝條”、“葉片”三種不同的結(jié)構(gòu)部分面對風(fēng)場的動力學(xué)表現(xiàn)是不同的:

  • “主干”很粗钞螟,所以只受到風(fēng)場風(fēng)強的影響兔甘,會被風(fēng)吹彎;
  • “枝條”比較細鳞滨,除了跟著主干運動并被風(fēng)強吹歪以外洞焙,還會受到一個紊亂場的影響,具有一定的震顫抖動效果拯啦;
  • “葉片”最輕澡匪,尤其在邊緣部分的葉片,震顫抖動效果愈發(fā)明顯褒链,所以多了一個Edge Turbulence的參數(shù)唁情。

大家可以下載一些Asset Store里提供的免費的Tree資源,看看別人是怎么設(shè)置的:


最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末甫匹,一起剝皮案震驚了整個濱河市甸鸟,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌兵迅,老刑警劉巖抢韭,帶你破解...
    沈念sama閱讀 216,843評論 6 502
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異恍箭,居然都是意外死亡刻恭,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,538評論 3 392
  • 文/潘曉璐 我一進店門扯夭,熙熙樓的掌柜王于貴愁眉苦臉地迎上來鳍贾,“玉大人鞍匾,你說我怎么就攤上這事∑锟疲” “怎么了候学?”我有些...
    開封第一講書人閱讀 163,187評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長纵散。 經(jīng)常有香客問我,道長隐圾,這世上最難降的妖魔是什么伍掀? 我笑而不...
    開封第一講書人閱讀 58,264評論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮暇藏,結(jié)果婚禮上蜜笤,老公的妹妹穿的比我還像新娘。我一直安慰自己盐碱,他們只是感情好把兔,可當(dāng)我...
    茶點故事閱讀 67,289評論 6 390
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著瓮顽,像睡著了一般县好。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上暖混,一...
    開封第一講書人閱讀 51,231評論 1 299
  • 那天缕贡,我揣著相機與錄音,去河邊找鬼拣播。 笑死晾咪,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的贮配。 我是一名探鬼主播谍倦,決...
    沈念sama閱讀 40,116評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼泪勒!你這毒婦竟也來了昼蛀?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,945評論 0 275
  • 序言:老撾萬榮一對情侶失蹤圆存,失蹤者是張志新(化名)和其女友劉穎曹洽,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體辽剧,經(jīng)...
    沈念sama閱讀 45,367評論 1 313
  • 正文 獨居荒郊野嶺守林人離奇死亡送淆,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,581評論 2 333
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了怕轿。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片偷崩。...
    茶點故事閱讀 39,754評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡辟拷,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出阐斜,到底是詐尸還是另有隱情衫冻,我是刑警寧澤,帶...
    沈念sama閱讀 35,458評論 5 344
  • 正文 年R本政府宣布谒出,位于F島的核電站隅俘,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏笤喳。R本人自食惡果不足惜为居,卻給世界環(huán)境...
    茶點故事閱讀 41,068評論 3 327
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望杀狡。 院中可真熱鬧蒙畴,春花似錦、人聲如沸呜象。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,692評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽恭陡。三九已至蹬音,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間休玩,已是汗流浹背祟绊。 一陣腳步聲響...
    開封第一講書人閱讀 32,842評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留哥捕,地道東北人牧抽。 一個月前我還...
    沈念sama閱讀 47,797評論 2 369
  • 正文 我出身青樓,卻偏偏與公主長得像遥赚,于是被迫代替她去往敵國和親扬舒。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,654評論 2 354

推薦閱讀更多精彩內(nèi)容