
焦作制作如何很好地管理包含著成千上萬物體的復雜場景動畫?
3.3 場景建模管理 如何很好地管理包含著成千上萬物體的復雜場景,是動畫設計系統(tǒng)必須要考慮的問題場景管理需 要做的,就是給場景提供良好的層次關系,以便更好地進行篩選和隱藏面消除。場景管理涉及可視性 處理和碰撞檢測,系統(tǒng)需要判斷場景的哪些部分在視見約束體之內,另外如果兩個物體有碰撞關系, 則需要計算碰撞點的值。 為了達到實時效果,傳統(tǒng)的場景管理技術無法適用。因為場景已經非常復雜,如果只采用Z緩沖的 方法進行可見性處理是不現(xiàn)實的。目前將場景分層的方法,可以把輔助數(shù)據(jù)結構應用于場景中,先把 場景分區(qū),再分物體,甚至一直分割到多邊形。如在室內場景管理中有兩1、經常用到的層次體系: BSP( binary space partitioning)樹1刊和包圍體樹(bouncling volumc_tree)E6]。前者是八叉樹的 推廣,用于加速剔除,而后者主要用于碰撞檢測。
3.3.1 場景的組織和管理 場景的組織結構是渲染系統(tǒng)最基礎和最重要的部分,也是實現(xiàn)的難點,是很多后續(xù)工作的基礎, 如碰撞檢測、消隱、陰影等。首先涉及的概念是空間細分,空間細分考慮整個物體空間并且根據(jù)物體 的空間占有(object occupancy)對空間中的每一個點進行分類。世界空間中的物體可以細分為立方體 素( voxel),然后再對體素進行分類。 八又樹( octree):’:是一種描述三維空間的樹狀數(shù)據(jù)結構,
它可以描述一個三維場景內物體的 分布情況,并簡單地將體素安排在層次結構中。因此場景管理可以在預處理的時候建立一棵樹,這里 可以忽略物體的表示方法,而把焦點集中在場景的劃分上。在樹建立起來之后.通過實時遍歷這棵樹 來發(fā)現(xiàn)是否有兩個物體占據(jù)了同一個空間而發(fā)生沖突,或者一個物體的空間是否不在視見約束體之內 。這樣,所有篩選操作都可以簡化為對樹的遍歷,這是一個線形時間的操作。
另一種表示場景的數(shù)據(jù)結構是BSP樹,它被廣泛應用于室內場景的處理巾,它使用一個分離面 (splitting plane)對每一層一分為二,從而實現(xiàn)對空間的劃分,其中用于分割的平而川.以出現(xiàn)在任 何方位。BSP的想法最早在Fuchs( 1980)中被提出,起初的目的是為了解決文時消除隱藏面。BSP是八 叉樹的一般化。前人在這方面已經做了很多有效的廠作。FLi-hs首i父將BSP技術中剖分平面的確定正 反側性質應用于多邊形場景的剖分,建立起空間二叉樹結構。該二叉樹的每一個結點表示一個子空間 及空間內所包禽的多邊形。柱每…個結點’在問中,選取其中一個平面作為剖分平面,將該空間繼續(xù) 削分成)1:負兩個廠.,間,分別作勾[孩結。Lli的兩個子結點,其巾與剖分平面有交的多邊形被分割 成兩個多邊彤,分圳11 1入相成的于空間
轉載請注明:
焦作flash動畫制作公司:http://www.haldonestatewines.com/city101/