<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          GigaVoxels高效3D體素實(shí)時(shí)渲染庫

          聯(lián)合創(chuàng)作 · 2023-09-29 19:14

          GigaVoxels是一個(gè)開放的庫,用于基于GPU的實(shí)時(shí)質(zhì)量渲染非常詳細(xì)和寬泛的對(duì)象和場(chǎng)景(編碼為SVO - 稀疏體素八叉樹 - 但不一定模糊或透明:參見歷史)。它可以很容易地與普通的OpenGL對(duì)象和場(chǎng)景混合。

          它的秘密在于惰性求值:數(shù)據(jù)塊(即,塊)僅在被證明對(duì)于圖像是必要的并且僅在必要的分辨率下被加載或生成。然后,它們被保存在GPU上的LRU高速緩存中用于下一幀。因此,隱藏?cái)?shù)據(jù)對(duì)管理,存儲(chǔ)和渲染沒有任何影響。類似地,如果高細(xì)節(jié)小于像素大小,則高細(xì)節(jié)對(duì)成本和混疊沒有影響。

          GigaVoxels允許輕松地做簡(jiǎn)單的事情,也允許引擎的漸進(jìn)暴露取決于您需要的定制。它提供了大量的例子來說明可能性和變體,并通過復(fù)制粘貼來簡(jiǎn)化您的測(cè)試和原型。

          在最基本的用法,你已經(jīng)很高興與其中一個(gè)例子(對(duì)你有好處:沒有代碼!)

          最基本的編程用法包括編寫GigaVoxels渲染器將在最后一刻調(diào)用的回調(diào)生成器函數(shù),以獲取給定分辨率的給定空間立方體的數(shù)據(jù)。此功能可以有一部分在CPU側(cè)和一部分在GPU側(cè)。你可能只想將數(shù)據(jù)從CPU傳輸?shù)紾PU,或者可能在GPU一側(cè)解壓縮或放大。您還可以從程序上生成它(例如,體積Perlin噪聲),或者從已經(jīng)存在于GPU存儲(chǔ)器(例如,VBO網(wǎng)格)中的另一形狀結(jié)構(gòu)轉(zhuǎn)換所請(qǐng)求的數(shù)據(jù)塊[1]。

          您可能還需要添加一個(gè)用戶定義的體素著色器來調(diào)整外觀(view-dep BRDF,但也可能是材質(zhì)顏色,而不是存儲(chǔ)在體素中),甚至可以即時(shí)調(diào)整數(shù)據(jù)。事實(shí)上,這取決于您在CPU,GPU生產(chǎn)者或在體素著色器中的生成(或預(yù)先存儲(chǔ)),這取決于您在存儲(chǔ),性能和即時(shí)需求之間的首選平衡更改。例如,如果要讓用戶使用顏色LUT或密度傳遞函數(shù),或調(diào)整超文本紋理參數(shù),則應(yīng)在體素著色器中進(jìn)行以獲得即時(shí)反饋 - 否則所有已生成的圖塊都應(yīng)取消。但是一旦這些參數(shù)是固定的,如果數(shù)據(jù)在生產(chǎn)者中被全部烹飪并且在高速緩存中保持準(zhǔn)備使用,則渲染將更快。

          您可能想要處理非RGB值(多光譜,X射線...),或不是一個(gè)簡(jiǎn)單的方法(極化,HDR)。 GigaVoxels讓您輕松定義體素?cái)?shù)據(jù)的類型。您還可以自定義前置和后置渲染任務(wù)(例如,與OpenGL場(chǎng)景混合),各種早期測(cè)試,提示和優(yōu)先行為的標(biāo)志(例如,在嚴(yán)格的時(shí)間預(yù)算應(yīng)用程序中的創(chuàng)建優(yōu)先級(jí)策略)。

          基本的GigaVoxels依賴于空間的八叉樹動(dòng)態(tài)分區(qū),其中節(jié)點(diǎn)對(duì)應(yīng)于體素塊 - 如果空間不為空。但實(shí)際上,您可以偏好另一個(gè)空間分區(qū)方案,例如N ^ 3-tree,k-d樹,甚至BSP-樹。您還可以選擇在本地?cái)?shù)據(jù)塊中存儲(chǔ)除了體素之外的其他東西,例如三角形,點(diǎn),過程參數(shù),簡(jiǎn)化更新或細(xì)分的內(nèi)部數(shù)據(jù),以避免從頭開始重建

          GigaVoxels和GigaSpace是一樣的事情。 GigaSpace是查看工具的一般方式。 GigaVoxels的基本用途是使用八叉樹作為樹,體素塊作為數(shù)據(jù)塊,并使用體積錐跟蹤作為訪問者,因此這種命名優(yōu)先于SVO社區(qū)。但我們提供了許多其他示例顯示其他選擇,因?yàn)闈撛诘氖褂帽萐VO大得多。

          瀏覽 45
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          編輯 分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          編輯 分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  欧美1区| 极品人妻无码 | 天堂网二区 | 精品无人区一区 | 亚洲成人av在线观看 |