1樓:缺錢找活
1. bsp和八叉樹一般都是空間分割2.bsp分成兩份,八叉樹分割成8份3.
那麼八叉樹的樹不是很高,bsp分割的樹高會比較大嘛4.BSP適合排序八叉樹不適合呀5.與八叉樹剖分相比,BSP樹具有記憶體耗費小,剖分方式靈活,產生的無效區域較小的優點;且對大部分場景來說,BSP樹較八叉樹更為平衡,還可以順便執行碰撞檢測Ps:
來個活唄!
2樓:
BSP 適合結構比較緊湊的互相遮擋多的場景,每個空間都會分割到最低,剔除效率更高,但是需要的預處理更複雜,實現起來比較麻煩。
四叉樹和八叉樹基本上是一樣的,就是帶不帶高度或深度軸而已。這兩種更加適合開闊的場景,為了實現和效能考慮一般會規定最大遞迴深度,在最大深度後應用一些其他手段處理。實現更簡單。
以現在的計算機的硬體水平, 無論哪種場景都可以用四叉樹和八叉樹管理,除非碰到效能瓶頸不然沒必要過度優化。
3樓:
在當今圖形裡:
BSP的原理是2分場景,精確演算法需要切割三角形,主要用於舊式的軟渲染,保證減少光柵化級別的計算,在當今GPU比CPU運算速度高的時代,三角形級別的CPU運算是不值當的,所以可以說三角形BSP已被主流淘汰,另外可參見遮擋剔除(Occlusion Culling),這項技術也可以使用BSP實現。
Octree顧名思義就是8分場景了,現在僅要求物體級別的精度,主要用於減少Draw Call(繪製次數),一般用於大規模場景以及LOD策略。
其實以上結構在GPU效能越來越高的未來,都可能變成不必要的優化手段。CPU資源應該被更多的用於業務邏輯,越來越多的場合這些結構都已被批次渲染取代。
4樓:錢康來
SO上的類似問題 3d - When to use Binary Space Partitioning, Quadtree, Octree?
為什麼說「滿二叉樹也是完全二叉樹」?
一名 1 先明確完全二叉樹的概念。先上圖!完全二叉樹分為樓主所說的 圖1就是了 還有一種完全二叉樹是圖2。圖2也是完全二叉樹!圖2也是完全二叉樹!圖2也是完全二叉樹!概念 完全二叉樹分為兩種,1 最後一層沒有滿,那麼最後一層的節點都得在左邊。2 最後一層滿了,那就得全滿才行,圖2。完全二叉樹就這麼個...
遊戲場景管理的八叉樹演算法是怎樣的?
左慶 前面狠多人都介紹了八叉樹的原理,我就補充一點。實際應用中,八叉樹在儲存三角麵片時可能會遇到這樣的問題 不管怎麼切,總發現有些麵片同時位於兩個 或者多個 節點對於沒有大小的元素 點 是不會存在這個問題的。 好像貼圖裡面涉及到少量的八叉樹構建吧,實時更新好像沒有涉及,不知道是否有幫助,沒幫助請摺疊...
完全二叉樹為什麼最適合順序儲存結構?
花露水和暖壺 先說明一下,只有完全二叉樹才能順序儲存,或者說順序儲存只適合於完全二叉樹,理由如下 一般情況下,如果將樹的結點從上到下,每一層從左到右從1開始挨個編號,那麼結點 i 的左孩子就是2i,右孩子就是2i 1,將這個規律反映到順序儲存中,我們可以根據陣列的下標i也能找到左孩子 2i 和右孩子...