city如何使用 mega unity_制作思路和CityEngine的简单使用
最近什么都不想干,就總結一下之前做過的一些東西。首先是建立一個虛擬城市,目前這個城市還在建造中,主要是用于自己的之后的動畫和開放世界游戲制作,下面說以下自己之前的思路。
說起城市建模,可以說是嘩的一下一大堆可以用想法就用入腦中,不過可以精煉一下。首先是軟件選擇吧,我摸過許多的三維素材軟件,這里就不一一舉例了,我按照一些網上的說法來分一下類:
我們常見的maya,3dsmax、blender和houdini等都是三維制作解決方案軟件,說白了就是除了寫文案和草圖設計,還有一些后期處理等大部分都可以在這些軟件里完成,只是由于軟件引進時間,軟件設計架構和一些人為因素,現在這些軟件基本就被我們用來干某些方面的工作,比如maya常用來建模和制作角色動畫,3dsmax在室內設計、建筑等偏工業方面用的多,游戲也會用,blender就隨緣了(畢竟免費開源),houdini基本用來做特效,這些觀點算是主流的。
那么回到我們的虛擬城市建造這個話題上來,使用上述的軟件肯定是可以的,只是如果要從零開始,真的就有點太費時間了,這些軟件感覺更適合手工細心雕琢模型細節,不太適合大批量程序建模。houdini應該算是個例外,它的程序式建模挺好使的,但對于城市建模并沒有特定的工具,所以說大概要利用內建語言做一個系統出來,適合高度定制吧。
所以搭建城市框架我就沒選擇上面的軟件,然后就在網上搜索到了cityengine,這是一個專門用來城市建模的軟件,內置的規則文件的思路都是適合用來城市建模的,功能還挺強大。而這種軟件和傳統的軟件在建模速度上進行比較的話,可以說在模型數目少的情況下不占優,不過隨著規模增大,規則文件的復用就體現出速度上的優點了,所以很適合大規模城市建模。
安裝方法:下載后運行.exe程序,然后將壓縮包里的內容替換到根目錄即可。
這是軟件界面:
上面是我設計的街道網絡。強烈建議想學習的伙伴花一點時間進入官網跟著走完10幾個小課程(文章類型),然后就基本入門了。
進行城市建模有兩種選擇:使用現有GIS數據或者自己構建街道網絡。cityengine兩種方式都提供了,我這里只介紹DIY。
對于街道網絡,可以直接在cityengine里操作,或者在AI或其它矢量繪圖軟件中繪制矢量圖,然后導入到cityengine中生成街道。我只嘗試過第一種。
開始前呢,先對街道進行一下設計。我這里直接用分形搞了一張草圖:
C是商業建筑,r是住宅區,O是辦公區,I是工業區,圖中看到線都是主要街道(寬的,cityengine中為major street)。
然后在cityengine的Graph->Street Creation Settings里設置一下道路的寬度,人行道的寬度,然后點擊Polygonal street creation按鈕就開始根據草圖繪制。
接著要生成次要道路,這就不可能全部用手畫了,這里就使用cityengine強大的隨機街道分布完成任務。cityengine的隨機街道生成可以根據現有的節點和線段來生成節點和線段。這在Graph->Grow Streets中:
有許多預設,參數也很多,這個可以在cityengine的幫助文檔中查看每個參數的用法。不過街道是隨機的,為了讓它們規規整整的位于我的四方街道網格內,我使用了最簡單粗暴的方法:生成->刪掉多余的->生成->刪掉多余的->......
生成完畢后,就要清理和優化街道。cityengine會把有沖突的街道口用紅色虛線標識,這時候就可以選中,然后在Graph->Cleanup Graph中調整參數后優化:
注意,沖突可能會很多,畢竟生成的街道可能只是看起來可以,但實際不正確。
在經過繁瑣的步驟后,街道網絡就生成了,然后cityengine會將街道圍起來的多邊形區域稱為一個塊(block),可以理解為一個小區或其它,然后默認會細分出一些小網格,稱為形狀(shape),這些形狀就是可以應用規則文件進行建模的最基本的幾何體
同時,街道由線段(segement)和點(point)連接,同時cityengine相當于自動幫我們根據線段擠出了面片作為街道(street),同時細分出了人行道(sidewalk)。
那么接下來可以編寫規則文件來做出一個模型,這里給出一個示例:
規則文件就不展示了,有些長。
還有街道模型實例:
關于規則文件的編寫下篇文章再詳述,不過自己嘗試加官方幫助文檔是最好的學習方法(和大多數編程語言一樣)。
接著談思路,還是制作方面的。在制作中,我們會需要大量的外部模型和紋理,可以使用maya等軟件制作裝飾模型,比如窗戶、門、空調、路燈、車等,用PS、SP、SD等制作紋理,不過全部手工制作太費事了,這里給出我使用的一些免費資源(國內的好多資源都收費,感覺不大好使):
模型:kitbash3D系列,官方是要錢的,不過有免費資源,齲齒一號上搜kitbash即可。
紋理:推薦國外的一個網站,上面有幾百個免費的SD、SP源的高分辨率紋理文件https://cc0textures.com
然后是導出和與對應的軟件進行材質替換,目前遇到過的難點是導入到unity的話,需要重寫部分shader,這在之后會進行講解。如果是要用于動畫制作,不建議直接全部導入maya,3dsmax等軟件,可以考慮導入houdini進行處理,或者使用一些專門用于制作大場景的打光軟件,如clarisse和katana。
以上。
總結
以上是生活随笔為你收集整理的city如何使用 mega unity_制作思路和CityEngine的简单使用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 壹号本 One Netbook 4S 迷
- 下一篇: iphone怎样关闭副屏_iPhone手