執行射線追蹤的方法和系統的制作方法

            文檔序號:6614348閱讀:202來源:國知局
            專利名稱:執行射線追蹤的方法和系統的制作方法
            技術領域
            本發明的實施例一般涉及圖像處理領域。
            背景技術
            從三維場景渲染(render )二維圖像的過程一般被稱作圖像處理。 隨著現代計算機工業的發展進步,圖像處理也在發展進步。圖像處理 的發展進步中的一個特別的目標是使二維模擬或三維場景的渲染盡 可能具有真實感。渲染具有真實感的圖像的一個限制是現代監視器通 過使用像素來顯示圖像。
            像素是能夠在監視器上被點亮的最小空間區域。多數現代計算機 監視器將使用幾十萬或幾百萬個像素的組合來構成整個顯示或渲染 的場景。單個的像素被布置為柵格圖案并且集合地覆蓋監視器的整個 觀看區域。每個單個像素都可以被點亮以渲染用于觀看的最終圖片。
            一種利用像素將真實世界三維場景渲染到二維監視器上的技術 被稱作光柵化。光柵化是這樣一種過程,其取以向量格式(場景內的 幾何對象的數學表示)表示的二維圖像,并且將該圖像轉換成用于在 監視器上顯示的各個像素。光柵化在快速渲染圖形和使用相對低的計 算能力量方面是有效的;然而,光柵化也具有一些缺點。例如,光柵 化經常苦于缺少真實感,因為光柵化并不基于光的物理性質,而是基 于場景中投影到二維平面上的三維幾何對象的形狀。此外,利用光柵 化渲染場景所需的計算能力與要被渲染的場景的復雜度的增大直接 成比例。隨著圖像處理變得更加具有真實感,所渲染的場景也變得更 加復雜。因此,光柵化隨著圖像處理的發展進步而相形見絀,這是因 為光柵化直接與復雜度成比例。
            利用像素將真實世界三維場景渲染到二維監視器上的另一技術
            被稱作射線追蹤(ray tracing)。射線追蹤技術追蹤假想射線(與光 線特性相似的射線)向要被渲染到計算機屏幕上的三維場景的傳播。 所述射線起源于坐在計算機屏幕后的觀看者的眼睛(雙眼),并且向 著三維場景穿過組成計算機屏幕的像素。每條被追蹤的射線前進進入 該場景,并且可以與該場景內的對象相交。如果一條射線與場景內的 一個對象相交,則使用該對象的特性和若干其它貢獻因素來計算該射 線所暴露于其中的顏色和光的量、或者顏色和光的缺少量。然后利用 這些計算來確定所追蹤的射線通過的像素的最終顏色。
            追蹤射線的處理對單個場景被執行多次。例如,可以對顯示器中 的每個像素追蹤單條射線。 一旦已經追蹤了充分數量的射線以確定組
            成計算機屏幕的二維顯示的全部像素的顏色時,可以在計算機屏幕上 向觀看者顯示該三維場景的二維合成。
            射線追蹤一般地比光柵化更具真實感地渲染真實世界三維場景。 這部分地由于以下事實即射線追蹤模擬了光如何在真實世界環境中 傳播和表現,而不是像光柵化那樣簡單地將三維形狀投影到二維平面 上。因此,使用射線追蹤所渲染的圖形更加準確地在監視器上描繪出 我們的眼睛在真實世界中通常會看到什么。
            此外,隨著場景變得更加復雜,射線追蹤對場景復雜度提高的處 理也優于光柵化。射線追蹤與場景復雜度對數地成比例。這是由于以 下的事實即相同數量的射線可以被投射到場景中,即使該場景變得
            更復雜。因此,射線追蹤并不像光柵化那樣隨著場景變得更復雜而無 法應對計算能力要求。
            射線追蹤的一個主要缺點是渲染場景需要大量計算,從而需要大 的處理能力。這在需要快速渲染時導致問題,例如當圖像處理系統例 如在游戲機中為了動畫目的而要渲染圖形時。由于對射線追蹤的計算 要求提高,難以足夠快速地渲染動畫以便看上去具有真實感(具有真 實感的動畫大致為每秒二十到二十四幀)。
            因此,需要更有效的技術和裝置來執行射線追蹤。

            發明內容
            本發明的實施例總體上提供用于執行射線追蹤的方法和設備。 根據本發明的一個實施例,提供一種執行射線追蹤的方法。該方
            法總體上包括將射線發出到三維場景中;利用第一處理元件執行以 下步驟借助以下方式來追蹤射線通過具有表示三維場景內的包圍體 的節點的空間索引取分支到定義與射線相交的包圍體的節點,直到 到達第一葉子節點;以及將定義該射線和第一葉子節點的信息發送到 第二處理元件;并且利用第二處理元件執行以下步驟執行射線-圖元 相交測試以確定射線是否與所述第一葉子節點所定義的包圍體內所 包含的圖元相交,生成至少一個次級射線;以及將所述次級射線發送 到處理元件。
            根據本發明另一個實施例,提供一種計算機可讀介質。該計算機 可讀介質包括程序,所述程序在被執行時進行包括如下步驟地操作 將射線發出到三維場景中;利用第一處理元件執行以下步驟借助以 下方式來追蹤射線通過具有表示三維場景內的包圍體的節點的空間 索引取分支到定義與射線相交的包圍體的節點,直到到達第一葉子 節點;以及將定義該射線和第一葉子節點的信息發送到第二處理元 件;并且利用第二處理元件執行以下步驟執行射線-圖元相交測試以 確定射線是否與所述第一葉子節點所定義的包圍體內所包含的圖元 相交,生成至少一個次級射線;以及將所述次級射線發送到處理元件。
            根據本發明另 一個實施例,提供一種系統。所述系統總體上包括: 第一處理元件;第二處理元件;空間索引,具有定義三維場景的包圍 體的節點;和通信網絡,耦接到所述第一處理元件和第二處理元件, 其中所述第一處理元件被配置為通過取分支到定義與射線相交的包 圍體的節點直到到達葉子節點,使射線遍歷空間索引,并且經由所述 通信網絡將所述射線發送到第二處理元件;以及其中,所述第二處理 元件被配置為確定射線是否與所述葉子節點所定義的包圍體內所包 含的圖元相交。


            圖1是描繪了根據本發明的一個實施例的示例性計算機處理器 的方框圖。
            圖2示出了根據本發明的一個實施例的多核處理元件網絡。 圖3A-3C是示出了根據本發明的一個實施例的存儲器接收箱的 各方面的方框圖。
            圖4是根據本發明的一個實施例的要由圖像處理系統渲染的示 例性三維場景。
            圖5A-5C示出了根據本發明的一個實施例的要由圖像處理系統 渲染的二維空間和由圖像處理系統創建的相應空間索引(index)。
            圖6是示出了根據本發明的一個實施例的執行射線追蹤的方法 的流程圖。
            圖7是根據本發明的一個實施例的要由圖像處理系統渲染的示 例性三維空間。
            圖8A-8D示出了根據本發明的一個實施例的執行射線追蹤的方法。
            具體實施例方式
            本發明提供了利用多個通用處理元件來執行射線追蹤圖像處理 的方法和設備。根據本發明的一個實施例,射線追蹤圖像處理系統可 以包括多個處理元件,它們可以執行與追蹤射線通過三維場景有關的 指令。第一部分處理元件可以使射線遍歷表示該三維場景的空間索 引。第二部分處理元件可以確定射線是否與包含在包圍體(bounding volume )內的對象相交,基于所相交的對象確定要分配給像素的顏色, 并且生成次級射線。此外,根據本發明的一個實施例,為了執行射線 追蹤圖像處理,該多個處理元件可以共享一個相干存儲器高速緩存 (memory cache ),并且可以使用低延遲高帶寬通信網絡。所述共享 相干存儲器高速緩存可以用于存儲定義了位于三維場景內的對象的 幾何信息,并且該低延遲高帶寬通信網絡可以用于在處理元件之間傳
            遞數據處理工作。
            以下參照了本發明的實施例。然而應該理解,本發明不限于具體 的所述實施例。相反,以下特征和要素的任何組合,不論它們是否關 于不同的實施例,都被考慮用來實施和實踐本發明。此外,在各種實 施例中,本發明與現有技術相比提供了大量優點。然而,雖然本發明 的實施例與其他可能的解決方案相比和/或與現有技術相比可以實現
            優點,但是特定優點是否通過給定的實施例來實現并不是對本發明的 限制。因而,以下各方面、特征、實施例和優勢僅是示例性的,并且
            不被認為是所附權利要求的要素或限制,除非在權利要求中明確記 載。相似地,提到"本發明"時不應被解釋為對在此公開的任何創造性 主題的概括,并且不應被認為是所附權利要求的要素或限制,除非在 權利要求中明確記載。
            本發明的一個實施例被實施為用于計算機系統的程序產品,該計 算機系統例如是以下所述的圖像處理系統。該程序產品的(一個或多 個)程序定義了各實施例(包括在此所描述的方法)的功能,并且可 以被包含在各種計算機可讀介質上。示例性計算機可讀介質包括但不
            限于(i)永久存儲在不可寫存儲介質(例如計算機內的只讀存儲器 裝置,諸如CD-ROM驅動器可讀的CD-ROM盤)中的信息;(ii) 存儲在可寫存儲介質(例如磁盤驅動器中的軟盤或硬盤驅動器)中的 可改變信息;以及(iii)諸如經由計算機或者電話網絡之類通過通信 介質傳送到計算機的信息,其中所述通信介質包括無線通信。后者的 實施例具體包括從因特網和其他網絡下載的信息。這種計算機可讀介 質在承載有針對本發明的功能的計算機可讀指令時表示本發明的實 施例。
            總體上,被執行以實施本發明的實施例的例程(routine)可以 是操作系統或者具體應用、組件、程序、模塊、對象、或者指令序列 的 一部分。本發明的計算機程序 一般包括將由本地計算機翻譯成機器 可讀格式從而成為可執行指令的大量指令。并且,程序包括變量和數 據結構,它們或者駐留在程序本地,或者存在于存儲器中或存儲裝置中。此外,此后描述的各種程序可以基于在本發明的具體實施例中實 施它們的應用而被標識。然而,應該認可,隨后的任何特定的程序命 名法僅用于方便的目的,因而本發明不應被限制為僅在由這種命名法 標識和/或暗示的任何具體應用中使用。
            示例性多核處理元件
            圖l示出了根據本發明的一個實施例的多核處理元件100。該多 核處理元件100包括多個基本吞吐引擎(basic throughput engine )105 (BTE) 。 BTE 105可以包括多個處理線程和核高速緩存(例如LI 高速緩存)。位于每個BTE內的處理線程可以具有對共享多核處理 元件存儲器高速緩存IIO (例如共享L2高速緩存)的訪問入口。
            BTE 105還可以具有對多個接收箱115的訪問入口。以下關于圖 3進一步描述的接收箱115可以是存儲器映射地址空間。接收箱115 可以被映射到位于每個BTE 105內的處理線程。位于BTE內的每個 線程可以具有存儲器映射接收箱和對所有其他存儲器映射接收箱115 的訪問入口。接收箱115組成BTE 105所使用的低延遲高帶寬通信網 絡。
            BTE可以使用接收箱115作為用于彼此通信的網絡,并且在BTE 之間重新分發數據處理工作。對于一些實施例,可以在通信網絡中使 用分立的發送箱,以便例如接收BTE105進行的處理的結果。對于其 他實施例,接收箱115還可以充當發送箱,例如一個BTE 105將處理 功能的結果直接寫入將使用該結果的另一 BTE 105的接收箱中。
            圖像處理系統的總體性能(aggregate performance )可能依賴于 BTE能多好地劃分和重新分發工作。接收箱115的網絡可以用于收集 工作并且將工作分發給其他BTE,而不使幀之間不具相千性的BTE 通信數據分組破壞共享多核處理元件高速緩存110。每幀可以渲染幾 百萬個三角形的圖像處理系統可以包括以這種方式連接的許多BTE 105。
            在本發明的一個實施例中, 一個BTE 105的多個線程可以-故分 配給工作負載管理器。圖像處理系統可以使用從三維場景渲染二維圖
            像的各種軟件和硬件組件。如關于圖6在下文中進一步描述的,根據 本發明的一個實施例,圖像處理系統可以使用工作負載管理器,以利 用圖像處理系統所發出的射線來遍歷空間索引。如關于圖4在下文中 進一步描述的,空間索引可以被實施為樹型數據結構,用于將相對大 的三維場景劃分為更小的包圍體。將射線追蹤方法用于圖像處理的圖 像處理系統可以使用空間索引來快速確定射線與包圍體的相交。在本 發明的一個實施例中,工作負載管理器可以通過使用空間索引來執行 射線-包圍體相交測試。
            在本發明的一個實施例中,多核處理元件100上的多核處理元件 BTE 105的其他線程可以是向量吞吐引擎(vector throughput engine)。在工作負載管理器確定射線與包圍體的相交之后,工作負 載管理器可以經由接收箱115將射線發出(發送)到多個向量吞吐引 擎之一。根據本發明的一個實施例,并且如關于圖6在下文中進一步 描述的,向量吞吐引擎然后可以確定射線是否與包圍體內所包含的圖 元(primitive)相交。向量吞吐引擎還可以執行與確定射線所穿過的 像素的顏色相關的操作。
            圖2示出了根據本發明的一個實施例的多核處理元件200的網 絡。圖2還示出本發明的一個實施例,其中多核處理元件100的BTE 之一的線程是工作負載管理器205。根據本發明一個實施例,多核處 理元件200的網絡中的每個多核處理元件22(h-N可以包含一個工作負 載管理器205"N。根據本發明的一個實施例,多核處理元件200的網 絡中的每個處理器220還可以包含多個向量吞吐引擎210。
            根據本發明一個實施例,工作負載管理器22(h-N可以使用高速 總線225與其他工作負栽管理器22(h-N和/或其他多核處理元件220 的向量吞吐引擎210進行通信。每個向量吞吐引擎210可以使用高速 總線225與其他向量吞吐引擎210或工作負載管理器205進行通信。 工作負載管理器處理器205可以使用高速總線225來收集圖像處理相 關的任務并且將圖像處理相關的任務分發給其他工作負載管理器處
            理器205,且/或將任務分發給其他向量吞吐引擎210。使用高速總線 225可以允許工作負載管理器205n進行通信,而不使和工作負載管 理器205通信相關的數據分組影響高速緩存230。
            低延遲高帶寬通信網絡
            如上所述,圖像處理系統的總體性能可能取決于BTE能多好地 劃分和重新分發工作。根據本發明的一個實施例,高速緩存內的被稱 為存儲器接收箱的存儲空間可以被用于將工作分發給單個處理器線 程。在使用各自具有多個線程的多個處理器的圖像處理系統中,接收 箱的集合可以被一起稱作低延遲高帶寬通信網絡。
            在諸如BTE 105之類的多線程處理器中,存儲器接收箱可以被 分配給給定的線程(在此被稱作所有者線程(owner thread))。在 本發明的一個實施例中,用于接收箱的存儲空間可以從共享存儲器高 速緩存110被排他地分配給所有者線程。通過將高速緩存中的存儲空 間排他地分配給所有者線程,所有者線程可以維持足夠的存儲空間, 以高速緩存其自身的指令和數據,而不讓具有其他竟爭線程的其他線 程取代(displace)所有者線程的指令和數據。因而,存儲器接收箱 可以通過將所有者線程的數據和指令保持在高速緩存的所分配的接 收箱部分中,并且降低使所有者線程停止的可能性,同時從更高級存 儲器中檢索用于所有者線程的數據和指令,從而改善所有者線程的執 行。此外,通過將高速緩存中的存儲空間分配給所有者線程,意圖用 于目標線程的數據或指令可以僅存儲在分配給該線程的接收箱中。因 而,意圖用于目標線程的數據或指令并不存儲在整個共享存儲器高速 緩存110中,而是僅存儲在分配給目標線程的接收箱中。
            此外,接收箱存儲器可以由其他線程使用來有效地與所有者線程 通信。例如,對于接收箱而言,當另一線程具有要被提供給所有者線 程的數據和/或指令時,該另一線程可以將數據和/或指令發送給該接 收箱,其中所有者線程能夠從中檢索數據和/或指令。類似地,在一些 情況下,所有者線程可以使用接收箱作為與其他線程進行信息通信的發送箱。例如,為了與另一線程進行信息通信,所有者線程可以將信 息置于接收箱中,并且將指示該數據和/或指令的位置的通知發送給該 另一線程,從而允許該另一線程檢索該信息。可選地,該所有者線程 可以將該信息直接提供給該另一線程的接收箱。因而,可以使用接收 箱存儲器來簡化發送和接收線程之間的通信,同時防止其他線程正在 使用的數據和/或指令將其取代。
            圖3A是根據本發明一個實施例的多核處理器元件100中的存儲 器接收箱302...318的方框圖。對存儲器接收箱302...318的描繪是概 念性的視圖,因此不被限制于任何特定的物理配置。如所描繪的,在 每個核(例如BTE105)中執行的線程(例如線程T0-T7)可以經由 共享L2高速緩存接口 322而具有對共享L2高速緩存110的訪問入口 。 此外,線程T0…T7也可以使用L2高速緩存接口 322來訪問相應的 存儲器接收箱302...318。如上所述,在一些情況下,每個接收箱 302...318可以被分配給相應的線程T0.,.T7。因而,接收箱0 302可 以被分配給線程TO,依此類推。如下所述,通過將給定的接收箱分 配給給定的線程,對于所有者線程,對所分配的接收箱的訪問可以是 無限制的,而其他線程的訪問可以被限制。在下文中更詳細地描述示 例性的限制。
            圖3B是描繪了向和從處理核(例如BTE 105 )傳輸的、來自存 儲器接收箱(例如接收箱302...308 )和共享L2高速緩存110的數據 的路徑的方框圖。如上所述,存儲器接收箱302...308和共享L2高速 緩存110這二者都可以經由共享L2高速緩存接口 322而4皮訪問。當 在BTE 105中正在被執行的線程從接收箱302...308或者從共享L2 高速緩存110檢索數據時,所檢索的數據可以被置于BTE 105的Ll 高速緩存312中。用于該線程的指令可以從發布單元332被發布。在 一些情況下,BTE 105可以被配置為并發地執行多個線程。因而,發 布單元332可以被配置為發布用于多個線程的指令。在一些情況下, BTE 105可以提供多個執行單元334...338 ,它們可以被用于并發地執 行BTE 105中的線程。執行單元334…338可以包括定點執行單元334、
            浮點執行單元336、以及分支執行單元338。
            在一些情況下,線程可以更新或者產生要在之后被訪問(例如由 同一線程或由另一線程訪問)的數據。當被更新的數據要在之后被訪 問時,該線程可以將被更新的數據置于Ll高速緩存312中。此外, 在需要的時候,被更新的數據也可以經由共享L2高速緩存接口 322 被置于L2高速緩存110或用于更新的線程的接收箱302...308中。在 一些情況下,如上所述,經由共享L2高速緩存接口 322對給定接收 箱(例如接收箱0 302)的直接訪問可以被限制為擁有該給定接收箱 的線程(例如線程T0)。
            在本發明一個實施例中,存儲器接收箱內的存儲空間可以被映射 到全局存儲器地址(例如,包括Ll高速緩存312、 L2高速緩存110、 和主存儲器的所有存儲器級、以及所有線程都可以使用相同的全局存 儲器地址來訪問給定的存儲器接收箱)。因而,在本發明一個實施例 中,為了訪問接收箱存儲空間,所有者線程可以僅在對應于該接收箱 存儲空間的全局存儲器地址中讀或寫所需的信息。不具有該存儲器接 收箱、并且試圖經由全局存儲器地址直接訪問該接收箱的線程對該接 收箱的訪問可能被拒絕。作為代替,其他形式的訪問可以被提供給其 他非所有者線程,例如經由發送到接收箱的分組化的消息。
            并且,在本發明的一個實施例中,被存儲在存儲器接收箱中的信 息可能是不可高速緩存的。例如,Ll高速緩存312、 L2高速緩存110、 以及其他存儲器級中的信息可以通過多核處理元件100而被自動高速 緩存,使得在被訪問的同時,從給定存儲器地址請求的信息可以自動 地從主存儲器被抽取,并且保持在高速緩存級312、 110之一中。相 反,給定接收箱中的全局可尋址存儲器可能僅位于該接收箱中,并且, 在不被拷貝到接收箱之外的新地址空間的情況下,不能在不同級的存 儲器層級(例如主存儲器、共享L2高速緩存存儲器110、或Ll高速 緩存存儲器)之間移動。因而,可以快速且直接地執行所有者線程對 接收箱的訪問,而不用等候信息從另一存儲器層級被抽取和/或在抽取 的過程中被翻譯。接收箱存儲器的不可高速緩存性對于下述的接收箱
            的分組化訪問也可適用。此外,在本發明的替換實施例中,存儲在接 收箱中的信息可以被高速緩存在其他的存儲器層級中。
            存儲器接收箱的分配
            在本發明一個實施例中,可以從共享存儲器高速緩存110提供存 儲器接收箱(例如可以為接收箱存儲器115保留L2高速緩存110的 一部分)。圖3C是描繪了根據本發明的一個實施例的從共享L2高速 緩存110劃分的接收箱存儲器115的方框圖。
            如所描繪的,每個接收箱302、 304等的尺寸和位置等可以由接 收箱控制寄存器340控制。每個接收箱302、 304等的狀態(例如有 效或無效)可以經由接收箱狀態寄存器362被指示和/或修改。在一個 實施例中,對接收箱控制寄存器340的訪問可以是無限制的。可選地, 在一些情況下,對接收箱控制寄存器的訪問例如可以被限制為例如所 許可的線程的子集(例如所有者線程、所有者線程的父線程、具體指 定的控制線程、和/或操作系統內核線程)。在一個實施例中,接收箱
            控制寄存器340可以包括開始地址寄存器342、 348..... 354,尺寸
            寄存器344、 350、 ...358,以及所有者線程標識寄存器346、 352、 ...358。
            在一個實施例中,開始地址寄存器342、 348..... 354可以指示
            每個接收箱302、 304等的開始地址。尺寸寄存器344、 350、 ...356 可以指示相應接收箱302、 304等的尺寸。接收箱的存儲空間因而可 以占據從相應開始地址開始、并且貫穿所指示的接收箱尺寸的每個地 址。可以按照任何方式指示尺寸,例如作為以字節表示的絕對尺寸, 或者作為固定尺寸的整數倍(例如尺寸寄存器344、 350、 358中的尺 寸可以以千字節指示尺寸)。
            在一個實施例中,所有者線程標識寄存器346、 352、 ...358可以 標識哪個線程(例如線程TO、 Tl...TN)擁有給定的接收箱302、 304 等。雖然關于線程和相應的接收箱1、 2...N進行了描繪,本發明的實 施例可以使用任何類型的線程和/或接收箱標識符(例如號碼、地址 等)。在本發明的一個實施例中,接收箱標識符寄存器可以用于將對相應接收箱內的存儲器地址的直接訪問限制為所有者線程。在一些情 況下,也可以通過其他線程的受限選擇來允許直接訪問,所述其他線 程例如是所有者線程的父線程、指定的控制線程、和/或操作系統內核
            線程。在一個實施例中,訪問控制電路360可以被用于提供受限的訪問。
            通過將共享存儲器高速緩存110的各部分分配給接收箱,可以形 成低延遲高帶寬通信網絡。共享存儲器高速緩存110的剩余部分可以
            保持未分配,因而可用于存儲與處理線程之間的通信無關的信息。共
            享存儲高速緩存110的其余部分可以用于存儲圖像處理系統用來執行 射線追蹤(以下將參照圖5進一步描述)的幾何特征和數據結構。
            僅使用接收箱用于處理線程之間的通信并且使用共享存儲器高 速緩存110的其余部分存儲幾何特征和數據結構的優點在于,無論多 少與通信相關的信息通過接收箱,它也不會消耗整個存儲器高速緩 存。因而,如以下將進一步描述的,與通信相關的信息將不會取代存 儲在共享存儲器高速緩存100的其余部分內的幾何特征和數據結構。 因此,在追蹤后續的射線或者渲染后續的幀時可能被再使用的數據 (對象幾何特征和數據結構)可以保留在高速緩存中,而在追蹤后續 的射線或者渲染后續的幀(數據處理工作)時不太可能被再使用的數 據將不保留在高速緩存中。
            示例性三維場景
            圖4是要由圖像處理系統渲染的示例性三維場景405。在三維場 景405中的可以是對象420。圖4中的對象420具有不同的幾何形狀。 雖然在圖4中僅示出了四個對象420,但是在典型三維場景中的對象 的數量可以更多或者更少。 一般,三維場景會具有比圖4中所示的多 很多的對象。
            從圖4中可以看出,對象具有不同的幾何形狀和尺寸。例如,圖 4中的一個對象是棱錐420A。圖4中的其他對象是盒子420B-D。在很 多現代圖像處理系統中,對象經常被分裂為更小的幾何形狀(例如正
            方形、圓圏、三角形等)。然后,更大的對象由若干更小的簡單幾何 形狀表示。這些更小的幾何形狀經常被稱為圖元。
            在場景405中還示出了光源425A_B。光源可以照亮位于場景405 內的對象420。此外,取決于光源425和對象420在場景405內的位 置,光源可能使陰影被投射到場景405內的對象上。
            可以通過圖像處理系統將三維場景405渲染成二維圖片。圖像處 理系統還可以使二維圖片顯示在監視器410上。監視器410可以使用 不同顏色的多個像素430來渲染最終的二維圖片。
            圖像處理系統所用的將三維場景420渲染成二維圖片的一種方 法被稱作射線追蹤。通過圖像處理系統從觀察者415的視角向三維場 景420中"發出"或"射出"射線來完成射線追蹤。所述射線具有與光線 相似的特性和行為。
            在圖4中可以看到起源于觀察者415的位置、并且穿過三維場景 405的一條射線440。隨著射線440從觀察者415穿過到三維場景405, 射線440通過圖像處理系統將渲染出最終二維圖片的平面。在圖4中, 此平面由監視器410表示。射線440通過該平面或監視器410的點由 像素435表示。
            如前文中簡短討論的,多數圖像處理系統使用幾千個(若非幾百 萬個)像素的柵格430而在監視器410上渲染最終場景。每個單個像 素可以顯示不同顏色而在監視器410上渲染最終的合成二維圖片。使 用射線追蹤圖像處理方法從三維場景渲染二維圖片的圖像處理系統
            將計算發出的一條或多條射線在三維場景中所遇到的顏色。然后,該 圖像處理場景將射線遇到的顏色分配給該射線在其從觀察者到三維 場景的途中通過的像素。
            每個像素所發出的射線的數量可以不同。一些像素可以具有對于 要被渲染的特定場景而發出的許多射線。在這種情況下,該像素的最 終顏色由針對該像素發出的所有射線對每個顏色的貢獻來確定。其他 像素可以僅具有單條射線,其被發出以便確定二維圖片中的像素的所 得顏色。 一些像素可以不具有任何由圖像處理系統發出的射線,在這
            種情況下,可以通過該圖像處理系統內的算法來確定、近似、或分配 它們的顏色。
            為了確定二維圖片中的像素435的最終顏色,圖像處理系統必須 確定射線440是否與場景內的對象相交。如果該射線沒有與場景內的 對象相交,則可以為它分配默認背景顏色(例如表示白天或夜晚天空 的藍色或黑色)。相反,在射線440穿過三維場景時,射線440可能 會撞擊到對象。當射線撞擊到場景內的對象時,對象的顏色可以被分 配給射線所通過的像素。然而,必須在將對象顏色分配給像素之前確 定該對象的顏色。
            許多因素都可以對原始射線440所撞擊到的對象的顏色有所貢 獻。例如,三維場景內的光源可以照亮對象。此外,對象的物理特性 可以對對象的顏色有所貢獻。例如,如果對象是反射性的或者是透明 的,則其他非光源對象可以對該對象的顏色有貢獻。
            為了確定來自三維場景內的其他對象的效果,可以從原始射線 440與對象相交的點發出次級射線。例如, 一種類型的次級射線可以 是陰影射線。陰影射線可以用于確定光對原始射線440與對象相交的 點的貢獻。另一種類型的次級射線可以是透射射線。透射射線可以用 于確定怎樣的顏色或者光可能透射穿過對象的本體。此外,第三種類 型的次級射線可以是反射射線。反射射線可以用于確定怎樣的顏色或 光被反射到對象上。
            如上所述, 一種類型的次級射線可以是陰影射線。可以從原始射 線與對象的相交點到三維場景405內的光源來追蹤每條陰影射線。如 果射線到達光源而在該射線到達光源之前沒有遇到另一對象,則光源 將在原始射線撞擊到對象的點上照亮原始射線所撞擊到的對象。
            例如,陰影射線441a可以從原始射殘440與對象420a相交的點 發出,并且可以在向著光源425A的方向上穿過。陰影射線44U到達 光源425A而沒有遇到場景405內的任何其他對象420。因此,光源425A 將在原始射線440與對象42(U相交的點處照亮對象420A。
            其他陰影射線的路徑可以在原始射線撞擊到對象的點和被三維場景內的另一對象阻擋的光源之間。如果阻擋對象上原始射線所撞擊 的點和光源之間的路徑的對象是不透明的,則光源將不在原始射線撞 擊該對象的點處照亮該對象。因而,光源可能對原始射線的顏色沒有 貢獻,并且因此也對要在二維圖片中被渲染的像素的顏色沒有貢獻。 然而,如果該對象是半透明或透明的,則光源可以在原始射線撞擊該 對象的點處照亮該對象。
            例如,陰影射線441b可以從原始射幾440與對象420a相交的點 處發出,并且可以在向著光源425B的方向上穿過。在此示例中,陰影 射線44lB的路徑被對象420D阻擋。如果對象420j)是不透明的,則光 源425b將不在原始射幾440與對象42(U相交的點處照亮對象420A。 然而,如果對象420D對陰影射線是半透明或透明的,則光源425b可 以在原始射線440與對象420A相交的點處照亮對象420A。
            另一類型的次級射線是透射射線。如果原始射線相交的對象具有 透明或者半透明特性(例如玻璃),則圖像處理系統可以發出透射射 線。透射射線以與原始射線撞擊對象的角度有關的角度穿過該對象。 例如,可以看到透射射線444穿過原始射線440所相交的對象420A。
            另一類型的次級射線是反射射線。如果與原始射線相交的對象具 有反射特性(例如金屬拋光面),則圖像處理系統將發出反射射線, 以確定對象可能反射怎樣的顏色或光。反射射線以與原始射線和對象 相交的角度有關的角度遠離對象而穿過。例如,圖像處理系統可以發 出反射射線443,以確定原始射線440所相交的對象420A會反射怎樣 的顏色或光。
            所有次級射線(例如陰影射線、透射射線、反射射線等)對顏色 和光的總貢獻將得出原始射線所通過的像素的最終顏色。
            示例性KD樹
            當執行射線追蹤時遇到的 一個問題是快速和有效地確定發出的 射線是否與要被渲染的場景內的任何對象相交。本領域技術人員所公 知的使射線相交的確定更有效的 一種方法是使用空間索引(spatial
            index)。空間索引將三維場景或世界分割為更小的體積(相對于整個 三維場景更小),所述更小的體積可能包含也可能不包含圖元。圖像 處理系統可以接著使用這些更小的體積的已知邊界來確定射線是否 會與包含在所述更小的體積內的圖元相交。如果射線與包含圖元的體 積相交,則可以使用射線相對于已知位置的軌跡以及包含在該體積內 的圖元的尺寸來運行射線相交測試。如果射線不與特定體積相交,則 沒有必要對于包含在該體積內的圖元運行射線-圖元相交測試。此外, 如果射線與不包含圖元的包圍體相交,則也沒有必要對于該包圍體運 行射線-圖元相交測試。因而,通過降低所必要的射線-圖元相交測試 的數量,使用空間索引大大地提高射線追蹤圖像處理系統的性能。不 同空間索引加速度數據結構的一些示例包括八叉樹、k維樹(kd樹)、 以及二叉空間劃分樹(BSP樹)。雖然存在若干不同的空間索引結構, 為了易于描述本發明的實施例,在以下的示例中將使用kd樹。然而, 本領域中的技術人員將容易認可,本發明的實施例可以被應用于任何 不同類型的空間索引。
            kd樹使用軸對齊包圍體以將整個場景或空間分割為更小的體 積。即,kd樹可以通過利用與已知的軸平行的分割平面來劃分場景所 環繞的三維空間。分割平面將較大的空間分割成較小的包圍體。較小 的包圍體共同組成場景中的整個空間。可以由圖像處理系統通過使用 kd樹構造算法來確定將較大包圍體分割(劃分)成兩個較小包圍體。
            用于確定何時將包圍體分割成更小體積的一個準則可以是包圍 體內所包含的圖元的數量。即,只要包圍體包含的圖元數量多于預定 閾值,則樹構造算法可以通過繪出更多的分割平面來繼續劃分體積。 用于確定何時將包圍體分割成更小體積的另一準則可以是包含在包 圍體內的空間的量。此外,對繼續分割包圍體的決定還可以基于多少 圖元會與產生包圍體的平面相交。
            對場景的分割可以利用由節點、分支、和葉子組成的二叉樹結構 表示。樹內的每個內部節點可以表示相對大的包圍體,而該節點可以 包含到子節點的分支,所述子節點可以表示通過分割平面分割相對大
            的包圍體之后得到的兩個相對小的分割體積。在軸對齊kd樹中,每 個內部節點可以僅包含到其他節點的兩個分支。內部節點可以包含到 一個或兩個葉子節點的分支(即指針)。葉子節點是不再被進一步次 劃分成更小體積、并且包含到圖元的指針的節點。內部節點也可以包 含到被進一步次劃分的其他內部節點的分支。內部節點還可以包含確 定沿著什么軸畫出分割平面、以及沿著該軸在哪里畫出分割平面所需 的信息。
            示例性包圍體
            圖5A-5C示出了要由圖像處理系統渲染的二維空間和相應的kd 樹。為了簡單起見,使用二維場景來說明kd樹的構建,然而kd樹還 可以用來表示三維場景。在圖5A-5C的二維圖示中,示出了分割線而 不是分割平面,并且示出了包圍區域而不是三維結構中將用到的包圍 體。然而,本領域技術人員會很快認可,這種概念可以容易地應用于 包含對象的三維場景。
            圖5A示出了要在監視器510上顯示的最終圖片中要被渲染的、 包含圖元510的二維場景505。表示場景的整個體積的最大的體積被 包圍體l(BVi)環繞。在相應的kd樹中,這可以由頂層節點550表 示,這也被稱為根節點或世界節點。在圖像處理系統的一個實施例中, 當包圍體例如包含多于兩個圖元時,圖像處理系統可以將該包圍體繼 續分割成更小的包圍體。如前文所述,對將包圍體繼續分割成更小的 包圍體的決定可以基于許多因素,然而,為了說明的簡單,在此示例 中,對繼續分割包圍體的決定僅基于圖元的數量。如從圖5A中可以 看出的,BVi包含六個圖元,因此kd樹構造算法可以將BVi分割成 更小的包圍體。
            圖5B示出了與圖5A中所示的相同的二維場景505。然而,在 圖5B中,樹構造算法已經將BVi分割成兩個更小的包圍體BV2和 BV3。通過在點xr沿著y軸畫出分割平面SPi 515而完成對BVi的分 割。對BV!的此分割還反映在kd樹中作為內部節點或父節點BV, 550
            之下的分別對應于BV2和BV3的兩個節點555和560。表示BVi的內 部節點現在可以存儲信息,所述信息諸如是但不限于對BVi之下的兩 個節點(例如BV2和BV3)的指針、沿著哪個軸畫出了分割平面(例 如y軸)、以及沿著該軸在哪里畫出了分割平面(例如在點&處)。
            Kd樹構造算法可以繼續分割包圍體BV3,因為它包含多于預定 閾值數量的圖元(例如多于兩個圖元)。然而,kd樹構造算法不能繼 續分割包圍體BV2,因為包圍體BV2包含的圖元數量少于或等于該圖 元數量(例如僅有兩個圖元510A)。沒有被分割或進一步再次劃分的 節點諸如BV2被稱為葉子節點。
            圖5C示出了與圖5B示出的相同的二維場景505。然而,在圖 5C中,kd樹構造算法已將BV3分割成了兩個更小的包圍體BV4和 BV5。 Kd構造算法已使用在點力處沿x軸的分割平面分割了 BV3。 由于BV3已被分割成兩個子節點,因此它現在可以被稱作內部節點。 對BV3的分割也被反映在kd樹中,作為分別對應于BV4和BV5的兩 個葉子節點565和570。 BV4和BVs是葉子節點,因為它們所表示的 體積不被進一步劃分成更小的包圍體。這兩個葉子節點BV4和BV5 在kd樹中位于表示被分割的包圍體的內部節點BV3之下。
            表示BV3的內部節點可以存儲信息,諸如但不限于對兩個葉子 節點(例如BV4和BVs)的指針、沿著哪個軸畫出了分割平面(即x 軸)、以及沿著該軸在哪里畫出了分割平面(即在點w處)。
            Kd樹構造算法現在可以停止分割包圍體,因為位于場景內的所 有包圍體包含的圖元數量少于或等于可以在包圍體內所包含的最大 預定圖元數量。葉子節點可以包含對包圍體內含有的由每個葉子所表 示的圖元的指針。例如,葉子節點BV2可以包含對圖元510A的指針, 葉子節點BV4可以包含對圖元510B的指針,并且葉子節點BVs可以 包含對圖元510c的指針。
            所得到的kd樹結構或者其他空間索引結構可以被存儲在共享存 儲器高速緩存110中。kd樹和包含該kd樹的相應的數據的尺寸可以 為了在共享存儲器高速緩存110中存儲而被最優化。
            迭代射線追蹤算法
            根據本發明一個實施例,將射線追蹤算法從遞歸算法變換成疊代 算法可以使得能夠在多個處理元件之間有效地分發與射線追蹤有關 的工作負載。疊代射線追蹤算法與遞歸射線追蹤算法相反,可以允許 各個處理元件執行與確定單個像素的顏色有關的操作,并且允許有效 使用處理器資源(例如存儲器高速緩存)。在多個處理元件之間有效 地分發工作負載可以改善射線追蹤圖像處理系統性能。
            用于執行射線追蹤的算法在以下方面的意義上可以是遞歸的它 將原始射線發射到三維場景中,并且在將隨后的原始射線發出到該三 維場景中之前完成與已發出的原始射線有關的所有射線追蹤操作(例 如,追蹤所有次級射線,并且執行所有射線-對象相交測試)。
            例如,圖像處理系統可以使用遞歸射線追蹤算法,以從三維場景 渲染二維圖像。使用遞歸射線追蹤算法的圖像處理系統可以使用處理 元件以執行射線追蹤。處理器可以被用來使射線遍歷空間索引,并且 確定該射線是否與空間索引的包圍體內的任何對象相交。如果射線與 包圍體內所包含的對象相交,則圖像處理系統可以使用同 一處理器將 次級射線發出到三維場景中以確定它們是否與任何對象相交并且因 此對該原始射線所相交的對象貢獻顏色。在執行與確定次級射線是否 與三維場景內的對象相交有關的操作的同時,處理器可以在處理器的
            存儲器高速緩存中存儲定義該原始射線的信息。
            如果處理元件確定次級射線與三維場景內的對象相交,則圖像處 理元件可以將更多的次級射線發出到該場景中,以確定這些次級射線 是否與對象相交并且對與原始射線相交的對象貢獻顏色。當執行計算 以確定次級射線是否與三維場景內的對象相交時,處理器可以將先前 的次級射線信息存儲在存儲器的存儲器高速緩存中。通過向場景中發 出越來越多的次級射線,圖像處理系統可以最終確定次級射線對與原 始射線相交的對象的總的顏色貢獻。可以從與原始射線相交的對象的 顏色、以及由于次級射線引起的顏色貢獻最終確定原始射線所通過的
            像素的顏色。
            雖然遞歸射線追蹤算法確定原始射線所通過的像素的顏色,每當 圖像處理系統將更多的次級射線發出到三維場景中時,遞歸射線追蹤 圖像處理系統將定義先前射線(例如原始射線或者先前的次級射線) 的信息置于處理元件的存儲器高速緩存中。圖像處理系統可以將射線 信息存儲在高速緩存中,以便釋放執行與確定隨后的次級射線是否與 三維場景內的對象相交有關的計算可能需要的寄存器。因此,遞歸射 線追蹤圖像處理系統可能將大量(與高速緩存的大小相比)信息置于 用于單個像素的處理器的存儲器高速緩存中。
            通過將大量射線信息存儲在處理器的存儲器高速緩存中,在處理 器的存儲器高速緩存中只有很少或沒有空間用于定義三維場景內的 對象的信息(即對象幾何數據)。此信息可能需要頻繁地從主存儲器 中被抽取到存儲器高速緩存中,以便執行操作以確定原始或次級射線
            是否與三維場景內的對象相交(從而"反復使用(thrash ),,高速緩存)。 因此,使用遞歸射線追蹤技術的圖像處理系統的極限會被從主存儲器 抽取信息、并且將其置于處理器的存儲器高速緩存中的訪問時間所限 制。
            然而,根據本發明的實施例,射線追蹤算法可以被分割為迭代射 線追蹤算法。迭代射線追蹤算法可以允許各個處理元件執行射線追蹤 算法的各部分。通過允許各個處理元件執行射線追蹤算法的各部分, 需要被高速緩存的信息量(例如原始射線和次級射線)可以降低。此 外,根據本發明的實施例,迭代射線追蹤算法可以與低延遲高帶寬通 信網絡和共享存儲器高速緩存110結合使用,以便改善射線追蹤圖像 處理系統的性能。
            如上文參照圖3A-3C所述,根據本發明的實施例,接收箱的低 延遲高帶寬通信網絡可以被用于傳遞或發送在追蹤隨后的射線或者 渲染隨后的幀時幾乎沒用的數據處理信息(例如定義原始射線和次級 射線的信息)。另外,根據本發明的實施例,射線追蹤圖像處理系統 可以使用共享相干存儲器高速緩存來存儲圖像處理系統在追蹤隨后
            的射線或者對隨后的幀執行射線追蹤時會使用到的信息。
            圖6是示出了根據本發明的一個實施例的、可被用于多處理器圖 像處理系統中的被分割因而迭代的射線追蹤算法或方法600的流程 圖。方法600開始于步驟605,其中圖像處理系統將原始射線發出到 三維場景中。原始射線可以在其穿過進入三位場景中時通過像素。原 始射線可以被用于確定原始射線所通過的像素的顏色。
            接著,在步驟S610,圖像處理系統可以使用工作負栽管理器205 處理元件來遍歷空間索引(例如kd樹)。空間索引可以被存儲在圖 像處理系統的共享存儲器高速緩存110內。遍歷kd樹可以包括執行 用于確定原始射線是否與空間索引內的節點所定義的包圍體相交的 計算。此外,遍歷空間索引可以包括取分支到定義了與射線相交的包 圍體的節點。工作負載管理器205可以使用發出的射線(例如原始射 線)的坐標和軌跡來確定該射線是否與空間索引中的節點所定義的包 圍體相交。工作負載管理器205可以繼續遍歷空間索引,直到原始射 線與僅包含圖元的包圍體(即葉子節點)相交。
            在步驟S615,在工作負載管理器205將原始射線遍歷到葉子節 點之后,工作負載管理器205可以將原始射線和定義葉子節點的信息 發送到向量吞吐引擎210。工作負載管理器205可以將定義原始射線 和葉子節點的信息(例如射線的軌跡、原始射線所穿過的像素、葉子 節點所定義的包圍體等)發送到向量吞吐引擎210。工作負載管理器 205可以通過將定義該射線和相交的葉子節點的該信息寫入向量吞吐 引擎210的接收箱中,而將該信息發送給向量吞吐引擎210。
            通過將像素信息與定義原始射線的信息耦合在一起,如果向量呑 吐引擎210確定該射線與對象相交并且因此確定像素的顏色,則不需 要將原始射線發送回工作負載管理器205。根據本發明一個實施例, 向量吞吐引擎210可以通過對幀緩沖器內的對應于像素的存儲器位置 進行寫入(例如存儲在共享存儲器高速緩存110中)而使用像素信息 來更新該像素的顏色。通過在次級射線與三維場景內的對象相交時更 新像素顏色,需要被存儲(例如在高速緩存存儲器中)的關于同一像
            素的射線的數量可以減少。
            在工作負載管理器205將原始射線信息發送到向量吞吐引擎210 之后,圖像處理系統可以將隨后的原始射線發出到三維場景中。在工 作負載管理器205已將原始射線發送到向量吞吐引擎210之后,工作 負載管理器205可以立即開始使此隨后發出的原始射線遍歷空間索 引。因而,工作負栽管理器205可以連續地使射線遍歷空間索引,而 不是如遞歸射線追蹤算法中那樣等候直到完成對原始射線是否與對 象相交的確定。此外,當向量吞吐引擎210正在確定先前發出的射線 是否與葉子節點所定義的包圍體內的對象相交時,工作負載管理器 205可以使射線遍歷空間索引。根據本發明一個實施例,向量吞吐引 擎210可以負責執行射線-圖元相交測試。即,向量吞吐引擎210可以 確定射線是否與包含在葉子節點所定義的包圍體內的任何圖元相交。
            因此,在步驟620中,在其接收箱中接收射線和葉子節點信息的 向量吞吐引擎210可以執行射線-圖元相交測試,以確定射線是否與葉 子節點所定義的包圍體內的任何圖元相交。定義了圖元的幾何特征可 以被存儲在共享存儲器高速緩存110內,因而不會需要從主存儲器抽 取出。通過將用于圖元的幾何特征存儲在共享存儲高速緩存110中, 迭代射線追蹤算法不會像遞歸射線追蹤算法那樣需要從主存儲器抽 取該幾何特征。如果向量吞吐引擎210確定原始射線與包含在葉子節 點所定義的包圍體內的圖元相交,則向量吞吐引擎210可以前進到步 驟630。
            在步驟630,向量吞吐引擎210可以確定在原始射線與圖元相交 的點處的相交的圖元的顏色。例如,圖元的顏色可以被存儲在共享存 儲高速緩存110中,并且向量吞吐引擎210可以從共享存儲高速緩存 210中讀取顏色信息。
            在確定了圖元在射線-圖元交叉點處的顏色之后,向量吞吐引擎 210可以更新射線穿過的像素的顏色。這可以通過對幀緩沖器內對應 于原始射線所穿過的像素的存儲器位置進行寫入來完成。通過在確定 了射線-圖元相交時并且在對與原始射線有關的所有次級射線確定顏
            色貢獻之前更新像素信息,可能需要被存儲在存儲器高速緩存中的信 息的量可以減少。相反,直到已經確定了次級射線的所有顏色貢獻之 前,遞歸射線追蹤算法不能將像素的顏色存儲在幀緩沖器中,這增大 了可能需要被存儲在處理器的存儲器高速緩存中的信息的量。
            在更新像素顏色之后,向量吞吐引擎210可以前進到步驟635, 在該步驟中,向量吞吐引擎210可以生成次級射線。如先前參照圖4 所述的,射線追蹤圖像處理系統可以使用次級射線來確定對相交的對 象、因而對原始射線穿過的像素的另外的顏色貢獻。次級射線例如可 以是反射射線、透射(折射)射線、或者陰影射線。生成次級射線例 如可以包括基于原始射線的軌跡、相交的對象的表面特性、以及原始 射線與相交的對象的相交角度來確定次級射線的軌跡。
            在生成次級射線之后,向量吞吐引擎210可以在步驟640中將次 級射線發送到工作負載管理器205。向量吞吐引擎210可以通過將定 義次級射線的信息(例如軌跡、定義原始射線穿過的像素的信息等) 置于工作負栽管理器205的接收箱115中,將次級射線發送到工作負 載管理器205。根據本發明一個實施例,向量吞吐引擎210可以將次 級射線發送到使原始射線遍歷空間索引的工作負載管理器205。然而, 根據本發明的另 一實施例,該圖像處理系統可以包含多個工作負栽管 理器,并且向量吞吐引擎210可以將次級射線發送到不使原始射線遍 歷空間索引的工作負載管理器。
            在將次級射線發送到工作負載管理器205之后,向量吞吐引擎 210可以從接收箱檢索定義射線的其他信息,所述接收箱可能正在等 候射線-圖元相交測試的執行。在向量吞吐引擎210的接收箱中等候的 射線可能已經在之前借助工作負載管理器205遍歷過空間索引。因此, 向量吞吐引擎210可以執行更多的射線-圖元相交測試,以確定射線 (即原始射線或次級射線)是否與葉子節點定義的包圍體內的對象相 交。因而,向量吞吐引擎210可以連續執行與射線-圖元相交測試、確 定圖元顏色、更新像素顏色、以及生成次級射線有關的操作。
            在從向量吞吐引擎210接收次級射線之后,如上所述,工作負載
            管理器205可以執行步驟610和615以確定次級射線是否與葉子節點 相交。
            返回到步驟625,如果向量呑吐引擎210確定射線沒有與葉子節 點定義的包圍體內所包含的圖元相交,則向量吞吐引擎210可以為原 始射線所穿過的像素分配三維場景的背景顏色。背景顏色可以被分配 給該像素,這是因為原始射線沒有與三維場景內所包含的任何圖元相 交。然而,根據本發明的其他實施例,如果射線沒有與葉子節點包圍 體內所包含的任何圖元相交,則向量吞吐引擎210可以將射線發送回 工作負載管理器205,使得工作負栽管理器205可以使射線再次遍歷 空間索引,以確定射線是否與任何包含圖元的其他葉子節點相交。
            迭代射線追蹤算法的示例性使用
            圖7示出了根據本發明的一個實施例的從圖像處理系統發出到 三維場景505中的示例性射線。為了清楚起見,三維場景505與圖 5A-5C中所用的示出kd樹構造的三維場景相同。因此,對應于三維 場景505的kd樹與對于圖5A-5C構造的kd樹相同。如圖7中所示, 觀察者705表示可以由圖像處理系統發出到三維場景505中的多個原 始射線71(h-4的原點。當每條原始射線71(h.4被發出到三維場景中時, 原始射線會首先穿過像素柵格(幀)715中的相應像素。雖然在圖7 中僅示出了四個像素715和四條原始射線710w,然而為了從三維場 景渲染出最終的二維圖像,可能需要多得多的像素,并且可能會發出 多得多的原始射線。
            第一原始射線71(h可以由圖像處理系統發出,并且穿過第一像 素715^第一原始射線71(h可以在相交點h處與包圍體4 (BV4)相 交。為了有助于理解,此示例中的圖像處理系統可以遵循這樣的模式 從像素柵格715的頂部開始發出射線,并且持續發出射線,每個像素 一條射線,向下移動像素柵格,直到已經對于像素柵格中的每個像素 發出了射線。
            還可以由圖像處理系統發出第二原始射線7102和第三原始射線
            7103,它們可以分別穿過第二像素7152和第三像素7153。第二原始射 線7102和第三原始射線7103也可以分別在第二相交點12和第三相交 點I3處與BV4相交。因而,第一原始射線71(h、第二原始射線7102、 以及第三原始射線7103都與同一包圍體相交。此外,第四原始射線 7104可以由圖像處理系統發出,并且可以穿過第四像素7154。第四原 始射線7104與第一組的三條原始射線71(h.3相反,可以在相交點14處 與包圍體5 (BV5)相交。
            圖8A示出了第一原始射線71(h遍歷空間索引805(例如kd樹)。 此外,如畫陰影的方框205所指示,圖8A示出了執行與第一原始射 線71(h遍歷空間索引805有關的操作的工作負載管理器205。工作負 載管理器205可以通過取分支到定義與射線相交的包圍體的節點直到 到達葉子節點(如圖8A中由加黑的分支和節點示出的),使射線遍 歷空間索引805。如圖7中所示,原始射線71(h與BV4相交,因此, 工作負載管理器205將使第 一原始射線71(h遍歷到定義BV4的葉子節 點。在使射線遍歷到葉子節點之后,工作負載管理器205可以將第一 原始射線71(h(例如定義第一原始射線71(h的信息和定義第一原始射 線所穿過的像素715i的信息)和定義相交的葉子節點(即BV4)的信 息發送到向量吞吐引擎210。
            根據本發明的實施例,在工作負載管理器205將第一原始射線 71(h發送到向量吞吐引擎210之后,工作負載管理器205可以開始使 第二原始射線7102遍歷空間索引。因而,工作負載管理器205可以不 斷地使射線遍歷空間索引805,同時向量吞吐引擎210確定射線是否 與所遍歷到的葉子節點所定義的包圍體內的對象相交。
            圖8B示出了穿過包圍體4 (BV4)的第一原始射線71(h。此外, 如畫陰影的方框所指示,圖8B示出了在已經接收到定義第一原始射 線71(h的信息和定義包圍體BV4的信息之后,執行射線-圖元相交測 試的向量吞吐引擎210。如參照圖6所描述的,向量吞吐引擎210可 以執行射線-圖元相交測試,以確定原始射線71(h是否與包圍體BV4 之內所包含的圖元相交。
            向量吞吐引擎210可以對包圍體BV4內的第一對象720、以及對 包圍體BV4內的第二對象725執行與第 一原始射線71(h之間的相交測 試。如圖8B中所示,向量吞吐引擎210可以確定第一原始射線71(h 與第一對象720相交。
            如之前對于方法600所描述的,在確定第一原始射線71(h與對 象相交之后,向量吞吐引擎210可以確定第一對象720在第一原始射 線71(h與第一對象720相交的點處的顏色。在確定對象720在相交點 處的顏色之后,向量吞吐引擎210可以更新第一原始射線71(h所穿過 的像素715i的顏色(例如通過向對應于像素715i的幀緩沖存儲器位 置進行寫入)。
            在確定對象720在該相交點處的顏色之后,向量吞吐引擎210 可以生成次級射線。例如,如圖8C中所示,向量吞吐引擎210可以 生成反射射線730和透射(折射)射線735。這兩條次級射線(730 和735 )均開始于第一原始射線71(h與對象720相交的點。如上所述, 次級射線可以用于確定對該對象在第一原始射線71(h與對象720相交 的點處的附加顏色貢獻。生成次級射線的步驟包括確定每條次級射線 的軌跡,并且跟隨次級射線,使得來自次級射線的額外顏色貢獻可以 用于更新第一原始射線71(^所穿過的像素715i的顏色。
            在生成次級射線(730和735)之后,向量吞吐引擎210可以將 所述次級射線(730和735)經由接收箱發送到工作負載管理器205。 接收次級射線(730和735)的工作負載管理器205可以使用定義次 級射線的信息(即次級射線的軌跡)以遍歷空間索引805。例如,圖 8D中的畫陰影的方框示出了可以利用向量吞吐引擎210所生成的次 級射線(例如730)遍歷空間索引805的工作負載管理器205。工作 負載管理器205可以將該次級射線遍歷到葉子節點。在次級射線已經 被遍歷到葉子節點之后,工作負載管理器205可以將次級射線和定義 與次級射線相交的包圍體的信息發送到向量吞吐引擎210,以確定次 級射線是否與該次級射線所相交的包圍體內的任何對象相交。
            當向量吞吐引擎210確定原始射線或者次級射線撞擊到三維場景內的對象時,可以在幀緩沖器內更新原始射線所穿過的像素的顏 色。根據本發明的實施例,關于原始射線并且因而關于原始射線所穿 過的像素的所有次級射線可以被追蹤穿過該三維場景,并且其顏色貢 獻可以被保存在幀緩沖器中,以確定像素的最終顏色。然而,根據本 發明的其他實施例,與原始射線有關的有限數量的次級射線可以被追 蹤穿過該三維場景,以確定像素的顏色。通過限制被追蹤穿過該三維 場景、因而對像素顏色有貢獻的次級射線的數量,確定像素的最終顏 色所必需的處理的量可以降低。
            結論
            通過使用上述方法分割通常是遞歸的射線追蹤算法,可以形成迭 代射線追蹤算法。可以通過多個通用處理元件來執行所得的迭代射線 追蹤算法的各部分。此外,通過使用接收箱的網絡,不太可能被再次 用于隨后發出的射線或者隨后渲染的幀的信息(例如原始射線和次級 射線)使用接收箱而不是存儲器高速緩存在處理元件之間被傳送。因 此,存儲器高速緩存可以存儲比較可能被再次用于隨后發出的射線和 隨后渲染的幀的信息(例如空間索引數據結構、對象幾何信息等)。 通過將比較可能被再次用于隨后發出的射線的信息存儲在存儲器高 速緩存中,射線追蹤圖像處理系統的性能可以得到改善。
            雖然前述針對的是本發明的實施例,但是可以設計出本發明的其 他以及進一步實施例,而不偏離本發明的基本范圍,并且本發明的范 圍由以下的權利要求來確定。
            權利要求
            1.一種執行射線追蹤的方法,包括將射線發出到三維場景中;利用第一處理元件執行以下步驟借助以下方式來追蹤射線通過具有表示三維場景內的包圍體的節點的空間索引取分支到定義與射線相交的包圍體的節點,直到到達第一葉子節點;以及將定義該射線和第一葉子節點的信息發送到第二處理元件;并且利用第二處理元件執行以下步驟執行射線-圖元相交測試以確定射線是否與所述第一葉子節點所定義的包圍體內所包含的圖元相交,生成至少一個次級射線;以及將所述次級射線發送到處理元件。
            2. 如權利要求l所述的方法,還包括如果所述射線與包圍體 內所包含的圖元相交,則利用第二處理元件,確定所述圖元的顏色, 并且根據所述圖元的顏色更新所述射線所穿過的像素的顏色值。
            3. 如權利要求2所述的方法,其中將次級射線發送到處理元件 的步驟包括將所述次級射線發送到第一處理元件。
            4. 如權利要求3所述的方法,還包括利用第一處理元件,借 助取分支到定義與所述次級射線相交的包圍體的節點直到到達第二 葉子節點,來追蹤次級射線通過空間索引;以及將定義該次級射線和第二葉子節點的信息發送到第二處理元件;以及利用第二處理元件,執行射線-圖元相交測試以確定次級射線是 否與所述第二葉子節點所定義的包圍體內所包含的圖元相交。
            5. 如權利要求4所述的方法,還包括如果所述次級射線與所 述第二葉子節點所定義的包圍體內所包含的第二圖元相交,則利用第 二處理元件,確定所述第二圖元的顏色,并且根據所述第二圖元的顏 色更新原始射線所穿過的像素的顏色值。
            6. 如權利要求5所述的方法,其中更新原始射線所穿過的像素 的顏色的步驟包括將顏色信息寫入到對應于該像素的幀緩沖器位 置。
            7. 如權利要求l所述的方法,其中所述空間索引被存儲在第一 處理元件和第二處理元件之間共享的存儲器高速緩存內。
            8. —種系統,包括 第一處理元件; 第二處理元件;空間索引,具有定義三維場景的包圍體的節點;和 通信網絡,耦接到所述第一處理元件和第二處理元件, 其中所述第一處理元件被配置為通過取分支到定義與射線相交 的包圍體的節點直到到達葉子節點,使射線遍歷空間索引,并且經由 所述通信網絡將所述射線發送到第二處理元件;以及其中,所述第二處理元件被配置為確定射線是否與所述葉子節點 所定義的包圍體內所包含的圖元相交。
            9. 如權利要求8所述的系統,其中所迷第二處理元件還被配置為如果射線與葉子節點所定義的包圍體內所包含的圖元相交,則確 定圖元的顏色;以及更新射線所穿過的像素的顏色值。
            10. 如權利要求9所述的系統,其中所述第二處理元件還被配置為生成至少一條次級射線;經由所述通信網絡將所述次級射線發送到第 一處理元件。
            11. 如權利要求10所迷的系統,其中所述第一處理元件還被配置為通過取分支到與所述次級射線相交的節點直到到達第二葉子節 點,使所述次級射線遍歷空間索引;以及經由所述通信網絡將所述次級射線發送到第二處理元件。
            12. 如權利要求11所述的系統,其中所述第二處理元件還被配置為確定次級射線是否與第二葉子節點內所包含的第二圖元相交;以及如果次級射線與第二葉子節點內所包含的第二圖元相交,則更新 射線所穿過的像素的顏色值。
            13. 如權利要求8所述的系統,其中所述第一處理元件和所述第 二處理元件處于同一芯片上。
            14. 如權利要求8所述的系統,還包括與第一處理元件和第二處 理元件耦接的共享存儲器高速緩存。
            15. 如權利要求14所述的系統,其中空間索引被存儲在所述共 享存儲器高速緩存中。
            16. —種包含程序的計算機可讀介質,在執行所述程序時,進行 前迷方法權利要求中的任何方法。
            全文摘要
            本發明提供一種執行射線追蹤的方法和系統。根據本發明的實施例,可以分割通常是遞歸的射線追蹤算法,以形成迭代射線追蹤算法。可以通過多個處理元件來執行所得的迭代射線追蹤算法的各部分。此外,根據本發明的實施例,可以使用接收箱的網絡在處理元件之間傳送定義原始射線和次級射線的信息(不太可能被再次用于隨后發出的射線以及隨后渲染的幀的信息),并且共享存儲器高速緩存可以存儲關于三維場景的信息(比較可能被再次用于隨后發出的射線和隨后渲染的幀的信息)。使用多個處理元件以執行射線追蹤,并且將比較可能被再次用于隨后的射線和隨后的幀的信息存儲在共享存儲器高速緩存中,射線追蹤圖像處理系統的性能可以得到改善。
            文檔編號G06T15/40GK101192310SQ20071018700
            公開日2008年6月4日 申請日期2007年11月14日 優先權日2006年11月28日
            發明者埃里克·O.·梅耶德里奇, 拉塞爾·D.·胡弗, 杰弗里·D.·布朗 申請人:國際商業機器公司
            網友詢問留言 已有0條留言
            • 還沒有人留言評論。精彩留言會獲得點贊!
            1
            婷婷六月激情在线综合激情,亚洲国产大片,久久中文字幕综合婷婷,精品久久久久久中文字幕,亚洲一区二区三区高清不卡,99国产精品热久久久久久夜夜嗨 ,欧美日韩亚洲综合在线一区二区,99国产精品电影,伊人精品线视天天综合,精品伊人久久久大香线蕉欧美
            亚洲精品1区 国产成人一级 91精品国产欧美一区二区 亚洲精品乱码久久久久久下载 国产精品久久久久久久伊一 九色国产 国产精品九九视频 伊人久久成人爱综合网 欧美日韩亚洲区久久综合 欧美日本一道免费一区三区 夜夜爽一区二区三区精品 欧美日韩高清一区二区三区 国产成人av在线 国产精品对白交换绿帽视频 国产视频亚洲 国产在线欧美精品 国产精品综合网 国产日韩精品欧美一区色 国产日韩精品欧美一区喷 欧美日韩在线观看区一二 国产区精品 欧美视频日韩视频 中文字幕天天躁日日躁狠狠躁97 视频一二三区 欧美高清在线精品一区二区不卡 国产精品揄拍一区二区久久 99久久综合狠狠综合久久aⅴ 亚洲乱码视频在线观看 日韩在线第二页 亚洲精品无码专区在线播放 成人亚洲网站www在线观看 欧美三级一区二区 99久久精品免费看国产高清 91麻豆国产在线观看 最新日韩欧美不卡一二三区 成人在线观看不卡 日韩国产在线 在线亚洲精品 亚洲午夜久久久久中文字幕 国产精品成人久久久久久久 精品国产一区二区在线观看 欧美精品国产一区二区三区 中文在线播放 亚洲第一页在线视频 国产午夜精品福利久久 九色国产 精品国产九九 国产永久视频 久久精品人人做人人综合试看 国产一区二区三区免费观看 亚洲精品国产电影 9999热视频 国产精品资源在线 麻豆久久婷婷国产综合五月 国产精品免费一级在线观看 亚洲国产一区二区三区青草影视 中文在线播放 国产成人综合在线 国产在线观看色 国产亚洲三级 国产片一区二区三区 久久99精品久久久久久牛牛影视 亚洲欧美日韩国产 四虎永久免费网站 国产一毛片 国产精品视频在 九九热在线精品 99精品福利视频 色婷婷色99国产综合精品 97成人精品视频在线播放 精品久久久久久中文字幕 亚洲欧美一区二区三区孕妇 亚洲欧美成人网 日韩高清在线二区 国产尤物在线观看 在线不卡一区二区 91网站在线看 韩国精品福利一区二区 欧美日韩国产成人精品 99热精品久久 国产精品免费视频一区 高清视频一区 精品九九久久 欧美日韩在线观看免费 91欧美激情一区二区三区成人 99福利视频 亚洲国产精品91 久热国产在线 精品久久久久久中文字幕女 国产精品久久久久久久久99热 成人自拍视频网 国产精品视频久久久久久 久久影院国产 国产玖玖在线观看 99精品在线免费 亚洲欧美一区二区三区导航 久久久久久久综合 国产欧美日韩精品高清二区综合区 国产精品视频自拍 亚洲一级片免费 久久久久久九九 国产欧美自拍视频 视频一区二区在线观看 欧美日韩一区二区三区久久 中文在线亚洲 伊人热人久久中文字幕 日韩欧美亚洲国产一区二区三区 欧美亚洲国产成人高清在线 欧美日韩国产码高清综合人成 国产性大片免费播放网站 亚洲午夜综合网 91精品久久一区二区三区 国产无套在线播放 国产精品视频网站 国产成人亚洲精品老王 91在线网站 国产视频97 欧美黑人欧美精品刺激 国产一区二区三区免费在线视频 久久久国产精品免费看 99re6久精品国产首页 久久精品91 国产成人一级 国产成人精品曰本亚洲 日本福利在线观看 伊人成综合网 久久综合一本 国产综合久久久久久 久久精品成人免费看 久久福利 91精品国产91久久久久久麻豆 亚洲精品成人在线 亚洲伊人久久精品 欧美日本二区 国产永久视频 国产一区二 一区二区福利 国产一毛片 亚洲精品1区 毛片一区二区三区 伊人久久大香线蕉综合影 国产欧美在线观看一区 亚洲国产欧洲综合997久久 国产一区二区免费视频 国产91精品对白露脸全集观看 久久亚洲国产伦理 欧美成人伊人久久综合网 亚洲性久久久影院 久久99国产精一区二区三区! 91精品国产欧美一区二区 欧美日韩亚洲区久久综合 日韩精品一二三区 久久久夜色精品国产噜噜 国产在线精品福利91香蕉 久久久久久久亚洲精品 97se色综合一区二区二区 91国语精品自产拍在线观看性色 91久久国产综合精品女同我 日韩中文字幕a 国产成人亚洲日本精品 久久国产精品-国产精品 久久国产经典视频 久久国产精品伦理 亚洲第一页在线视频 国产精品久久久久三级 日韩毛片网 久久免费高清视频 麻豆国产在线观看一区二区 91麻豆国产福利在线观看 国产成人精品男人的天堂538 一区二区三区中文字幕 免费在线视频一区 欧美日韩国产成人精品 国产综合网站 国产资源免费观看 亚洲精品亚洲人成在线播放 精品久久久久久中文字幕专区 亚洲人成人毛片无遮挡 国产一起色一起爱 国产香蕉精品视频在 九九热免费观看 日韩亚洲欧美一区 九九热精品在线观看 精品久久久久久中文字幕专区 亚洲欧美自拍偷拍 国产精品每日更新 久久久久国产一级毛片高清板 久久天天躁狠狠躁夜夜中文字幕 久久精品片 日韩在线毛片 国产成人精品本亚洲 国产成人精品一区二区三区 九九热在线观看 国产r级在线观看 国产欧美日韩精品高清二区综合区 韩国电影一区二区 国产精品毛片va一区二区三区 五月婷婷伊人网 久久一区二区三区免费 一本色道久久综合狠狠躁篇 亚洲综合色站 国产尤物在线观看 亚洲一区亚洲二区 免费在线视频一区 欧洲精品视频在线观看 日韩中文字幕a 中文字幕日本在线mv视频精品 91精品在线免费视频 精品国产免费人成在线观看 精品a级片 中文字幕日本在线mv视频精品 日韩在线精品视频 婷婷丁香色 91精品国产高清久久久久 国产成人精品日本亚洲直接 五月综合视频 欧美日韩在线亚洲国产人 精液呈暗黄色 亚洲乱码一区 久久精品中文字幕不卡一二区 亚洲天堂精品在线 激情婷婷综合 国产免费久久精品久久久 国产精品亚洲二区在线 久久免费播放视频 五月婷婷丁香综合 在线亚洲欧美日韩 久久免费精品高清麻豆 精品久久久久久中文字幕 亚洲一区网站 国产精品福利社 日韩中文字幕免费 亚洲综合丝袜 91精品在线播放 国产精品18 亚洲日日夜夜 伊人久久大香线蕉综合影 亚洲精品中文字幕乱码影院 亚洲一区二区黄色 亚洲第一页在线视频 一区二区在线观看视频 国产成人福利精品视频 亚洲高清二区 国内成人免费视频 精品亚洲性xxx久久久 国产精品合集一区二区三区 97av免费视频 国产一起色一起爱 国产区久久 国产资源免费观看 99精品视频免费 国产成人一级 国产精品九九免费视频 欧美91精品久久久久网免费 99热国产免费 久久精品色 98精品国产综合久久 久久精品播放 中文字幕视频免费 国产欧美日韩一区二区三区在线 精品久久蜜桃 国产小视频精品 一本色道久久综合狠狠躁篇 91在线免费观看 亚洲精品区 伊人成综合网 伊人热人久久中文字幕 伊人黄色片 99国产精品热久久久久久夜夜嗨 久久免费精品视频 亚洲一区二区三区高清不卡 久久久久国产一级毛片高清板 国产片一区二区三区 久久狠狠干 99久久婷婷国产综合精品电影 国产99区 国产精品成人久久久久 久久狠狠干 青青国产在线观看 亚洲高清国产拍精品影院 国产精品一区二区av 九九热在线免费视频 伊人久久国产 国产精品久久久久久久久久一区 在线观看免费视频一区 国产精品自在在线午夜区app 国产精品综合色区在线观看 国产毛片久久久久久国产毛片 97国产免费全部免费观看 国产精品每日更新 国产尤物视频在线 九九视频这里只有精品99 一本一道久久a久久精品综合 久久综合给会久久狠狠狠 国产成人精品男人的天堂538 欧美一区二区高清 毛片一区二区三区 国产欧美日韩在线观看一区二区三区 在线国产二区 欧美不卡网 91在线精品中文字幕 在线国产福利 国内精品91久久久久 91亚洲福利 日韩欧美国产中文字幕 91久久精品国产性色也91久久 亚洲性久久久影院 欧美精品1区 国产热re99久久6国产精品 九九热免费观看 国产精品欧美日韩 久久久久国产一级毛片高清板 久久国产经典视频 日韩欧美亚洲国产一区二区三区 欧美亚洲综合另类在线观看 国产精品自在在线午夜区app 97中文字幕在线观看 视频一二三区 精品国产一区在线观看 国产欧美日韩在线一区二区不卡 欧美一区二三区 伊人成人在线观看 国内精品91久久久久 97在线亚洲 国产在线不卡一区 久久久全免费全集一级全黄片 国产精品v欧美精品∨日韩 亚洲毛片网站 在线不卡一区二区 99re热在线视频 久久激情网 国产毛片一区二区三区精品 久久亚洲综合色 中文字幕视频免费 国产视频亚洲 婷婷伊人久久 国产一区二区免费播放 久久99国产精品成人欧美 99国产在线视频 国产成人免费视频精品一区二区 国产不卡一区二区三区免费视 国产码欧美日韩高清综合一区 久久精品国产主播一区二区 国产一区电影 久久精品国产夜色 国产精品国产三级国产 日韩一区二区三区在线 久久97久久97精品免视看 久久国产免费一区二区三区 伊人久久大香线蕉综合电影网 99re6久精品国产首页 久久激情网 亚洲成人高清在线 国产精品网址 国产成人精品男人的天堂538 香蕉国产综合久久猫咪 国产专区中文字幕 91麻豆精品国产高清在线 久久国产经典视频 国产精品成人va在线观看 国产精品爱啪在线线免费观看 日本精品久久久久久久久免费 亚洲综合一区二区三区 久久五月网 精品国产网红福利在线观看 久久综合亚洲伊人色 亚洲国产精品久久久久久网站 在线日韩国产 99国产精品热久久久久久夜夜嗨 国产综合精品在线 国产区福利 精品亚洲综合久久中文字幕 国产制服丝袜在线 毛片在线播放网站 在线观看免费视频一区 国产精品久久久精品三级 亚洲国产电影在线观看 最新日韩欧美不卡一二三区 狠狠综合久久综合鬼色 日本精品1在线区 国产日韩一区二区三区在线播放 欧美日韩精品在线播放 亚洲欧美日韩国产一区二区三区精品 久久综合久久网 婷婷六月激情在线综合激情 亚洲乱码一区 国产专区91 97av视频在线观看 精品久久久久久中文字幕 久久五月视频 国产成人福利精品视频 国产精品网址 中文字幕视频在线 精品一区二区三区免费视频 伊人手机在线视频 亚洲精品中文字幕乱码 国产在线视频www色 色噜噜国产精品视频一区二区 精品亚洲成a人在线观看 国产香蕉尹人综合在线 成人免费一区二区三区在线观看 国产不卡一区二区三区免费视 欧美精品久久天天躁 国产专区中文字幕 久久精品国产免费中文 久久精品国产免费一区 久久无码精品一区二区三区 国产欧美另类久久久精品免费 欧美精品久久天天躁 亚洲精品在线视频 国产视频91在线 91精品福利一区二区三区野战 日韩中文字幕免费 国产精品99一区二区三区 欧美成人高清性色生活 国产精品系列在线观看 亚洲国产福利精品一区二区 国产成人在线小视频 国产精品久久久久免费 99re热在线视频 久久久久久久综合 一区二区国产在线播放 成人国产在线视频 亚洲精品乱码久久久久 欧美日韩一区二区综合 精品久久久久免费极品大片 中文字幕视频二区 激情粉嫩精品国产尤物 国产成人精品一区二区视频 久久精品中文字幕首页 亚洲高清在线 国产精品亚洲一区二区三区 伊人久久艹 中文在线亚洲 国产精品一区二区在线播放 国产精品九九免费视频 亚洲二区在线播放 亚洲狠狠婷婷综合久久久久网站 亚洲欧美日韩网站 日韩成人精品 亚洲国产一区二区三区青草影视 91精品国产福利在线观看 国产精品久久久久久久久99热 国产一区二区精品尤物 久碰香蕉精品视频在线观看 亚洲日日夜夜 在线不卡一区二区 国产午夜亚洲精品 九九热在线视频观看这里只有精品 伊人手机在线视频 91免费国产精品 日韩欧美中字 91精品国产91久久久久 国产全黄三级播放 视频一区二区三区免费观看 国产开裆丝袜高跟在线观看 国产成人欧美 激情综合丝袜美女一区二区 国产成人亚洲综合无 欧美精品一区二区三区免费观看 欧美亚洲国产日韩 日韩亚州 国产欧美日韩精品高清二区综合区 亚洲午夜国产片在线观看 精品久久久久久中文字幕 欧美精品1区 久久伊人久久亚洲综合 亚洲欧美日韩精品 国产成人精品久久亚洲高清不卡 久久福利影视 国产精品99精品久久免费 久久久久免费精品视频 国产日产亚洲精品 亚洲国产午夜电影在线入口 精品无码一区在线观看 午夜国产精品视频 亚洲一级片免费 伊人久久大香线蕉综合影 国产精品久久影院 久碰香蕉精品视频在线观看 www.欧美精品 在线小视频国产 亚洲国产天堂久久综合图区 欧美一区二区三区不卡 日韩美女福利视频 九九精品免视频国产成人 不卡国产00高中生在线视频 亚洲第一页在线视频 欧美日韩在线播放成人 99re视频这里只有精品 国产精品91在线 精品乱码一区二区三区在线 国产区久久 91麻豆精品国产自产在线观看一区 日韩精品成人在线 九九热在线观看 国产精品久久不卡日韩美女 欧美一区二区三区综合色视频 欧美精品免费一区欧美久久优播 国产精品网址 国产专区中文字幕 国产精品欧美亚洲韩国日本久久 日韩美香港a一级毛片 久久精品123 欧美一区二区三区免费看 99r在线视频 亚洲精品国产字幕久久vr 国产综合激情在线亚洲第一页 91免费国产精品 日韩免费小视频 亚洲国产精品综合一区在线 国产亚洲第一伦理第一区 在线亚洲精品 国产精品一区二区制服丝袜 国产在线成人精品 九九精品免视频国产成人 亚洲国产网 欧美日韩亚洲一区二区三区在线观看 在线亚洲精品 欧美一区二区三区高清视频 国产成人精品男人的天堂538 欧美日韩在线观看区一二 亚洲欧美一区二区久久 久久精品中文字幕首页 日本高清www午夜视频 久久精品国产免费 久久999精品 亚洲国产精品欧美综合 88国产精品视频一区二区三区 91久久偷偷做嫩草影院免费看 国产精品夜色视频一区二区 欧美日韩导航 国产成人啪精品午夜在线播放 一区二区视频在线免费观看 99久久精品国产自免费 精液呈暗黄色 久久99国产精品 日本精品久久久久久久久免费 精品国产97在线观看 99re视频这里只有精品 国产视频91在线 999av视频 亚洲美女视频一区二区三区 久久97久久97精品免视看 亚洲国产成人久久三区 99久久亚洲国产高清观看 日韩毛片在线视频 综合激情在线 91福利一区二区在线观看 一区二区视频在线免费观看 激情粉嫩精品国产尤物 国产成人精品曰本亚洲78 国产成人精品本亚洲 国产精品成人免费视频 国产成人啪精品视频免费软件 久久精品国产亚洲妲己影院 国产精品成人久久久久久久 久久大香线蕉综合爱 欧美一区二区三区高清视频 99热国产免费 在线观看欧美国产 91精品视频在线播放 国产精品福利社 欧美精品一区二区三区免费观看 国产一区二区免费视频 国产午夜精品一区二区 精品视频在线观看97 91精品福利久久久 国产一区福利 国产综合激情在线亚洲第一页 国产精品久久久久久久久久久不卡 九色国产 在线日韩国产 黄网在线观看 亚洲一区小说区中文字幕 中文字幕丝袜 日本二区在线观看 日本国产一区在线观看 欧美日韩一区二区三区久久 欧美精品亚洲精品日韩专 国产日产亚洲精品 久久综合九色综合欧美播 亚洲国产欧美无圣光一区 欧美视频区 亚洲乱码视频在线观看 久久无码精品一区二区三区 九九热精品免费视频 久久99精品久久久久久牛牛影视 国产精品成久久久久三级 国产一区福利 午夜国产精品视频 日本二区在线观看 99久久网站 国产亚洲天堂 精品国产一区二区三区不卡 亚洲国产日韩在线一区 国产成人综合在线观看网站 久久免费高清视频 欧美在线导航 午夜精品久久久久久99热7777 欧美久久综合网 国产小视频精品 国产尤物在线观看 亚洲国产精品综合一区在线 欧美一区二区三区不卡视频 欧美黑人欧美精品刺激 日本福利在线观看 久久国产偷 国产手机精品一区二区 国产热re99久久6国产精品 国产高清啪啪 欧美亚洲国产成人高清在线 国产在线第三页 亚洲综合一区二区三区 99r在线视频 99精品久久久久久久婷婷 国产精品乱码免费一区二区 国产在线精品福利91香蕉 国产尤物视频在线 五月婷婷亚洲 中文字幕久久综合伊人 亚洲精品一级毛片 99国产精品电影 在线视频第一页 久久99国产精品成人欧美 国产白白视频在线观看2 成人精品一区二区www 亚洲成人网在线观看 麻豆91在线视频 色综合合久久天天综合绕视看 久久精品国产免费高清 国产不卡一区二区三区免费视 欧美国产中文 99精品欧美 九九在线精品 国产中文字幕在线免费观看 国产一区中文字幕在线观看 国产成人一级 国产精品一区二区制服丝袜 国产一起色一起爱 亚洲精品成人在线 亚洲欧美精品在线 国产欧美自拍视频 99精品久久久久久久婷婷 久99视频 国产热re99久久6国产精品 视频一区亚洲 国产精品视频分类 国产精品成在线观看 99re6久精品国产首页 亚洲在成人网在线看 亚洲国产日韩在线一区 久久国产三级 日韩国产欧美 欧美在线一区二区三区 国产精品美女一级在线观看 成人午夜免费福利视频 亚洲天堂精品在线 91精品国产手机 欧美日韩视频在线播放 狠狠综合久久综合鬼色 九一色视频 青青视频国产 亚洲欧美自拍一区 中文字幕天天躁日日躁狠狠躁97 日韩免费大片 996热视频 伊人成综合网 亚洲天堂欧美 日韩精品亚洲人成在线观看 久久综合给会久久狠狠狠 日韩精品亚洲人成在线观看 日韩国产欧美 亚洲成aⅴ人片在线影院八 亚洲精品1区 99久久精品免费 国产精品高清在线观看 国产精品久久久免费视频 在线亚洲欧美日韩 91在线看视频 国产精品96久久久久久久 欧美日韩国产成人精品 91在线亚洲 热久久亚洲 国产精品美女免费视频观看 日韩在线毛片 亚洲永久免费视频 九九免费在线视频 亚洲一区网站 日本高清二区视频久二区 精品国产美女福利在线 伊人久久艹 国产精品久久久久三级 欧美成人精品第一区二区三区 99久久精品国产自免费 在线观看日韩一区 国产中文字幕一区 成人免费午夜视频 欧美日韩另类在线 久久99国产精品成人欧美 色婷婷中文网 久久天天躁夜夜躁狠狠躁2020 欧美成人伊人久久综合网 国产精品福利资源在线 国产伦精品一区二区三区高清 国产精品亚洲综合色区韩国 亚洲一区欧美日韩 色综合视频 国语自产精品视频在线区 国产高清a 成人国内精品久久久久影 国产在线精品香蕉综合网一区 国产不卡在线看 国产成人精品精品欧美 国产欧美日韩综合精品一区二区三区 韩国电影一区二区 国产在线视频www色 91中文字幕在线一区 国产人成午夜免视频网站 亚洲综合一区二区三区 色综合视频一区二区观看 久久五月网 九九热精品在线观看 国产一区二区三区国产精品 99久热re在线精品996热视频 亚洲国产网 在线视频亚洲一区 日韩字幕一中文在线综合 国产高清一级毛片在线不卡 精品国产色在线 国产高清视频一区二区 精品日本久久久久久久久久 亚洲国产午夜精品乱码 成人免费国产gav视频在线 日韩欧美一区二区在线观看 欧美曰批人成在线观看 韩国电影一区二区 99re这里只有精品6 日韩精品一区二区三区视频 99re6久精品国产首页 亚洲欧美一区二区三区导航 欧美色图一区二区三区 午夜精品视频在线观看 欧美激情在线观看一区二区三区 亚洲热在线 成人国产精品一区二区网站 亚洲一级毛片在线播放 亚洲一区小说区中文字幕 亚洲午夜久久久久影院 国产自产v一区二区三区c 国产精品视频免费 久久调教视频 国产成人91激情在线播放 国产精品欧美亚洲韩国日本久久 久久亚洲日本不卡一区二区 91中文字幕网 成人国产在线视频 国产视频91在线 欧美成人精品第一区二区三区 国产精品福利在线 久久综合九色综合精品 欧美一区二区三区精品 久久国产综合尤物免费观看 久久99青青久久99久久 日韩精品免费 久久国产精品999 91亚洲视频在线观看 国产精品igao视频 色综合区 在线亚洲欧国产精品专区 国产一区二区三区在线观看视频 亚洲精品成人在线 一区二区国产在线播放 中文在线亚洲 亚洲精品第一国产综合野 国产一区二区精品久久 一区二区三区四区精品视频 99热精品久久 中文字幕视频二区 国产成人精品男人的天堂538 99精品影视 美女福利视频一区二区 久久午夜夜伦伦鲁鲁片 综合久久久久久久综合网 国产精品国产欧美综合一区 国产99视频在线观看 国产亚洲女在线精品 婷婷影院在线综合免费视频 国产亚洲3p一区二区三区 91成人爽a毛片一区二区 亚洲一区二区高清 国产欧美亚洲精品第二区首页 欧美日韩导航 亚洲高清二区 欧美激情观看一区二区久久 日韩毛片在线播放 亚洲欧美日韩高清中文在线 亚洲日本在线播放 国产精品一区二区制服丝袜 精品国产一区二区三区不卡 国产不卡在线看 国产欧美网站 四虎永久在线观看视频精品 国产黄色片在线观看 夜夜综合 一本色道久久综合狠狠躁篇 欧美亚洲综合另类在线观看 国产91在线看 伊人久久国产 欧美一区二区在线观看免费网站 国产精品久久久久三级 久久福利 日韩中文字幕a 亚洲午夜久久久久影院 91在线高清视频 国产亚洲一区二区三区啪 久久人精品 国产精品亚洲午夜一区二区三区 综合久久久久久 久久伊人一区二区三区四区 国产综合久久久久久 日韩一区精品视频在线看 国产精品日韩欧美制服 日本精品1在线区 99re视频 无码av免费一区二区三区试看 国产视频1区 日韩欧美中文字幕一区 日本高清中文字幕一区二区三区a 亚洲国产欧美无圣光一区 国产在线视频一区二区三区 欧美国产第一页 在线亚洲欧美日韩 日韩中文字幕第一页 在线不卡一区二区 伊人久久青青 国产精品一区二区在线播放 www.五月婷婷 麻豆久久婷婷国产综合五月 亚洲精品区 久久国产欧美另类久久久 99在线视频免费 伊人久久中文字幕久久cm 久久精品成人免费看 久久这里只有精品首页 88国产精品视频一区二区三区 中文字幕日本在线mv视频精品 国产在线精品成人一区二区三区 伊人精品线视天天综合 亚洲一区二区黄色 国产尤物视频在线 亚洲精品99久久久久中文字幕 国产一区二区三区免费观看 伊人久久大香线蕉综合电影网 国产成人精品区在线观看 日本精品一区二区三区视频 日韩高清在线二区 久久免费播放视频 一区二区成人国产精品 国产精品免费精品自在线观看 亚洲精品视频二区 麻豆国产精品有码在线观看 精品日本一区二区 亚洲欧洲久久 久久中文字幕综合婷婷 中文字幕视频在线 国产成人精品综合在线观看 91精品国产91久久久久福利 精液呈暗黄色 香蕉国产综合久久猫咪 国产专区精品 亚洲精品无码不卡 国产永久视频 亚洲成a人片在线播放观看国产 一区二区国产在线播放 亚洲一区二区黄色 欧美日韩在线观看视频 亚洲精品另类 久久国产综合尤物免费观看 国产一区二区三区国产精品 高清视频一区 国产精品igao视频 国产精品资源在线 久久综合精品国产一区二区三区 www.五月婷婷 精品色综合 99热国产免费 麻豆福利影院 亚洲伊人久久大香线蕉苏妲己 久久电影院久久国产 久久精品伊人 在线日韩理论午夜中文电影 亚洲国产欧洲综合997久久 伊人国产精品 久草国产精品 欧美一区精品二区三区 亚洲成人高清在线 91免费国产精品 日韩精品福利在线 国产一线在线观看 国产不卡在线看 久久99青青久久99久久 亚洲精品亚洲人成在线播放 99久久免费看国产精品 国产日本在线观看 青草国产在线视频 麻豆久久婷婷国产综合五月 国产中文字幕一区 91久久精品国产性色也91久久 国产一区a 国产欧美日韩成人 国产亚洲女在线精品 一区二区美女 中文字幕在线2021一区 在线小视频国产 久久这里只有精品首页 国产在线第三页 欧美日韩中文字幕 在线亚洲+欧美+日本专区 精品国产一区二区三区不卡 久久这里精品 欧美在线va在线播放 精液呈暗黄色 91精品国产手机 91在线免费播放 欧美视频亚洲色图 欧美国产日韩精品 日韩高清不卡在线 精品视频免费观看 欧美日韩一区二区三区四区 国产欧美亚洲精品第二区首页 亚洲韩精品欧美一区二区三区 国产精品视频免费 在线精品小视频 久久午夜夜伦伦鲁鲁片 国产无套在线播放 久热这里只精品99re8久 欧美久久久久 久久香蕉国产线看观看精品蕉 国产成人精品男人的天堂538 亚洲人成网站色7799在线观看 日韩在线第二页 一本色道久久综合狠狠躁篇 国产一区二区三区不卡在线观看 亚洲乱码在线 在线观看欧美国产 久久福利青草精品资源站免费 国产玖玖在线观看 在线亚洲精品 亚洲成aⅴ人在线观看 精品91在线 欧美一区二三区 日韩中文字幕视频在线 日本成人一区二区 日韩免费专区 国内精品在线观看视频 久久国产综合尤物免费观看 国产精品系列在线观看 一本一道久久a久久精品综合 亚洲免费播放 久久精品国产免费 久久人精品 亚洲毛片网站 亚洲成a人一区二区三区 韩国福利一区二区三区高清视频 亚洲精品天堂在线 一区二区三区中文字幕 亚洲国产色婷婷精品综合在线观看 亚洲国产成人久久笫一页 999国产视频 国产精品香港三级在线电影 欧美日韩一区二区三区四区 日韩国产欧美 国产精品99一区二区三区 午夜国产精品理论片久久影院 亚洲精品中文字幕麻豆 亚洲国产高清视频 久久免费手机视频 日韩a在线观看 五月婷婷亚洲 亚洲精品中文字幕麻豆 中文字幕丝袜 www国产精品 亚洲天堂精品在线 亚洲乱码一区 国产日韩欧美三级 久久999精品 伊人热人久久中文字幕 久热国产在线视频 国产欧美日韩在线观看一区二区三区 国产一二三区在线 日韩国产欧美 91精品国产91久久久久 亚洲一区小说区中文字幕 精品一区二区免费视频 国产精品视频免费 国产精品亚洲综合色区韩国 亚洲国产精品成人午夜在线观看 欧美国产日韩精品 中文字幕精品一区二区精品