3D 模型

電腦輔助工程嘅形式
(由立體模型跳轉過嚟)

3D 模型粵拼saam1 di1 mou4 jing4),又叫三維模型或者叫立體模型,係指一個(對於部電腦嚟講)用數字呈現嘅三維物體。立體模型有長度、闊度同高度,就好似喺現實世界見到嘅實物一樣,因此可以用嚟建構虛擬世界

呢個立體模型模擬一架穿梭機嘅外型。

3D 建模英文3D modeling)就係指用專門軟件整立體模型。廿一世紀初有好多立體圖像軟件,例如 Blender 就好多人用。建模涉及製作者喺模擬嘅立體空間入便操作角、邊同埋立面[1],譬如係以一啲簡單嘅幾何物體(例如圓柱或者球體呀噉)做起始,然後再改變唔同邊嘅長度或者唔同角嘅位置,最後整出想要嘅形狀。除此之外,製作者亦可以用程序生成或者立體掃描嚟創建想要嘅形狀[2][3]。然後製作者仲可以運用材質貼圖,決定模型表面望落係乜嘢質哋。

整好之後,呢啲模型跟住就可以直接攞去 Unity 或者 Unreal 等嘅遊戲引擎度使用,用嚟為視像遊戲虛擬實境等嘅產品建構虛擬世界[4][5][6]

諗頭

編輯
 
猶他茶壺呢個立體模型成日畀人攞嚟做三維電腦圖像嘅例子。

Blender 等嘅軟件製作 3D 模型,有好多工序:製作者事前要做少少研究,譬如係搵一啲描述目標物品嘅圖片返嚟,度好個流程大致上要係點;跟住佢就要落手製作個模型嘅幾何特性——包括係以咩幾何圖形做起始,然後再添加同調節啲角同邊,然後再用着色器材質貼圖加表面細節[7]

基本造型

編輯

做 3D 建模,最基本步驟係建立個模型嘅幾何結構。一切嘅 3D 模型都有三大基本元素,包括頂點同埋[8],呢三樣嘢會界定件物件嘅形狀。概念如下:

  • 頂點:3D 空間內嘅一,每個頂點都有個三維(X Y Z)嘅座標
  • 邊:由兩個頂點連接而成,模型表面嘅「骨架」。
  • 面:由三條或以上嘅邊組成,形成一塊平面,通常係三角形或者四邊形

建模嘅過程最簡單常用嘅,可以係用多邊形造型:用家可以由一個基礎嘅幾何形狀(譬如係球體或者立方體)做起始,再用各種方法編輯個模型嘅頂點、邊同面,當中常用嘅功能有子分[9]拉伸[10]以及細分曲面[11]呀噉,最後得出想要嘅形狀。

好多圖像專家認為,模型嘅幾何形狀唔需要整到太過精細,噉係因為望落似表面細節嘅效果,往往可以用着色器材質貼圖等嘅技巧造出嚟[12]

材質貼圖

編輯
内文:材質貼圖

材質texture)係一啲圖像,可以用嚟「貼喺個模型表面」令到個模型望落有某啲特定嘅質哋。

着色器

編輯
内文:着色器

彩現嘅過程必定會用到着色器shader):着色器係一大類嘅演算法,亦可以包埋執行呢啲演算法嘅程式,負責教部電腦點樣處理一嚿物體嘅顏色、光暗同質哋,達致設計者想要嘅效果。當中「效果」可以係令到個模型望落更加迫真。

喺實際應用上,着色器會做一系列嘅數據處理,最後畀出想要嘅效果:設計模型嘅人可以當正着色器係黑盒,會攞某啲嘢做輸入,計數,跟住畀若干個輸出,當中輸入可以係顏色數據、位置同埋其他數值等,而輸出就係(例如)色彩數值[13];一個效果好多時都會用多過一件着色器嚟造,喺呢個過程裡便一件着色器可以行一啲運算,然後將自己計到嘅結果傳畀下一件着色器。下一件着色器又做運算,最後得出一個總體結果。好多圖像軟件都會畀用家用視覺化編程噉嘅方法設立「總體」着色器,揀選想用邊啲着色器,然後再決定着色器之間啲數據要點樣傳[14]


 
風氏着色法可以令到一個模型表面望落平滑啲。左圖用嘅係平直着色法,而右圖就用咗風氏着色法[15]


加動畫

編輯
 
呢個立體模型模擬一隻蝴蝶嘅外形,而且仲加咗拍翼嘅動畫。
睇埋:電腦動畫角色

掃瞄做法

編輯
睇埋:3D 掃瞄

除咗手動嘅方法,3D 模型仲可以用自動嘅方法整。有啲研究者會用架生掃描一件真實嘅物件,再將數據傳返去電腦度,等部機計出個 3D 模型嘅樣,例如個掃描器嘅感應器可以射啲出嚟,喺每一點嗰度量度吓「啲波射出去嘅時間」同「返到個感應器度嘅時間」之間差幾遠,噉就可以知道喺每個點度件物件嘅表面離個感應器幾遠,跟手將呢個數據傳過去部電腦,就係有關件物件嘅形狀嘅數據;另一方面,研究者又有得手動噉整啲 3D 模型出嚟。

垃雜概念

編輯

其他 3D 模型相關嘅重要概念:

  • 多邊形網格:一幅多邊形網格(好似下圖噉)會包含-
    1. 若干隻(vertex),角係空間入面一點;
    2. 當中某啲角之間會有(edge);
    3. 如果有拃邊形成咗一塊完整嘅 2D 表面,塊表面就可以做一塊立面(face),面係件 3D 物體睇得到嗰浸表面[16]


 


  • 線框模型:基本上等同多邊形網格,只係冇咗啲立面,淨係展示個模型啲角同邊(好似下圖噉);喺好多情況下,線框模型都(同多邊形網格比起嚟)會方便用家睇清楚個模型嘅形狀。廿一世紀初嘅 CG 軟件都會畀用家揀用邊種方式(多邊形網格定線框模型)嚟睇個 3D 模型。


 


  • 多邊形:用嚟衡量啲 3D 模型有幾複雜嘅指標,如果話一個 3D 模型多邊形多,即係話個模型有好多塊表面,正路就表示個模型望落多細節[17]
  • 細節層次(LOD):指一個 3D 模型嘅表示有幾複雜;例如想像家陣有個 3D 模型,設計者將個程式設計成「如果用家近睇個模型,就將個模型啲多邊形完全顯示嗮出嚟(LOD 高);而如果用家遠睇個模型,就將個模型簡化(少噉咗多邊形)噉顯示(LOD 低)」噉嘅樣,噉就可以避免部機要做啲不必要咁仔細嘅運算,慳返運算上用嘅時間[17][18]。可以睇埋軟件最佳化嘅概念。


細節層次嘅展現
圖例          
角嘅數量 ~5500 ~2880 ~1580 ~670 140
Notes 最高細節層次 最低細節層次


睇埋

編輯

參攷

編輯
  1. Slick, Justin (2020-09-24). "What Is 3D Modeling?". Lifewire (英文). 喺2022-02-03搵到.
  2. "How to 3D scan with a phone: Here are our best tips". Sculpteo (英文). 喺2021-07-14搵到.
  3. "Facebook and Matterport collaborate on realistic virtual training environments for AI". TechCrunch (美國英文). 30 June 2021. 喺2021-07-14搵到.
  4. "What is 3D Modeling & What's It Used For?". Concept Art Empire (美國英文). 2018-04-27. 喺2021-05-05搵到.
  5. "3D Modeling". Siemens Digital Industries Software. 喺2021-07-14搵到.
  6. "What is 3D Modeling? | How 3D Modeling is Used Today". Tops (美國英文). 2020-04-27. 喺2021-07-14搵到.
  7. How Is a 3D Model of a Product Made?. CGIFurniture.
  8. 頂點(vertex)、(edge)同埋(face)
  9. Subdivide;增添邊將面分割做細部份,或者增添頂點將邊分割做細部份。
  10. Extrude
  11. Subdivision surface;可以令到個模型嘅表面睇落平滑啲。
  12. Materials, Shaders & Textures. Unity documentation.
  13. Rost, Randi J (2004). OpenGL Shading Language. Addison-Wesley Professional.
  14. Shader Nodes;Blender 係每件着色器做一個節點,節點間嘅箭咀就表示數據傳送嘅方向。節點同箭咀都由用家設定。節點英文叫 node
  15. Watt, Alan H.; Watt, Mark (1992). Advanced Animation and Rendering Techniques: Theory and Practice. Addison-Wesley Professional. pp. 21-26.
  16. Lorensen, William E.; Cline, Harvey E. (1 August 1987). "Marching cubes: A high resolution 3D surface construction algorithm". ACM SIGGRAPH Computer Graphics. 21 (4): 163-169.
  17. 17.0 17.1 Biljecki, F.; Ledoux, H.; Stoter, J. (2016). "An improved LOD specification for 3D building models". Computers, Environment and Urban Systems. 59: 25-37.
  18. Biljecki, F.; Ledoux, H.; Stoter, J.; Zhao, J. (2014). "Formalisation of the level of detail in 3D city modelling". Computers, Environment and Urban Systems. 48: 1-15.

外拎

編輯