Lecture10_幾何1(介紹)_GAMES101 課堂筆記


課程回顧

這是課程7、8、9的上課內容:

本節課內容:

  • 幾何基礎
    • 幾何實例
    • 幾何的表示法

幾何應用舉例

通過幾個例子開啟本節課的總結,下面主要列舉4個例子:

  • 下圖中是一些不同幾何形狀的杯子,會涉及如何設計出這些形狀;
  • 下圖中的汽車引擎蓋是非常光滑的曲面,會涉及如何用計算機模擬出如此光滑的面;
  • 下圖中形狀各異的齒輪,對於這些復雜的幾何構造如何表示;
  • 下圖中是一個藍衣女子,會涉及如何表示薄紗不同厚度攤開與重疊時,不同的透明度表示問題;

下面將介紹幾何表示方法:
主要分為implicit(隱式)Explicit(顯式)兩大類方法,以下是方法概覽:

一、Implicit(隱式)表示法

通過告訴點關系,對點進行歸類,從而判斷幾何關系(是否在幾何表面等關系)。

  • 優點:很容易判斷幾何關系(帶入隱式即可算出。)
  • 缺點:但是很難從隱式關系式看出幾何形狀。

下面將介紹 5 種隱式表示方法:
隱式表示方法概覽:

( 一 )代數曲面法(Algebraic Surfaces)

這種方法,主要是很難從數學式子看出形狀,並且很難表示復雜的形狀。

( 二 )構造實體幾何法(Constructive Solid Geometry )

這種方法通過使用簡單額幾何體進行Bool運算,就可構造出復雜的形狀。

( 三 )距離函數法(Distance Functions)

通過定義一個距離函數,表示兩個物體的距離關系。(不直接描述表面,而是描述一個點到表面的最近距離。),由此通過最小距離判斷出在幾何體的表面上、外、內關系(加入對應數值0、+、-)。

舉例:
想通過A、B得到移動融合運動邊界(假設划線為黑色,空白為白色),但是直接做出的結果\(blend(A,B)\)得出的顏色將會是黑、灰、白(AB重合區域、B-A區域、空白區域)。這並不是我們想要得到的黑白融合結果。

於是,使用有向距離函數(Signed-distance Function,簡稱SDF),通過\(-,0,+\)表示關系,再將\(SDF(A)\)\(SDF(B)\)做融合,最后將其還原,即可得到\(blend(SDF(A),SDF(B))\)中0為分割線,左邊偉黑色,右邊為白色的理想結果。

融合距離函數有很多應用,比如下圖,這種方法的表示能力極強,可清楚看見瓢蟲、蘑菇草相互融合的畫面。

( 四 )水平集法(Level Set Methods)

這種方法與距離函數方法類似,找臨界面等於0處(類似等高線),在二維、三維空間中均可使用,找出\(f(x)\)值相等的所有點即可找出一個平面。

應用舉例:模擬水圈形成

( 五 )分型法(Fractals)

“分型”是指一個大物體由一些形狀相同的小物體組成,小物體又由一些形狀相同的更小物體組成,即“自相似”(類似遞歸思想)。

二、Explicit(顯式)表示法

顯式表示法主要有兩種:

  1. 將表面上的點表示出來(例如之前的用像素點表示三角形的面)
  2. 參數映射方法(上圖中,本文主要介紹這種方法)。

其中參數映射方法從式子\(f : \Bbb{R^2} \rightarrow \Bbb{R^3} ; \left(u,v\right) \mapsto \left(x,y,z\right)\),即可將一個二維平面\(\left(u,v\right)\)映射到三維平面\(\left(x,y,z\right)\)中。

它的優缺點和隱式表示法大體可看做相反

  • 優點:很容易看出幾何形狀,通過映射關系即可知道。
  • 缺點:但是很難從顯式關系式判斷幾何關系

( 一 )點雲表示法(Point Cloud)

不考慮物體是一個表面,用點表示物體。

( 二 )多邊形網格(Polygon Mesh)

( 三 )波前對象文件(The Wavefront Object File)

一個文本文件將構件分塊組織,再構成一個模型。其中對於第二張圖中的下半部分輸出 f 中 5/1/1 中的 '5'指頂點序號,第一個‘1’ 指紋理坐標,第二個‘1’ 指法線。

三、小結

關於顯式和隱式表示法,他們各有不同的優缺點,可根據實際應用場景選擇不同的表示方法。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM