TW201001327A - Optimized graphical calculation performance by removing divide requirements - Google Patents
Optimized graphical calculation performance by removing divide requirements Download PDFInfo
- Publication number
- TW201001327A TW201001327A TW098115586A TW98115586A TW201001327A TW 201001327 A TW201001327 A TW 201001327A TW 098115586 A TW098115586 A TW 098115586A TW 98115586 A TW98115586 A TW 98115586A TW 201001327 A TW201001327 A TW 201001327A
- Authority
- TW
- Taiwan
- Prior art keywords
- ray
- component
- logic
- intersection
- calculating
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/06—Ray-tracing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2210/00—Indexing scheme for image generation or computer graphics
- G06T2210/12—Bounding box
Description
201001327 六、發明說明: 【發明所屬之技術領域】 本發明大體而言係關於影像處理 '項域,且更特定士 之,係關於用於支援影像處理之向量單元。 σ 【先前技術】 影像處理涉及執行向量運算及純 ., 逆异兩者。向量運糞 匕括對一或多個向詈勃杆運瞀 f ^ 里執盯運t 4如μ mum ^純!運算包括加法、減法、乘法、除法及類似運算。 因=處理影像之處理器包括一用於執行向量運算之獨立 向里早疋及一用於執行純量運算之獨立純量單元。 向量單元及純量單元中之每一者通常 ^ . 力畀有其自身各別的 ϋ 曰存_。暫存器檔案含有藉由相關聯之向量或 Μ以運算之資料。暫存器檔案亦用於儲存由各別向量或 純量單元執行之運算之結果。若一單元之結果係由另一單 兀執行之運算所需的,則必須首先將結果儲存至記情體, 且接著將結果載入至另-單元之各別暫存器檀案中。 【發明内容】 本發明之一實施例提供一種用於執行— 射線與一限界體 之—交點測試之方法。該方法通常包括 匕栝基於界定該射線之 一方向向量之X、y及Ζ分量值而計算— I异組按比例調整因 數’及利用該等按比例調整因數以在盔除 你…陈法運鼻之情況下 執行該交點測試。 本發明之另-實施例提供一種能夠執行一射線與一限界 體之交點測試之處理器。該處理器通常句 中匕祜用於基於界定 139743.doc 201001327 該射線之一方向向量之父、 旦 古周敕田奴—《 及z刀里值而计鼻一組按比例 。周正口數之埏輯,及用於 ^ ^ β 』用5亥專按比例調整因數以在益 除法運鼻之情況下執行該交㈣試之賴。 在… 本發明之另一實施例提供— 限界許夕—上、、 裡、,·工、.且怎以執仃一射線與一 定該射線:式:系統°該系統通常包括用於基於界 Λ 、之方向向!之χ、丫及ζ分量值而計算-组按比 例調整因數之邏輯,及用於 、 盔险、、^ μ a j用-亥荨按比例调整因數以在 無除法運异之情況下執行該交點測試之邏輯。 【實施方式】 因此’藉料❹料細理解本發明之上文賴述 徵、優點及目標之方式,上文所簡潔概述的本發明之更特 定描述可參考在隨附圖式中所說明的本發明之實施例而進 行。 然而’應注意,隨附圖式僅說明本發明之典型實施例, 且,此不應將其視為對本發明之㈣之限制,因為本發明 可谷許其他同等有效之實施例。 本發明之實施例大體而言係關於影像處理,且更具體言 之,係關於用於支援影像處理之向量單元及暫存器^案。 提供組合之向量/純量單元’其中該向量單元二二個 處理道(processing lane)用於執行純量運算。亦提供用於儲 存向量及純量資料之整合暫存器檔案。因此,消除用以在 獨立向量單元與純量單元之間交換資料的至記憶體之資 傳送。 、广 在下文中’參考本發明之實施例。然而,應理解,本發 139743.doc 201001327 明不限於特定描述之實施例。實情 ^ , 預期以下特徵及元 件(不确疋否與不同實施例相關)之任何組合以 每、 本發明。此外,在各種實施例中,本 ^亚只踐 + \明提供眾多優於 前技術之優點。然而,儘管本發明之實施例 认 他可能解決方案及/或優於先前技術之優點,但給:實;: 例是否達成特定優點並非本發明之限制。因此,以下: 樣、特徵、實施例及優點僅為說明性的,且除在請求項^ 明確加以闡述以外,皆不被視為附加之中請專利範圍之 :或限制。同樣地’對「本發明」之提及不應被解釋為對 本文中所揭示之任何發明性標的物之概括,且除在請求項 中明確加以闡述以夕卜,皆不應被視為附加之申請專;:範圍 之要素或限制。 一:下係對附圖中所描繪的本發明之實施例的詳細描述。 貫施例為實例且如此詳細以便清楚地傳達本發明。然而, 所提供之細節的量不欲限制實施例之預期變化;而 反’本發明意欲涵蓋屬於由附加之申請專利範圍界定的本 發明之精神及範疇的所有修改、均等物及替代物。 本發明之實施例可與例如電腦系統之系統一起利用且下 文將關於該系統描述該等實施例。如本文中所使用,系統 可包括利用處理器及快取記憶體之任何系統,其包括個人 電腦、網際網路設備、數位媒體設備、攜帶型數位助理 (PDA)、攜帶型音樂/視訊播放器及視訊遊戲機繼 c〇ns〇le)。雖然快取記憶體可與利用快取記憶體之處理器 位於同-晶粒上’但在-些狀況下,處理器及快取記憶體 139743.doc 201001327 可位於不同晶粒(例如 組内之單獨晶片)上。 單獨模纽内之 單獨晶片 或單一模 旦=將自三維場景再現二維影像之過程稱為影像處理。 衫像處理之特定目標為使得三維場景之二維模擬 可能逼真。此對於再現較逼真場景之尋求已導致影像之增 加的複雜性及用於處理複雜影像之創新方法。 通常將表示三維場景之二維影像顯示於—監視器或竿— 類型之顯不幕上。現代監視器藉由像素之使用而顯示影 像。像素為可在一監視器上被照亮之最小空間區域。多數 現代電腦監視ϋ使用數十萬或數百萬像素之組合來構成整 個顯不或再現之場景。個丨梅 7'個別像素係以栅格圖案排列且共同 覆盍監視器之整個觀看區域。可照亮每—個別像素以再現 一最終圖像(picture)以用於觀看。 種使用像素將真實世界三維場景再現於二維監視器上 之方法被_光柵化(raste細_)。光栅化為取得以:量 格式(“内幾何物件之數學表示)表示的二維影像及將該 影像轉換成㈣像素以在監視ϋ上顯示㈣程。光栅化在 迅速再現圖形及使用相對較少量之計算能力方面係有效 的,然而,光柵化經受某些缺點的影響。舉例而言,光栅 化通常^缺乏真實性的影響’因為光柵化並非基於光的 ㈣特性,更仙地說,光柵化係基於投影在二維平面上 Ό之三維幾何物件之形狀。此外,以光柵化再現場 尽所而的§t算能力直接與待再現之場景中之物件之複雜性 139743.doc 201001327 ㈣加成比例。隨著影像處理變得愈加逼真,再現之場景 變得愈加複雜。因此’光栅化隨影像處理發展而受,塑 因為光柵化直接與複雜性成比例。 另一種使用像素將真實世界三維場景再現於二維監視器 上之方法被稱為射線追蹤。射線追蹤技術追蹤進入—待再 現於一電腦螢幕上之三維場景中之假想射線(其表現=似 於光線)的傳播。射線源於坐在電腦螢幕後的觀看者之眼 p 睛並朝向三維場景橫穿過組成電腦榮幕之像素。每一經^ 蹤之射線前進進入場景中且可與場景内之物件相交。=射 線與場景内之物件相交,則該物件之特性及若干其他影響 因素(例如,光源之效應)用於計算射線所曝露於的色 光之量或色彩及光之缺乏。此等計算接著用於確定經追縱 之射線所通過的像素之最終色彩。 對於單一場景進行多次追蹤射線之處理。舉例而言,可 針對顯示中之每一像素追縱單一射線。一旦已追蹤足夠數 U 目之射線以確定組成電腦螢幕之二維顯示的所有像素之色 * ’便可將三維場景之二維合成在電腦螢幕上顯示給觀看 者。 .料追縱通常比光栅化更逼真地再現真實世界三維場 • 2。此❹地歸因於以下事實:射線追縦模擬光如何在真 貝世界ί衣i兄中行進及表現,而非如光撕化所做,簡單地將 三維形狀投影於二維平面上。因此,使用射線追縱所再現 圖形較為準確地在監視器上描繪吾人眼睛在真實世界中 習慣看到的圖形。 139743.doc 201001327 此外,射線追蹤亦比光栅化更好地處置增加之場景複雜 性。射線追蹤與場景複雜性成對數比例關係。此係歸因於 以下事實:即使場景變得較複雜,亦可將相同數目之射線 投射至場景中。因此同於光栅化,當場景變得較複雜 時,射線追蹤在計算能力需求方面並不受影響。 射線追縱通常需要大量的浮點計算,且因此需要再現場 景所需的增加之處理能力。當需要快速再現時(例如,當 諸如在遊戲機中影像處理系統將為動畫目的而再現圖: 旬,此可尤其為真實情況。歸因於射線追縱之増加㈣ 算需求,難以足夠快地再現動畫以使其看起來逼真(逼真 的動晝為每秒約二十至二十四個圖框)。 使用(例如)射線追縱之影像處理可涉及執行向量與純旦 數學。因此,用於影像處理之硬體支援可包括經組能以: =多種計算之向量及純量單元。舉例而言,向量運算 量運算可追縱穿過場景之光的路徑或使三維場景杜 移動。向量單元可對與場景中之物件相關之向量執行= J如例如點積及又積)。純量單元可對純量值執行算術運 了例如,加法、減法'乘法、除法及類似運 。 兀及純量單元可經管線化而改良效能。 °里單 影像處理計算可涉及向量單元與純量單元之 動。因為先前技術實施可經獨立地配給且具有 里互 存器檔案的向量單元及純量單元,所以在該等別暫 ^資料通常非常低效。舉例而言,純量單元=傳 憶體載入至其相關聯之暫存器稽案中以執行純量;= 139743.doc 201001327 接著將該計算之結果自與該純量單元相關聯之暫存器槽案 儲存回至記憶體中。隨後,可將儲存於記憶體中之純=運 算之結果載人至與向量單元相關聯之單獨的暫存器檐案中 以執行向量運算。 > 用以在純量單元與向量單元之間傳%資料的資料至及自 記憶體之傳送及指令之間的相錢可引人減慢影像處理之 顯著延遲,藉此不利地影響再現逼真影像及動畫之能力。 本發明之實施例將向量單元與純量單元組合成能夠執行向 置運异及純量運算兩者之單一單元。實施例亦提供一能夠 儲存向量及純量資料之暫存器檔案。 例示性系統 圖1說明-例示性多核心處理元件1〇〇,其中可實施本發 明之實施例《多核心處理元件100包括複數個基本處理能 力引擎(basic throughput engine)105(BTE)。BTE 1〇5 可含 有複數個處理執行緒及—核心、快取記憶體(例如,li快取 記憶體)。位於每-BTE内之處理執行緒可有權存取一共用 多核心處理元件快取記憶體11〇(例如,L2快取記憶體)。 BTE 105亦可有權存取複數個收件匣(inb〇x)ll5。收件匣 115可為一記憶體映射位址空間。可將收件匡115映射至位 於BTE 105中之每一者内的處理執行緒。位於BTE内之每 執行緒可具有一圮憶體映射收件匣且有權存取所有其他 的名憶體映射收件匣11 5。收件匣i丨5組成由BTE i 〇5使用 之一低延時及南頻寬通信網路。 BTE可將收件匣115用作一網路以彼此通信且在BTE之間 139743.doc 201001327 再分配資料處理工作。對於一些實施例,於通信網路中可 使用單獨的寄件匣(例如)以接收由ΒΤΕ 1 05進行的處理之 結果。對於其他實施例,收件匣丨15亦可充當寄件匣,例 如,一BTE 105直接將處理函數之結果寫入至將使用該等 結果之另一B TE 1 0 5之收件g。 可將影像處理系統之彙總效能與BTE可多好地劃分及再 分配工作聯繫起來。收件匣115之網路可用於收集工作並 將工作分配至其他BTE ’而使無圖框間連貫性的BTE通信 資料封包不會損毁共用多核心處理元件快取記憶體⑴。 針對每圖框可再現數百萬個三角形的影像處理系統可包括 許多以此方式連接之Bte 1〇5。 在本發明之一實施例中,可將一 βΤ·ρ丨^ J將ΒΤΕ 105之執行緒指派 、-口 一工作負載管理器。影像虚 像處理系統可使用各種軟體及硬 月豆組件以自三維場景再 冉現—維影像。根據本發明之一實施 例,衫像處理系統可使用工 理系銻I山 貞載&理益以利用由影像處 糸、洗發出之射線來遍層六 用於將相可將空間索引實施為 ν〇ι X S刀成車乂小之限界體(bounding volume)的樹型資料社。 ^ 方法之与換步 〇 吏用用於影像處理之射線追蹤 方法之衫像處理系統可使用处 限界體交點。在本發明之Ί、5丨來迅速地衫射線· 藉由使用* + 貫靶例中,工作負載管理器可 使用二間索引來執行 在本發明之香, $限界體父點測試。 4知明之一貫施例中, 心處理元件BTE 1()5之:處理幻牛1。。上之多核 擎。在工作負_ g " 仃緒可為向量處理能力引 丨户貝戟官理考被中6J_ d 。確疋射線-限界體交點後,工作負 139743.doc •10- 201001327 载管理器可經由收龍115發出(發送)射線至複數個向量處 理能力引擎中之-者。該等向量處理能力引擎可接著判定 射線是否與限界體内所含之原始物件(primitive)相交。該 等向量處理能力引擎亦可執行與確定射線所通過之像素的 - 色彩相關之運算。 ‘圖2說明根據本發明之一實施例的多核心處理元件之網 路200。圖2亦說明本發明之—實施例,其中多核心處理元 件100之ΒΤΕ中之一者的執行緒為一工作負載管理器205。 根據本發明之一實施例,多核心處理元件之網路2〇〇中的 每一多核心處理元件22〇1_ν可含有一工作負載管理器2〇5ιν。 根據本1明之貫把例,多核心處理元件之網路2〇〇中的 每一處理器220亦可含有複數個向量處理能力引擎2丨〇。 根據本發明之一實施例,工作負載管理器22〇ι·ν可使用 一高速匯流排225與其他工作負載管理器22〇ιν及/或其他 多核心處理元件22〇之向量處理能力引擎21〇通信。向量處 〇 理能力引擎210中之每一者可使用高速匯流排225與其他向 量處理能力引擎210或工作負載管理器2〇5通信。工作負載 管理器處理器205可使用高速匯流排225來收集與影像處理 相關之任務並將該等任務分配至其他工作負載管理器處理 -器205,且/或將任務分配至其他向量處理能力引擎21〇。 尚速匯流排225之使用可允許工作負載管理器2〇5ι-ν通信, 而不以與工作負載管理器2〇5通信相關之資料封包影響快 取記憶體230。 例示性三維場景 139743.doc -11 * 201001327 圖3為待由影像處理系統再現之例示性三維場景3〇5。物 件320可在三維場景305内。圖3中之物件32〇具不同幾何形 狀。雖然圖3中僅說明四個物件32〇M旦典型三维場景中之 物件的數目可更多或更少。通常,三維場景將具有比圖3 中所說明之物件多得多的物件。 如在圖3中可見’該等物件具有變化的幾何形狀及尺 寸。舉例而S,圖3中之一物件為錐體32〇a。旧中之其他 物件為箱320B.D。在許多現代影像處理系統中,通常將物 件分解成較小的幾何形狀(例如,正方形、圓开》、三角形 等)。接著由許多較小之簡單幾何形狀來表示較大物件 此等較小幾何形狀常被稱為原始物件。 場豕305中亦况明了光源325ab。該等光源可照亮位於場 ,、3〇5内之物件32G。此外,視場景305内之光源325及物件 320之位置而定’光源可使陰影投射於場景305内之物件 上。 :藉由-影像處理系統將三維場景3Q5再現於_二維圖 1影像處理系統亦可使二維圖像顯示於監視器训 ί:=Γ°可使用許多不同色彩之像素33°來再現最終 ^ 一难圖像。 二由影像處理系統使用以將三維場景如再現於 H 中之方法被稱為射線追蹤。藉由影像處理系統 者315之視點「發 々「媒奴ώ Α 有 實現射… 線至三維場景305中來 •如。射線具有類似於光線之特性及行。 在圖3中@ 人 、、 了見—射線340,其在觀看者315之位置處起始 139743.doc 】2· 201001327 且橫穿過三雄場景305。隨著射線340自觀看者315橫穿至 三維場景305,射線340通過影像處理系統將再現最終二維 圖像所在的平面。在圖3中,由監視器31〇來表示此平面。 由像素335表示射線34〇通過該平面或監視器31〇之點。 如先則所簡要論述,多數影像處理系統使用數千(若非 數百萬)個像素之柵格330來將最終場景再現於監視器3ι〇 上。母一個別像素可顯示一不同色彩以將最終複合之二維
圖像再現於監視器31〇上。使用射線追蹤影像處理方法以 自二維場景再現二維圖像之影像處理系統將計算所發出射 線在一,.隹%景中所遇到的色彩。影像處理場景將接著將射 '、、t到的色彩指派給射線在其自觀看者至三維場景之途 中所通過的像素。 、 十對每—像素所發出之射線的數目可改變。一些像素可 二有㈣待再現之特定場景所發出料多射線。在該狀況 =,2由來自針對像素所發出之所有射線的每一色彩貢獻 L確疋像素之最終色彩。其他像素可僅具有一經發出以確 =維7中之像素之所得色彩的單—射線。—些像素可 p像處理系統發出的任何射線,在該狀況下,其 ^彩可藉由料處㈣統^料法來衫、近似或^ 定 |-^ 像中之像素3 3 5之最終色彩,影像處理系 定射線340是否與場景内之-物件相交。若射線 “丨上内之一物件相交,則其可經指派-預設背景色 夕!j如,矣一 ’、天或夜晚天空的藍色或黑色)。相反,當射 139743.doc -13· 201001327 黃穿過三維場景時,射線州可能撞擊物件。當射線 撞擊場景内之物件時,物件之色彩可經指派給射線所通過 2像素。然而,物件之色彩必須在其經指派給像素之前確 疋 。 許多因素可影響由原始射線34峨擊之物件的色彩。舉 例而言’三維場景内之光源可照亮物件。此外,物件之物 7特性可影響物件之色彩。舉例而言,絲件係反射或透 月的,則其他非光源物件接著可影響物件之色彩。 為了確定來自三維場景内之其他物件之影響:可自原始 射線3—40與物件相交之點發出第二射線。舉例而言,一類 型之第二射線可為陰影射線。陰影射線可用於確定光對原 始射線340與物件相交之點的貢獻。另一類型之第二射線 I為透射射線。透射射線可用於確定何種色彩或光可透射 ^物本體H第三類型之第二射線可為反射射 線。反射射線可用於確定何種色彩或光經反射至物件上。 上文所提及,一類型之第二射線可為陰影射線。可自 j D射線與物件之相父點至三維場景内之光源而追蹤 每一陰影射線。若射線到達光源而不在射線到達光源之前 遇到另一物件,則光源將在原始射線撞擊物件之點處照亮 由原始射線撞擊之物件。 牛例而。,陰影射線341a可自原始射線與物件32〇八 相交之點發出,且可在朝向光源325a之方向上橫穿。陰影^ 射線341a到達光源325a而不遇到場景3〇5内之任何其 件320。因此,光源325a將在原始射線34〇與物件相交 139743.doc • 14· 201001327 之點處照亮物件32〇A。 其他陰影射線可使其路徑在原始射線撞擊物件之點與由 三料景内之另一物件所阻斷之光源之間。若阻擔原始射 線撞擊之物件上的點與光源之間的路徑之物件為不透明 的,則光源將不會在原始射線撞擊物件之點處照亮物件。 因此’光源可不影響原始射線之色彩,且因此亦不影響待 再現於—維圖像中之像素之色彩。然而,若物件& U % 或透明的’則光源可在原始射線撞擊物件之點處照亮物 件0 舉例而§,陰影射線341β可自原始射線與物件Μ、 相交之點發出,且可在朝向光源%之方向上橫穿。在此Α 實例中,验影射線341β之路徑由物件32〇d所阻斷。若物件 320D為不相的,則光源叫將不㈣始射線3触物件 31相交之點處照亮物件32〇a。然而,若物件32〇〇為半透
U ^或透明的’則光源325β可在原始射線Μ。與物件咖A相 交之點處照亮物件320A。 另-類型之第二射線為透射射線。若物件(原始射線盥 其相幻具有透明或半透明特性(例如,玻璃),則透射射線 可由影像處理系統發出。透射射線以與原始射線撞擊物件 之角度相關的一角度橫穿過物件。舉例而言,觀察到透射 射線344横穿過物件32〇A’原始射線340與該物件32〇a相 交。 另-類型之第二射線為反射射線。若物件(原始射線與 其相交)具有反射特性(例如,金屬飾面),則將由影像處理 139743.doc 201001327 系統發出反射射線以確定何種色彩或光可由物件反射。反 2射線以與原始射線與物件相交之角度相關的—角度橫越 遂離物件。舉例而言’可藉由影像處理系統發出反射射線 343以確定可藉由物件32〇a(原始射線34〇與其相交)反射何 種色彩或光。 所有第一射線(例如,、 等)之色彩及光的”獻將射射線、反射射線 = ^ 〜貝獻將產生原始射線所通過的像素之 最終色彩。 、 向量運算 線:物:像I /歩及執行一或多個向量運算以確定(例如)射 峰” 一之乂點,陰影射線、反射射線及其類似射線之產 。一在影像處理期間執行之普通運算為兩個向量之間的 :積運算。可執行又積以確定表面(例如 之 ::之原始物件的表面)之法向向量。法向向量心: 看者是否可見物件之表面。 扣不硯 以带:::描述’可將場景中之每—物件表示為彼此連接 形成物件之形狀的複數個原始物件。舉例而言,在一實
施例中,每一物件可由複數個 X 明由複數個三角形41G構成之 —Μ構成。圖4說 可為由 專成之—例不性物件400。物件4〇〇 明:目的:複數個三角形410形成的-球形物件。為說 以較佳地近似—曲面物件大"岐小三角形410來形成 X月之貫施例中,可計算每—三角形41〇之表面 139743.doc 201001327 法線以判定觀看者450是否可見三角形之表面。為確定每 -二角形之表面法線,可在表示三角形之兩個邊的兩個向 量之間執行叉積運算。舉例而言,可藉由在向量411a與 411b之間執行又積來計算三角形杨之表面法線川。 法向向量可判定—表面(例如,原始物件之表面)是否面 向觀看者。參看圖4,法向向量413沿觀看者彻之方向而 才曰向口此一角形410可顯示給使用者。另一方面,三
角形侧之法向向量415遠離觀看者450而指向。因此,: 角形410b可不顯示給使用者。 一 射線-體交點計算 如上文所論述’為確定二维圖像中之像素之最終色彩, 料處理“必須判定給定射線是否與場景内之_物件相 交。為計算簡單起見,可認為物件藉由比物件自身簡單之 一體(V〇lume)來限界。若射線不碰到物件之限界體 亦將錯過物件本身。 'h、 若限界體配合過於鬆散,則已錯過物件之射線可能碰到 限界體,從而導致不必要的計算。若限界體緊密配合—物 件’則將浪費極少的射線-物件交點計算。然❿,射線-物 件交點計算可顯著更加複雜。 本發明之實施例可利用任何合適地成形 _ "姐。举例 而吕,一些實施例可使用由諸平面建構之平行六面體來限 界物件。方程式丨說明一於3維空間中描述一平面之通用方 程式。
Ax + By + Cz-d^O 139743.doc -17- 201001327 方备式1描述 具有一法向向量#;
B CJ 其與原點 保持d單位之距離。此外,存在一組與法向向量n正交且彼 此平行之平面,其僅在與原點之距離3上彼此變化。可自 此組平面選擇兩個平面來限界一給定物件,其中該兩個平 面之間的區被稱為片層(slab)。 -組限界之片層之相交產生一限界體。$ 了在三维空間 中創建-封閉的限界體’必須利用至少兩組的3個限:: 層:可選擇兩個點㈤及’以界定每一組3個片@,片層 之母- X、乂或Z分量界定一平面及其與原點之距離。此導 致兩個點(wl&w2)在三維空間中界定一立方體。 射線(其中v⑴為描述射線之方向的向量,且e⑴為描述 出射點(亦即’射線之起點)對原點之位移的向量)可於一相 交點P處與限界平面相交。可如方程式2中所示地計算自出 射點响至限界平面上的相交點之射線之量值。如方程式^ 中料算的射線之量值可接著用於確定射線與限界平面之 相父點如方程式3中所示。 V⑺ *1,2 P(Osv(i)*i+e(z·) (2)(3) 類似地’圖5說明可如何針對每一植限界平面計算自出 射點e(z·)至限展L 丄 明,六 界千面上的相交點之射線之量值t。如所說 法,:耸兩種方法,非按比例調整方法及按比例調整方 …、方法可用於計算給定射線與兩 交點。藉由使用非按比例調整方法,#方程式= 139743.doc -18- 201001327 而計算自e⑴至第一限界平面之射線之量值
第-限界平面,e⑴表示射線對原點之位移 :點位移向量,且v(i)表示射線之正規化方向向量…: 意,⑴表示方程式512及所有後續方程式中之集合(X、ν’、 Z)。類似地,如方程式514所描述地計算h⑴至U界 平面之射線之量值t2(i),其中%⑴描述第二平面。一旦缓 計算,即比較量值tl⑴與量如⑴。若q⑴大於^⑴則對 值進行交換(亦即’ tl⑴經指派。⑴之值,且^⑴經指派 t〗(i)之舊值)。此補償射線自原點之負位移。接著比較值 Mx)、⑻,且可接著將最大值插人至上述的方程 式3: ’以確定射線與限界箱之第一可能相交點‘⑴。 接者比較值的)、^⑺及t2(z),且可接著將最小值插入至 上述的方程式3中,以確定射線與限界箱之第二可能相交 點Pfar(i)。最後,評估該等相交點以確保射線與限界體事 實上確實相交。 使用按比例調整方法計算射線與兩個限界平面之交點需 要三個步驟。第一步驟為分別計算χ、y&z分量之按比2 调整因數(SF) ’如方程式532、534及536所描述。舉例而 言,藉由使方向向量v(i)之X分量之正負號乘以方向向量之 y分量與Z分量之點積的絕對值來計算χ分量之按比例調整 因數。接著,藉由使表達式(W⑴_e⑴)乘以按比例調整因 數SF(i)來確疋自e(〇至第一限界平面〜⑴的射線之量值 Mi),如方程式522所說明。對第二限界平面重複相同過 程。最後,如上所述,比較量值tl⑴與量值。⑴,若^⑴大 139743.doc -19- 201001327 於h(i),則交換該等值(亦即,ti⑴經指派^⑴之值,且 h(i)經指派tl⑴之舊值)。此補償射線自原點之負位移。接 著比較MX)、tl(y)及tl(z),接著將最大值插入至上述的方 程式3中,以確定射線與限界箱之第-可能相交點 pnear⑴。接著比較t2(x)、⑺及Μζ),接著將最小值插入 至上述的方程式3中,以確定射線與限界箱之第二可能相 交點Pf“i)。最後’評估該等相交點以確保射線與限‘ 事實上確實相交。 如上所說明,用於非按比例調整方法中之該等方程式涉 :除法運算。除法運算為通常複雜且計算上花費多的運 算。耗費可藉由針對向量之三個分量中之每—者執行除法 運异而擴大。可藉由針對射線可遇到的每—物件及經投射 (或經產生)以再現場景之每一射線執行射線-體交點測試來 進一步擴大耗費。 〃之相比,使用按比例調整方法確定射線與限界體之, 點可避免除法運算之使用。因此,系統效能可藉由使則 比例調整方法執行射線·體交點測試而得到增強。 如上所述,射線源於假想的觀看者眼睛,行進穿過營』 上之像素且穿過場景内之—或多個物件。此外,該一或』 個物件可藉由在數學上可比物件本身更容易描述的對應達 目之體而限界。因為給定場景中存在許多像素及複數個斗 件,所以射線與物件之間的交點之數目可為巨大的。^ 6〇2’藉由處理器選擇並接收—射線及—限界體。 在04彳算射線之正規化方向向量v⑴之按比例調整巨 139743.doc -20. 201001327 數SF(i),如上所述。 SF(i)執行一交點測一,使用該等按比例調整因數 ,^ ^以判定射線是否與所選物件之限界體 相父。如上文所描述,為確定二維圖像中…之= 衫’:像處理系統必須判定給定射線是否與場景内之二物 件相乂。當射線撞擊場景内之物件時,物件之色 派給射線所通過之像素。 /可、里才a 如上所提及,若適當選擇了限界體 射線亦將穿過限界體。另外穿、物件之母一 件之射線穿過限界體。因此,射線穿過限 =所產生之相交點ρ⑴可用於確定—或多個像素之色 圖7進-步說明執行交點測試時所涉及之步驟。在·, 否已評估所有座標之評估。在*關於X計 ;:自6(1)至第曰—限界平面之射線之量值。此藉由取第一限 」平面之X分量(由Wl(x)表示)與位移向量之X分量…(X)表 )、而兀成才妾著將此差乘以按比例調整因數之X分量 (由SF⑻表示)。在7〇6,重複該過程;然而,使用第二限 ^平面之X座標(由W2(x)表示)。重複該過程以關於⑷確 疋自e(i)至限界平面之射線之量值。 圖8A及圖8B說明描緣計算射線與兩個限界平面之交點 的T比例調整方法之邏輯區塊。在圖8八中,自正規化方向 向量v⑴計算按比例調整因數。接著將料按比例調 整因數與該等限界平面w⑴及該等原點位移向量e(i)一起提 供給交點測試邏輯’如圖8B_所說明。注意,圖8A及圖 139743.doc -21- 201001327 紐中所說明之邏輯常以軟體實施; +發明之督谂办,丨 亦可使用硬體來實施所說明之邏輯。 藉由將按比例調整方法用於計算射線與兩個限界平面之 交點,可相較於非按比例調整方法節約時脈週 之 體交點計料間之改良可導錄錢能,特/身= 雜影像處理之應用中。 隹而要複 容係針對本發明之實施例,但在不偏離本發 土本乾嚀的情況下可設計本發明之其他及另外實施 例,且本發明之範疇係由以下申請專利範圍確定。 【圖式簡單說明】 路 圖1說明根據本發明之一實施例的多核 圖2說明根據本發明之一實施例的多 心處理元件。 核心處理元件網 圖3為根據本發明之一實施例的待由影像處理系統再現 之例示性三維場景。 圖4説明根據本發明之一實施例的待再現於螢幕上之物 件的詳細視圖。 圖5 ,兒明用於非按比例調整及按比例調整的射線-體交點 測試之必要計算。 圖6戎明用於執行射線_體交點測試之方法。 圖7說明在射線_體交點測試中所執行之計算的流程。 圖8 A及圖8B為說明根據本發明之一實施例執行之計算 的方塊圖。 139743.doc -22- 201001327 【主要元件符號說明】 105 基本處理能力引擎(BTE) 110 共用多核心處理元件快取記憶體 115 收件匣 200 多核心處理元件之網路 205 i_n 工作負載管理器/工作負載管理器處理器 210 向量處理能力引擎 2 2 0 ],n 多核心處理元件 225 高速匯流排 230 快取記憶體 305 三維場景 310 監視器 315 觀看者 32〇a 錐體/物件 32〇b 箱 320c 箱 320d 箱/物件 325a 光源 325b 光源 330 像素/柵格 335 像素 340 射線 341a 陰影射線 341b 陰影射線 139743.doc -23 - 201001327 343 344 410 410a 410b 411a 411b 413 415 512 514 522 532 534 536 e(i) SF(i) V⑴ wi(i) w2(i) 反射射線 透射射線 三角形 三角形 三角形 向量 向量 表面法線/法向向量 法向向量 方程式 方程式 方程式 方程式 方程式 方程式 原點位移向量 按比例調整因數 射線之正規化方向向量 第一限界平面 第二限界平面 139743.doc •24·
Claims (1)
- 201001327 七、申請專利範園: 1. -種用於執行一射線與一限界體之一交點測試之方 其包含: ' 基於界定該射綠> r^-ι . 冲 /射、,泉之一方向向ΐ之X、7及2分量值而計 舁按比例調整因數;及 利用„亥等按比例調整因數以在無除法運算的情況 行該交點測試。 Μ 2_如請求们之方法,其中該方向向量 且計算該等按比例調整因數包含: 刀里, 基於D亥方向向量之該丫分量及該z分量計算— 比例調整因數; 置夜 土於4方向向量之該X分量及該2分量計算—y分量按 比例調整因數;及 按 基於α亥方向向量之該x分量及該y分量計算-z分量按 比例調整因數。 刀里按 L 3. 如請求項1 $ t、、t 、 / 其中該射線係藉由對一原點之一付 移而進_步狀 1疋’且利用該等按比例調整因數以在盔 法=算之情況下執行該交點測試包含·· …于、 基於該X分量按比例調整因數計算該射線與該限界體 之—第一面之間的交點之一 x座標; ;X y刀量按比例調整因數計算該射線與該限界體 之第一面之間的該交點之一 y座標;及 士女 yv 曰 土 ' ^ Z为量按比例調整因數計算該射線與該限界體 之—第一面之間的該交點之一2座標。 139743.doc 201001327 4. 5. 6· 7· 點之—位 以在無除 該限界體 如凊求項1之方法,其中該射線係藉由對一原 移而進一步界定,且利用該等按比例調整因數 法運算之情況下執行該交點測試包含: 基於該X分量按比例調整因數計算該射線與 之第二面之間的交點之一 X座標; 基於該y分量按比例調整因數計算該射線與該限界體 之一第二面之間的該交點之一 y座標;及 基於該z分量按比例調整因數計算該射線與該限界體 之第一面之間的該交點之一 z座標。 士叫求項4之方法,其進一步包含計算出的該χ座標、該 y座標及該ζ座標。 "月求項5之方法,其進_步包含以藉由該父座標、該y 座標及該2座標界定之一原點產生一或多個額外射線。 —種能夠執行一射線與—限界體之交點測試之處理器, 其包含: 用於基於界定該射線之—方向向量之乂、丫及2分量值 而计算按比例調整因數之邏輯;及 用於利用該等按比例調整因數以在無除法運算之情況 下執行該交點測試之邏輯。 8. 2請求項7之處理器,其中該方向向量包含乂”及2分 里’且用於計算該等按比例調整因數之邏輯包含: 田用於基於該方向向量之該y分量及該冗分量計算〆乂分 量按比例調整因數之邏輯; 用於基於該方向向量之該X分量及該Z分量計算一y分 139743.doc 201001327 量按比例調整因數之邏輯;及 一 Z分 用於基於該方向向量之該x分量及該y分量計算 量按比例調整因數之邏輯。 9. 如請求項7之處理器,其中該射線位移而進-步界定,且該用於利用該等按比例=數 以在無除法運算之情況下執行該交點測試之邏輯包含: 用於基於該X分量按比例調整因數計算該射線與該限 界體之一第一面之間的交點之一X座標之邏輯; 用於基於該y分量按比例調整因數計算該射線與該限 界體之—第一面之間的該交點之-y座標之邏輯;及 =於基於該Z分量按比例調整因數計算該射線與該限 界體之—第—面之間的該交點之一 Z座標之邏輯。 10. 如明求項7之處理器,其中該射線係藉由對一原點之— 位移而 — JlL·. ya ^ V界疋’且遠用於利用該等按比例調整因數 、在.、>、除法運异之情況下執行該交點測試之邏輯包含: 用於計算該射線與該限界體之一第二面之間的交點之 一x座標之邏輯; 用於計算該射線與該限界體之一第二面之間的該交點 之 y座標之邏輯;及 用於°十算該射線與該限界體之一第二面之間的該交點 之一 Z座標之邏輯。 11·如請求項7 R <處理器’其中用於利用該等按比例調整因 數以 [l/v “、、1示法運算之情況下執行該交點測試的邏輯產生 該交點測科、e W之、、Q果值,且該交點測試之該等結果值係儲 139743.doc 201001327 存於記憶體中。 12. 13. 14. 15. 其中頟外射線係基於該交點測試 如請求項7之處理器 之s玄寺結果而產生。 交點測試之系 一種經組態以執行一射線與一限界體之 統,其包含: 用於基於界定該射線之一方向向量 而計算按比例調整因數之邏輯;及 用於利用該等按比例調整因數以在無除法運算之情況 下執行該交點測試之邏輯。 ' 如請求項13之系統,其中哕 曰 1^”茨方向向:1:包含\、乂及2;分 蓋’且該系統經組態以計篡兮笙扒 叶异5哀荨按比例調整因數, 統包含: 〜乐 用於基於該方向向量之#、人θ „ θ j Π里之5亥y分1及該2分量計算―父分 量按比例調整因數之邏輯; 用於基於該方向向量之兮· Ώ 曰 J门里之分量及該Ζ分量計算_y* 量按比例調整因數之邏輯;及 用於基於該方向向哥夕兮八曰„ 曰 门门里之戎x分量及該y分量計算一 2分 量按比例調整因數之邏輯。 月求項13之系統,其中該射線係藉由對一原點之—值 移而進步界定’且該用於利用該等按比例調整因數以 在無除法運异之情況下執行該交點測試之邏輯包含: 用於基於該X分量按比例調整因數計算該射線與該限 界體之一第一面之間的交點之一 χ座標之邏輯; 用於基於該y分量按比例調整因數計算該射線與該限 139743.doc 201001327 第面之間的该父點之一 y座標之邏輯;及 2於基於該z分量按比例調整因數計算該射線與該限 第面之間的s亥父點之一 z座標之邏輯。16.如請求項13之系統,其中該射線係藉由對—原點之一位 移而進步界定,且該用於利用該等按比例調整因數以 在無除法運鼻之情況下執行該交點測試之邏輯包含: 用於基於該X分量按比例調整因數計算該射線與該限 體之第一面之間的父點之一 X座標之邏輯; =於基於該y分量按比例調整因數計算該射線與該限 界體之一第二面之間的該交點之一 y座標之邏輯;及 用於基於該z分量按比例調整因數計算該射線與該限 界體之一第一面之間的該交點之一 Z座標之邏輯。 17.如凊求項13之系統,其中用於利用該等按比例調整因數 以在無除法運算之情況下執行該交點測試之邏輯產生該 又點測試之結果值,且該交點測試之該等結果值係儲存 於記憶體中。 1 8.如明求項丨3之系統,其中額外射線係基於該交點測試之 該等結果而產生。 139743.doc
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/120,522 US20090284524A1 (en) | 2008-05-14 | 2008-05-14 | Optimized Graphical Calculation Performance by Removing Divide Requirements |
Publications (1)
Publication Number | Publication Date |
---|---|
TW201001327A true TW201001327A (en) | 2010-01-01 |
Family
ID=41315725
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW098115586A TW201001327A (en) | 2008-05-14 | 2009-05-11 | Optimized graphical calculation performance by removing divide requirements |
Country Status (2)
Country | Link |
---|---|
US (1) | US20090284524A1 (zh) |
TW (1) | TW201001327A (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2988502A1 (fr) | 2012-03-26 | 2013-09-27 | Thomson Licensing | Procede pour representer un milieu participant dans une scene et dispositif correspondant |
US10699465B1 (en) * | 2018-12-28 | 2020-06-30 | Intel Corporation | Cluster of scalar engines to accelerate intersection in leaf node |
US11308683B2 (en) * | 2020-06-29 | 2022-04-19 | Imagination Technologies Limited | Intersection testing in a ray tracing system using ray bundle vectors |
US11295509B2 (en) | 2020-06-29 | 2022-04-05 | Imagination Technologies Limited | Intersection testing in a ray tracing system using multiple ray bundle intersection tests |
GB2599183B (en) | 2021-03-23 | 2022-10-12 | Imagination Tech Ltd | Intersection testing in a ray tracing system |
GB2599188B (en) | 2021-03-23 | 2022-10-12 | Imagination Tech Ltd | Intersection testing in a ray tracing system |
-
2008
- 2008-05-14 US US12/120,522 patent/US20090284524A1/en not_active Abandoned
-
2009
- 2009-05-11 TW TW098115586A patent/TW201001327A/zh unknown
Also Published As
Publication number | Publication date |
---|---|
US20090284524A1 (en) | 2009-11-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Igehy | Tracing ray differentials | |
US11747766B2 (en) | System and method for near-eye light field rendering for wide field of view interactive three-dimensional computer graphics | |
CN106780709B (zh) | 一种确定全局光照信息的方法及装置 | |
US8332452B2 (en) | Single precision vector dot product with “word” vector write mask | |
US20090150648A1 (en) | Vector Permute and Vector Register File Write Mask Instruction Variant State Extension for RISC Length Vector Instructions | |
US9495724B2 (en) | Single precision vector permute immediate with “word” vector write mask | |
TW201015490A (en) | Method and system for rendering 3D model of 3D object | |
US20070182732A1 (en) | Device for the photorealistic representation of dynamic, complex, three-dimensional scenes by means of ray tracing | |
JP2022091849A (ja) | 光線バンドルの光線に対する差分データを決定する方法及びグラフィックス処理ユニット | |
US8169439B2 (en) | Scalar precision float implementation on the “W” lane of vector unit | |
US20090106526A1 (en) | Scalar Float Register Overlay on Vector Register File for Efficient Register Allocation and Scalar Float and Vector Register Sharing | |
JP2015535978A (ja) | 3次元シーンをレンダリングするためのコンピュータグラフィックス方法 | |
CA2810880C (en) | Integration cone tracing | |
TW201001327A (en) | Optimized graphical calculation performance by removing divide requirements | |
JP2012190428A (ja) | 立体映像視覚効果処理方法 | |
US20090063608A1 (en) | Full Vector Width Cross Product Using Recirculation for Area Optimization | |
CN112041894A (zh) | 渲染期间提高涉及水面的场景的真实感 | |
US20090106525A1 (en) | Design structure for scalar precision float implementation on the "w" lane of vector unit | |
González et al. | based ambient occlusion | |
Gruen | Ray-guided volumetric water caustics in single scattering media with dxr | |
Hermes et al. | Global Illumination using Parallel Global Ray-Bundles. | |
Kolivand et al. | Shadow mapping or shadow volume? | |
Kolivand et al. | To combine silhouette detection and stencil buffer for generating real-time shadow | |
Bodonyi et al. | Efficient tile-based rendering of lens flare ghosts | |
Kim et al. | A mobile 3-D display processor with a bandwidth-saving subdivider |