如何對一個3D模型進行簡化同時盡量保持模型的精細度?

我們將一個Pro/E格式的3D模型飛行器導出為3D MAX可用的模型。結果發現模型過於精細,面片數大概有200多萬個,導出後模型大小是300MB。但是需求又要從近距離觀察及使用這個模型上的部分零件。請問如何在不太多損失精細度的同時減低面片數到10-20萬?


首先從源頭上進行控制。Pro/E的格式本身都需要轉換成多邊形,轉換精度肯定是可以調節的。

其次導入3ds Max(注意拼寫)以後,可以使用ProOptimizer這個編輯器進行降面。這個編輯器的最終效果還是不錯的。不過一般的演算法都是以保持輪廓為主,面的拓撲結構肯定會受到影響。如果只是用於一般的渲染,問題不大。

最後要說的是,自動降面是個普遍的難題,包括那些售價幾萬刀的專業軟體也不能做的盡善盡美,人工干預無法完全避免。所以在花力氣研究工具和方法之前,把需求先搞清楚。有時候不過就是要殺個雞,就不用花大力氣研究牛刀了。


謝邀。模型面數貌似很大。因為我不是美術,所以就不知道怎麼手動搞這麼個工程了。但是既然被邀了,怎麼樣也要就經驗說上幾句。有一些軟體可以嘗試(關鍵我想怎麼樣也得先用軟體幫助減下來後再手工修正),這些軟體列在下面,請自行搜索:

1、Modo

2、Mesh Lab (開源)

3、Blender

4、Cinema4D

5、ZBrush(需要相應插件)

6、ATangeo (這個是專門的減面工具,這裡是官網的圖)

7、Action 3D (也是專門的減面工具)


我自己實現了一個QSlim演算法,具體代碼和效果可參考這裡:網格精簡演算法(Quadric Error Metrics)附源碼


如果要用

3ds Max應該是有網格簡化的功能,查看一下幫助(Maya肯定有,我用過)

如果要了解原理

google scholar

mesh simplification

我自己都實現過一個演算法


Magic3D 有模型簡化的功能


上面的回答都提供了相關軟體了,除了沒有提到mudbox,yes,mudbox現在也有簡面功能了。

&> "但是需求又要從近距離觀察及使用這個模型上的部分零件"

請問需要觀察細緻的部位是固定的嗎?或者是你可以預測那些部位需要更多的面來表示?

然後找一款軟體可以先選擇(例如用刷子塗色)這些需要多面的局部,然後簡化的過程中可以把10w-20w面裡面更多budget留給你選中的那些局部,就是把力用到刀刃上,否則假如10w-20w的面平均分到模型的任何地方,那結果就是到處的面密度都差不多。

(廣告:假如你找不到這些軟體,請私信:-)


對於面數較多的模型,會使配置馬馬虎虎的電腦很費力甚至無法使用,那麼減面就異常重要了。

方法有多種、

第一,前期,盡量減少多餘的面的產生。往往不太現實,因為模型需要更多的細節,細節的雕刻,就需要在足夠的面,才能達到理想的效果,但通常在模型雕刻時候,我們的面會相對較多(即我們沒有辦法把握最合適的面數,只能加多的面),也就是我們會出現浪費。(此條無關緊要)

第二,可以用高精度下雕刻好所有細節,再進行減少面片。Avatar Ye,Game Developer說的方法可行,使用zbrush雕刻的模型,也可以進行減面(現在的版本不用再裝置插件,自行百度即可找到相關教程),減面是比較方便,大部分細節都還在,只是面片由四邊形面,變成三角面居多(畢竟是演算法優化的),所以拓撲結構會很有影響,對於不需要做動畫,完全可以。

第三,就是動畫做的(主要是遊戲動畫),把高精度模型進行拓撲成低精度模型(面數低很多),拓撲好的模型面數較低,可以做動畫,再利用高模和低模製作法線、凹凸貼圖、高光貼圖。。。。,再在軟體(例如3ds max)中將貼圖賦給低模,這樣渲染的效果,

就能達到具有較多的細節,面片又較少的效果。(知識有限,現在就知道這些,這也是製作遊戲角色的辦法,效果還是很好的。看不懂的問度娘吧!)


分塊做模型,然後只保留近景攝像機特寫模型部分的精度,其他的地方拓撲成低模。


業界有很多比較成熟的減面演算法。搜索引擎應該可以解決是什麼的問題,怎麼做可能要查查相關論文。


本專業,您下的應該是影視或者工業級高模精模,並非用於遊戲的。這種模型,減面的方法,哪個都繞不開人工手動。您的需求應該是引擎能運行吧,重做一個遊戲低模,或者下一個遊戲用低模。


推薦閱讀:

有沒有可以將圖片轉化為3D建模的軟體?
請問國內有沒有比較好的開源3D模型庫?

TAG:遊戲開發 | 3D建模 | 數字媒體藝術 | 三維 |