TWI578266B - 藉由近似頂點至彎曲視埠上的投影在圖形處理中隨螢幕位置變化有效解析度 - Google Patents
藉由近似頂點至彎曲視埠上的投影在圖形處理中隨螢幕位置變化有效解析度 Download PDFInfo
- Publication number
- TWI578266B TWI578266B TW104108776A TW104108776A TWI578266B TW I578266 B TWI578266 B TW I578266B TW 104108776 A TW104108776 A TW 104108776A TW 104108776 A TW104108776 A TW 104108776A TW I578266 B TWI578266 B TW I578266B
- Authority
- TW
- Taiwan
- Prior art keywords
- primitive
- vertices
- projection
- sub
- screen space
- Prior art date
Links
- 238000012545 processing Methods 0.000 title claims description 61
- 238000000034 method Methods 0.000 claims description 33
- 238000006243 chemical reaction Methods 0.000 claims description 29
- 238000004364 calculation method Methods 0.000 claims description 22
- 238000012937 correction Methods 0.000 claims description 22
- 239000007787 solid Substances 0.000 claims description 22
- 238000013507 mapping Methods 0.000 claims description 13
- 230000003068 static effect Effects 0.000 claims description 5
- 239000000872 buffer Substances 0.000 description 19
- 238000009877 rendering Methods 0.000 description 14
- 230000009466 transformation Effects 0.000 description 14
- 230000006870 function Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 7
- 210000003128 head Anatomy 0.000 description 6
- 239000000463 material Substances 0.000 description 6
- 239000012634 fragment Substances 0.000 description 5
- 230000000007 visual effect Effects 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 238000004590 computer program Methods 0.000 description 4
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 238000003860 storage Methods 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 238000004040 coloring Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000005055 memory storage Effects 0.000 description 2
- 238000003672 processing method Methods 0.000 description 2
- 210000001747 pupil Anatomy 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 241001247287 Pentalinon luteum Species 0.000 description 1
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000001174 ascending effect Effects 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000003446 ligand Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 238000004804 winding Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
-
- G—PHYSICS
- G02—OPTICS
- G02B—OPTICAL ELEMENTS, SYSTEMS OR APPARATUS
- G02B27/00—Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
- G02B27/01—Head-up displays
- G02B27/017—Head mounted
-
- G—PHYSICS
- G02—OPTICS
- G02B—OPTICAL ELEMENTS, SYSTEMS OR APPARATUS
- G02B27/00—Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
- G02B27/01—Head-up displays
- G02B27/017—Head mounted
- G02B27/0172—Head mounted characterised by optical features
-
- 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
- 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/10—Geometric effects
-
- 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
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/10—Constructive solid geometry [CSG] using solid primitives, e.g. cylinders, cubes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/20—Finite element generation, e.g. wire-frame surface description, tesselation
-
- G—PHYSICS
- G02—OPTICS
- G02B—OPTICAL ELEMENTS, SYSTEMS OR APPARATUS
- G02B27/00—Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
- G02B27/01—Head-up displays
- G02B27/0101—Head-up displays characterised by optical features
- G02B2027/0123—Head-up displays characterised by optical features comprising devices increasing the field of view
-
- 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/36—Level of detail
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- Optics & Photonics (AREA)
- Image Generation (AREA)
- Controls And Circuits For Display Device (AREA)
Description
本申請案係關於與本申請案在相同日期申請的標題為「METHOD FOR EFFICIENT CONSTRUCTION OF HIGH RESOLUTION DISPLAY BUFFERS」之Tobias Berghoff的共同讓渡的同在申請中之美國專利申請案號_______,(代理人案號SCEA13055US00),該美國專利申請案之全部內容以引用方式併入本文中。
本申請案係關於與本申請案在相同日期申請的標題為「GRAPHICS PROCESSING ENHANCEMENT BY TRACKING OBJECT AND/OR PRIMITIVE IDENTIFIERS」之Tobias Berghoff的共同讓渡的同在申請中之美國專利申請案號_______,(代理人案號SCEA13056US00),該美國專利申請案之全部內容以引用方式併入本文中。
本申請案係關於與本申請案在相同日期申請的標題為「GRADIENT ADJUSTMENT FOR TEXTURE MAPPING TO NON-ORTHONORMAL GRID」之Mark Evan
Cerny的共同讓渡的同在申請中之美國專利申請案號_______,(代理人案號SCEA13057US00),該美國專利申請案之全部內容以引用方式併入本文中。
本申請案係關於與本申請案在相同日期申請的標題為「VARYING EFFECTIVE RESOLUTION BY SCREEN LOCATION BY CHANGING ACTIVE COLOR SAMPLE COUNT WITHIN MULTIPLE RENDER TARGETS」之Tobias Berghoff的共同讓渡的同在申請中之美國專利申請案號_______,(代理人案號SCEA13058US00),該美國專利申請案之全部內容以引用方式併入本文中。
本申請案係關於與本申請案在相同日期申請的標題為「VARYING EFFECTIVE RESOLUTION BY SCREEN LOCATION BY ALTERING RASTERIZATION PARAMETERS」之Mark Evan Cerny的共同讓渡的同在申請中之美國專利申請案號_______,(代理人案號SCEA13059US00),該美國專利申請案之全部內容以引用方式併入本文中。
本申請案係關於與本申請案在相同日期申請的標題為「GRADIENT ADJUSTMENT FOR TEXTURE MAPPING FOR MULTIPLE RENDER TARGETS WITH RESOLUTION THAT VARIES BY SCREEN LOCATION」之Mark Evan Cerny的共同讓渡的同在申請中之美國專利申請案號_______,(代理人案號SCEA13061US00),該美國專利申請案之全部內容以引用方式併入本文中。
本揭示案之態樣係關於電腦圖形。具體而言,本揭示案係關於隨螢幕位置變化解析度。
圖形處理通常涉及兩個處理器亦即中央處理單元(CPU)及圖形處理單元(GPU)之協調。GPU為經設計來加速在圖框緩衝器中創建意欲輸出至顯示器之影像的專門電子電路。GPU用於嵌式系統、行動電話、個人電腦、平板電腦、可攜式遊戲裝置、工作站及遊戲控制台中。GPU通常經設計來有效操縱電腦圖形。GPU通常具有高度平行的處理架構,此處理架構使GPU對於平行地進行大資料塊之處理的演算法比通用CPU更有效。
CPU可發送通常稱為繪圖命令的GPU指令,該等GPU指令指示GPU實行特定圖形處理任務,例如再現已相對於影像中之先前圖框改變的特定紋理。此等繪圖命令可由CPU使用圖形應用程式介面(API)協調,以便發佈圖形再現命令,該等圖形再現命令對應於特定應用程式之虛擬環境的狀態。
為了再現用於特定程式的紋理,GPU可在「圖形管線」中執行一系列處理任務,以將虛擬環境中之視覺元素轉換成可再現至顯示器上的影像。典型圖形管線可包括對虛擬空間中之虛擬物件執行某些再現或著色操
作、場景中之虛擬物件之用以產生適合於輸出顯示的像素資料的變換及光柵化,及在顯示器上輸出所再現成的影像之前像素(或片段)上的額外再現任務。
影像之虛擬物件通常根據稱為基元的形狀在虛擬空間中加以描述,該等基元一起構成虛擬場景中之物件之形狀。例如,三維虛擬世界中將要再現的物件可經簡化為一系列相異三角形基元,該等相異三角形基元具有根據該等基元在三維空間中之坐標定義的頂點,藉此此等多邊形構成物件之表面。每一多邊形可具有可由圖形處理系統用以區別給定多邊形與其他多邊形的相關聯索引。同樣地,每一頂點可具有可用以區別給定頂點與其他頂點的相關聯索引。圖形管線可對此等基元執行某些操作,以產生用於虛擬場景的視覺元素且將此資料變換成適合於由顯示器之像素再現的二維格式。如本文所使用的圖形基元資訊(或簡稱「基元資訊」)一詞用以代表表示圖形基元的資料。此資料包括(但不限於)頂點資訊(例如,表示頂點定位或頂點索引的資料)及多邊形資訊(例如,多邊形索引),及將特定頂點與特定多邊形相關聯的其他資訊。
作為圖形管線之部分,GPU可藉由實行通常稱為著色器的程式來執行再現任務。典型圖形管線可包括:頂點著色器,其可以每頂點為基礎操縱基元之某些性質;以及像素著色器(亦稱為「片段著色器」),其在圖形管線中於頂點著色器下游操作且可在將像素資料傳輸至顯示器之前以每像素為基礎操縱某些值。片段著色器可操
縱與將紋理應用於基元有關的值。管線亦可包括在管線中之各種階段處的其他著色器,諸如使用頂點著色器之輸出來產生一組新基元的幾何形狀著色器,以及可由GPU實行來執行某些其他一般計算任務的計算著色器(CS)。
已開發具有廣視域(FOV)的圖形顯示裝置。此類裝置包括頭戴式顯示器(HMD)裝置。在HMD裝置中,小顯示裝置佩戴於使用者頭上。顯示裝置在一隻眼睛(單目HMD)或每一眼睛(雙目HMD)前方具有顯示器光學器件。HMD裝置通常包括感測器,該等感測器可感測裝置之定向且改變使用者頭移動時由顯示光學器件展示的場景。按照慣例,用於廣FOV顯示器的再現場景之大多數階段係藉由平面再現執行,其中螢幕之所有部分具有每一單位面積相同數目的像素。
為提供逼真體驗,希望由廣FOV顯示裝置呈現的圖形具有高品質且經有效再現。
本揭示案正是在此情境中出現的。
101‧‧‧視平面
102‧‧‧螢幕
103‧‧‧觀察者
112‧‧‧邊緣區部
114‧‧‧中央區部
201‧‧‧影像
202~209‧‧‧影像塊
210‧‧‧影像
400‧‧‧電腦系統
402‧‧‧中央處理單元
403C‧‧‧CPU代碼
403G‧‧‧GPU代碼
404‧‧‧圖形處理單元
405‧‧‧圖形緩衝器
406‧‧‧紋理單元
408‧‧‧記憶體
409‧‧‧匯流排
410‧‧‧支援功能
411‧‧‧輸入輸出元件
412‧‧‧電源
413‧‧‧時鐘
414‧‧‧快取記憶體
414G‧‧‧GPU快取記憶體
415‧‧‧儲存裝置
416‧‧‧顯示裝置
417‧‧‧圖形影像
418‧‧‧使用者介面
420‧‧‧網路介面
422‧‧‧網路
428‧‧‧圖形記憶體
432‧‧‧輸入資料
480‧‧‧視窩部分
1‧‧‧螢幕空間
2‧‧‧螢幕空間
3‧‧‧三角形
3’‧‧‧三角形
藉由結合隨附圖式考慮以下詳細描述,可容易地理解本揭示案之教示,在圖式中:圖1A及圖1B為例示廣視域(FOV)顯示器之某些參數的簡圖。
圖1C例示用於廣FOV顯示器之不同部分的不同立體角。
圖2A至圖2C例示根據本揭示案之態樣的在不同廣FOV顯示器之不同區部中的像素之相對重要性的實例。
圖2D例示根據本揭示案之態樣的用於FOV顯示器之螢幕之不同區部的不同像素解析度之實例。
圖3為例示根據本揭示案之態樣的表示相等立體角的螢幕子區段至相等面積的對應子區段之變換的示意圖。
圖4A為根據本揭示案之態樣之圖形處理系統的方塊圖。
圖4B為根據本揭示案之態樣之圖形處理管線的方塊圖。
圖4C為例示根據本揭示案之態樣的隨螢幕位置變化像素解析度之實例的示意圖。
圖4D為例示根據本揭示案之態樣之變化像素解析度螢幕位置之替代性實例的示意圖。
圖5為例示根據本揭示案之態樣的圖形基元之頂點之修正之實例的示意圖。
儘管以下詳細描述含有許多特定細節以用於例示之目的,但是一般技術者將瞭解,對以下細節之許多變化及變更在本發明之範疇內。因此,以下所述本發明之示範性實施例係在對所請求發明沒有任何一般性損失的情況下且對所請求發明不強加限制的情況下闡述。
圖1A至圖1C例示大FOV顯示器之先前不受賞識的問題。圖1A例示90度FOV顯示器且圖1B例示114度FOV顯示器。在習大FOV顯示器中,使用至視平面101的平面投影來再現三維幾何形狀。然而,結果是,將幾何形狀再現至高FOV視平面上的效率極低效。如在圖1C中可看出,視平面101之邊緣區部112及中央區部114為相同面積但表示極其不同的立體角,如由觀察者103所見。因此,在螢幕邊緣附近的像素擁有比中心附近的像素少得多的有意義資訊。當按照慣例再現場景時,此等區部具有相同數目的像素,且在螢幕上再現相等大小區部所花費的時間相同。
圖2A至圖2C例示大FOV顯示器之不同部分在用於不同大小視域的二維空間中之相對重要性。圖2A表達在棋盤對向114度之角度之狀況下垂直於觀察方向的平面棋盤之每一正方形的立體角之變化。換言之,該圖表達至114度FOV顯示器的習知平面投影再現之低效率。圖2B表達針對90度FOV顯示器的相同資訊。在此類平面投影再現中,與中心處的影像塊204相比,投影將影像201中在邊緣處的影像塊202及在拐角處的影像塊203壓縮成較小立體角。由於此壓縮及影像201中之每一影像塊具有螢幕空間中之相同數目的像素之事實,對於再現邊緣影像塊202與中心影像塊204相比存在大致4X的低效率因子。藉由此情況,意味邊緣影像塊203之習知再現每單
位立體角處理比對於中心影像塊204多大致4倍。對於拐角影像塊203,低效率因子為大致8X。當在整體影像201上求均值時,低效率因子為大致2.5X。
低效率取決於FOV之大小。例如,對於圖2B中所示的90度FOV顯示器,低效率因子為用於再現邊緣影像塊202的大致2X、用於再現拐角影像塊203的大致3X及用於再現影像201的整體大致1.7X。
考慮此情形的另一方式展示於圖2C中,其中螢幕102已經分成就每單位立體角對向像素而言具有近似相等的「重要性」的矩形。每一矩形對於如藉由顯示器查看的最終影像構成大致相同的貢獻。我們可看出平面投影如何扭曲邊緣矩形202及拐角矩形203之重要性。事實上,拐角矩形203可由於顯示器光學器件而比中心矩形構成較少貢獻,該等顯示器光學器件可選擇朝向顯示器之中心使像素之視覺密度(如表達為每一立體角像素)較高。
基於前述觀察,將為有利的是,用於廣FOV顯示器的影像210具有在邊緣區部202、204、206、208比在中心區部205較小且在拐角區部201、203、207及209處比在邊緣區部202、204、206、208較小的像素密度,如圖2D中所示。將亦為有利的是,以如下方式在廣FOV顯示器之螢幕上再現習知圖形影像:獲得與跨螢幕變化像素密度相同的效應,而無須顯著修改下層圖形影像資料或資料格式或資料之處理。
或者,將為有利的是,若頂點所投影且基元
所再現到的螢幕空間近似球體表面之一部分,則使得在螢幕空間之邊緣及拐角處的像素將覆蓋與在中心處的像素近似相同的立體角。
根據本揭示案之態樣,圖形處理利用近似頂點至彎曲視埠上的投影的光柵化階段。在某些實行方案中,可在圖形管線中藉由至平坦螢幕空間上的習知投影,繼之以表示相等立體角的螢幕空間子區段至相等面積的對應子區段之變換來獲得至近似半球形螢幕空間上的投影的等效物。圖3例示此變換之一實例。在圖式左側,平面螢幕空間1經分成近似相等立體角之矩形區部。在替代性實行方案中,可將螢幕空間分成非矩形區部。自球體至視平面的同心投影被稱為直線投影(有時被稱為日昝投影),且因此逆向直線投影將使視平面上的像素精確地映射回至球形視埠上的相等立體角之元件。因為真實逆向直線投影不會將垂直線及水平線映射至直線,所以本揭示案之態樣之某些實行方案替代地使用雙軸逆向直線投影,其中每一螢幕軸藉由反正切公式變換以將近似相等立體角之每一矩形映射至已變換螢幕空間2中之對應正方形區部,如在圖式之右手側所示。在此近似中,已變換螢幕空間2中之正方形區部為平坦的。藉由實例而非限制的方式,變換將坐標(H,V)處的三角形3之頂點映射至恆定像素密度空間中之坐標(H’,V’)處的已變換三角形3’之對應頂點,可如下:例如,若FOVH、FOVV為以弧度表示的水平視域及垂
直視域,且H’、V’為解投影恆定像素密度空間中之正規化坐標(亦即在全FOV上於範圍[-1..1]內),則可藉由求解以下方程式以消除θH、θV(θH、θV分別在全FOV上於範圍[-FOVH/2..FOVH/2]及[-FOVV/2...FOVV/2]上變化)來自H、V亦即線性空間中之正規化坐標(亦即在全FOV上於範圍[-1..1]內)獲得H’、V’:H’=θH*2/FOVH
V’=θV*2/FOVV
H=tan(θH)/tan(FOVH/2)
V=tan(θV)/tan(FOVV/2)
針對H’及V’求解得到:H’=arctan(H*tan(FOVH/2))*2/FOVH
V’=arctan(V*tan(FOVV/2))*2/FOVV
應注意,雖然此解決方案產生像素間幾乎理想的立體面積分佈,但是在HMD再現組態中,物理光學器件可並非均勻地將HMD顯示像素分佈在可見視域上。因此,在此組態中之最有效解決方案將解決由光學器件在判定顯示像素至螢幕區域的理想映射中引入的失真。
因為習知光柵化僅可以平面視埠為目標,所以每一區部內之頂點僅可使用線性變換加以重新映射。因此,在此類狀況下,某些實行方案替代地將此變換之連續分段線性近似應用於頂點,如下:在恆定像素密度空間中以遞增順序選擇一組螢幕區域界限H’[i]及V’[j],且使用以上變換之逆來計算在線性螢
幕空間中之對應界限H[i]及V[j]:H[i]=tan(H’[i]*FOVH/2)/tan(FOVH/2)
V[j]=tan(V’[j]*FOVV/2)/tan(FOVV/2)
隨後構造保留此等界限的分段線性變換:H’=對於i使得(H[i]<H<H[i+1]),H’[i]+(H’[i+1]-H’[i])*(H-H[i])/(H[i+1]-H[i])
V’=對於j使得(V[j]<V<V[j+1]),V’[j]+(V’[j+1]-V’[j])*(V-V[j])/(V[j+1]-V[j])
因為自H、V至H’、V’的映射對於不同子區段(以上由i及j索引)稍有不同,所以原始螢幕空間1中之三角形3作為具有曲彎邊的已變換三角形3’映射至已變換螢幕空間2。然而,當將所得影像解析至線性或彎曲顯示器時,作為解析之部分而反轉變換,從而將三角形3’之曲彎邊復原回至表面上直線。
此螢幕空間變換之優點為相當大的。例如,對於90度FOV,若螢幕空間1之區域為1.00,則此策略導致具有大致0.62之區域的已變換螢幕空間2。相比之下,若螢幕空間1可映射至球形表面,則已變換螢幕空間2之區域將為大致0.46。即使變換僅為近似球形的,藉由減少已變換螢幕空間之區域,圖形處理亦可比無變換的情況下進行得更快。
本揭示案之態樣利用關於圖3所描述類型之螢幕空間變換以藉由有效減少螢幕空間中將要再現的區域來減少GPU之計算負荷。
根據本揭示案之態樣,具有圖形處理單元及記憶體的圖形處理系統可如下執行圖形處理。接收表示用於虛擬空間中之場景的一或多個頂點的資料。執行頂點至顯示裝置之螢幕空間上的投影。投影近似頂點至彎曲視埠上的投影。對頂點執行基元組裝,以自頂點至螢幕空間上的投影產生螢幕空間中之一或多個基元。對一或多個基元執行掃描轉換,以判定該複數個像素中之哪一個像素或哪些像素為一或多個基元中之對應基元之部分。隨後藉由執行像素處理以將像素值指派給為對應基元之部分的該一或多個像素來產生完成的圖框。在一些實行方案中,可將完成的圖框儲存在記憶體中或顯示在顯示裝置上。
在某些實行方案中,頂點之投影可藉由最初將頂點自虛擬空間投影至場景之平面視埠上來加以執行。平面視埠經再分成複數個子區段,每一子區段對應於螢幕空間之近似相等立體角。針對轉換至螢幕空間坐標的每一基元執行粗略光柵化,以判定基元重疊哪一個子區段或哪些子區段。對於每一基元,針對基元重疊的每一子區段執行螢幕空間修正,以將基元之每一頂點之坐標映射至與該子區段相關聯的對應修正頂點坐標,其中螢幕空間修正等效於將基元重疊的每一子區段映射至彎曲視埠之複數個平面修正子區段中之對應平面修正子區段,其中彎曲視埠之修正子區段具有相等面積。
在此類實行方案中,執行螢幕空間修正可包括將具有基於反正切公式導出的係數的線性變換應用於基
元之一或多個頂點之螢幕空間坐標,以產生對應修正頂點。
在此類實行方案中,可每修正子區段執行掃描轉換,其中對於該複數個子區段中之給定子區段中的一或多個基元中之給定基元,使用用於與該給定子區段相關聯的該給定基元的該等修正頂點坐標來對該給定基元之位於該給定子區段中的該部分執行掃描轉換。
在本揭示案之態樣之一些實行方案中,平面視埠之該複數個子區段中之子區段可為矩形的。
在本揭示案之態樣之一些實行方案中,頂點之投影、基元組裝及掃描轉換藉由計算著色器實行於軟體中。
在本揭示案之態樣之一些實行方案中,頂點之投影、基元組裝及掃描轉換實行於硬體中。
在本揭示案之態樣之一些實行方案中,顯示裝置以90度或更大的視域為特徵。
在本揭示案之態樣之一些實行方案中,顯示裝置為頭戴式顯示裝置。
本揭示案之態樣亦包括具有圖形處理單元及記憶體的圖形處理系統,該圖形處理系統經組配來根據以上態樣實行圖形處理。
本揭示案之態樣亦包括非暫時性電腦可讀媒體,該非暫時性電腦可讀媒體中體現有電腦可執行指令,該等電腦可執行指令在被執行時根據以上提及之態樣來實
行圖形處理。
本揭示案之態樣包括圖形處理系統,該圖形處理系統經組配來實行圖形處理,其中有效像素解析度藉由近似頂點至彎曲視埠上的投影而隨螢幕位置變化。藉由實例而非限制的方式,圖4A例示根據本揭示案之態樣的可用以實行圖形處理的電腦系統400的方塊圖。根據本揭示案之態樣,系統400可為嵌式系統、行動電話、個人電腦、平板電腦、可攜式遊戲裝置、工作站、遊戲控制台等。
系統400通常可包括中央處理器單元(CPU)402、圖形處理器單元(GPU)404及CPU及GPU兩者可存取的記憶體408。CPU 402及GPU 404可各自包括一或多個處理器核心,例如,單個核心、兩個核心、四個核心、八個核心或更多。記憶體408可呈積體電路形式,該積體電路提供可存取記憶體,例如,RAM、DRAM等。記憶體408可包括圖形記憶體428,該圖形記憶體可儲存圖形資源且暫時儲存對於圖形再現管線的資料之圖形緩衝器405。圖形緩衝器405可包括例如用於儲存頂點參數值的頂點緩衝器VB、用於保存頂點索引的索引緩衝器IB、用於儲存圖形內容之深度值的深度緩衝器(例如,Z-緩衝器)DB、模板緩衝器SB、用於儲存將要發送至顯示器的完成圖框的圖框緩衝器FB,及其他緩衝器。在圖4A中所示
的實例中,圖形記憶體428展示為主記憶體之部分。在替代性實行方案中,圖形記憶體428可為單獨硬體組件,可能整合至GPU 404中。
藉由實例而非限制的方式,CPU 402及GPU 404可使用資料匯流排409存取記憶體408。在一些狀況下,系統400包括兩個或兩個以上不同匯流排可為有用的。記憶體408可含有可由CPU 402及GPU 404存取的資料。GPU 404可包括複數個計算單元,該複數個計算單元經組配來平行地執行圖形處理任務。每一計算單元可包括其自有的專用區域記憶體儲存器,諸如,區域資料共享。或者,計算單元可各自存取記憶體408或專用圖形記憶體428。
CPU可經組配來執行CPU代碼403 C ,該CPU代碼可包括利用圖形、編譯器及圖形API的應用程式。圖形API可經組配來將繪圖命令發佈至由GPU實行的程式。CPU代碼403 C 亦可實行醫學模擬及其他功能。GPU 404可經組配來如以上所論述地操作。具體而言,GPU可執行GPU代碼403 G ,該GPU代碼可實行著色器,諸如計算著色器CS、頂點著色器VS及像素著色器PS,如以上所論述。為促進資料在計算著色器CS與頂點著色器VS之間的傳遞,系統可包括一或多個緩衝器405,該一或多個緩衝器可包括圖框緩衝器FB。GPU代碼403 G 亦可選擇性地實行其他類型的著色器(未示出),諸如像素著色器或幾何形狀著色器。每一計算單元可包括其自有的專用區
域記憶體儲存器,諸如,區域資料共享。GPU 404可包括一或多個紋理單元406,該一或多個紋理單元經組配來作為圖形管線之部分而執行用於將紋理應用於基元的某些操作。
根據本揭示案之某些態樣,CPU代碼403 c 及GPU代碼403 g 以及系統400之其他元件經組配來實行圖形管線,其中GPU 404接收表示用於虛擬空間中之場景之一或多個物件的一或多個頂點的頂點資料432。頂點資料432可自計算產生,該等計算例如藉由CPU 402進行的CPU代碼403 C 之執行所實行的醫學模擬。GPU 404執行頂點至顯示裝置416之螢幕空間上的投影。投影近似頂點至彎曲視埠上的投影。GPU 404隨後對頂點執行基元組裝,以自頂點至螢幕空間上的投影產生螢幕空間中之一或多個基元。隨後對一或多個基元執行掃描轉換,以判定螢幕空間中之哪一個像素為對應基元之部分。GPU 404隨後產生完成的圖框460,該完成的圖框隨後係藉由執行像素處理以將像素值指派給為對應基元之部分的該一或多個像素來產生。完成的圖框可儲存在記憶體408或圖形記憶體428(例如,在圖框緩衝器FB中)或顯示在顯示裝置416上。
頂點至螢幕空間上的投影及圖形管線之其他有關部分可例如藉由實行為計算著色器CS的前端在軟體中加以執行。或者,頂點至螢幕空間上的投影及圖形管線之其他有關部分可藉由經組配來實行此等功能的專門設計
的硬體組件HW來實行。
如以上所述的直線解投影可藉由最佳化計算資源及記憶體資源之使用來增強圖形處理。在一些實行方案中,直線解投影對於顯示器416之光學器件及FOV而言為靜態的。在此類狀況下,可經組配以使得每螢幕子區段有效像素解析度如所例示,例如,在圖4C中。在圖4C中所示的實例中,希望螢幕416之中央子區段具有全解析度,且距中心較遠的子區段具有逐漸較低的解析度。
本揭示案之態樣亦包括解投影為動態的實行方案。例如,可將用以改良再現效率的解投影與眼睛追蹤組合以改良視窩解析度。在此類實行方案中,系統400包括用於追蹤使用者之目光(亦即,使用者之眼睛正對著的地方)且使此資訊與使用者正看向的對應螢幕位置相關的硬體。此硬體之一實例可包括處於相對於顯示裝置416之螢幕的已知位置中且指向使用者之大概方向上的數位相機。數位相機可為使用者介面418之部分單獨組件。CPU代碼403 C 可包括影像分析軟體,該影像分析軟體分析來自相機的影像以判定:(a)使用者是否在影像中;(b)使用者是否正面向相機;(c)使用者是否正面向螢幕;(d)使用者之眼睛是否為可見的;(e)使用者之眼睛瞳孔相對於使用者之頭的定向;以及(f)使用者之頭相對於相機的定向。自相機相對於螢幕的已知定位及定向、使用者之眼睛瞳孔相對於使用者之頭的定向及使用者之頭相對於相機的定向,影像分析軟體可判定使用者是否正看向
螢幕,且若如此,則判定用於使用者正看向的螢幕部分的螢幕空間坐標。CPU代碼403 c 隨後可將此等螢幕坐標傳遞至GPU代碼403 G ,該GPU代碼可判定含有視窩部分480(亦即,使用者正看向的部分)的一或多個子區段。GPU代碼403 g 隨後可因此修改直線解投影,以使得像素解析度在含有視窩部分480的一或多個子區段中為最高,且在距視窩部分較遠的子區段中逐漸降低,如圖4D中所示。
在一些實行方案中,CPU代碼403 c 、GPU代碼403 g 及紋理單元406可進一步經組配來結合螢幕位置相關的可變像素解析度來實行對紋理映射操作的修改。例如,像素著色器PS及紋理單元406可經組配來產生每像素位置XY一或多個紋理坐標UV以提供用於一或多個紋理映射操作的坐標集,自紋理坐標UV計算梯度值Gr,且使用梯度值來判定用於應用於基元的紋理的細節層次(LOD)。此等梯度值可經調整以解決可變解析度以及自樣本位置中之正交性之偏差。
藉由實例而非限制的方式,專門設計的硬體HW、紋理單元406、某些類型的著色器及以下所述的圖形管線之其他部分可由專用硬體實行,該專用硬體諸如特定應用積體電路(ASIC)、現場可規劃閘陣列(FPGA)或系統單晶片(SoC或SOC)。
如本文所使用且如熟習此項技術者通常所理解,特定應用積體電路(ASIC)為針對特定用途定製而
非意欲用於通用用途的積體電路。
如本文所使用且熟習此項技術者通常所理解,現場可規劃閘陣列(FPGA)為設計來由消費者或設計者在製造之後組配-因此「現場可規劃」的積體電路。FPGA組態通常使用類似於用於ASIC的硬體描述語言的硬體描述語言(HDL)加以指定。
如本文所使用且如熟習此項技術者通常所理解,系統單晶片(SoC或SOC)為將電腦或其他電子系統之所有組件整合至單個晶片中的積體電路(IC)。其可含有數位功能、模擬功能、混合信號功能,且經常含有射頻功能-全部在單個晶片基板上。典型應用在嵌式系統之領域中。
典型SoC包括以下硬體組件:一或多個處理器核心(例如,微控制器、微處理器或數位信號處理器(DSP)核心。
記憶體區塊,例如,唯讀記憶體(ROM)、隨機存取記憶體(RAM)、電氣可抹除可規劃唯讀記憶體(EEPROM)及快閃記憶體。
定時源,諸如振盪器或鎖相迴路。
周邊設備,諸如計數計時器、即時計時器或開機重設產生器。
外部介面,例如,工業標準,諸如通用串列匯流排(USB)、火線、乙太網路、通用同步/異步接收器/發射器(USART)、串列周邊介面(SPI)匯流排。
類比介面,包括類比至數位轉換器(ADC)及數位至類比轉換器(DAC)。
電壓調節器及功率管理電路。
此等組件由專屬匯流排或工業標準匯流排連接。直接記憶體存取(DMA)直接在外面介面與記憶體之間路由資料,從而繞過處理器核心且藉此提高SoC之資料通量。
典型SoC包括以上所述硬體組件及可執行指令(例如,軟體或韌體)兩者,該等可執行指令控制處理器核心、周邊設備及介面。
在一些實行方案中,圖形管線之部分之功能中之一些或全部可替代地由藉由軟體可規劃通用電腦處理器執行的適當組配的軟體指令實行例如為由GPU 404執行的計算著色器CS。此類指令可體現於電腦可讀媒體例如記憶體408、圖形記憶體428或儲存裝置415中。
系統400亦可包括熟知支援功能410,該等支援功能可例如經由匯流排409與系統之其他組件通訊。此類支援功能可包括(但不限於)輸入/輸出(I/O)元件411、電源(P/S)412、時鐘(CLK)413及快取記憶體414。除快取記憶體414之外,GPU 404可包括其自有GPU快取記憶體314 G ,且GPU可經組配以使得在GPU 404上運行的程式可完全讀取或完全寫入GPU快取記憶體414 G 。
系統400可包括顯示裝置416以將再現圖形
417呈現給使用者。在替代性實行方案中,顯示裝置416為結合系統400工作的單獨組件。顯示裝置416可呈平板顯示器、頭戴式顯示器(HMD)、陰極射線管(CRT)螢幕、投影機或可顯示可見本文、數字、圖形符號或影像的其他裝置的形式。在尤其有用的實行方案中,顯示器416為具有帶有90度或更大(例如,114度或更大)之視域的螢幕的大視域(FOV)裝置。顯示裝置416顯示根據本文所述各種技術處理的再現圖形影像417(例如,完成的圖框460)。
系統400可選擇性地包括諸如磁碟驅動機、CD-ROM驅動機、快閃記憶體、磁帶驅動機等的大容量儲存裝置415,以儲存程式及/或資料。系統400亦可選擇性地包括使用者介面單元418以促進系統400與使用者之間的交互作用。使用者介面418可包括鍵盤、滑鼠、操縱桿、光筆、遊戲控制器或可結合圖形使用者介面(GUI)使用的其他裝置。系統400亦可包括網路介面420以允許裝置經由網路422與其他裝置通訊。網路422可為例如區域網路(LAN)、廣域網路諸如網際網路、個人區域網路,諸如藍芽網路或其他類型的網路。此等組件可實行於硬體、軟體或韌體,或該硬體、軟體或韌體中兩個或兩個以上之一些組合中。
根據本揭示案之態樣,系統400經組配來實
行圖形再現管線之部分。圖4B例示根據本揭示案之態樣的圖形再現管線430之實例。
再現管線430可經組配來再現如描繪場景的影像的圖形,該場景在虛擬空間(本文中有時被稱為「世界空間」)中具有二維幾何形狀或較佳三維幾何形狀。管線之早期階段可包括在場景經光柵化且轉換至螢幕空間以作為適合於在顯示裝置416上輸出的一組離散畫面元件之前於虛擬空間中執行的操作。貫穿管線,含於圖形記憶體428中的各種資源可在管線階段處加以利用,且至階段的輸入及輸出可在影像之最終值經判定之前暫時儲存在含於圖形記憶體中的緩衝器中。
再現管線可對輸入資料432操作,該輸入資料可包括由一組頂點定義的一或多個虛擬物件,該組頂點係在虛擬空間中設置且具有關於場景中之坐標定義的幾何形狀。管線之早期階段可包括在圖4B中廣泛地分類為頂點處理階段434的階段,且此可包括各種計算以處理虛擬空間中之物件之頂點。此可包括頂點著色計算436,該等頂點著色計算可操縱場景中之頂點之各種參數值,諸如定位值(例如,X-Y坐標及Z深度值)、色彩值、採光值、紋理坐標等。較佳地,頂點著色計算436係由GPU 404之一或多個可規劃頂點著色器VS執行。頂點處理階段可選擇性地包括額外頂點處理計算,諸如,鑲嵌及幾何形狀著色器計算438,該等鑲嵌及幾何形狀著色器計算可選擇性地用以產生虛擬空間中之新頂點及新幾何形狀。鑲嵌計算
再分場景幾何形狀及幾何形狀著色計算,以產生超過在由CPU代碼403 C 實行的應用程式中最初設置的場景幾何形狀之新場景幾何形狀。一旦頂點處理階段434完成,場景即由一組頂點定義,該組頂點各自具有一組頂點參數值439。頂點參數值可包括紋理坐標、切線、採光值、色彩、定位等。
管線430隨後可繼續進行與將場景幾何形狀轉換成螢幕空間及一組離散畫面元件(亦即,像素)相關聯的光柵化處理階段440。虛擬空間幾何形狀(其可為三維的)可藉由操作變換至螢幕空間幾何形狀(其通常為二維的),該等操作可實質上計算物件及頂點自虛擬空間至場景之觀察視窗(或「視埠」)的投影。頂點之子集經分組以定義螢幕空間中之基元之集合。根據本揭示案之態樣,光柵化階段440近似頂點至彎曲視埠上的投影。
根據本揭示案之態樣,圖形管線430包括至光柵化階段的前端441。前端可實行為光柵化階段之部分或實行為頂點處理434與光柵化階段440之間的中間階段。在圖4B中所描繪的實例中,前端441展示為光柵化階段440之部分。然而,本揭示案之態樣不限於此類實行方案。在某些實行方案中,將前端441全部或部分實行為在GPU 404上運行的計算著色器CS。然而,本揭示案之態樣不限於此類實行方案。
可參考圖4A及圖4B來理解前端441之操作及本揭示案之有關態樣。
圖4B中所描繪的光柵化處理階段440包括基元組裝操作442,該等基元組裝操作可設置由場景中之每一組頂點定義的基元。每一頂點可由索引定義,且每一基元可關於此等頂點索引加以定義,該等頂點索引可儲存在圖形記憶體428中之索引緩衝器IB中。基元可較佳地包括由三個頂點定義的至少三角形,但該三個頂點各自亦可包括點基元、線基元及其他多邊形形狀。在基元組裝階段442期間,可選擇性地剔出某些基元。例如,索引指示一定捲繞順序的該等基元可被視為向後的且可自場景剔出。
藉由實例而非限制的方式,在基元呈由三維虛擬空間中之頂點定義的三角形之形式的情況下,基元組裝判定每一個三角形位於顯示器416之螢幕上的何處。裁剪及螢幕空間變換操作通常由基元組裝單元442執行。在圖5中所描繪的實例中,前端441判定用於每一頂點的螢幕空間坐標,如在502處所指示。在特定實行方案中,例如藉由計算虛擬空間中之頂點之位置至場景之平面視埠上的初始投影來計算螢幕空間坐標。平面視埠經再分成多個子區段。每一子區段對應於螢幕空間之近似相等立體角,例如,如圖3中所示。前端441針對轉換至螢幕空間坐標的每一基元執行粗略光柵化,以判定基元重疊哪一個子區段或哪些子區段,作為此處理之部分,可偵測且移除向後基元510。對於轉換至螢幕空間的每一基元,前端441針對基元重疊的每一子區段執行螢幕空間修正506,以將基元之每一頂點之坐標映射至對應修正頂點坐標。螢幕空間
修正506等效於將基元重疊的每一子區段映射至彎曲視埠之複數個平面修正子區段中之對應平面修正子區段,其中彎曲視埠之修正子區段具有相等面積。
在某些實行方案中,在502處的頂點坐標之修正涉及針對每一子區段如下進行的坐標(H,V)處的頂點至對應修正頂點坐標(H’,V’)的分段線性反正切變換:H’=對於i使得(H[i]<H<H[i+1]),H’[i]+(H’[i+1]-H’[i])*(H-H[i])/(H[i+1]-H[i])
V’=對於j使得(V[j]<V<V[j+1]),V’[j]+(V’[j+1]-V’[j])*(V-V[j])/(V[j+1]-V[j])
其中H[i]及V[j]為如下自以遞增順序選擇為一組的對應恆定像素區域空間界限H’[i]及V’[j]導出的線性螢幕空間界限:H[i]=tan(H’[i]*FOVH/2)/tan(FOVH/2)
V[j]=tan(V’[j]*FOVV/2)/tan(FOVV/2)
在用於HMD及具有物理光學器件的類似顯示器的某些實行方案中,用於此等螢幕界限的方程式可經調整以解決光學器件與相等立體角至每一顯示像素的理想映射的偏差。
在某些實行方案中,以將頂點坐標與子區段相關聯的資訊注釋修正頂點坐標。在此等實行方案中,基元組裝階段442察看修正頂點坐標之注解且僅將基元發送至適當GPU組件,該適當GPU組件處理該子區段以用於
掃描轉換444操作。掃描轉換444僅以每子區段為基礎處理每一基元,例如,每一基元僅在由注解指示的子區段中經處理。
掃描轉換操作444對每一像素處的基元取樣,且在樣本由基元覆蓋時,自基元產生片段(有時被稱為像素)以用於進一步處理。掃描轉換操作包括取得已轉換至螢幕空間坐標的基元及判定哪些像素為該基元之部分的操作。在一些實施方案中,在掃描轉換操作444期間在基元內取得多個樣本,此舉可用於抗混淆目的。在某些實施方案中,不同像素可不同地加以取樣。例如,一些邊緣像素可含有比中心像素較低的取樣密度,以最佳化用於諸如頭戴式顯示器(HMD)的某些類型的顯示裝置416的再現之某些態樣。在掃描轉換444期間自基元產生的片段(或「像素」)可具有參數值,該等參數值可自創建該等片段的基元之頂點的頂點參數值439內插至像素之位置。光柵化階段440可包括參數內插操作446階段以計算此等內插片段參數值449,該等內插片段參數值可用作輸入以用於在管線之較後階段處的進一步處理。
根據本揭示案之態樣,在基元組裝442與掃描轉換444之間,解決螢幕之不同子區段具有不同像素解析度之事實的某些操作發生。在特定實行方案中,一旦用於基元之頂點的螢幕位置已知,即可進行粗略光柵化443以找到基元重疊的預定義螢幕子區段(本文中有時被稱為粗略光柵化影像塊或超級影像塊)。對於基元重疊的每一
子區段,用於基元的頂點位置經調整以解決子區段之像素解析度。掃描轉換444及後續處理階段藉由僅對用於一或多個相關子區段的指定數目的有效像素執行像素處理來產生最終像素值。
在某些實行方案中,GPU 404經組配來在軟體中實行基元在子區段之間的粗略劃分,且在硬體中實行頂點之投影、基元組裝及掃描轉換。在一些此類實行方案中,GPU 404經組配來在軟體中使子區段索引與基元頂點相關聯,其中每一子區段索引自實行於硬體中的調色板選擇螢幕空間投影及視埠。在其他此類實行方案中,GPU 404經組配來在軟體中使子區段索引與基元頂點索引相關聯,其中每一子區段索引自實行於硬體中的調色板選擇螢幕空間投影及視埠。
圖形管線430進一步包括像素處理操作,在圖4B中大體上在450處指示,以進一步操縱內插參數值449,且執行判定片段如何有助於用於顯示器416的最終像素值的進一步操作。根據本揭示案之態樣,此等任務可以習知方式執行。像素處理任務包括像素著色計算452,該等像素著色計算進一步操縱片段之內插參數值449。像素著色計算452可由GPU 404中之可規劃像素著色器或特定用途的硬體執行。可基於在光柵化處理階段440期間對基元之取樣來發起像素著色器調用448。像素著色計算452可將值輸出至圖形記憶體428中之一或多個緩衝器405,該一或多個緩衝器有時被稱為再現目標RT,或若有
多個緩衝器,則被稱為多個再現目標(MRT)。MRT允許像素著色器選擇性地輸出至一個以上再現目標,各自具有相同螢幕維但潛在地具有不同像素格式。
像素處理操作450通常包括紋理映射操作454,該等紋理映射操作可在某種程度上由一或多個著色器(例如,像素著色器PS、計算著色器CS、頂點著色器VS或其他類型的著色器)且在某種程度上由紋理單元406執行。像素著色器計算452包括自螢幕空間坐標XY計算紋理坐標UV,及將紋理坐標發送至紋理操作454,及接收紋理資料TX。紋理坐標UV可以任意方式自螢幕空間坐標XY計算,但通常自內插輸入值計算,或有時自先前紋理操作之結果計算。梯度Gr通常係由紋理單元406(紋理操作硬體單元)自紋理坐標之四元組(quad)直接計算,但可選擇性地由像素著色器計算452明確地計算且經傳遞至紋理操作454,而非依賴紋理單元406以執行預設計算。
紋理操作456通常包括以下階段,該等階段可由像素著色器PS及紋理單元406之一些組合執行。首先,每像素位置XY一或多個紋理坐標UV經產生且用來提供用於每一紋理映射操作的坐標集。自紋理坐標UV計算梯度值Gr,且將該等梯度值用以判定用於應用於基元的紋理的細節層次(LOD)。
像素處理450通常以再現輸出操作456結束,該等再現輸出操作可包括通常稱為光柵操作(ROP)
的操作。光柵化操作(ROP)簡單地運行每像素多次,多個再現目標(MRT)之中的每一再現目標一次。在再現輸出操作456期間,最終像素值459可在圖框緩衝器中經判定,此舉可選擇性地包括合併片段、應用模板、深度測試及某些每樣本處理任務。最終像素值459包括至所有有效再現目標(MRT)的所收集輸出。GPU 404使用最終像素值459來構成完成的圖框460,該完成的圖框可選擇性地即時顯示在顯示裝置416之像素上。
本揭示案之額外態樣包括圖形處理方法,該圖形處理方法包含:接收表示用於虛擬空間中之場景的一或多個頂點的資料;執行頂點至顯示裝置之具有複數個像素的螢幕空間上的投影,其中投影近似頂點至彎曲視埠上的投影;對頂點執行基元組裝,以自頂點至螢幕空間上的投影產生螢幕空間中之一或多個基元;對一或多個基元執行掃描轉換,以判定該複數個像素中之哪一個像素或哪些像素為一或多個基元中之對應基元之部分;藉由執行像素處理以將像素值指派給為對應基元之部分的該一或多個像素來產生完成的圖框。
在前述方法之一些實行方案中,完成的圖框儲存在記憶體中或顯示在顯示裝置上。
另一額外態樣為電腦可讀媒體,該電腦可讀媒體中體現有電腦可執行指令,該等電腦可執行指令在被執行時實行前述方法。
又一額外態樣為可自通訊網路下載且/或儲存在電腦可讀媒體及/或微處理器可執行媒體上的電腦程式產品,其特徵在於,該電腦程式產品包含用於實行前述方法的程式碼指令。
另一態樣為電磁信號或其他信號,該電磁信號或其他信號攜載用於進行前述方法的電腦可讀指令。
本發明之另一態樣為圖形處理方法,其中頂點及/或像素資料經處理以產生用於場景之視埠的最終像素值,該場景以使得場景中在兩個不同子區段中之部分具有不同有效像素解析度的方式顯示在顯示裝置上。
在一些實行方案中,方法進一步包括判定使用者正看向的顯示裝置之螢幕之一部分,及變化像素解析度,使得有效像素解析度在含有使用者正看向的該部分的一或多個子區段中為最高。
一額外態樣為電腦圖形設備,該電腦圖形設備經組配來實行以上提及之方法。
另一額外態樣為電腦可讀媒體,該電腦可讀媒體中體現有電腦可執行指令,該等電腦可執行指令在被執行時實行前述方法。
又一額外態樣為可自通訊網路下載且/或儲存在電腦可讀媒體及/或微處理器可執行媒體上的電腦程式
產品,其特徵在於,該電腦程式產品包含用於實行前述方法的程式碼指令。
另一額外態樣為電磁信號或其他信號,該電磁信號或其他信號攜載用於進行前述方法的電腦可讀指令。
雖然以上為本發明之較佳實施例之完整描述,但是有可能使用各種替選方案、修改及等效物。因此,本發明之範疇不應參考以上描述來判定,而是應參考隨附申請專利範圍以及申請專利範圍之等效物之完整範疇來判定。本文所述的任何特徵(無論是否較佳)皆可與本所述的任何其他特徵(無論是否較佳)組合。在以下申請專利範圍中,不定冠詞「一」係指接在該冠詞後面的項目中之一或多者之數量,除非另有明確說明。隨附申請專利範圍不應解釋為包括構件加功能限制,除非在給定請求項中使用用語「用於......之構件」明確地敘述此限制。
428‧‧‧圖形記憶體
432‧‧‧輸入資料
434‧‧‧頂點處理
436‧‧‧頂點著色計算
438‧‧‧鑲嵌/幾何形狀著色器計算
439‧‧‧頂點參數值
440‧‧‧光柵化處理
441‧‧‧前端
442‧‧‧基元組裝
443‧‧‧粗略光柵化
444‧‧‧掃描轉換
446‧‧‧參數內插
448‧‧‧像素著色器調用
449‧‧‧內插輸入片段值
450‧‧‧像素處理
452‧‧‧像素著色計算
454‧‧‧紋理操作
456‧‧‧再現輸出操作
458‧‧‧光柵化操作
459‧‧‧最終像素值
460‧‧‧完成的圖框
Claims (33)
- 一種用於使用一圖形處理系統的圖形處理之方法,該圖形處理系統具有一圖形處理單元及記憶體,該方法包含:接收表示用於一虛擬空間中之一場景的一或多個頂點的資料;執行該等頂點至一顯示裝置之具有複數個像素的一螢幕空間上的一數學投影,其中該數學投影包括一分段線性投影,其藉由將該等頂點數學地投影至一平坦螢幕空間上隨後將代表一彎曲視埠之近似相等立體角及該彎曲視埠之每單位立體角的相等像素密度的該平坦螢幕空間之子區段修正至近似相等面積及每單位面積的相等像素密度之該平坦螢幕空間之對應子區段來近似該等頂點至該彎曲視埠上的該投影;對該等頂點執行基元組裝,以自該等頂點至該螢幕空間上的該投影產生螢幕空間中之一或多個基元;對該一或多個基元執行掃描轉換,以判定該複數個像素中之哪一個像素或哪些像素為該一或多個基元中之對應基元之部分;藉由執行像素處理以將像素值指派給為該等對應基元之部分的該一或多個像素來產生一完成的圖框;以及將該完成的圖框儲存在該記憶體中或將該完成的圖框顯示在該顯示裝置上。
- 如申請專利範圍第1項之方法,執行該等頂點之 該投影包括:計算該等頂點自虛擬空間至該場景之一平面視埠上的初始投影,該平面視埠經再分成複數個子區段,其中該複數個中之每一子區段對應於該螢幕空間之一近似相等立體角;針對轉換至螢幕空間坐標的每一基元執行粗略光柵化,以判定該基元重疊哪一個子區段或哪些子區段;以及對於該一或多個基元中之每一基元,針對該基元重疊的每一子區段執行一螢幕空間修正,以將該基元之每一頂點之坐標映射至與該子區段相關聯的一對應修正頂點坐標,其中該螢幕空間修正等效於將該基元重疊的每一子區段映射至該彎曲視埠之複數個平面修正子區段中之一對應平面修正子區段,其中該彎曲視埠之該等修正子區段具有相等面積。
- 如申請專利範圍第2項之方法,其中執行該螢幕空間修正包括執行一計算,該計算涉及將一反正切公式之一分段線性近似應用於該基元之一或多個頂點之螢幕空間坐標,以產生對應修正頂點。
- 如申請專利範圍第2項之方法,其中執行該螢幕空間修正包括執行一計算,該計算涉及將由一顯示裝置中之物理光學器件產生的影像失真之分段線性近似應用於該基元之一或多個頂點之螢幕空間坐標,以產生對應修正頂點。
- 如申請專利範圍第2項之方法,其中每修正子區 段執行該掃描轉換,其中對於該複數個子區段中之一給定子區段中的該一或多個基元中之一給定基元,使用用於與該給定子區段相關聯的該給定基元的該等修正頂點坐標來對該給定基元之位於該給定子區段中的該部分執行掃描轉換。
- 如申請專利範圍第2項之方法,其中該平面視埠之該複數個子區段中之該等子區段為矩形的。
- 如申請專利範圍第1項之方法,其中該等頂點之該投影、基元組裝及掃描轉換藉由一計算著色器實行於軟體中。
- 如申請專利範圍第1項之方法,其中該等頂點之該投影、基元組裝及掃描轉換經實行於硬體中。
- 如申請專利範圍第1項之方法,其進一步包含判定一使用者正看向的該顯示裝置之一螢幕之一部分,且其中該投影經組配來變化一有效像素解析度,使得該有效像素解析度對於含有該使用者正看向的該部分的該螢幕之一或多個子區段為最高。
- 如申請專利範圍第1項之方法,其中該投影對於該顯示裝置之給定光學器件及視域而言為靜態的。
- 如申請專利範圍第1項之方法,其中該投影對於該顯示裝置之給定光學器件及視域而言為靜態的,且其中該投影經組配,使得該螢幕之一或多個中央子區段具有一全有效像素解析度,且距中心較遠的子區段具有逐漸較低的有效像素解析度。
- 如申請專利範圍第1項之方法,其中該顯示裝置以一90度或更大的視域為特徵。
- 如申請專利範圍第1項之方法,其中該顯示裝置為一頭戴式顯示裝置。
- 一種用於圖形處理的系統,該系統包含:一圖形處理單元(GPU);以及一記憶體,其中該圖形處理單元經組配來接收表示用於一虛擬空間中之一場景的一或多個頂點的資料;其中該GPU經組配來執行該等頂點至一顯示裝置之具有複數個像素的一螢幕空間上的一數學投影,其中該數學投影藉由將該等頂點數學地投影至一平坦螢幕空間上隨後將代表一彎曲視埠之近似相等立體角及該彎曲視埠之每單位立體角的相等像素密度的該平坦螢幕空間之子區段修正至近似相等面積及每單位面積的相等像素密度之該平坦螢幕空間之對應子區段來近似該等頂點至該彎曲視埠上的一投影;其中該GPU經組配來對該等頂點執行基元組裝,以自該等頂點至該螢幕空間上的該投影產生螢幕空間中之一或多個基元;其中該GPU經組配來對該一或多個基元執行掃描轉換,以判定該複數個像素中之哪一個像素或哪些像素為該一或多個基元中之對應基元之部分;其中該GPU經組配來藉由執行像素處理以將像素值 指派給為該等對應基元之部分的該一或多個像素來產生一完成的圖框;且其中該GPU經組配來將該完成的圖框儲存在該記憶體中或將該完成的圖框顯示在該顯示裝置上。
- 如申請專利範圍第14項之系統,其中該GPU經組配來藉由以下操作來執行該等頂點之該投影:計算該等頂點自虛擬空間至該場景之一平面視埠上的初始投影,該平面視埠經再分成複數個子區段,其中該複數個中之每一子區段對應於該螢幕空間之一近似相等立體角;針對轉換至螢幕空間坐標的每一基元執行粗略光柵化,以判定該基元重疊哪一個子區段或哪些子區段;以及對於該一或多個基元中之每一基元,針對該基元重疊的每一子區段執行一螢幕空間修正,以將該基元之每一頂點之坐標映射至與該子區段相關聯的一對應修正頂點坐標,其中該螢幕空間修正等效於將該基元重疊的每一子區段映射至該彎曲視埠之複數個平面修正子區段中之一對應平面修正子區段。
- 如申請專利範圍第15項之系統,其中該GPU經組配來藉由執行一計算來執行該螢幕空間修正,該計算涉及將一反正切公式之一分段線性近似應用於該基元之一或多個頂點之螢幕空間坐標,以產生對應修正頂點。
- 如申請專利範圍第15項之系統,其中該GPU經組配來藉由執行一計算來執行該螢幕空間修正,該計算涉 及將由一顯示裝置中之物理光學器件產生的影像失真之一分段線性近似應用於該基元之一或多個頂點之螢幕空間坐標,以產生對應修正頂點。
- 如申請專利範圍第15項之系統,其中該GPU經組配來每修正子區段執行該掃描轉換,其中對於該複數個子區段中之一給定子區段中的該一或多個基元中之一給定基元,該GPU使用用於與該給定子區段相關聯的該給定基元的該等修正頂點坐標來對該給定基元之位於該給定子區段中的該部分執行該掃描轉換。
- 如申請專利範圍第15項之系統,其中該平面視埠之該複數個子區段中之該等子區段為矩形的。
- 如申請專利範圍第15項之系統,其中該彎曲視埠之該等修正子區段具有相等面積。
- 如申請專利範圍第20項之系統,其中該平面視埠之該複數個子區段中之該等子區段為矩形的。
- 如申請專利範圍第14項之系統,其中該GPU經組配來使用一計算著色器將該等頂點之投影、基元組裝及掃描轉換實行於軟體中。
- 如申請專利範圍第14項之系統,其中該GPU經組配來將該等頂點之該投影、基元組裝及掃描轉換實行於硬體中。
- 如申請專利範圍第14項之系統,其中該GPU經組配來將子區段之間的基元之粗略劃分實行於軟體中,且將該等頂點之該投影、基元組裝及掃描轉換實行於硬體 中。
- 如申請專利範圍第24項之系統,其中該GPU經組配來在軟體中使子區段索引與基元頂點相關聯,其中每一子區段索引自實行於硬體中的一調色板選擇一螢幕空間投影及視埠。
- 如申請專利範圍第24項之系統,其中該GPU經組配來在軟體中使子區段索引與基元頂點索引相關聯,其中每一子區段索引自實行於硬體中的一調色板選擇一螢幕空間投影及視埠。
- 如申請專利範圍第14項之系統,其進一步包含該顯示裝置。
- 如申請專利範圍第14項之系統,其中該顯示裝置以一90度或更大的視域為特徵。
- 如申請專利範圍第14項之系統,其中該顯示裝置為一頭戴式顯示裝置。
- 如申請專利範圍第14項之系統,其中該系統經組配來判定一使用者正看向的該顯示裝置之一螢幕之一部分,且其中該投影經組配來變化一有效像素解析度,使得該有效像素解析度對於含有該使用者正看向的該部分的該螢幕之一或多個子區段為最高。
- 如申請專利範圍第14項之系統,其中該投影對於該顯示裝置之給定光學器件及視域而言為靜態的。
- 如申請專利範圍第14項之系統,其中該投影對於該顯示裝置之給定光學器件及視域而言為靜態的,且其 中該投影經組配,使得該螢幕之一或多個中央子區段具有一全有效像素解析度,且距中心較遠的子區段具有逐漸較低的有效像素解析度。
- 一種非暫時性電腦可讀媒體,其中體現有電腦可執行指令,該等電腦可執行指令在被執行時實行如申請專利範圍第1項之方法。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/246,066 US9836816B2 (en) | 2014-04-05 | 2014-04-05 | Varying effective resolution by screen location in graphics processing by approximating projection of vertices onto curved viewport |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201601115A TW201601115A (zh) | 2016-01-01 |
TWI578266B true TWI578266B (zh) | 2017-04-11 |
Family
ID=54210196
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW104108776A TWI578266B (zh) | 2014-04-05 | 2015-03-19 | 藉由近似頂點至彎曲視埠上的投影在圖形處理中隨螢幕位置變化有效解析度 |
Country Status (6)
Country | Link |
---|---|
US (2) | US9836816B2 (zh) |
EP (2) | EP3129975B8 (zh) |
JP (3) | JP6333405B2 (zh) |
KR (1) | KR101964611B1 (zh) |
TW (1) | TWI578266B (zh) |
WO (1) | WO2015153169A1 (zh) |
Families Citing this family (51)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10068311B2 (en) | 2014-04-05 | 2018-09-04 | Sony Interacive Entertainment LLC | Varying effective resolution by screen location by changing active color sample count within multiple render targets |
US9652882B2 (en) | 2014-04-05 | 2017-05-16 | Sony Interactive Entertainment America Llc | Gradient adjustment for texture mapping for multiple render targets with resolution that varies by screen location |
US9710881B2 (en) | 2014-04-05 | 2017-07-18 | Sony Interactive Entertainment America Llc | Varying effective resolution by screen location by altering rasterization parameters |
US9865074B2 (en) | 2014-04-05 | 2018-01-09 | Sony Interactive Entertainment America Llc | Method for efficient construction of high resolution display buffers |
US10783696B2 (en) | 2014-04-05 | 2020-09-22 | Sony Interactive Entertainment LLC | Gradient adjustment for texture mapping to non-orthonormal grid |
US9495790B2 (en) | 2014-04-05 | 2016-11-15 | Sony Interactive Entertainment America Llc | Gradient adjustment for texture mapping to non-orthonormal grid |
US9836816B2 (en) | 2014-04-05 | 2017-12-05 | Sony Interactive Entertainment America Llc | Varying effective resolution by screen location in graphics processing by approximating projection of vertices onto curved viewport |
US10438312B2 (en) | 2014-04-05 | 2019-10-08 | Sony Interactive Entertainment LLC | Method for efficient re-rendering objects to vary viewports and under varying rendering and rasterization parameters |
US11302054B2 (en) | 2014-04-05 | 2022-04-12 | Sony Interactive Entertainment Europe Limited | Varying effective resolution by screen location by changing active color sample count within multiple render targets |
US9760113B2 (en) | 2015-02-20 | 2017-09-12 | Sony Interactive Entertainment America Llc | Backward compatibility through use of spoof clock and fine grain frequency control |
US9704217B2 (en) * | 2015-04-20 | 2017-07-11 | Intel Corporation | Apparatus and method for non-uniform frame buffer rasterization |
US11403099B2 (en) | 2015-07-27 | 2022-08-02 | Sony Interactive Entertainment LLC | Backward compatibility by restriction of hardware resources |
US10235219B2 (en) | 2015-07-27 | 2019-03-19 | Sony Interactive Entertainment America Llc | Backward compatibility by algorithm matching, disabling features, or throttling performance |
US9857871B2 (en) | 2015-09-04 | 2018-01-02 | Sony Interactive Entertainment Inc. | Apparatus and method for dynamic graphics rendering based on saccade detection |
US10726619B2 (en) | 2015-10-29 | 2020-07-28 | Sony Interactive Entertainment Inc. | Foveated geometry tessellation |
US9892024B2 (en) | 2015-11-02 | 2018-02-13 | Sony Interactive Entertainment America Llc | Backward compatibility testing of software in a mode that disrupts timing |
CN108885553B (zh) | 2016-01-22 | 2022-12-27 | 索尼互动娱乐股份有限公司 | 模拟向后兼容的传统总线行为 |
KR102179237B1 (ko) | 2016-01-22 | 2020-11-16 | 주식회사 소니 인터랙티브 엔터테인먼트 | 하위 호환성을 위한 cpuid 스푸핑 |
US9972066B1 (en) | 2016-03-16 | 2018-05-15 | Gopro, Inc. | Systems and methods for providing variable image projection for spherical visual content |
US10915333B2 (en) | 2016-03-30 | 2021-02-09 | Sony Interactive Entertainment Inc. | Deriving application-specific operating parameters for backwards compatiblity |
US10275239B2 (en) | 2016-03-30 | 2019-04-30 | Sony Interactive Entertainment Inc. | Deriving application-specific operating parameters for backwards compatiblity |
US10303488B2 (en) | 2016-03-30 | 2019-05-28 | Sony Interactive Entertainment Inc. | Real-time adjustment of application-specific operating parameters for backwards compatibility |
US10401952B2 (en) | 2016-03-31 | 2019-09-03 | Sony Interactive Entertainment Inc. | Reducing rendering computation and power consumption by detecting saccades and blinks |
US10152819B2 (en) | 2016-08-15 | 2018-12-11 | Microsoft Technology Licensing, Llc | Variable rate shading |
GB2553353B (en) * | 2016-09-05 | 2021-11-24 | Advanced Risc Mach Ltd | Graphics processing systems and graphics processors |
KR102650215B1 (ko) * | 2016-10-18 | 2024-03-21 | 삼성전자주식회사 | 영상 처리 방법 및 장치 |
WO2018134946A1 (ja) * | 2017-01-19 | 2018-07-26 | 株式会社ソニー・インタラクティブエンタテインメント | 画像生成装置、及び画像表示制御装置 |
US10147227B2 (en) * | 2017-02-17 | 2018-12-04 | Microsoft Technology Licensing, Llc | Variable rate shading |
US10546365B2 (en) * | 2017-03-27 | 2020-01-28 | Advanced Micro Devices, Inc. | Single pass flexible screen/scale rasterization |
CN107146274B (zh) * | 2017-05-05 | 2021-06-22 | 上海兆芯集成电路有限公司 | 图像数据处理***、纹理贴图压缩和产生全景视频的方法 |
US10685473B2 (en) * | 2017-05-31 | 2020-06-16 | Vmware, Inc. | Emulation of geometry shaders and stream output using compute shaders |
WO2018226676A1 (en) * | 2017-06-05 | 2018-12-13 | Google Llc | Smoothly varying foveated rendering |
EP3634593B1 (en) * | 2017-06-09 | 2021-04-21 | Sony Interactive Entertainment Inc. | Optimized deferred lighting and foveal adaptation of particles and simulation models in a foveated rendering system |
US10515466B2 (en) | 2017-06-09 | 2019-12-24 | Sony Interactive Entertainment Inc. | Optimized deferred lighting in a foveated rendering system |
US10460509B2 (en) * | 2017-11-07 | 2019-10-29 | Dolby Laboratories Licensing Corporation | Parameterizing 3D scenes for volumetric viewing |
KR102547943B1 (ko) | 2018-01-05 | 2023-06-26 | 삼성디스플레이 주식회사 | 헤드 마운트 표시 장치 |
JP2021105749A (ja) * | 2018-03-20 | 2021-07-26 | ソニーグループ株式会社 | 情報処理装置、情報処理方法およびプログラム |
US11145108B2 (en) * | 2018-03-21 | 2021-10-12 | Nvidia Corporation | Uniform density cube map rendering for spherical projections |
CN115842907A (zh) * | 2018-03-27 | 2023-03-24 | 京东方科技集团股份有限公司 | 渲染方法、计算机产品及显示装置 |
US10942564B2 (en) | 2018-05-17 | 2021-03-09 | Sony Interactive Entertainment Inc. | Dynamic graphics rendering based on predicted saccade landing point |
US11262839B2 (en) | 2018-05-17 | 2022-03-01 | Sony Interactive Entertainment Inc. | Eye tracking with prediction and late update to GPU for fast foveated rendering in an HMD environment |
JP7217206B2 (ja) | 2019-07-10 | 2023-02-02 | 株式会社ソニー・インタラクティブエンタテインメント | 画像表示装置、画像表示システムおよび画像表示方法 |
JP7377014B2 (ja) * | 2019-07-10 | 2023-11-09 | 株式会社ソニー・インタラクティブエンタテインメント | 画像表示装置、画像表示システムおよび画像表示方法 |
US11080814B1 (en) | 2020-02-03 | 2021-08-03 | Sony Interactive Entertainment Inc. | System and method for efficient multi-GPU rendering of geometry by pretesting against screen regions using prior frame information |
US11514549B2 (en) | 2020-02-03 | 2022-11-29 | Sony Interactive Entertainment Inc. | System and method for efficient multi-GPU rendering of geometry by generating information in one rendering phase for use in another rendering phase |
US11508110B2 (en) | 2020-02-03 | 2022-11-22 | Sony Interactive Entertainment Inc. | System and method for efficient multi-GPU rendering of geometry by performing geometry analysis before rendering |
US11170461B2 (en) | 2020-02-03 | 2021-11-09 | Sony Interactive Entertainment Inc. | System and method for efficient multi-GPU rendering of geometry by performing geometry analysis while rendering |
US11263718B2 (en) | 2020-02-03 | 2022-03-01 | Sony Interactive Entertainment Inc. | System and method for efficient multi-GPU rendering of geometry by pretesting against in interleaved screen regions before rendering |
US11321800B2 (en) | 2020-02-03 | 2022-05-03 | Sony Interactive Entertainment Inc. | System and method for efficient multi-GPU rendering of geometry by region testing while rendering |
US11120522B2 (en) | 2020-02-03 | 2021-09-14 | Sony Interactive Entertainment Inc. | System and method for efficient multi-GPU rendering of geometry by subdividing geometry |
CN112581580A (zh) * | 2020-12-24 | 2021-03-30 | 西安翔腾微电子科技有限公司 | 一种基于sysML视图的GPU投影变换模块的TLM装置及操作方法 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
USH1812H (en) * | 1997-10-24 | 1999-11-02 | Sun Microsystems, Inc. | Method for encoding bounding boxes of drawing primitives to be rendered for multi-resolution supersampled frame buffers |
US7336277B1 (en) * | 2003-04-17 | 2008-02-26 | Nvidia Corporation | Per-pixel output luminosity compensation |
US20080106489A1 (en) * | 2006-11-02 | 2008-05-08 | Brown Lawrence G | Systems and methods for a head-mounted display |
US20100156919A1 (en) * | 2008-12-19 | 2010-06-24 | Xerox Corporation | Systems and methods for text-based personalization of images |
US7907792B2 (en) * | 2006-06-16 | 2011-03-15 | Hewlett-Packard Development Company, L.P. | Blend maps for rendering an image frame |
US8144156B1 (en) * | 2003-12-31 | 2012-03-27 | Zii Labs Inc. Ltd. | Sequencer with async SIMD array |
US20130063440A1 (en) * | 2011-09-14 | 2013-03-14 | Samsung Electronics Co., Ltd. | Graphics processing method and apparatus using post fragment shader |
TW201351391A (zh) * | 2006-08-11 | 2013-12-16 | Geo Semiconductor Inc | 校正相機之影像失真的校準方法與系統 |
Family Cites Families (103)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4513317A (en) | 1982-09-28 | 1985-04-23 | The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration | Retinally stabilized differential resolution television display |
US5224208A (en) | 1990-03-16 | 1993-06-29 | Hewlett-Packard Company | Gradient calculation for texture mapping |
US5130794A (en) | 1990-03-29 | 1992-07-14 | Ritchey Kurtis J | Panoramic display system |
US5422653A (en) | 1993-01-07 | 1995-06-06 | Maguire, Jr.; Francis J. | Passive virtual reality |
US5602391A (en) | 1995-02-23 | 1997-02-11 | Hughes Electronics | Quincunx sampling grid for staring array |
US5777913A (en) | 1995-12-27 | 1998-07-07 | Ericsson Inc. | Resolution enhancement of fixed point digital filters |
AU2868199A (en) | 1998-02-17 | 1999-08-30 | Sun Microsystems, Inc. | Graphics system with variable resolution super-sampling |
US6496187B1 (en) | 1998-02-17 | 2002-12-17 | Sun Microsystems, Inc. | Graphics system configured to perform parallel sample to pixel calculation |
EP1055199B1 (en) | 1998-02-17 | 2002-05-22 | Sun Microsystems, Inc. | Estimating graphics system performance for polygons |
US6469700B1 (en) | 1998-06-24 | 2002-10-22 | Micron Technology, Inc. | Per pixel MIP mapping and trilinear filtering using scanline gradients for selecting appropriate texture maps |
WO2000011603A2 (en) | 1998-08-20 | 2000-03-02 | Apple Computer, Inc. | Graphics processor with pipeline state storage and retrieval |
JP2000155850A (ja) | 1998-11-20 | 2000-06-06 | Sony Corp | テクスチャ・マッピング装置及びこれを具備したレンダリング装置、並びに情報処理装置 |
US6417861B1 (en) | 1999-02-17 | 2002-07-09 | Sun Microsystems, Inc. | Graphics system with programmable sample positions |
US6781606B2 (en) | 1999-05-20 | 2004-08-24 | Hewlett-Packard Development Company, L.P. | System and method for displaying images using foveal video |
US6731298B1 (en) | 2000-10-02 | 2004-05-04 | Nvidia Corporation | System, method and article of manufacture for z-texture mapping |
JP2002260003A (ja) | 2001-03-02 | 2002-09-13 | Hitachi Ltd | 映像表示装置 |
US6906723B2 (en) | 2001-03-29 | 2005-06-14 | International Business Machines Corporation | Generating partials for perspective corrected texture coordinates in a four pixel texture pipeline |
US6731434B1 (en) | 2001-05-23 | 2004-05-04 | University Of Central Florida | Compact lens assembly for the teleportal augmented reality system |
US7555157B2 (en) | 2001-09-07 | 2009-06-30 | Geoff Davidson | System and method for transforming graphical images |
US7155698B1 (en) | 2001-09-11 | 2006-12-26 | The Regents Of The University Of California | Method of locating areas in an image such as a photo mask layout that are sensitive to residual processing effects |
US7081893B2 (en) | 2001-10-10 | 2006-07-25 | Sony Computer Entertainment America Inc. | System and method for point pushing to render polygons in environments with changing levels of detail |
JP2005506611A (ja) | 2001-10-10 | 2005-03-03 | ソニー・コンピュータ・エンタテインメント・アメリカ・インク | 環境マッピングシステムおよび方法 |
US6738069B2 (en) | 2001-12-31 | 2004-05-18 | Intel Corporation | Efficient graphics state management for zone rendering |
US6906714B2 (en) | 2002-06-21 | 2005-06-14 | Intel Corporation | Accelerated visualization of surface light fields |
US6891548B2 (en) | 2002-08-23 | 2005-05-10 | Hewlett-Packard Development Company, L.P. | System and method for calculating a texture-mapping gradient |
TWI238975B (en) | 2003-02-20 | 2005-09-01 | Via Tech Inc | Method of performing cubic mapping with texturing |
US7619626B2 (en) | 2003-03-01 | 2009-11-17 | The Boeing Company | Mapping images from one or more sources into an image for display |
JP3966832B2 (ja) | 2003-04-28 | 2007-08-29 | 株式会社東芝 | 描画処理装置、及び、描画処理方法 |
US7495638B2 (en) | 2003-05-13 | 2009-02-24 | Research Triangle Institute | Visual display with increased field of view |
EP1496475B1 (en) * | 2003-07-07 | 2013-06-26 | STMicroelectronics Srl | A geometric processing stage for a pipelined graphic engine, corresponding method and computer program product therefor |
US6967663B1 (en) | 2003-09-08 | 2005-11-22 | Nvidia Corporation | Antialiasing using hybrid supersampling-multisampling |
US8085273B2 (en) | 2003-11-19 | 2011-12-27 | Lucid Information Technology, Ltd | Multi-mode parallel graphics rendering system employing real-time automatic scene profiling and mode control |
US8090383B1 (en) | 2004-02-17 | 2012-01-03 | Emigh Aaron T | Method and system for charging for a service based on time spent at a facility |
CN1930587B (zh) | 2004-03-15 | 2011-05-25 | 皇家飞利浦电子股份有限公司 | 图像可视化 |
US7554538B2 (en) | 2004-04-02 | 2009-06-30 | Nvidia Corporation | Video processing, such as for hidden surface reduction or removal |
US7426724B2 (en) | 2004-07-02 | 2008-09-16 | Nvidia Corporation | Optimized chaining of vertex and fragment programs |
US7425966B2 (en) | 2004-10-07 | 2008-09-16 | Nvidia Corporation | Pixel center position displacement |
US7339594B1 (en) | 2005-03-01 | 2008-03-04 | Nvidia Corporation | Optimized anisotropic texture sampling |
JP4660254B2 (ja) | 2005-04-08 | 2011-03-30 | 株式会社東芝 | 描画方法及び描画装置 |
US7289119B2 (en) | 2005-05-10 | 2007-10-30 | Sony Computer Entertainment Inc. | Statistical rendering acceleration |
US7511717B1 (en) | 2005-07-15 | 2009-03-31 | Nvidia Corporation | Antialiasing using hybrid supersampling-multisampling |
US20070018988A1 (en) | 2005-07-20 | 2007-01-25 | Michael Guthe | Method and applications for rasterization of non-simple polygons and curved boundary representations |
JP2007115293A (ja) * | 2005-10-17 | 2007-05-10 | Toshiba Corp | 情報記憶媒体、プログラム、情報再生方法、情報再生装置、データ転送方法、及びデータ処理方法 |
US8300059B2 (en) | 2006-02-03 | 2012-10-30 | Ati Technologies Ulc | Method and apparatus for selecting a mip map level based on a min-axis value for texture mapping |
US8207975B1 (en) | 2006-05-08 | 2012-06-26 | Nvidia Corporation | Graphics rendering pipeline that supports early-Z and late-Z virtual machines |
US7806083B2 (en) * | 2006-07-05 | 2010-10-05 | Boss Technology Systems, Inc. | Livestock blow dryer with air deflectors |
US8406562B2 (en) * | 2006-08-11 | 2013-03-26 | Geo Semiconductor Inc. | System and method for automated calibration and correction of display geometry and color |
US8232991B1 (en) | 2006-11-03 | 2012-07-31 | Nvidia Corporation | Z-test result reconciliation with multiple partitions |
US8233004B1 (en) | 2006-11-06 | 2012-07-31 | Nvidia Corporation | Color-compression using automatic reduction of multi-sampled pixels |
US8149242B2 (en) | 2006-11-10 | 2012-04-03 | Sony Computer Entertainment Inc. | Graphics processing apparatus, graphics library module and graphics processing method |
JP5063990B2 (ja) | 2006-11-15 | 2012-10-31 | 任天堂株式会社 | ゲームプログラムおよびゲーム装置 |
US7876332B1 (en) | 2006-12-20 | 2011-01-25 | Nvidia Corporation | Shader that conditionally updates a framebuffer in a computer graphics system |
JP5268271B2 (ja) | 2007-03-23 | 2013-08-21 | 株式会社東芝 | 画像表示装置および画像表示方法 |
US20090033659A1 (en) | 2007-07-31 | 2009-02-05 | Lake Adam T | Real-time luminosity dependent subdivision |
US8044956B1 (en) | 2007-08-03 | 2011-10-25 | Nvidia Corporation | Coverage adaptive multisampling |
US8441497B1 (en) | 2007-08-07 | 2013-05-14 | Nvidia Corporation | Interpolation of vertex attributes in a graphics processor |
US7916155B1 (en) | 2007-11-02 | 2011-03-29 | Nvidia Corporation | Complementary anti-aliasing sample patterns |
JP5050786B2 (ja) | 2007-11-05 | 2012-10-17 | 富士通セミコンダクター株式会社 | 描画処理装置、描画処理方法および描画処理プログラム |
US8922565B2 (en) | 2007-11-30 | 2014-12-30 | Qualcomm Incorporated | System and method for using a secondary processor in a graphics system |
US8643644B2 (en) | 2008-03-20 | 2014-02-04 | Qualcomm Incorporated | Multi-stage tessellation for graphics rendering |
GB0810311D0 (en) | 2008-06-05 | 2008-07-09 | Advanced Risc Mach Ltd | Graphics processing systems |
US8605087B2 (en) | 2008-07-03 | 2013-12-10 | Nvidia Corporation | Hybrid multisample/supersample antialiasing |
CN102099679A (zh) * | 2008-07-16 | 2011-06-15 | 雷迪奥米特医学公司 | 用于使血液样品溶血和用于测量其至少一个参数的设备 |
US8428326B2 (en) | 2008-10-23 | 2013-04-23 | Immersion Corporation | Systems and methods for ultrasound simulation using depth peeling |
GB0819570D0 (en) | 2008-10-24 | 2008-12-03 | Advanced Risc Mach Ltd | Methods of and apparatus for processing computer graphics |
US20100214294A1 (en) | 2009-02-20 | 2010-08-26 | Microsoft Corporation | Method for tessellation on graphics hardware |
US8330767B2 (en) | 2009-03-24 | 2012-12-11 | Advanced Micro Devices, Inc. | Method and apparatus for angular invariant texture level of detail generation |
US9697641B2 (en) | 2009-10-15 | 2017-07-04 | Nvidia Corporation | Alpha-to-coverage using virtual samples |
US8638342B2 (en) | 2009-10-20 | 2014-01-28 | Apple Inc. | System and method for demosaicing image data using weighted gradients |
US8803902B2 (en) | 2009-12-03 | 2014-08-12 | Intel Corporation | Computing level of detail for anisotropic filtering |
JP5786110B2 (ja) | 2009-12-11 | 2015-09-30 | ライカ バイオシステムズ イメージング インコーポレイテッドAperio Technologies, Inc. | デジタル病理画像分析における信号対雑音比の改善 |
US8606009B2 (en) | 2010-02-04 | 2013-12-10 | Microsoft Corporation | High dynamic range image generation and rendering |
US8619085B2 (en) | 2010-03-08 | 2013-12-31 | Broadcom Corporation | Method and system for compressing tile lists used for 3D rendering |
CN105812827B (zh) | 2010-07-21 | 2019-04-16 | 杜比实验室特许公司 | 用于多层帧兼容视频传输的解码方法 |
WO2012037157A2 (en) | 2010-09-13 | 2012-03-22 | Alt Software (Us) Llc | System and method for displaying data having spatial coordinates |
KR101719485B1 (ko) | 2010-09-20 | 2017-03-27 | 삼성전자주식회사 | 그래픽 처리 유닛에서의 사전 픽셀 제거를 위한 장치 및 방법 |
US8593475B2 (en) | 2010-10-13 | 2013-11-26 | Qualcomm Incorporated | Systems and methods for dynamic procedural texture generation management |
US9122053B2 (en) | 2010-10-15 | 2015-09-01 | Microsoft Technology Licensing, Llc | Realistic occlusion for a head mounted augmented reality display |
US8982136B2 (en) | 2011-05-16 | 2015-03-17 | Qualcomm Incorporated | Rendering mode selection in graphics processing units |
JP5885398B2 (ja) | 2011-05-20 | 2016-03-15 | キヤノン株式会社 | 画像処理装置、画像処理方法 |
US9019280B2 (en) | 2011-07-22 | 2015-04-28 | Qualcomm Incorporated | Area-based rasterization techniques for a graphics processing system |
US10089774B2 (en) | 2011-11-16 | 2018-10-02 | Qualcomm Incorporated | Tessellation in tile-based rendering |
CN105974587B (zh) | 2011-11-24 | 2018-09-28 | 松下知识产权经营株式会社 | 头戴式显示器装置 |
GB2497302B (en) | 2011-12-05 | 2017-04-12 | Advanced Risc Mach Ltd | Methods of and apparatus for processing computer graphics |
US10535185B2 (en) | 2012-04-04 | 2020-01-14 | Qualcomm Incorporated | Patched shading in graphics processing |
US8581929B1 (en) | 2012-06-05 | 2013-11-12 | Francis J. Maguire, Jr. | Display of light field image data using a spatial light modulator at a focal length corresponding to a selected focus depth |
US9495781B2 (en) | 2012-06-21 | 2016-11-15 | Nvidia Corporation | Early sample evaluation during coarse rasterization |
US9424685B2 (en) | 2012-07-31 | 2016-08-23 | Imagination Technologies Limited | Unified rasterization and ray tracing rendering environments |
US9142005B2 (en) | 2012-08-20 | 2015-09-22 | Nvidia Corporation | Efficient placement of texture barrier instructions |
US10176621B2 (en) | 2013-06-10 | 2019-01-08 | Sony Interactive Entertainment Inc. | Using compute shaders as front end for vertex shaders |
US10134102B2 (en) | 2013-06-10 | 2018-11-20 | Sony Interactive Entertainment Inc. | Graphics processing hardware for using compute shaders as front end for vertex shaders |
US10102603B2 (en) | 2013-06-10 | 2018-10-16 | Sony Interactive Entertainment Inc. | Scheme for compressing vertex shader output parameters |
US10096079B2 (en) | 2013-06-10 | 2018-10-09 | Sony Interactive Entertainment Inc. | Fragment shaders perform vertex shader computations |
US10976986B2 (en) | 2013-09-24 | 2021-04-13 | Blackberry Limited | System and method for forwarding an application user interface |
US9710881B2 (en) | 2014-04-05 | 2017-07-18 | Sony Interactive Entertainment America Llc | Varying effective resolution by screen location by altering rasterization parameters |
US9495790B2 (en) | 2014-04-05 | 2016-11-15 | Sony Interactive Entertainment America Llc | Gradient adjustment for texture mapping to non-orthonormal grid |
US9836816B2 (en) | 2014-04-05 | 2017-12-05 | Sony Interactive Entertainment America Llc | Varying effective resolution by screen location in graphics processing by approximating projection of vertices onto curved viewport |
US10438312B2 (en) | 2014-04-05 | 2019-10-08 | Sony Interactive Entertainment LLC | Method for efficient re-rendering objects to vary viewports and under varying rendering and rasterization parameters |
US9652882B2 (en) | 2014-04-05 | 2017-05-16 | Sony Interactive Entertainment America Llc | Gradient adjustment for texture mapping for multiple render targets with resolution that varies by screen location |
US9760113B2 (en) | 2015-02-20 | 2017-09-12 | Sony Interactive Entertainment America Llc | Backward compatibility through use of spoof clock and fine grain frequency control |
US10235219B2 (en) | 2015-07-27 | 2019-03-19 | Sony Interactive Entertainment America Llc | Backward compatibility by algorithm matching, disabling features, or throttling performance |
US11403099B2 (en) | 2015-07-27 | 2022-08-02 | Sony Interactive Entertainment LLC | Backward compatibility by restriction of hardware resources |
US9892024B2 (en) | 2015-11-02 | 2018-02-13 | Sony Interactive Entertainment America Llc | Backward compatibility testing of software in a mode that disrupts timing |
-
2014
- 2014-04-05 US US14/246,066 patent/US9836816B2/en active Active
-
2015
- 2015-03-19 TW TW104108776A patent/TWI578266B/zh active
- 2015-03-23 JP JP2016559961A patent/JP6333405B2/ja active Active
- 2015-03-23 WO PCT/US2015/021984 patent/WO2015153169A1/en active Application Filing
- 2015-03-23 EP EP15772605.0A patent/EP3129975B8/en active Active
- 2015-03-23 EP EP20173018.1A patent/EP3716216A1/en active Pending
- 2015-03-23 KR KR1020167027105A patent/KR101964611B1/ko active IP Right Grant
-
2017
- 2017-12-01 US US15/829,579 patent/US10438319B2/en active Active
-
2018
- 2018-04-24 JP JP2018082884A patent/JP6712366B2/ja active Active
-
2020
- 2020-02-13 JP JP2020022730A patent/JP6903183B2/ja active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
USH1812H (en) * | 1997-10-24 | 1999-11-02 | Sun Microsystems, Inc. | Method for encoding bounding boxes of drawing primitives to be rendered for multi-resolution supersampled frame buffers |
US7336277B1 (en) * | 2003-04-17 | 2008-02-26 | Nvidia Corporation | Per-pixel output luminosity compensation |
US8144156B1 (en) * | 2003-12-31 | 2012-03-27 | Zii Labs Inc. Ltd. | Sequencer with async SIMD array |
US7907792B2 (en) * | 2006-06-16 | 2011-03-15 | Hewlett-Packard Development Company, L.P. | Blend maps for rendering an image frame |
TW201351391A (zh) * | 2006-08-11 | 2013-12-16 | Geo Semiconductor Inc | 校正相機之影像失真的校準方法與系統 |
US20080106489A1 (en) * | 2006-11-02 | 2008-05-08 | Brown Lawrence G | Systems and methods for a head-mounted display |
US20100156919A1 (en) * | 2008-12-19 | 2010-06-24 | Xerox Corporation | Systems and methods for text-based personalization of images |
US20130063440A1 (en) * | 2011-09-14 | 2013-03-14 | Samsung Electronics Co., Ltd. | Graphics processing method and apparatus using post fragment shader |
Also Published As
Publication number | Publication date |
---|---|
TW201601115A (zh) | 2016-01-01 |
KR20160130257A (ko) | 2016-11-10 |
EP3129975A4 (en) | 2017-11-08 |
EP3129975B8 (en) | 2020-06-17 |
US9836816B2 (en) | 2017-12-05 |
JP2018156666A (ja) | 2018-10-04 |
US10438319B2 (en) | 2019-10-08 |
US20150287167A1 (en) | 2015-10-08 |
JP2017515213A (ja) | 2017-06-08 |
EP3716216A1 (en) | 2020-09-30 |
JP6903183B2 (ja) | 2021-07-14 |
US20180089798A1 (en) | 2018-03-29 |
JP6712366B2 (ja) | 2020-06-24 |
JP2020091890A (ja) | 2020-06-11 |
EP3129975B1 (en) | 2020-05-06 |
WO2015153169A1 (en) | 2015-10-08 |
EP3129975A1 (en) | 2017-02-15 |
KR101964611B1 (ko) | 2019-04-02 |
JP6333405B2 (ja) | 2018-05-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI578266B (zh) | 藉由近似頂點至彎曲視埠上的投影在圖形處理中隨螢幕位置變化有效解析度 | |
US11301956B2 (en) | Varying effective resolution by screen location by altering rasterization parameters | |
JP7004759B2 (ja) | 複数のレンダーターゲット内でアクティブカラーサンプルカウントを変更することによりスクリーンの位置によって有効解像度を変動させること | |
JP6563048B2 (ja) | スクリーンの位置によって異なる解像度のターゲットの複数レンダリングのテクスチャ・マッピングの傾き調整 | |
US11302054B2 (en) | Varying effective resolution by screen location by changing active color sample count within multiple render targets |