TW201602961A - 用以延遲著色之串流壓縮去鋸齒方法 - Google Patents
用以延遲著色之串流壓縮去鋸齒方法 Download PDFInfo
- Publication number
- TW201602961A TW201602961A TW104104081A TW104104081A TW201602961A TW 201602961 A TW201602961 A TW 201602961A TW 104104081 A TW104104081 A TW 104104081A TW 104104081 A TW104104081 A TW 104104081A TW 201602961 A TW201602961 A TW 201602961A
- Authority
- TW
- Taiwan
- Prior art keywords
- buffer
- pixel
- identified
- module
- delay
- 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/10—Geometric effects
- G06T15/40—Hidden part removal
- G06T15/405—Hidden part removal using Z-buffer
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/60—Memory management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/40—Filling a planar surface by adding surface attributes, e.g. colour or texture
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/005—General purpose rendering architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/50—Lighting effects
- G06T15/80—Shading
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/36—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
- G09G5/363—Graphics controllers
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/36—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
- G09G5/39—Control of the bit-mapped memory
- G09G5/393—Arrangements for updating the contents of the bit-mapped memory
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Graphics (AREA)
- Computer Hardware Design (AREA)
- Geometry (AREA)
- Image Generation (AREA)
- Image Processing (AREA)
- Controls And Circuits For Display Device (AREA)
Abstract
可提供用於在一顯現管線之一延遲著色器處接收一影像之一像素的片段資料及基於該片段資料識別該像素中之一或多個表面的系統及方法。另外,若對應於該像素之一幾何緩衝(G緩衝)之一記憶體溢出條件未被滿足,則每一所識別表面可作為一項目儲存於該G緩衝中。在一個實例中,一權重基於該像素由該G緩衝中之每一表面進行之一覆蓋度及該表面之一遮蔽狀況而被指派給該表面,且一色彩基於該等所指派權重針對該像素予以解析。
Description
本發明係關於在以延遲著色之串流壓縮去鋸齒方法。
諸如三維(3D)遊戲及其他高解析度3D顯現應用的廣泛之多種圖形應用可涉及含有重疊表面、複雜照明條件等的場景之即時顯示。諸如多樣本去鋸齒(MSAA)之去鋸齒技術可藉由在顯現管線之幾何階段期間每像素使用較大數目個可見度樣本(例如,8X MSAA)而遞送更銳利之表面邊緣。此外,延遲著色技術在複雜照明條件下可藉由延遲像素之著色直至幾何階段已自影像判定出每一樣本之可見度之後而簡化處理。在此狀況下,幾何緩衝(G緩衝)可用以儲存用於延遲著色器階段的資料,其中每一樣本在G緩衝中可具有一項目。然而,隨著去鋸齒取樣率增加,G緩衝之大小亦可增加,此情形又可對記憶體可用性、效能、電力消耗及/或電池壽命具有負面影響。
依據本發明之一實施例,係特地提出一種輸出視覺內容之系統,其包含:一記憶體,其儲存對應於一影像之一像素的一幾何緩衝(G緩衝);包括一延遲著色器階段之一顯現管線,該延遲著色器階段具有接收用於該像素之片段資料的一片段模組,一表面模組,其基於該片段資料識別該像素中的一或多個表面,及一緩衝模組,若針對該G緩衝的一記憶體溢出條件未被滿足,則該緩衝模組將每一所識別表面作為一項目儲存於該G緩衝中;及一顯示器,其基於該G緩衝輸出該視覺內容。
10‧‧‧顯現管線
12‧‧‧多樣本去鋸齒(MSAA)幾何階段
14‧‧‧片段資料
16‧‧‧延遲著色器階段
18‧‧‧串流壓縮邏輯
20‧‧‧像素
22‧‧‧G緩衝
24‧‧‧片段
24a‧‧‧綠色片段
24b‧‧‧第一藍色片段
24c‧‧‧第二藍色片段
26‧‧‧樣本
26a至26h‧‧‧樣本
28、28a‧‧‧表面
28b‧‧‧第二表面
30‧‧‧項目
30a‧‧‧第一項目
30b‧‧‧第二項目
32、44‧‧‧方法
34、36、38、40、42、46、48、50、52、54、56、58、60、62、64、66‧‧‧區塊
68‧‧‧串流壓縮邏輯
68a‧‧‧片段模組
68b‧‧‧表面模組
68c‧‧‧緩衝模組
68d‧‧‧權重模組
68e‧‧‧色彩模組
68f‧‧‧合併模組
68g‧‧‧捨棄模組
70‧‧‧計算系統
72‧‧‧中央處理單元
74‧‧‧整合式記憶體控制器(iMC)
76‧‧‧系統記憶體
78‧‧‧作業系統(OS)
80‧‧‧輸入/輸出(IO)模組
82‧‧‧控制器
84、720、804‧‧‧顯示器
86‧‧‧硬碟機
88‧‧‧專用圖形處理單元
89‧‧‧其他階段
90‧‧‧專用圖形記憶體
92‧‧‧圖形匯流排
94‧‧‧內部快取記憶體
700‧‧‧系統
702‧‧‧平台
705‧‧‧晶片組
710‧‧‧處理器
712‧‧‧記憶體
714‧‧‧儲存器
715‧‧‧圖形子系統
716‧‧‧應用程式
718‧‧‧無線電
722‧‧‧使用者介面
730‧‧‧內容服務器件
740‧‧‧內容遞送器件
750‧‧‧導覽控制器
760‧‧‧網路
800‧‧‧小型外觀尺寸器件
802‧‧‧外殼
806‧‧‧輸入/輸出(I/O)器件
808‧‧‧天線
812‧‧‧導覽特徵
實施例之各種優點藉由研讀以下說明書及附加申請專利範圍且藉由參考以下圖式對於熟習此項技術者將變得顯而易見,其中:圖1係根據實施例之顯現管線之實例的方塊圖;圖2係根據實施例之具有多個所識別表面之像素的實例之說明;圖3係根據實施例之幾何緩衝(G緩衝)之實例的說明;圖4係根據實施例之壓縮影像資料之方法的實例之流程圖;圖5係根據實施例之識別表面之方法的實例之流程圖;圖6係根據實施例之串流壓縮邏輯之實例的方塊圖;圖7及圖8為根據實施例之系統的實例之方塊圖;且圖9係根據實施例的具有小型外觀尺寸之系統的實例之方塊圖。
圖1展示可啟用與諸如以下各者之應用相關聯的視覺內容之即時輸出的顯現管線10:3D遊戲、科學觀測、數位預觀測(例如,在電影製造中)及/或其他顯現應用。顯現管線10可包括諸如多樣本去鋸齒(MSAA)幾何階段12的幾何階段,該幾何階段對幾何形狀取樣(例如,判定哪些三角形覆蓋影像中之特定位置),並基於樣本將片段資料14提供至延遲著色器階段16。片段資料14針對影像中之每一像素(例如,視訊圖框)可識別覆蓋該等像素之一或多個片段(例如,三角形部分),以及色彩、深度(例如,距攝影機及/或檢視器之距離)、對準及自像素中之彼等片段取樣及/或計算的其他影像資料。延遲著色器階段16可大體上使用片段資料14及幾何緩衝(G緩衝,未圖示)以識別影像中的諸如重疊表面、陰影等的場景特性,並基於場景特性解析影像之像素的色彩。
如將更詳細地論述,延遲著色器階段16可包括串流壓縮邏輯18以藉由在按表面基礎上而非按樣本基礎上追蹤影像資訊來減小G緩衝的記憶體佔據面積。G緩衝之減小之記憶體佔據面積可改良效能(例如,藉由壓縮經處理之影像資料的量),減小電力消耗及/或延長電池壽命。串流壓縮邏輯18在伴隨有MSAA及其他去鋸齒技術之相對高的取樣率存在的情況下係尤其有利的。
現轉向圖2及圖3,展示像素20及G緩衝22。在所
說明之實例中,具有變化之色彩、深度、對準等的多個三角形部分覆蓋像素20。三角形24的覆蓋像素20之數個部分可被稱作片段24(24a至24c)。更確切而言,在所說明之實例中,綠色片段24a由第一藍色片段24b在像素20中部分遮蔽。另外,第二藍色片段24c可部分覆蓋像素20。本文中所提供之片段細節係僅促進論述,且可視內容、應用及/或情況而發生變化。
多個樣本26(26a至26h)可獲取自像素20以判定片段24之特性,其中樣本26可併入於諸如片段資料14(圖1)的片段資料中,該片段資料14提供至諸如延遲著色器階段16的延遲著色器階段。因此,第一樣本集合26a、26b可提供關於綠色片段24a之資訊,第二樣本集合26c可提供關於綠色片段24a及第一藍色片段24b(例如,包括彼等片段之重疊本質)的資訊,第三樣本集合26d、26e可提供關於第一藍色片段24b的資訊,第四樣本集合26f至26h可提供關於第二藍色片段24c的資訊等。
由樣本26所表示之片段資料可用於識別像素20中之一或多個表面28(28a、28b),其中G緩衝22可含有作為項目30(30a、30b)之每一表面28。舉例而言,G緩衝中之第一項目30a可提供第一表面28a為綠色且具有為「00001100」之樣本覆蓋度的文件,其可對應於第一樣本集合26a、26b。類似地,G緩衝22中之第二項目30b可提供第二表面28b為藍色且具有為「11110011」之樣本覆蓋度的文件,其可對應於第二、第三及第四樣本集合26c至26h。項目30亦可包括
諸如深度、對準、權重及其他影像資料的其他幾何資料。因此,在所說明之實例中,資料在按表面基礎上而非在按樣本基礎上儲存至G緩衝22。因此,所說明G緩衝22之大小相對於用於相同像素20之習知G緩衝(例如)自八個樣本減小至兩個表面。所說明方法因此壓縮正處理之影像資料的量、減小G緩衝22之記憶體佔據面積、改良效能、減小電力消耗及/或延長電池壽命。
圖4展示壓縮影像資料的方法32。方法32可以一或多個模組實施為儲存於諸如隨機存取記憶體(RAM)、唯讀記憶體(ROM)、可規劃ROM(PROM)、快閃記憶體等的機器或電腦可讀儲存媒體中之邏輯指令集;實施為諸如可規劃邏輯陣列(PLA)、場可規劃閘陣列(FPGA)、複雜可規劃邏輯器件(CPLD)的可組配邏輯;使用諸如特殊應用積體電路(ASIC)、CMOS或電晶體-電晶體邏輯(TTL)技術的電路技術實施為固定功能性邏輯硬體;或其任何組合。舉例而言,進行展示於方法32中之操作的電腦程式碼可以一或多個程式設計語言之任何組合撰寫,該等程式設計語言包括諸如C++或類似者之物件導向式程式設計語言,及諸如「C」程式設計語言或類似程式設計語言的習知程序程式設計語言。此外,方法32可使用本文中所提及之電路技術中的任一者來實施。
方法32可通常針對影像中之多個像素(諸如,自3D幾何形狀產生之圖框)串行或並行(例如,由多個圖形處理器執行緒)重複。更特定而言,所說明之處理區塊34在顯
現管線之延遲著色器階段處接收針對影像之像素的片段資料。一或多個表面在區塊36處可基於片段資料於像素中被識別出,其中提供所說明區塊38從而將每一識別出表面作為項目儲存於對應於像素的G緩衝中,若G緩衝之記憶體溢出條件(例如,兩個或三個表面的最大值)未被滿足。另外,權重在區塊40處基於像素由G緩衝中的每一表面進行的覆蓋度及表面之遮蔽狀況(例如,由另一表面遮蔽,未由另一表面遮蔽)而可被指派給表面。在所說明之實例中,區塊42基於指派權重解析像素的色彩。
舉例而言,經加權平均值可用以解析像素色彩,其中著色僅每表面進行一次。指派給每一表面之權重可為表面覆蓋之樣本的數目,從而考慮由其他表面進行的遮蔽。
圖5展示識別表面之方法44。方法44可因此易於取代已論述之處理區塊36(圖4)。更明確而言,所說明區塊46接收諸如已論述的多個片段24(圖2)中之一者的傳入片段。可在區塊48處進行關於所接收片段是否為針對討論中像素接收之第一片段的判定。若如此,則在區塊50處可針對片段產生表面。否則,所說明區塊52載入已被儲存之表面,其中在54處可進行關於所接收片段是否與所載入表面中之一者已合併(例如,片段為已被識別出的表面之部分)的判定。區塊54可考慮多個因數,諸如像素覆蓋度、對準、深度等。
像素覆蓋度
舉例而言,若所接收片段及已被識別出之表面
(例如,「所識別表面」)具有像素之相互排斥的覆蓋度(例如,不重疊),則此條件可指示為識別出表面之部分的片段。因此,繼續參考圖2及圖5,若表面最初產生自第一藍色片段24b,且接著接收第二藍色片段24c,則在區塊54處可判定,第二藍色片段24c及第一藍色片段24b並不重疊(例如,具有相互排斥之覆蓋度)。在此狀況下,第一藍色片段24b及第二藍色片段24c可被合併至同一第二表面28b中(例如,經受被滿足之其他對準及/或深度條件),且第二表面28b在區塊58處可保存至G緩衝。像素覆蓋度可基於樣本26來判定。在此狀況下將第二表面28b保存至G緩衝可涉及將對應於識別出表面的片段資料併入至G緩衝中的項目中。
另一方面,若綠色片段24a之像素覆蓋度與第一藍色片段24b之像素覆蓋比較,則在54處可判定,綠色片段24a及第一藍色片段24b並不具有像素20的相互排斥覆蓋度。在此狀況下,第一表面28a可產生自綠色片段24a(例如,經受G緩衝中的空間可用性)。
對準
具有共同對準之所接收片段及識別出表面亦可指示係所識別表面之部分的所接收片段。舉例而言,若表面最初產生自第一藍色片段24b,且接著接收第二藍色片段24c,則在區塊54處可判定,第二藍色片段24c及第一藍色片段24b位於3D空間中實質上平行之平面內(例如,共同對準)。在此狀況下,第一藍色片段24b及第二藍色片段24c可被合併至相同之第二表面28b中(例如,經受被滿足之其他
像素覆蓋度及/或深度條件),且第二表面28b可在區塊58處保存至G緩衝。另一方面,若比較綠色片段24a之對準與第一藍色片段24b之對準,則在區塊54處可判定,綠色片段24a及第一藍色片段24b並不具有共同對準。在此狀況下,第一表面28a可產生自綠色片段24a(例如,經受G緩衝中的空間可用性)。
深度
另外,像素20中具有實質上相等之深度之所接收片段及所識別表面可指示係所識別表面之部分的所接收片段。舉例而言,若表面最初產生自第一藍色片段24b,且接著接收第二藍色片段24c,則在區塊54處可判定,第二藍色片段24c及第一藍色片段24b在像素20中具有實質上相等之深度(例如,距攝影機及/或檢視器有相同距離)。在此狀況下,第一藍色片段24b及第二藍色片段24c可合併至同一第二表面28b中(例如,經受被滿足之其他像素覆蓋度及/或對準條件),且在區塊58處可將第二表面28b保存至G緩衝。另一方面,若比較綠色片段24a之深度與第一藍色片段24b之深度,則在區塊54處可判定,綠色片段24a及第一藍色片段24b在像素20中並不具有實質上相等的深度。在此狀況下,第一表面28a可產生自綠色片段24a(例如,經受G緩衝中的空間可用性)。
因此,若在區塊54處判定所接收片段並未與已儲存於G緩衝中之表面中的任一者合併,則在區塊56處可進行關於是否存在添加另一表面至G緩衝之足夠記憶體空間的
判定。就此而言,可將相對小量之記憶體分配給G緩衝,其中該記憶體之大小很大程度上獨立於樣本之數目。確切而言,記憶體之大小可係基於很可能在顯現製程中提供足夠影像品質的某數目個表面(例如,三個或三個以下)。
若存在足夠記憶體空間,則在所說明區塊50處,自所接收片段產生表面。若不存在添加另一表面至G緩衝的足夠記憶體空間(例如,記憶體溢出條件被滿足),則所說明區塊60判定識別出表面中之一者由另一識別出表面遮蔽。若是,則在區塊62處可捨棄/移除遮蔽表面,且在區塊50處可自所接收片段產生表面。
另一方面,若識別出表面皆不由另一表面遮蔽,則區塊64可捨棄/移除具有最小像素覆蓋度之表面(例如,基於樣本)。區塊66處可進行關於是否捨棄所接收片段的判定。若是,則在區塊58處可將表面保存至G緩衝。否則,所接收片段可用以在區塊50處產生表面,其中所說明區塊58接著將表面保存至G緩衝。
圖6展示串流壓縮邏輯68(68a至68g)。串流壓縮邏輯68可易於被已論述之串流壓縮邏輯18(圖1)取代。在所說明之實例中,邏輯68包括自影像之像素接收片段資料的片段模組68a,及基於片段資料識別像素中之一或多個表面的表面模組68b。另外,若對應於像素的G緩衝的記憶體溢出條件未被滿足,則緩衝模組68c將每一識別出表面作為一項目儲存於G緩衝中。如已注意到,緩衝模組68c可將對應於每一識別出表面之片段資料併入於項目中。所說明邏輯
68亦包括權重模組68d以基於像素之由G緩衝中的每一表面進行的覆蓋度及表面之遮蔽狀況而將權重指派給該表面。此外,色彩模組68e可基於所指派之權重來解析像素的色彩。
在一個實例中,在兩個或兩個以上識別出表面具有像素之相互排斥覆蓋度、像素中之共同對準或像素中實質上相等之深度中的一或多者的情況下,合併模組68f合併兩個或兩個以上識別出表面至一起。在另一實例中,合併可僅在所有三個條件(例如,像素覆蓋度、深度、對準)存在的情況下發生。邏輯68亦可包括捨棄模組68g,若針對G緩衝之記憶體溢出條件被滿足且一或多個識別出表面由像素中之另一表面遮蔽,則捨棄模組68g捨棄一或多個識別出表面。此外,若針對G緩衝之記憶體溢出條件被滿足,且一或多個所識別表面相對於儲存於G緩衝中之其他表面具有最小像素覆蓋度,則捨棄模組68g可捨棄一或多個識別出表面。
現轉至圖7,展示計算系統70,其中系統70可為以下各者的部分:諸如膝上型電腦、穿戴型電腦、行動網際網路器件(MID)、個人數位助理(PDA)、媒體播放器、成像器件等之行動平台;諸如智慧型手機、平板電腦、智慧型TV(電視)等的任何智慧型器件;或其任何組合。系統70亦可為諸如個人電腦(PC)、伺服器、工作站等之固定平台的部分。所說明系統70包括中央處理單元(CPU,例如,主機處理器)72與提供對系統記憶體76之存取的整合式記憶
體控制器(iMC)74,系統記憶體76可包括(例如)雙資料速率(DDR)同步動態隨機存取記憶體(SDRAM,例如,2008年4月的DDR3 SDRAM JEDEC標準JESD79-3C)模組。系統記憶體76之模組可併入於(例如)單列直插記憶體模組(SIMM)、雙列直插記憶體模組(DIMM)、小型封裝DIMM(SODIMM)等。
CPU 72亦可具有一或多個處理器核心(未圖示),其中每一核心可藉由指令提取單元、指令解碼器、一階(L1)快取記憶體、執行單元等具有足夠功能。CPU 72可經由前側匯流排或點對點網狀架構替代地與亦被稱作北橋的iMC 74之晶片外變化通訊,前側匯流排或點對點網狀架構與系統70中之組件中的每一者互連。CPU 72亦可執行作業系統(OS)78。
所說明CPU 72經由匯流排與亦被稱作南橋的輸入/輸出(IO)模組80通訊。iMC 74/CPU 72及IO模組80有時被稱作晶片組。CPU 72亦可經由網路埠至IO模組80及各種其他控制器82以操作方式連接至網路(未圖示).因此,另一控制器82出於諸如有線通訊或無線通訊的廣泛之多種目的而可提供平台外通訊功能性,包括(但不限於)蜂巢式電話(例如,寬頻分碼多重存取、W-CDMA(通用行動電信系統/UMTS)、CDMA2000(IS-856/IS-2000)等)、Wi-Fi(無線保真,例如,電機電子工程師學會/IEEE 802.11,2007版本)、藍芽(例如,IEEE 802.15.1-2005、無線個人區域網路)、WiMax(例如,IEEE 802.16-2004)、全球定位系統(GPS)、展
頻(例如,900MHz),以及其他射頻(RF)電話用途。IO模組80亦可與顯示器84通訊以提供視訊、影像等的視覺輸出。其他控制器82亦可與IO模組80通訊以提供對諸如小鍵盤、滑鼠等的使用者介面器件(未圖示)之支援,以便允許使用者與系統70互動,並感知到來自系統70的資訊。
IO模組80亦可具有內部控制器,諸如USB(通用串列匯流排,例如USB規範2.0、USB實施者論壇)、串行ATA(SATA,例如,SATA修訂版3.0規範,2009年5月27日,SATA國際組織/SATA-IO)、高清晰度音訊及其他控制器。所說明IO模組80亦耦接至儲存器,該儲存器可包括硬碟機86、固態磁碟/SSD、唯讀記憶體(ROM)、光碟、快閃記憶體(未圖示)等。
所說明系統70亦包括耦接至專用圖形記憶體90之專用圖形處理單元(GPU,例如圖形處理器)88。專用圖形記憶體90可包括(例如)GDDR(圖形DDR)或DDR SDRAM模組,或適合於支援圖形顯現的任何其他記憶體技術。GPU 88及圖形記憶體90可安裝於圖形/視訊卡上,其中GPU 88可經由諸如PCI高速圖形(PEG,例如,周邊組件互連件/PCI高速x16圖形150W-ATX規範1.0、PCI特殊關注群組)匯流排或加速圖形埠(例如,AGP V3.0介面規範,2002年9月)匯流排的圖形匯流排92與CPU 72通訊。圖形卡可整合於系統主板上,主要CPU 72晶粒中,組配為主板上的離散卡等。GPU 88亦可包括內部快取記憶體94以儲存指令及其他資料。
所說明GPU 88包括具有已論述之延遲著色器階
段16的顯現管線10。因此,延遲著色器階段16可包括串流壓縮邏輯,其經組配以接收影像之像素的片段資料,基於片段資料識別像素中之一或多個表面,且在針對G緩衝之記憶體溢出條件未被滿足的情況下,將每一識別出表面作為項目儲存於對應於像素的G緩衝中。G緩衝可儲存於快取記憶體94、專用圖形記憶體90、系統記憶體76、硬碟機86等中,或其任何組合中。所說明顯現管線10亦包括一或多個其他階段89以執行幾何模型化、轉換、截割、點陣化、紋理化及其他操作。
圖8說明根據實施例之可輸出視覺內容之系統700的實施例。在實施例中,系統700可為媒體系統,儘管系統700並不限於此情形。舉例而言,系統700可併入於個人電腦(PC)、膝上型電腦、超膝上型電腦、平板電腦、觸控板、攜帶型電腦、手持型電腦、掌上型電腦、個人數位助理(PDA)、蜂巢式電話、組合蜂巢式電話/PDA、電視、智慧型器件(例如,智慧型手機或智慧型電視)、行動網際網路器件(MID)、傳訊器件、資料通訊器件、遊戲控制台等中。
在實施例中,系統700包含耦接至顯示器720之平台702。平台702可自諸如內容服務器件730或內容遞送器件740或其他類似內容源之內容器件接收內容。包含一或多個導覽特徵之導覽控制器750可用以與(例如)平台702及/或顯示器720互動。下文更詳細地描述此等器件中之每一者。
在實施例中,平台702可包含晶片組705、處理器710、記憶體712、儲存器714、圖形子系統715、應用程式
716及/或無線電718之任何組合。晶片組705可提供處理器710、記憶體712、儲存器714、圖形子系統715、應用程式716及/或無線電718間的內部通訊。舉例而言,晶片組705可包括能夠提供與儲存器714之內部通訊的儲存器配接器(未描繪)。
處理器710可實施為複雜指令集電腦(CISC)或精簡指令集電腦(RISC)處理器、x86指令集相容處理器、多核心或任何其他微處理器或中央處理單元(CPU)。在實施例中,處理器710可包含雙核心處理器、雙核心行動處理器等。
記憶體712可實施為依電性記憶體器件,諸如(但不限於)隨機存取記憶體(RAM)、動態隨機存取記憶體(DRAM)或靜態RAM(SRAM)。
儲存器714可實施為非依電性儲存器件,諸如(但不限於)磁碟機、光碟機、磁帶機、內部儲存器件、附接儲存器件、快閃記憶體、電池備用式SDRAM(同步DRAM)及/或網路可存取儲存器件。在實施例中,儲存器714可包含當(例如)包括多個硬碟機時,用以增加對有價值之數位媒體的儲存器效能增強型保護的技術。
圖形子系統715可對諸如用於顯示之靜態或視訊的影像執行處理。舉例而言,圖形子系統715可為圖形處理單元(GPU)或視覺處理單元(VPU)。類比或數位介面可用以通訊耦接圖形子系統715與顯示器720。舉例而言,介面可為高清晰度多媒體介面、顯示埠、無線HDMI及/或無線HD相符技術中之任一者。圖形子系統715可整合於處理器710
或晶片組705中。圖形子系統715可為通訊地耦接至晶片組705的單獨卡。在一個實例中,圖形子系統715類似於GPU 88(圖7)起作用,且處理器710類似於CPU 72(圖7)起作用,GPU 88及CPU 72兩者已進行了論述。
本文中所描述之圖形及/或視訊處理技術可實施於各種硬體架構中。舉例而言,圖形及/或視訊功能性可整合至晶片組內。替代性地,可使用離散之圖形及/或視訊處理器。作為又一實施例,可由通用處理器(包括多核心處理器)實施圖形及/或視訊功能。在其他實施例中,可在消費型電子器件中實施該等功能。
無線電718可包括能夠使用各種合適無線通訊技術傳輸並接收信號之一或多個無線電。此等技術可涉及跨一或多個無線網路之通訊。例示性無線網路包括(但不限於)無線區域網路(WLAN)、無線個人區域網路(WPAN)、無線都會區域網路(WMAN)、蜂巢式網路及衛星網路。在橫跨此等網路進行通訊時,無線電718可根據任何版本的一或多個適用標準進行操作。
在實施例中,顯示器720可包含任何電視類型之監視器或顯示器。顯示器720可包含(例如)電腦顯示螢幕、觸控螢幕顯示器、視訊監視器、類電視器件及/或電視。顯示器720可為數位及/或類比顯示器。在實施例中,顯示器720可為全像顯示器。此外,顯示器720可為可接收視覺投影的透明表面。此等投影可輸送各種形式之資訊、影像及/或物件。舉例而言,此等投影可為用於行動擴增實境(MAR)
應用之視覺覆疊。在一或多個軟體應用程式716之控制下,平台702可在顯示器720上顯示使用者介面722。
在實施例中,例如,內容服務器件730可由任何國家、國際及/或獨立服務主控,且因此可經由網際網路對平台702存取。內容服務器件730可耦接至平台702及/或耦接至顯示器720。平台702及/或(若干)內容服務器件730可耦接至網路760,以將媒體資訊傳達(例如,發送及/或接收)至網路760並自該網路傳達媒體資訊。內容遞送器件740亦可耦接至平台702及/或至顯示器720。
在實施例中,內容服務器件730可包含有線電視盒、個人電腦、網路、電話、具備網際網路能力之器件或能夠遞送數位資訊及/或內容之器具,及能夠在內容提供者與平台702及/顯示器720之間經由網路760或直接地單向或雙向傳達內容的任何其他類似器件。應瞭解,內容可經由網路760單向及/或雙向地傳達至系統700中之組件中的任一者,且自該等組件中任一者進行傳達。內容之實例可包括任何媒體資訊,該媒體資訊包括(例如)視訊、音樂、醫療及遊戲資訊等。
內容服務器件730接收諸如有線電視節目之內容,該內容包括媒體資訊、數位資訊及/或其他內容。內容提供者之實例可包括任何有線電視或衛星電視或無線電或網際網路內容提供者。所提供實例並不意謂限制實施例。
在實施例中,平台702可自具有一或多個導覽特徵的導覽控制器750接收控制信號。舉例而言,控制器750
之導覽特徵可用於與使用者介面722互動。在實施例中,導覽控制器750可為指標器件,該指標器件可為允許使用者將空間(例如,連續且多維之)資料輸入至電腦中的電腦硬體組件(具體而言,人性化介面器件)。諸如圖形使用者介面(GUI)以及電視及監視器之許多系統允許使用者使用實體示意動作對電腦或電視進行控制,並將資料提供至電腦或電視。
控制器750之導覽特徵的移動可藉由指針、游標、聚焦環或顯示於顯示器上的其他視覺指示器的移動而在諸如顯示器720之顯示器上作出回應(echo)。舉例而言,在軟體應用程序716之控制下,位於導覽控制器750上之導覽特徵可映射至顯示於(例如)使用者介面722上的虛擬導覽特徵。在實施例中,控制器750可能並非分離組件,而是整合至平台702及/或顯示器720中。然而,實施例不限於該等元件,或在本文中所展示或描述的上下文中不受限制。
在實施例中,驅動器(未圖示)可包含用以使得使用者能夠(例如,在具備此功能時)類似於電視地,藉由在初始啟動之後觸摸按鈕而即刻接通及關斷平台702的技術。當「關斷」平台時,程式邏輯可允許平台702將內容串流至媒體配接器或其他內容服務器件730或內容遞送器件740。此外,晶片組705可包含支援(例如)5.1環繞聲音訊及/或高清晰度7.1環繞聲音訊的硬體及/或軟體。驅動器可包括用於整合之圖形平台的一圖形驅動器。在實施例中,圖形驅動器可包含一周邊組件互連(PCI)高速圖形卡。
在各種實施例中,可整合系統700中所展示之組
件中的任何一或多者。舉例而言,可整合平台702與內容服務器件730,或可整合平台702與內容遞送器件740,或(例如)可整合平台702、內容服務器件730與內容遞送器件740。在各種實施例中,平台702及顯示器720可為一體式單元。舉例而言,可整合顯示器720及內容服務器件730,或可整合顯示器720與內容遞送器件740。此等實例並不意謂限制實施例。
在各種實施例中,系統700可實施為無線系統、有線系統或兩者之組合。當實施為無線系統時,系統700可包括適於在無線共用媒體上進行通訊的組件及介面,諸如一或多個天線、傳輸器、接收器、收發器、放大器、濾波器、控制邏輯等。無線共用媒體之實例可包括無線頻譜之部分,諸如,RF頻譜等。當實施為有線系統時,系統700可包括適於在有線通訊媒體上進行通訊的組件及介面,諸如輸入/輸出(I/O)配接器、用以將I/O配接器與對應有線通訊媒體連接的實體連接件、網路介面卡(NIC)、磁碟控制器、視訊控制器、音訊控制器等。有線通訊媒體之實例可包括電線、纜線、金屬導線、印刷電路板(PCB)、底板、開關網狀架構、半導體材料、雙絞線、同軸纜線、光纖等。
平台702可建立一或多個邏輯或實體通道以傳達資訊。資訊可包括媒體資訊及控制資訊。媒體資訊可指表示意謂用於使用者之內容的任何資料。內容之實例可包括(例如)來自語音交談、視訊會議、串流視訊、電子郵件(「electronic mail」、「email」)訊息、語音郵件訊息、文數
字符號、圖形、影像、視訊、文字等之資料。來自語音交談之資料可為(例如)話語資訊、靜默時段、背景雜訊、舒適雜訊、音調等。控制資訊可指表示命令、指令或意謂用於自動系統之控制字的任何資料。舉例而言,控制資訊可用於將媒體資訊導引通過系統,或指示節點以預定方式處理媒體資訊。然而,實施例不限於元件,或不在圖8中展示或描述之上下文中受到限制。
如上文所描述,系統700可以變化之實體型式或外觀尺寸體現。圖9說明可具體化系統700(圖8)之小型外觀尺寸器件800的實施例。在實施例中,例如,器件800可經實施為具有無線能力之行動計算器件。行動計算器件可指具有處理系統及行動電源或電力供應器(諸如,一或多個電池)的任何器件。
如上文所描述,行動計算器件之實例可包括個人電腦(PC)、膝上型電腦、超膝上型電腦、平板電腦、觸控板、攜帶型電腦、手持型電腦、掌上型電腦、個人數位助理(PDA)、蜂巢式電話、組合蜂巢式電話/PDA、電視、智慧型器件(例如,智慧型手機、智慧型平板電腦或智慧型電視)、行動網際網路器件(MID)、傳訊器件、資料通訊器件等。
行動計算器件之實例亦可包括經配置以由個人佩戴之電腦,諸如,腕式電腦、手指式電腦、環式電腦、鏡片式電腦、帶夾式電腦、臂帶式電腦、鞋式電腦、服裝式電腦及其他可穿戴式電腦。在實施例中,例如,行動計
算器件可實施為能夠執行電腦應用程式,以及語音通訊及/或資料通訊之智慧型手機。儘管可作為實例而運用實施為智慧型手機之行動計算器件來描述一些實施例,但可瞭解,亦可使用其他無線行動計算器件來實施其他實施例。實施例在此上下文下並不受限。
如圖9中所展示,器件800可包含外殼802、顯示器804、輸入/輸出(I/O)器件806及天線808。器件800亦可包含導覽特徵812。顯示器804可包含用於顯示適合於行動計算器件之資訊的任何合適顯示單元。I/O器件806可包含用於將資訊進入至行動計算器件的任何合適I/O器件。用於I/O器件806之實例可包括文數字鍵盤、數字小鍵盤、觸控板、輸入鍵、按鈕、開關、搖臂開關、麥克風、揚聲器、語音辨識器件及軟體等。亦可借助於麥克風將資訊鍵入至器件800中。可由語音辨識器件數位化此資訊。實施例在此上下文下並不受限。
額外註釋及實例:
實例1可包括一種輸出視覺內容之系統,其包含:記憶體,其儲存對應於一影像之一像素的一幾何緩衝(G緩衝);以及包括一延遲著色器階段之一顯現管線,該延遲著色器階段具有接收用於該像素之片段資料的一片段模組、基於該片段資料識別該像素中的一或多個表面之一表面模組,以及一緩衝模組,若針對該G緩衝的一記憶體溢出條件未被滿足,則該緩衝模組將每一識別出表面作為一項目儲存於該G緩衝中。系統亦可包括顯示器,其基於該G緩
衝輸出該視覺內容。
實例2可包括實例1之系統,其中延遲著色器進一步包括一權重模組,其基於該像素之由該G緩衝中的每一表面進行的一覆蓋度及該表面的一遮蔽狀況而指派一權重至該表面;以及一色彩模組,其基於該等指派之權重解析該像素的一色彩。
實例3可包括實例1的系統,其中該延遲著色器階段進一步包括一合併模組以在兩個或兩個以上識別出表面具有該像素之相互排斥覆蓋度、該像素中之一共同對準或該像素中實質上相等之深度中的一或多者的情況下合併該兩個或兩個以上識別出表面。
實例4可包括實例1至3中任一項之系統,其中該延遲著色器階段進一步包括一捨棄模組以在針對該G緩衝之一記憶體溢出條件被滿足且一或多個識別出表面由該像素中之另一表面遮蔽的情況下捨棄該一或多個識別出表面。
實例5可包括實例1至3中任一項之系統,其中該延遲著色器階段進一步包括一捨棄模組,以在針對該G緩衝之一記憶體溢出條件被滿足且一或多個識別出表面相對於儲存於該G緩衝中之其他表面具有一最小像素覆蓋度的情況下捨棄該一或多個識別出表面。
實例6可包括實例1至3中任一項之系統,其中該緩衝模組將對應於每一識別出表面之片段資料併入至該項目中。
實例7可包括一種壓縮影像資料之方法,該方法包含:在一顯現管線之一延遲著色器階段處接收一影像之一像素的片段資料;基於該片段資料識別該像素中之一或多個表面;以及若針對對應於該像素之一G緩衝的一記憶體溢出條件未被滿足,則將每一識別出表面作為一項目儲存於該G緩衝中。
實例8可包括實例7之方法,其進一步包括:基於該像素之由該G緩衝中的每一表面進行之一覆蓋度及該表面之一遮蔽狀況而將一權重指派給該表面;以及基於該等所指派之權重解析該像素的一色彩。
實例9可包括實例7之方法,其進一步包括在兩個或兩個以上識別出表面具有該像素之相互排斥覆蓋度、該像素中之一共同對準或該像素中實質上相等之深度中的一或多者的情況下合併該兩個或兩個以上識別出表面。
實例10可包括實例7至9中任一項之方法,其進一步包括在針對該G緩衝之一記憶體溢出條件被滿足且一或多個識別出表面由該像素中之另一表面遮蔽的情況下捨棄該一或多個識別出表面。
實例11可包括實例7至9中任一項之方法,其進一步包括在針對該G緩衝之一記憶體溢出條件被滿足且一或多個多個識別出表面相對於儲存於該G緩衝中的其他表面具有一最小像素覆蓋度時捨棄該一或多個識別出表面。
實例12可包括實例7至9中任一項之方法,其中將每一識別出表面作為一項目儲存於該G緩衝中包括將對應
於該識別出表面的片段資料併入於該項目中。
實例13可包括包含指令之至少一電腦可讀儲存媒體,該等指令在由一計算器件執行時使得該計算器件:在一顯現管線之一延遲著色器階段處接收一影像之一像素的片段資料;基於該片段資料識別該像素中的一或多個表面;以及若針對對應於該像素之一G緩衝的一記憶體溢出條件未被滿足,則將每一識別出表面作為一項目儲存於該G緩衝中。
實例14可包括實例13之至少一電腦可讀儲存媒體,其中該等指令在執行時使得一計算器件:基於該像素由該G緩衝中的每一表面進行之一覆蓋度及該表面之一遮蔽狀況而指派一權重至該表面;以及基於該等所指派之權重解析該像素的一色彩。
實例15可包括實例13之至少一電腦可讀儲存媒體,其中該等指令在執行時使得一計算器件在兩個或兩個以上識別出表面具有該像素之相互排斥覆蓋度、該像素中之一共同對準或該像素中實質上相等之深度中的一或多者的情況下將該兩個或兩個以上識別出表面合併在一起。
實例16可包括實例13至15中任一項之至少一電腦可讀儲存媒體,其中該等指令在執行時使得一計算器件在針對該G緩衝之一記憶體溢出條件被滿足且一或多個識別出表面由該像素中之另一表面遮蔽的情況下捨棄該一或多個識別出表面。
實例17可包括實例13至15中任一項之至少一電
腦可讀儲存媒體,其中該等指令在執行時使得一計算器件在該G緩衝之一記憶體溢出之條件被滿足且一或多個識別出表面相對於儲存於該G緩衝中的其他表面具有一最小像素覆蓋度時捨棄該一或多個識別出表面。
實例18可包括實例13至15中任一項之至少一電腦可讀儲存媒體,其中該等指令在執行時使得一計算器件將對應於每一識別出表面的片段資料併入至該項目中。
實例19可包括一種延遲著色器階段,其包含:一片段模組,其接收一影像之一像素的片段資料;一表面模組,其基於該片段資料識別該像素中的一或多個表面;以及一緩衝模組,其在針對對應於該像素之一G緩衝的一記憶體溢出條件未被滿足的情況下將每一識別出表面作為一項目儲存於該G緩衝中。
實例20可包括實例19之延遲著色器階段,其進一步包括一權重模組,其基於該像素之由該G緩衝中的每一表面進行的一覆蓋度及該表面的一遮蔽狀況而指派一權重至該表面;以及一色彩模組,其基於該等指派之權重解析該像素的一色彩。
實例21可包括實例19的延遲著色器階段,其進一步包括一合併模組以在兩個或兩個以上識別出表面具有該像素之相互排斥覆蓋度、該像素中之一共同對準或該像素中實質上相等之深度中的一或多者的情況下合併該兩個或兩個以上識別出表面至一起。
實例22可包括實例19至21中任一項之延遲著色
器階段,其進一步包括一捨棄模組,該捨棄模組在針對該G緩衝之一記憶體溢出之條件被滿足且一或多個多個識別出表面由該像素中之另一表面遮蔽的情況下捨棄該一或多個識別出表面。
實例23可包括實例19至21中任一項之延遲著色器階段,其進一步包括一捨棄模組以在針對該G緩衝之一記憶體溢出條件被滿足且一或多個識別出表面相對於儲存於該G緩衝中之其他表面具有一最小像素覆蓋度的情況下捨棄該一或多個識別出表面。
實例24可包括實例19至21中任一項之延遲著色器階段,其中該緩衝模組將對應於每一識別出表面的片段資料併入於該項目中。
實例25可包括一種延遲著色器階段,其包含用於執行實例7至12中任一項之方法的構件。
本文所描述之技術可因此使自G緩衝儲存器取樣解耦,從而使得在恆定記憶體使用及幾乎恆定之著色成本的情況下增加之取樣速率成為可能。更確切而言,技術可充分利用如下事實:在典型場景中,幾個表面(例如,三個或三個以下)常常促成像素彩色。因此,固定小量記憶體可用於G緩衝,同時使可見度取樣速率增加至8倍或以上。
可使用硬體元件、軟體元件或兩者之組合來實施各種實施例。硬體元件之實例可包括處理器、微處理器、電路、電路元件(例如,電晶體、電阻器、電容器、電感器等)、積體電路、特殊應用積體電路(ASIC)、可規劃邏輯器
件(PLD)、數位信號處理器(DSP)、場可規劃閘陣列(FPGA)、邏輯閘、暫存器、半導體器件、晶片、微晶片、晶片組等。軟體之實例可包括軟體組件、程式、應用程式(application)、電腦程式、應用程式(application program)、系統程式、機器程式、作業系統軟體、中間軟體、韌體、軟體模組、常式、次常式、函數、方法、程序、軟體介面、應用程式介面(API)、指令集、計算程式碼、電腦程式碼、碼段、電腦碼段、字、值、符號,或其任何組合。判定是否使用硬體元件及/或軟體元件來實施實施例可根據任何數目個因素而發生變化,諸如,所要之計算速率、電力位準、耐熱性、處理循環預算、輸入資料速率、輸出資料速率、記憶體資源、資料匯流排速度及其他設計或效能約束。
可由儲存於表示處理器內之各種邏輯之機器可讀媒體上的代表性指令實施至少一實施例之一或多個態樣,該機器可讀媒體在由機器讀取時使機器製造用以執行本文中所描述之技術的邏輯。可將被稱為「IP核心」之此等表示儲存於有形機器可讀媒體上,並將其供應至各種消費者或製造設施,以將其載入至實際上製造邏輯或處理器之製造機器中。
實施例適合於供所有類型之半導體積體電路(「IC」)晶片使用。此等IC晶片之實例包括(但不限於)處理器、控制器、晶片組組件、可規劃邏輯陣列(PLA)、記憶體晶片、網路晶片及類似者。另外,在該等圖式中之一些中,藉由線表示信號導線。一些線可不同,以指示較多組份信
號路徑;可具有編號標記,以指示數個組份信號路徑;及/或在一或多個末端處具有箭頭,以指示最初資訊流動方向。然而,不應以限制性方式解釋此情況。確切而言,可結合一或多個例示性實施例使用此等添加之細節,以促進對電路之更容易理解。無論是否具有額外資訊,任何表示之信號線可實際上包含可在多個方向上行進,且藉由任何合適類型之信號方案可實施的一或多個信號,例如,藉由差分對、光纖線及/或單端線實施的數位線或類比線。
實例大小/模型/值/範圍可已給出,儘管實施例不限於前述各者。隨著製造技術(例如,光微影)隨時間推移變得成熟,預期到可製造大小較小之器件。另外,為簡單地說明及論述起見,及以便不混淆實施例的某些態樣,諸圖內可展示或未展示至IC晶片及其他組件的熟知電源/接地連接。另外,為了避免混淆實施例,且又鑒於關於此類方塊圖配置之實施的細節高度取決於實施例經實施所在的平台,亦即此等細節應良好地在熟習此項技術者之見識內之事實,配置可以方塊圖形式展示。在特定細節(例如,電路)經闡述以便描述實例實施例之處,對於熟習此項技術者應顯而易見的是,實施例可在無此等特定細節之情況下或在此等特定細節之變化情況下實踐。因此,應將描述視為例示性而非限制性的。
可(例如)使用可儲存指令或指令集之機器或有形電腦可讀媒體或物品而實施一些實施例,若由機器執行該等指令或指令集,其可使得機器執行根據實施例的方法
及/或操作。此機器可包括(例如)任何合適之處理平台、計算平台、計算器件、處理器件、計算系統、處理系統、電腦、處理器,或類似者,且可使用硬體及/或軟體之任何合適組合來實施。機器可讀媒體或物品可包括(例如)任何合適類型之記憶體單元、記憶體器件、記憶體物品、記憶體媒體、儲存器件、儲存物品、儲存媒體及/或儲存單元,例如,記憶體、可卸除或不可卸除式媒體、可抹除或不可抹除式媒體、可寫入或可重寫入式媒體、數位或類比媒體、硬碟、軟性磁碟、緊密光碟唯讀記憶體(CD-ROM)、可記錄之緊密光碟(CD-R)、可重寫之緊密光碟(CD-RW)、光碟、磁性媒體、磁光媒體、可卸除式記憶卡或磁碟、各種類型之數位多功能光碟(DVD)、磁帶、晶匣或類似者。指令可包括使用任何合適之高階、低階、物件導向式、視覺、經編譯及/或經解譯程式設計語言而實施的任何合適類型之程式碼,諸如原始程式碼、經編譯程式碼、經解譯程式碼、可執行碼、靜態程式碼、動態程式碼、經加密程式碼及類似者。
除非以其他方式特定陳述,否則可瞭解,諸如「處理」、「計算」、「演算」、「判定」或類似者之術語係指電腦或計算系統,或類似之電子計算器件的動作及/或程序,該電子計算器件將表示為計算系統之暫存器及/或記憶體內之物理量(例如,電子)的資料操縱及/或變換成類似地表示為計算系統之記憶體、暫存器,或其他此等資訊儲存器、傳輸或顯示器件內之物理量的其他資料。實施例在此上下文下並不受限。
術語「耦接」可在本文中用於指所述組件之間的任何類型之直接或間接關係,且可適用於電、機械、流體、光學、電磁、機電或其他連接。另外,除非另外指示,否則術語「第一」、「第二」等可在本文中僅用於促進論述,且並不攜有特定時間或時序意義。另外,應理解,量詞「一」攜載「一或多個」或「至少一」之意義。
熟習此項技術者自前述描述內容將瞭解,實施例之廣泛技術可以多種形式來實施。因此,雖然已結合實施例之特定實例描述了實施例,但實施例之真實範疇不應因此受限,此係由於其他修改對於熟習此項技術者在研究圖式、說明書以及以下申請專利範圍之後將變得顯而易見。
10‧‧‧顯現管線
12‧‧‧多樣本去鋸齒(MSAA)幾何階段
14‧‧‧片段資料
16‧‧‧延遲著色器階段
18‧‧‧串流壓縮邏輯
Claims (24)
- 一種輸出視覺內容之系統,其包含:一記憶體,其儲存對應於一影像之一像素的一幾何緩衝(G緩衝);一顯現管線,其包括一延遲著色器階段,該延遲著色器階段具有,一片段模組,其接收用於該像素之片段資料,一表面模組,其基於該片段資料識別該像素中的一或多個表面,以及一緩衝模組,若針對該G緩衝的一記憶體溢出條件未被滿足,則該緩衝模組將每一所識別表面作為一項目儲存於該G緩衝中;以及一顯示器,其基於該G緩衝輸出該視覺內容。
- 如請求項1之系統,其中該延遲著色器進一步包括:一權重模組,其基於該像素被該G緩衝中每一表面的一覆蓋度及該表面的一遮蔽狀況而指派一權重至該表面;以及一色彩模組,其基於該等指派之權重解析該像素的一色彩。
- 如請求項1之系統,其中該延遲著色器階段進一步包括一合併模組以在兩個或兩個以上識別出之表面具有該像素之相互排斥覆蓋度、該像素中之一共同對準或該像素中實質上相等之深度中的一或多者的情況下合併該 兩個或兩個以上識別出之表面至一起。
- 如請求項1之系統,其中該延遲著色器階段進一步包括一捨棄模組以在針對該G緩衝之一記憶體溢出條件被滿足且一或多個識別出表面被該像素中之另一表面遮蔽的情況下捨棄該一或多個識別出表面。
- 如請求項1之系統,其中該延遲著色器階段進一步包括一捨棄模組,以在針對該G緩衝之一記憶體溢出條件被滿足且一或多個識別出表面相對於儲存於該G緩衝中之其他表面具有一最小像素覆蓋度的情況下捨棄該一或多個識別出表面。
- 如請求項1之系統,其中該緩衝模組將對應於每一識別出表面之片段資料併入至該項目中。
- 一種方法,其包含:在一顯現管線之一延遲著色器階段處接收一影像之一像素的片段資料;基於該片段資料識別該像素中之一或多個表面;以及若針對對應於該像素之一幾何緩衝(G緩衝)的一記憶體溢出條件未被滿足,則將每一識別出表面作為一項目儲存於該G緩衝中。
- 如請求項7之方法,其進一步包括:基於該像素被該G緩衝中每一表面之一覆蓋度及該表面之一遮蔽狀況而將一權重指派給該表面;以及基於該等所指派之權重解析該像素的一色彩。
- 如請求項7之方法,其進一步包括在兩個或兩個以上識別出表面具有該像素之相互排斥覆蓋度、該像素中之一共同對準或該像素中實質上相等之深度中的一或多者的情況下合併該兩個或兩個以上識別出表面至一起。
- 如請求項7之方法,其進一步包括在針對該G緩衝之一記憶體溢出條件被滿足且一或多個識別出表面被該像素中之另一表面遮蔽的情況下捨棄該一或多個識別出表面。
- 如請求項7之方法,其進一步包括在針對該G緩衝之一記憶體溢出條件被滿足且一或多個多個識別出表面相對於儲存於該G緩衝中的其他表面具有一最小像素覆蓋度時捨棄該一或多個識別出表面。
- 如請求項7之方法,其中將每一識別出表面作為一項目儲存於該G緩衝中包括將對應於該識別出表面的片段資料併入於該項目中。
- 包含指令之至少一電腦可讀儲存媒體,該等指令在由一計算器件執行時使得該計算器件:在一顯現管線之一延遲著色器階段處接收一影像之一像素的片段資料;基於該片段資料識別該像素中的一或多個表面;以及若針對對應於該像素之一幾何緩衝(G緩衝)的一記憶體溢出條件未被滿足,則將每一識別出表面作為一項目儲存於該G緩衝中。
- 如請求項13之至少一電腦可讀儲存媒體,其中該等指令在執行時使得一計算器件:基於該像素被該G緩衝中每一表面之一覆蓋度及該表面之一遮蔽狀況而指派一權重至該表面;以及基於該等所指派之權重解析該像素的一色彩。
- 如請求項13之至少一電腦可讀儲存媒體,其中該等指令在執行時使得一計算器件在兩個或兩個以上識別出表面具有該像素之相互排斥覆蓋度、該像素中之一共同對準或該像素中實質上相等之深度中的一或多者的情況下將該兩個或兩個以上識別出表面合併至一起。
- 如請求項13之至少一電腦可讀儲存媒體,其中該等指令在執行時使得一計算器件在針對該G緩衝之一記憶體溢出條件被滿足且一或多個識別出表面被該像素中之另一表面遮蔽的情況下捨棄該一或多個識別出表面。
- 如請求項13之至少一電腦可讀儲存媒體,其中該等指令在執行時使得一計算器件在該G緩衝之一記憶體溢出之條件被滿足且一或多個識別出表面相對於儲存於該G緩衝中的其他表面具有一最小像素覆蓋度時捨棄該一或多個識別出表面。
- 如請求項13之至少一電腦可讀儲存媒體,其中該等指令在執行時使得一計算器件將對應於每一識別出表面的片段資料併入至該項目中。
- 一種延遲著色器階段,其包含:一片段模組,其接收一影像之一像素的片段資料; 一表面模組,其基於該片段資料識別該像素中的一或多個表面;以及一緩衝模組,其在針對對應於該像素之一幾何緩衝(G緩衝)的一記憶體溢出條件未被滿足的情況下將每一識別出表面作為一項目儲存於該G緩衝中。
- 如請求項19之延遲著色器階段,其進一步包括:一權重模組,其基於該像素被該G緩衝中每一表面的一覆蓋度及該表面的一遮蔽狀況而指派一權重至該表面;以及一色彩模組,其基於該等指派之權重解析該像素的一色彩。
- 如請求項19之延遲著色器階段,其進一步包括一合併模組以在兩個或兩個以上識別出表面具有該像素之相互排斥覆蓋度、該像素中之一共同對準或該像素中實質上相等之深度中的一或多者的情況下合併該兩個或兩個以上識別出表面至一起。
- 如請求項19之延遲著色器階段,其進一步包括一捨棄模組,該捨棄模組在針對該G緩衝之一記憶體溢出之條件被滿足且一或多個多個識別出表面被該像素中之另一表面遮蔽的情況下捨棄該一或多個識別出表面。
- 如請求項19之延遲著色器階段,其進一步包括一捨棄模組以在針對該G緩衝之一記憶體溢出條件被滿足且一或多個識別出表面相對於儲存於該G緩衝中之其他表面具有一最小像素覆蓋度的情況下捨棄該一或多個識別出 表面。
- 如請求項19之延遲著色器階段,其中該緩衝模組將對應於每一識別出表面的片段資料併入於該項目中。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/227,461 US20150279089A1 (en) | 2014-03-27 | 2014-03-27 | Streaming compression anti-aliasing approach to deferred shading |
Publications (1)
Publication Number | Publication Date |
---|---|
TW201602961A true TW201602961A (zh) | 2016-01-16 |
Family
ID=54066877
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW104104081A TW201602961A (zh) | 2014-03-27 | 2015-02-06 | 用以延遲著色之串流壓縮去鋸齒方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20150279089A1 (zh) |
CN (1) | CN104952100B (zh) |
DE (1) | DE102015002125A1 (zh) |
TW (1) | TW201602961A (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10681325B2 (en) * | 2016-05-16 | 2020-06-09 | Google Llc | Continuous depth-ordered image compositing |
US10535186B2 (en) * | 2016-08-30 | 2020-01-14 | Intel Corporation | Multi-resolution deferred shading using texel shaders in computing environments |
EP3850586A4 (en) * | 2018-09-10 | 2022-03-02 | AVEVA Software, LLC | THIRD PARTY GEOMETRY INTEGRATION SYSTEM AND METHOD FOR VISUALIZING LARGE DATA SETS |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6724391B1 (en) * | 2000-06-30 | 2004-04-20 | Intel Corporation | Mechanism for implementing Z-compression transparently |
JP2008172515A (ja) * | 2007-01-11 | 2008-07-24 | Sony Corp | 送信装置および方法、通信装置、並びにプログラム |
US8605086B2 (en) * | 2008-07-03 | 2013-12-10 | Nvidia Corporation | Hybrid multisample/supersample antialiasing |
-
2014
- 2014-03-27 US US14/227,461 patent/US20150279089A1/en not_active Abandoned
-
2015
- 2015-02-06 TW TW104104081A patent/TW201602961A/zh unknown
- 2015-02-16 CN CN201510084605.8A patent/CN104952100B/zh active Active
- 2015-02-19 DE DE102015002125.7A patent/DE102015002125A1/de not_active Withdrawn
Also Published As
Publication number | Publication date |
---|---|
CN104952100B (zh) | 2019-02-05 |
US20150279089A1 (en) | 2015-10-01 |
CN104952100A (zh) | 2015-09-30 |
DE102015002125A1 (de) | 2015-10-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6374038B2 (ja) | ドローコールにわたる共有リソースデータコヒーレンシを確実にするための効率的なハードウェアメカニズム | |
TWI535277B (zh) | 用於深度緩衝之方法、設備及系統 | |
TWI517086B (zh) | 用於去耦取樣為主描繪管線之低功率質心決定及紋理覆蓋區最佳化 | |
TWI615807B (zh) | 用於記錄在輸入幾何物件粒度上的可視度測試之結果的方法、設備及系統 | |
JP6182225B2 (ja) | カラーバッファ圧縮 | |
US9563561B2 (en) | Initiation of cache flushes and invalidations on graphics processors | |
US9471323B2 (en) | System and method of using an atomic data buffer to bypass a memory location | |
TW201602961A (zh) | 用以延遲著色之串流壓縮去鋸齒方法 | |
JP6419856B2 (ja) | 非特権アプリケーションによるグラフィクスワークロード・サブミッション | |
KR101597623B1 (ko) | Simd 명령어 세트 아키텍처를 이용하여 대규모 데이터 세트 내에서 최소 및 최대 값들을 찾기 위한 고속 접근법 | |
US9773477B2 (en) | Reducing the number of scaling engines used in a display controller to display a plurality of images on a screen | |
US9483810B2 (en) | Reducing the number of IO requests to memory when executing a program that iteratively processes contiguous data | |
JP5955915B2 (ja) | グラフィック処理アーキテクチャにおけるポストシンクロナイゼーションオペレーションとしてのアトミックオペレーションのサポート | |
JP5968463B2 (ja) | データを別の記憶装置にコピーせずにデータソースによりバッファに格納されたデータを処理するためのポインタのスワッピング | |
US9582858B2 (en) | Energy-efficient anti-aliasing | |
US20130326351A1 (en) | Video Post-Processing on Platforms without an Interface to Handle the Video Post-Processing Request from a Video Player | |
EP2856754A1 (en) | Video post- processing on platforms without an interface to handle the video post-processing request from a video player |