TW200841274A - Quick pixel rendering processing - Google Patents

Quick pixel rendering processing Download PDF

Info

Publication number
TW200841274A
TW200841274A TW096149610A TW96149610A TW200841274A TW 200841274 A TW200841274 A TW 200841274A TW 096149610 A TW096149610 A TW 096149610A TW 96149610 A TW96149610 A TW 96149610A TW 200841274 A TW200841274 A TW 200841274A
Authority
TW
Taiwan
Prior art keywords
sub
processing
screen
thread
vertex
Prior art date
Application number
TW096149610A
Other languages
English (en)
Inventor
Jian Wei
Che-Hui Wu
James M Brown
Original Assignee
Qualcomm Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Publication of TW200841274A publication Critical patent/TW200841274A/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/005General purpose rendering architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing

Description

200841274 九、發明說明: 【發明所屬之技術領域】 本揭示内容一般而言係關於圖像處理,且更特定而言, 係關於在無需一專用硬體圖形加速器之前提下提供快速像 素再現處理之一三維(3D)圖形管線之技術。 【先前技術】 將關於3D物件之資訊轉換成一可顯示之位元映像稱為像 素再現’且需要相當大之記憶體及處理功率。過去,僅可 在功能強大之工作台上獲得3D圖形,而現在通常可在個人 電腦(PC)中找到3D圖形加速器。硬體圖形加速器含有記憶 體(例如,指令隨機存取記憶體(IRAM))及一專業化微處理 器以處理諸多3D再現作業。用於桌面之〇p en gl® (開放 式圖形庫)界定一用於寫入產生3D及2D電腦圖形之應用程 式之應用程式化介面(API)。該API包含用於自基元繪製複 雜三維場景之數百個函數。
OpenGL® ES係該桌面〇penGL®之一子集合,其形成軟 體與圖形之間的一介面。該3D圖形引擎(〇penGL@ES)通常 實施為兩個部分。第一部分包含處理頂點之彼等函數且通 常在數位信號處理(DSP)韌體中實施。第二部分包含用於 像素再現之彼等函數且在一專用硬體圖形加速器中實施。 實施像素再現之第二部分係一習用3D圖形引擎之最後管線 級。最後管線級處理輸入三角形集合以產生該圖形圖像之 一像素表示。然而,該最後管線級通常係引擎中整個31)圖 形管線之效能瓶頸。因此,改良用於像素再現之最後管線 127962.doc 200841274 級之效能(以每秒之像素計)係相當重要。 通常,在像素再現作業期間,需 之相同次序來依序處理每一輸入三角形:、二該等三角形 有多執行緒之處理器利用交錯 ::,阻止-具 角形。 I仃處理來處理一輸入三 此外,該等硬體w形加速器 準之更同版本(例如0penGL@ES】〇 回 用程序組態及定製要求。此外,料硬1)开,核不同之應 針對不同效能要求(訊框速率、勞幕大小、像素速率、三角 &速率寺)而伸縮’以最優化石夕成本及系統功率消耗。 如可合易地看到專用硬體圖形加速器佔據小手持計 算裝置(例如,一行動或蜂巢式電話)中之石夕面積。因此, 一專用硬體圖形加速器藉由包括所使用之專用硬體圖形加 速器及IRAM而增加了手持計算裝置之總體成本。使用一 專用硬體圖形加速器亦藉助DSp產生資料訊務,從而添加 開銷且消耗功率。 口此此項技術中需要在無需一專用硬體圖形處理器之前 才疋下k供更快像素再現處理之一三維(3D)圖形管線之技術。 【發明内容】 本文中闡述在無需一專用硬體圖形加速器之前提下提供 更快像素再現處理一三維(3D)圖形管線之技術。在一實施 例中’ 一三維(3D)圖形管線包含一頂點處理級,其可運作 以輸出一 3D圖形圖像之頂點資訊。一顯示細分級將一顯示 127962.doc 200841274 區域(其上疊加有該輸出頂點資訊 幕,該等子螢幕形成一子螢…分為子螢 行且獨立地處理該子f幕任==表。-像素再現級並 於另-能^ 表中之多個子螢幕任務。 、 心、樣中,一無線裝置具有一且古V»私 緒之數位信號處理器,_由該等_理勃冑處理執行 憶體及一處理器“” &仃緒存取之共享記 处A 4處理盗可運作以藉由
Γ存于共享记忆体中之—子螢幕任務列表中之多個子ί 幕任務中之彼等像素’而在無需一專用圖形加速器之前提 ;下實施像素再現。該子榮幕任務包含一疊加有頂點輸出資 訊之顯示區域之像素之一部分。 下文將更詳細地闡述本發明之各態樣及實施例。 【實施方式】 此處使用詞”實例性,,來意指”用作一實例、例子或例解,,。 本文中闡述為”實例性”之任一實施例或設計皆未必應視為 較其他實施例或設計為佳或有利。 諸多遊戲應用程式需要在一二維(2D)空間(例如,一顯 示螢幕)中顯示3D物件之三維(3D)圖形應用程式。一 2〇圖 形中之像素具有定位,色彩及亮度之特性,而一 3D像素添 加一指示該點處於一虛構Ζ軸上何處之深度特性。紋理隨 著3D像素被組合而形成,該等像素之每一者具有其自己的 深度值。 現參照圖1,圖中顯示一 3D成像設備(通常標示為ι〇)之 一實施例。3D成像設備10包含一通信單元12、一數位信號 處理器(DSP)20、具有一顯示區域18之螢幕I6,一記憶體 127962.doc 200841274 24及輸入/輸出⑽)單元45。共享記憶體24可儲存遊戲應 用程式或者可按用戶所需或為支援設備10之特徵集合而儲 存其他應用程式(亦即:針對使用有線或無限網絡之雙向 通信,及其他軟體應用程式)。1/0翠元45可包含一鍵台, 鍵盤或資料通信璋。榮幕16可運作以在顯示區域18中 2D資訊以及3D圖形。 3D成像設備10可包含以下裝置中之-者··-個人數位助 Ο ( 理(PDA);及一行動、蜂巢式或衛星電話,·-膝上型電 腦;筆記型電腦;平板Pc;手 線通信裝置或類似物。 am U〇t) ’無 現參照圖2_5,在該㈣性實施例巾,麟2〇包含一交 錯多執行緒處理器22。交錯炙批> a上 卢㈣κ 執㈣處判22具有複數個 處理執仃緒(PT) PT1、PT2、 Ρτν卜^ m、PT2、...PTX共享表亍母—處理執行緒(Ρτ) 體。各考不為共旱記憶體24之同一記憶 體。母一處理執行緒1、...χ包令一 I入 相應一個指令26i...26x 集5 、一核心27〗...27χ(處理 κ每-核心27l.·. 27χ之;^及;'暫存器群組 ^ ^ 之輪出與共享記憶體24通 ^。私令26L..26X包含用於執行 耔in#你 ^ 下界疋之作業及用於執 订3D成像設備10之特徵集合(例如, 程式碼。核心27ι··.27χ執行指令26ι·:體)之其他作業的 暫存器群組28^.. 28χ係一通用暫 m - ^ d,, 暫存态集合且係DSP 20或 U處理裔之中心級。該等暫存器群 運算元(通常自記憶體載入),亦即,在^ 28x保存所有 如’算術運算,邏輯運算等)之 "所有運异(例 有、、、Ό果儲存至共享記憶 127962.doc 200841274 體24中之前保存該等結果。 某些卿架構㈣㈣執彳情。⑼, 於四個執行緒,例如.+ λ J具有多 行之處理執行緒。在今實制的情況下’六個並行運 (ΡΤ) ΡΤ1、ΡΤ2實例性實施例中’每-並行執行緒 ⑽叫。每…封·:ΤΧ提供每秒1〇0個百萬指令封包 純旦”: 包可係四(4)個指令、兩⑺個指令(超 二屯里)或僅一個指令。然而,出於效率緣由不㈣ :率此乃因—。之架構移除指令間資料相依性所致之: '用術語執行緒或多執行緒來閣述同時任務執行。替代 一早個執行路徑,可蔣一妒斗/ A I 曰八 '輊式(作業)分解成多個同時執行 t 。在該實例性實施例中,存在一啓動執行緒,复 f要一函數調用(或指令),且通常需要至少兩個自變數? (:該啓動指令之位址,·及⑺-上下文自變數。當—執行 声正在運作及/或正在退出,該執行緒需要能夠做與其他 =執行緒相關之兩個基本工作:⑴獲取_共享資源且阻 止其他執行緒使用該資源;及⑺將訊息安全地發送至盆他 執行緒(例如,已完成的,就緒的等)。 ” 現參照圖4’其中顯示該交錯多執行緒並行處理之—圖 表。在該實例中’存在六(6)個處理執行緒ρτι、ρτ2、 ΡΤ3、ΡΤ4、ΡΤ5及ΡΤ6。第—處理執行緒ρτ i處理—第一指 令集合1。此由核心管線之執行時間線之第__(頂部)列表 示。該核心管線由核心271、..·27χ表示。當第一處理執: 緒PT1處理第—指令集合1時,第二處理執行緒ΡΤ2處理其 127962.doc -10- 200841274 第一指令集合卜此由該執行時間線之第二列表示。因 此,將並行地處理該等第一指令集合i。 第三處理執行緒PT3處理其第一指令集合^第_ = =ΡΤ1及PT2處理其第一指令集合i。此由該核: 二丁時間線之第三列表示。第四處理執行緒PT4處 /、弟-指令集合1。同時’第一、第 緒PT1、PT2及綠占 弟一處理執订 2及PT3、.k績處理其相關聯之第一指+集合卜 此由該核心管線之執行時間線之第四列表示。 一第五處理執行緒PT5處理其第一指令集合i而第一、第 二第第四處理執行緒ρτι、ρτ2、PL及PT4繼續處 ”弟-指令集合1。此由該核心管線之執行時間線之第 ^列表_示°第六處理執行緒ΡΤ6處理其第—指令集合i而第 一、第二、第三、第四及第五處理執行緒ρτι、FT]、 二3、ΡΤ4及ΡΤ5繼續處理其第一指令集合i。此由該核心 :線之執仃時間線之第六列表示。因此,該等處理執行緒 對指令之處理係交錯的。 —現參::圖4之第七列(底部),假設第一處理執行緒⑺已 :T 一第一指令集合1,第一處理執行緒PT1開始處理一第 才曰7集合2而第二、第三、第四、第五及第六處理執行 、ΡΤ3、ΡΤ4、ρΤ5及PT6繼續處理其第一指令集合 1因此,每一處理執行緒ΡΤ1、ΡΤ2、…ΡΤΧ之處理係並 行且交錯的。 七田述所有處理執行緒之交錯處理負擔太重。因此 古兒日月之 Λ 目的,圖5中顯示使用指令26!及262之交錯處理,此 127962.doc -11 - 200841274 乃因其與一互斥相關。一互斥係一同時僅由一個處理執行 緒”擁有”之工具。當一處理執行緒試圖獲取一互斥時,其 鎖定該互斥。另一方面,若該互斥已被鎖定,則彼處理執 行緒停止。當該擁有之執行緒解鎖該互斥時,該停止之執 行緒重啓且獲取該互斥之所有權。此過程在圖5中顯示。 在以第一處理執行緒PT1開始後,指令始於執行非 關鍵碼之步驟S22A。步驟S22A後跟步驟S24A,其中第一 處理執行緒PT1執行一鎖定互斥1指令(假設互斥1已解 鎖)。因此,第一處理執行緒PT1現在擁有互斥1。步驟 S24A後跟步驟S26A,其中執行關鍵碼。步驟S26A後跟步 驟S28A,其中在完成該關鍵碼後,第一處理執行緒PT1執 行一解鎖互斥1指令。此後,第一處理執行緒PT1在步驟 S3 0A處重新開始非關鍵碼之執行。 與第一處理執行緒PT1並行,第二處理執行緒PT2在其 中執行非關鍵碼之步驟S22B處開始指令262。步驟S22B後 跟步驟S24B,其中第二處理執行緒PT2期望在步驟S24B處 鎖定互斥1。然而,互斥1處於一鎖定狀態。因此,第二處 理執行緒PT2之作業停止直到第一處理執行緒PT1在步驟 S28A處解鎖互斥1為止。隨後,開始其中可執行該關鍵碼 之步驟26B。步驟S26B後跟步驟S28B,其中在完成該關鍵 碼之後,第二處理執行緒PT2執行一解鎖互斥1指令。此後 可繼續其他指令。 僅在需要時,使用該互斥工具或另一令牌工具以保證在 不同處理執行緒中對關鍵區段之串行執行。此亦係對執行 127962.doc -12- 200841274 進行串行化’而此意味著當某個碼與其他執行緒執行之碼 發生衝突時,不可執行該碼。由於使用一共享記憶體 24(共享資源),互斥工具係有幫助的。 現參照圖6及7,圖中顯示該3D圖形管線(通常標示為 100)之--般流程及方塊圖之一實施例。3D圖形管線1〇〇 將螢幕16之顯示區域18中之3D表示之整體任務通常劃分為 三(3)個管線級:一頂點處理(VP)級110、一螢幕細分(SSD) 級130及一像素再現(?幻級14〇。於作業中,頂點處理(vp) 級110包含當前在OpenGL®或〇penGL®ES中實施且由一數 位信號處理器(DSP)20處理之所有函數或該等函數一子集 合。以假像方式顯示通至螢幕16之線,此乃因螢幕16並非 3 D圖形管線1 〇 〇之一部分。 VP級110包含模型檢視變換作業112,投影作業114,剔 除作業116,光照及著色作業118,基元組裝作業12〇,裁 剪(亦即:用戶界定之裁剪)作業122,及透視分割及檢視區 作業124。在〇penGL®或〇penGL® ES中明確界定了 Vp級 110之該等作業之每一者。 通常,模型檢視變換作業丨12使用數學運算來將物件模 型置於所需之位置及定向。投影作業丨14使用使近事物更 大及遠事物更小之數學運算。光散將近物件、%製在遠物件 前方。剔除及裁剪作業116及122擯棄不在檢視中之事物。 光照作業118計算表面上光之效應。 在該實例性實施例中,VP級110可藉由一個處理執行緒 〔圖2及3)實施。頂點輸出資訊包含頂點資訊以在顯示區域 127962.doc -13 - 200841274 16中界定一三角形及其位置。該頂點輸出資訊疊加於顯示 區域16上,此乃因顯示區域16之像素包含頂點輪出資訊以 根據OpenGL®、〇penGL® ES或其他圖形庫界定三角形。 螢幕細分(88〇)級130包含將顯示區域18劃分成m*n個子 螢幕之螢幕細分作業132❶顯示區域18由複數個疊加有該 頂點輸出資訊之像素P(圖η)組成。來自vmu〇之頂點= 訊提供針對顯示區域18中之重疊界定三角形⑽如圖 T1及T2)之頂點資訊(例如圖11之VI、V2及V3)。該頂點資 訊可包含頂點坐標及邊緣資訊。通常,每一三角形之頂二 輸出資訊僅係一數學描述集合以界定一封閉區域。該數學 描述集合儲存於共享記憶體24中,以使每一處理執行2 (PT1、PT2、...PTX)可使用該數學描述集合來計算在其自 己的子螢幕任務内之每一像素p(圖n)並決定該像素是否 處在一三角形内部。 圖8A圖解說明疊加於顯示區域18上之頂點輸出資訊。在 螢幕細分(SSD)級130期間,藉由將組成顯示區域18之像素 劃分或分組成MxN個子螢幕任務來細分顯示區域18,如圖 8B中之最佳所見。該ΜχΝ個子螢幕任務係儲存於共享記憶 體24中之MxN個個別任務。SSD級13〇之作業可使用一與 VP級110期間使用之處理執行緒分離之處理執行緒實施。 另一選擇係,可針對相同處理執行緒組合SSD級13〇之作 業與VP級110之作業。 在圖8A中所示之實施例中,將顯示區域18劃分成副個 子螢幕以形成-柵袼,其中购且N>1。出於說明目的, 127962.doc -14 - 200841274 圖9顯示顯示區域18,被劃分成厘乂^^個子螢幕,其中且 NH。箭頭圖解說明掃描或工作流程方向。參照圖⑺,將 顯示區域18”劃分為MxN個子螢幕,其。因 此’顯示區域18”之子螢幕形成一系列行。 f
C 像素再現斤…級丨利包含光柵化、混合及紋理化應用程 式作業142以及隱藏表面移除作業144 '然❿,像素再現級 14〇可包含由0penGL⑧或0penGL@防界定之其他作業、。 PR級140將來自VP級11〇之關於扣物#之資訊轉換成二可 在螢幕16之顯示區域18中顯示之位元映像。職⑽處理 輸入二角形集合以產生一 3D圖形圖像之一 β-典型像素再現_級可首先自—頂點輸U訊列表中 提取一三角形。接下來,該PR級將自該顯示區域提取—像 素且對照該三角形計算該像素以確定其是否在該三角形内 部:若被評估像素處在該三角形内部,則該pR級可藉助來 自该三㈣之對應色彩對該像素實施著色。若被評估之像 素不在該三角形内部’則跳過該像素。然後,該PR級將挑 選顯示區域18中之下一個像素。該⑽針對顯示區域18中 之其他像素重複以上過程直到已針對一三角形評估或處理 所有像素為止。因此’一次一個地處理像素。 一然後’該典型PR級將移至該頂點輸出資訊列表中之下— 三角形並針對當前三角形重複像素評估。 P R級1 4 0以 '一類似方才_ τ田夕An 類似方式處理多個子螢幕或子螢幕任務。 不同之處在於該等子螢慕| 要㈣域歡像素數量較少而 處理執行緒㈣、ΡΤ2、..·Ρτχ)可獨立及並行地處理多個 127962.doc 15 200841274 螢幕目此,PR級14〇之處理時間比一典型級快得 夕此乃因每-子螢幕中有較少像素且可並行地處理多個 子螢幕(其中每一處理執行緒在處理一相應子螢幕中之像 素中皆獨立地工作)。 在該實例性實施例中,使用交錯多執行緒處理器22之一 多個處理執行緒PR1、PR2、…pRX集合處理叹級14〇。用 於PR級140之集合中之執行緒數目可係 Ο 值為X個執行緒。 又夕,、中取大 在作業中,指派給像素再貝 豕I冉現級14G之母—處理執行緒 、…PRXM壬務列表135捕獲 並將其從任務列表135中移卜_ 堂幂任知 中移除。處理執行緒PR1、 PRX集合以交錯並行作業方式處理輸人三角形以 再現子螢幕中之像素y 像供在子螢幕中顯示)。在相二:訊轉換成-位元映 所捕獲子螢幕任務之像素再現作業之後,二=成:對 至任務列表135中之下一可用子榮幕°亥^執订緒移 ξ丨丨卢w 7 & a 赏恭任務。重複該作業直 处了所有子螢幕且完成像素再現級14〇為止。 父錯多執行緒處理器22允 及均-的。作辈h… 丁緒處理成為可伸縮 J作業〇可由下式界定: φ + ^) = φ)+φ) 〇 Στ]-Σό(τ^ ,·及 參照圖12,圖中顯 帮, 厚I丹現的一具有一單個- 形丁之四個早总苔 巧 早1固二角 四個子榮幕之方塊。作業ό處月 々主于螢幕任務Su、 127962.doc -16 - 200841274
Sl2 S21&S22 ’其表示為各自具有一三角形T之一細分部 分⑴之四個⑴子螢幕。因此,作業ό等於子螢幕s"之作業 加上子螢幕su之作業4加上子螢幕Sn之作業4加上子螢 幕S22之作業4。若並行地處理所有作業όι、02、4及A,處 理像素再現級140之總峰值效能係一處理執行緒之峰值效 能乘以所用處理執行緒之數目。子螢幕Sn具有用於三角 形τ之像素之一細分部分Τι。子螢幕^2具有用於三角形τ 之像素之細刀部分丁2。子螢幕Sn具有用於三角形τ之像 素之一細分部分T3。子螢幕S22具有用於三角形丁之像素之 一細分部分T4。出於說明之目的,執行緒之數目為四(4)。 由此,在該實例中,該效能可係一個處理執行緒之效能乘 以處理執行緒之數目。因此,PR級140憑藉其並行處理來 自多個子螢幕中之像素之能力而係一快速像素再現級。 另外了在使用真實應用建立設定槽之後組態]VI及N之 數目,以便可針對不同情況進一步最優化效能。組態Μ及 Ν為靈活性及伸縮性提供另一較大空間。建立設定檔包含 識別處理執行緒之載入或者作業任務之大小或複雜性。建 立叹疋檔亦可包含評估其他分量,例如,與自共享記憶體 24轉移資料及共享記憶體24之記憶體容量相關聯之參數。 精助建立設定檔及調整,可將訊框速率、螢幕大小、像素 速率二角形速率用來改變或變更Μ及Ν及/或變更供在pr 、、及WO中使用之處理執行緒PRl、PR2、· ΡΚχ之數目。剩 餘之處理執行緒PR1、PR2、…PRX用於同時運行之其他應 用程式,例如遊戲_音訊。 127962.doc -17- 200841274 現參照圖13,圖中顯示供3D圖形管線100使用之3D圖形 管線方法200之流程圖。方法200以步驟S202開始,其中實 施頂點處理以產生頂點輸出資訊。步驟S2〇2後跟步驟 S204 ’其中將其中疊加有頂點輸出資訊之顯示區域18細分 為MxN個子螢幕。例如,如在圖8A中之最佳所見,三角形 T1延伸跨越子勞幕Sn、Sn及S22且被細分為圖8B中所示的 其相應之細分部分Tl!、Tl2、TU。因此,圖8B中之任務 列表135圖解說明三角形Τ1&Τ2之細分部分(出於說明之目 的僅顯示兩個三角形)。如可瞭解,可更快地處理任務列 表13 5中來自頂點輸出資訊彼等輸入項,該頂點輸出資訊 的確不具有一與其相關聯之三角形或具有一三角形之一較 小細分部分。因此,在像素再現級14〇在顯示區域18上顯 不一表示該三角形之3D圖像之前,應完成對該三角形之所 有細分部分之處理。 步驟S204後跟步驟S206,其中形成具有或不具有三角形 之子部分之子螢幕任務並將其置於任務列表丨3 5中。步驟 S206後跟步驟MOSi、2082及208Υ,其中Υ係用於像素再現 級140之集合中之處理執行緒(2個或更多個)之數目。在步 驟82081處,第一處理執行緒(下文稱為”執行緒i。獲得(第 一)可用子螢幕任務(圖8B),在步驟821〇1處,處理該子螢 幕任務中之每一像素(尤其是經確定處在一三角形或與該 任務相關聯之三角形部分之内或内部之彼等像素)。步驟 S21〇d^跟步驟S212i,其中做出一是否結束任務列表ns 之確定。若該確定為”是”,則執行緒1之處理結束。否 127962.doc -18- 200841274 ^ X確定為S,則步驟S2121返回至步驟S208,。第 二處理執行緒(下文稱為"執行緒2„)之作#基本上相同。執 订緒2獲得或捕獲任務列表135中之下—可用子螢幕任務。 步驟後跟步驟S21G2,其中處理該子螢幕任務。步驟 S2〇82後跟步驟S21〇2。步驟S21〇2後跟步驟μ%。在步驟 2處做出-任務列表135中是否還有任何更多任務之 確定。若步驟S2122處之確定為,,否”,則該方法結束。否 則,若該確定為,,是",❹驟S2122返回至步驟S2〇82。 步驟S2〇8y藉由執行緒γ獲得或捕獲第⑽可用子榮幕任 務。步驟S208Y後跟步驟S21〇y,其中處理該子螢幕任務。 步驟咖禮跟步驟8212γ,其中做出—任務列表135中是 否還有任何更多任務之確定。若該確定為"否,,,則該方法 結束。否則,若該確定為”是",則步驟Μ%返回至步驟 S208Y 〇 在步驟S21〇1、821〇2及S21〇Y期間執行之處理實施光拇 化、混合、紋理化應用程序作#142及隱藏表面移除作業 144。具體參照圖n,具有一中心點之正方形表示像素p。 某些像素P處在三角形T11内部而有些像素處在三角形T11 外部。每一頂點Vi、V2及V3具有一附有平滑描影之色彩 值。使用線性插值來計算每一像素p處之色彩值。使用頂 點Vi、V2及V3來形成三角形T11且將該三角形置於顯示區 域18内。計算每一像素中心(由處在該正方形中心之黑色 點表示)處之色彩。插入包含一z深度、alpha、霧及紋理之 各種參數。 127962.doc •19- 200841274 再參照圖2-4,在該實例中,存在六⑷個執行緒ρτι、 ΡΤ2、ΡΤ3、PT4、m及ΡΤ6。第一執行緒PT1可用來處理 VP級110。第二執行緒PT2可用來處理88〇級13〇。剩餘之 四個執行緒ΡΤ3、ΡΤ4、ΡΤ5及ΡΤ6可用來並行地處理來自 任務列表135之子螢幕任務。此處,處理執行緒?^^可獲得 第一個可用子螢幕任務u並處理所捕獲之第一子螢幕任 務1,1中之像素。處理執行緒PT4可獲得下一個(第二個)可 Ο Ο 用子螢幕任務1,2且處理所捕獲子螢幕任務丨,2中之像素。 處理執行緒PT5可獲得下一個(第卩個)可用子榮幕任務u 且處理所捕獲子螢幕任務U3中之像素(假設以大於”。 假設Μ為4,處理執行緒ΡΤ6可獲得下一個(第四個)可用 子榮幕任務處理所捕獲子螢幕任務1,Μ中之像素。當 處理執行緒ΡΤ3、ΡΤ4、ρΤ5及ρΤ6完成其各自之子螢幕任 務時,將捕獲並並行地處理額外子螢幕任務直到任務列表 13 5為空。 若一個處理執行绪實施3Μ像素/秒再現,則處理一個像 :需要二0個指令封包。亦即,平均每像素約10。個指
:保迢’、個執行緒中之兩個執行緒用於VP級110及SSD 級130 ’以使剩餘之四個處理執行緒來做該像素再現,此 、 一矛、一專用硬體圖形加速器之效能(12Μ像素/秒)之 四倍之VGA解析度。 ;斤有處理執行緒共享相同記憶體24,故該等處理執 行緒可使用互斤 工具相當有效地(不重複地)共同處理相同 集合之輸入三角形資料(子榮幕任務)。 127962.doc -20- 200841274 像素再現級140係3D圖形管線100之最後管線級。?汉級 140處理輸入三角形列表以產生一 3D圖形圖像之一像素表 示。以上所述3D圖形管線1〇〇改良PR級14〇之效能(以每秒 像素計)。交錯多執行緒處理器22以並行運行以處理任務 列表13 5之處理執行緒之數目之一倍數增加效能。 Γ、 u 該3D圖形管線架構之一優點係其在允許調整數目 方面之靈活性。藉由增加數目M&N,降低像素再現級i4〇 之MIPS要求。由於每一子螢幕變得越來越小,故再現任 務變得越來越簡單。此有助於增加多個處理執行緒之效 能。處理執行緒亦可用於其他同時應用程式,例如音訊。 如可谷易地看到,本文所述用於再現3〇圖形圖像之軟選 實細方案具有一比一專用圖形加速器之硬體實施方案更淳 之效能。與-圖形加速器之—硬體實施方案相比,本文: 述之實施例係靈活且可伸縮。由於本實施例係靈活,故易 於擴展軟體碼以增加新特徵’支援3D圖形標準之更高版本 (例如〇PenGLES U、1·1.··)’及支援不同應用組態及客 戶要求。本實施例之可伸縮特徵允許不同之效能要求(訊 框速率,螢幕大小,像素速率,三角形速㈣),以最優 化碎成本及系統功率消耗。 本實施例亦達成該軟體實施方案與—低成本且低功率處 理15配合使用’替代使用一具有多-GHZ時鐘速率之高端 處理器以達成相同之效能。 在實例性實施例中,本文所述之方法及過程可以一包; 個或多個電腦可執行指令 丁 7私式產品之形式實施; 127962.doc -21 - 200841274 ^軟體、轫體或其任意組合中。當實施於軟體中時, 該電細程式產品可儲存在一電腦可讀媒體上或使用一電腦 可吻媒體傳輪,該電腦可讀媒體包含電腦儲存媒體及電腦 通信媒體。 本文中,術語”電腦儲存媒體,,係指適合於儲存致使該電 腦執行該方法之指令之任何媒體。舉例而言,而不限於 此,該電腦儲存媒體可包括故態記憶體裝置,包含電子記 憶體裝置(例如,RAM、R0M、EFPR〇M及類似物),光學 。己體敁置(例如,光碟(CD)、多樣化數位光碟(dvd)及類 似物)’或磁性記憶體裝置(例如,硬驅動器,快閃驅動 器,磁帶驅動器及類似物),或其他適合儲存該電腦程式 產品之記憶體裝置,或該等記憶體裝置之一組合。 本文中,術語,,電腦通信媒體”係指適合於使用諸如一經 調變載波 '一光學信號、一DC或AC電流及類似手段將該 電腦程式產品從一地點傳輸至另一地點之任何實體介面。 舉例而言,而不限於此,該電腦通信媒體可包括雙絞線, 印刷或扁平電纜,同軸電纜,光纜,數位用戶線(DSL), 或其他有線、無線、或光學串行或並行介面,或其一組 合。 上文對所揭示實施例之闡述旨在使任何熟習此項技術者 皆可利用或使用該揭示内容。熟習此項技術者將易知對該 等實施例之各種修改,且本文所界定之一般原理亦可應用 於其他實施例,此並不背離本發明之精神或範嗜。因此, 本發明並非意欲限定為本文所示之實施例,而是欲賦予其 127962.doc -22- 200841274 與本文所揭示之原理及新穎特徵相一致之最寬廣範略 【圖式簡單說明】 7 依據上文結合該等附圖描述之詳細說明,本揭示内容 態樣及實施例將變得更明瞭,於所有圖式中,相同之2 = 字符識別相應之組件。 ’ 圖1圖解說明一 3D成像設備之一般方塊圖。 圖2圖解說明一與共享記憶體介接之交錯式多執行緒 理器。 、、地 Ο 圖3圖解說明交錯式多執行緒處理器之細節,其中顯示 出每一執行緒之細節。 圖4圖解說明一多執行緒處理器處理使用6個執行緒處理 交錯指令的執行時間與核心管線之圖表。 圖5圖解說明藉由兩個執行緒處理之兩個並行指令集 合0 圖6圖解說明在-實例性3D成像設傷中3d圖形管線之一 般流程圖。 圖7圖解說明-3D圖形管線之過程之_般方塊圖。 圖8A圖解說明被細分為一ΜχΝ栅袼之顯示空間,其中 M>1 且 N>1。 圖8B圖解說明用於處理圖8A之經細分之顯示空間之任 務列表。 圖9圖解說明被細分為一副拇格之顯示空間,其中 M=1 且 Ν>1〇 圖1 〇圖解說明被細分為— ΜχΝ柵袼之顯示空間,其中 127962.doc -23- 200841274 M> 1 且 N= 1 〇 圖11圖解說明一由頂點坐標界定且具有複數個像素之三 角形。 圖12圖解說明用於在一被細分為一集合四個細分區域之 區域中處理三角形的指令作業之圖形表示。 圖13圖解說明使用一多執行緒處理器之3D圖形管線方法 之流程圖。 【主要元件符號說明】 1 (PT1) 處理執行緒 2 (PT2) 處理執行緒 10 3D成像設備 12 通信單元 16 螢幕 18 顯示區域 20 DSP 22 交錯多執行緒處理器 24 記憶體 45 I/O單元 26ι 指令 26x 指令 20! 指令 262 指令 27ι 核心 27x 核心 127962.doc -24- 200841274 28! 暫存器群組 28x 暫存器群組 110 頂點處理級 130 螢幕細分級 135 任務列表 - 140 像素再現級 . 112 模型檢視變換作業 114 投影作業 Γ 116 剔除作業 118 光照及著色作業 120 基元組裝作業 122 裁剪作業 124 透視分割及檢視區作業 132 螢幕細分作業 142 光栅化、混合、紋理化應用程式作業 144 1 隱藏表面移除作業 ΤΙ 三角形 Τ2 三角形 Til 細分部分 ‘ Τ12 細分部分 Τ13 細分部分 ΤΙ 1 三角形 Ρ 像素 τ 三角形 127962.doc -25- 200841274 Τι 細分部分 T2 細分部分 Τ3 細分部分 Τ4 細分部分 S 11 子螢幕任務 S 12 子螢幕任務 S21 子螢幕任務 S22 子螢幕任務 V! 頂點 ν2 頂點 ν3 頂點 Χ(ΡΤΧ) 處理執行緒 127962.doc -26

Claims (1)

  1. 200841274 十、申請專利範圍: 1· 一種三維(3D)圖形管線,其包括·· 一頂點處理級,甘可^ 資訊; 、了運作以輸出一糊形圖像之頂點 訊…“㈣輪出❹資 -子螢幕任二表,為子*幕’該等— 像素再現級,盆可遥从 Ο ,、了運作以並行且獨立地處理該子螢 幕任泰列表中之多個子螢幕任務。 2·如請求項1之管線’其中該像素再現級將-交錯多執行 緒處理器與一隼入夕初如+ 八口 处理執行緒配合使用以便並行 且獨立地處理該等多子螢幕任務中-相應-個子螢幕任 務0 3.如請求項2之管線,其中該交錯多執行緒處理器包含一 用於處理該頂點資訊之處理執行緒。 4·如請求項3之管線’其中該顯示細分級共享用於處理該 頂點資訊之該處理執行緒。 5.如明求項3之官線,其中該顯示細分級使用另一處理執 行緒。 6·如明求項1之官線,其中該像素再現級包含光柵化、混 合及、、文理化作業及隱藏表面移除作業以形成該3D圖形圖 像之一位元映像。 7·如叫求項1之管線,其中該顯示區域與以下裝置中之一 者相關聯··一個人數位助理(PDA),一手掌領航員,一 127962.doc 200841274 行動電話,_ $|f % 腦,一筆^ 一衛星電話,一膝上型電 筆兄型電腦及一平板Pc。 8· —種方法,其包括: 對頂點物件進行頂點處理以輸出一三維 之頂點資訊; * 將該輸出頂點資訊疊加於一顯示區域上; Γ L 分成複數個子f幕以形成—任務列表 之子螢幕任務,該顯示區域具有像素;及 在該任務列表中多個 ^ ^ 夕于螢幕任務中並行且獨立地像 素再現彼等像素。 > 9·如清求項8之方法,苴中_ # | ® a ,、f u亥像素再現步驟包含以下步 »鄉· 藉由父錯多執行緒處理哭之一卢师批/ 定纺杠I丨 處理執行緒捕獲及鎖 二 列表中一相應一個可用子螢幕任務; 當被捕獲時,獨立地處理該相應 幕 等像素,·及 丁跫綦任務之彼 針對每-後續可用子螢幕任務,藉 處理写夕甘μ α x 乂錯夕執仃緒 。之八他執行緒重複該捕獲並鎖 驟。 ~ 乂鄉及该處理步 10如請求項9 $方、、土 貝9之方法,其中該頂點處 驟·· 少鄉包含以下步 藉由该交錯多執行緒處理器之另一 等頂點物件以形成該頂點資訊輸出。執行緒處理該 H·如凊求項10之方法,其中該劃分步驟 3與该頂點處理 127962.doc 200841274 步驟共享該另一處理執行緒之步驟。 12·如請求項8之方法,其中該像素再現步驟包含 驟·光柵化、混合及紋理化每一 V 、又理化母子螢幕任務之彼等德参 直到該任務列表為* 寺像素 衣馬王以形成该3D圖形圖像之一 像。 \ 饥7L映 13. :請求項8之方法,其中該像素再現步驟包含以下步 C 產生-用於在該顯示區域中顯示之位元 區域與以下裝置中之-者相關聯:―個=不 /pnA, lu入数位助理 、—手掌領航員、-行動電話、-蜂巢式電話、 二電話、-膝上型電腦、-筆記型電腦及一平板 14. 種電腦程式產品,:a:包含一且右功伯 ^ -^ ^具有致使一電腦實施以下 作業之指令之電腦可讀媒體: 頂點處理以形成一三維(3D)圖形圖像之輸出頂點資 訊; ' 將唛加有該輸出頂點資訊之顯示區域劃分為子螢幕 以形成-任務列表中之子螢幕任務,該等子螢幕任務具 有像素;及 像素再現以並行且獨立地處理多子螢幕任務之彼等像 素。 15·如μ求項14之電腦程式產品’其中該等用以像素再現之 指令包含用以實施以下作業之指令·· 藉由-交錯多執行緒處理器之一處理執行緒捕獲並鎖 127962.doc 200841274 定該任務列表中一相應一個可用子螢幕任務; 當被該處理執行緒捕獲時,獨立地處理該相應一個子 螢幕任務之彼等像素,·及 針對每後續可用子螢幕任務,藉由該交錯多執行緒 處理為之其他處理執行緒重複該等可運作以捕獲及鎖定 及處理之指令。 16·如請求項15之電腦程式產品,其中該等用以頂點處理之 指令包含可運作以實施以下作業之指令·· 使用該交錯多執彳緒處理器之另-處理執行緒進行頂 點處理以形成該頂點資訊輸出。 17·如明求項16之電腦程式產品,其中該等用以劃分之指令 包含與該等用以頂點處理之指令共享該另—處理執行緒 18.如β月求項17之電腦程式產品,其中該電腦可讀媒體包括 一無線通信裝置之—共享處理器可讀媒體。 G Α如請求項14之電腦程式產品’其中該㈣以像素再現之 指令包含該等用以光柵化、混合及紋理化每-子螢幕任 務之彼等像素以形成該3 D圖形圖像之一位元映像之指 令。 曰 20. —種無線裝置,其包括·· -有複數個處理執行緒之數位信號處理器· -由該等處理執行緒存取之共享記憶體;及’ 處理構件,其可運作以藉由並 於該共享記憶體中之子勞幕 &理一儲存 子螢幕任務列表中之多子鸯幕任務 127962.doc 200841274 中之彼等像素而在無需一專用圖形加速器之前提下實施 像素再現,該子螢幕任務包含一疊加有頂點輸出資訊之 顯示區域之像素之一部分。 21.如請求項20之裝置,其中該裝置包含以下裝置中之一 者:一個人數位助理(PDA)、一手掌領航員、一行動電 話、一蜂巢式電話、一衛星電話、一膝上型電腦、一筆 記型電腦及一平板PC。
    127962.doc
TW096149610A 2006-12-22 2007-12-21 Quick pixel rendering processing TW200841274A (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US11/615,379 US8207972B2 (en) 2006-12-22 2006-12-22 Quick pixel rendering processing

Publications (1)

Publication Number Publication Date
TW200841274A true TW200841274A (en) 2008-10-16

Family

ID=39410479

Family Applications (1)

Application Number Title Priority Date Filing Date
TW096149610A TW200841274A (en) 2006-12-22 2007-12-21 Quick pixel rendering processing

Country Status (8)

Country Link
US (1) US8207972B2 (zh)
EP (1) EP2122575B1 (zh)
JP (1) JP4981923B2 (zh)
KR (1) KR101071073B1 (zh)
CN (1) CN101563712B (zh)
CA (1) CA2670646A1 (zh)
TW (1) TW200841274A (zh)
WO (1) WO2008079984A1 (zh)

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4806653B2 (ja) * 2007-05-18 2011-11-02 Okiセミコンダクタ株式会社 画像処理回路
US20110298787A1 (en) * 2010-06-02 2011-12-08 Daniel Feies Layer composition, rendering, and animation using multiple execution threads
GB2491156B (en) * 2011-05-25 2019-08-07 Advanced Risc Mach Ltd Processing pipeline control
US9727385B2 (en) 2011-07-18 2017-08-08 Apple Inc. Graphical processing unit (GPU) implementing a plurality of virtual GPUs
US8902228B2 (en) 2011-09-19 2014-12-02 Qualcomm Incorporated Optimizing resolve performance with tiling graphics architectures
KR101321600B1 (ko) * 2011-09-26 2013-10-28 구태회 렌더링 시스템 및 방법
US9619855B2 (en) 2011-11-18 2017-04-11 Intel Corporation Scalable geometry processing within a checkerboard multi-GPU configuration
US10217270B2 (en) 2011-11-18 2019-02-26 Intel Corporation Scalable geometry processing within a checkerboard multi-GPU configuration
DE102012017629B4 (de) 2012-02-06 2024-02-01 Mbda Deutschland Gmbh Berechnen thermischer Schatten
US10242481B2 (en) 2012-03-15 2019-03-26 Qualcomm Incorporated Visibility-based state updates in graphical processing units
US20130257885A1 (en) * 2012-03-28 2013-10-03 Intel Corporation Low Power Centroid Determination and Texture Footprint Optimization For Decoupled Sampling Based Rendering Pipelines
KR101404489B1 (ko) * 2012-08-08 2014-06-10 한국과학기술정보연구원 멀티쓰레드를 이용한 동영상 실시간 렌더링 방법 및 시스템
US9672584B2 (en) * 2012-09-06 2017-06-06 Imagination Technologies Limited Systems and methods of partial frame buffer updating
CN103871095B (zh) * 2012-12-17 2018-07-17 Arm有限公司 图形处理系统中的隐藏面消除
US9779696B2 (en) * 2013-01-16 2017-10-03 Intel Corporation Serialized access to graphics resources
EP2793127B1 (en) 2013-04-19 2021-11-17 Huawei Technologies Co., Ltd. Method for displaying a 3D scene graph on a screen
US9286649B2 (en) * 2013-05-31 2016-03-15 Qualcomm Incorporated Conditional execution of rendering commands based on per bin visibility information with added inline operations
US9633411B2 (en) 2014-06-26 2017-04-25 Qualcomm Incorporated Load scheme for shared register in GPU
US9767602B2 (en) * 2014-06-30 2017-09-19 Intel Corporation Techniques for reduced pixel shading
GB2530996B (en) 2014-10-06 2016-09-14 Imagination Tech Ltd Depth forwarding in a graphics processing system
US9824413B2 (en) * 2014-11-15 2017-11-21 Intel Corporation Sort-free threading model for a multi-threaded graphics pipeline
KR101680545B1 (ko) * 2015-06-30 2016-11-30 인천대학교 산학협력단 파노라마 동영상 생성 서비스 제공 방법 및 장치
KR20170014617A (ko) * 2015-07-30 2017-02-08 삼성에스디에스 주식회사 3차원 모델의 비트맵 생성 방법과 이를 수행하기 위한 장치 및 시스템
KR20170034727A (ko) 2015-09-21 2017-03-29 삼성전자주식회사 그림자 정보 저장 방법 및 장치, 3d 렌더링 방법 및 장치
WO2018119602A1 (zh) * 2016-12-26 2018-07-05 深圳前海达闼云端智能科技有限公司 一种渲染方法及装置
US10628057B2 (en) * 2017-03-28 2020-04-21 Hewlett Packard Enterprise Development Lp Capability based locking and access of shared persistent memory
US10621932B1 (en) * 2018-10-12 2020-04-14 Novatek Microelectronics Corp. Sub-pixel rendering data conversion apparatus and method
US10803651B2 (en) 2019-03-14 2020-10-13 Texas Instruments Incorporated Methods and apparatus to perform graphics processing on combinations of graphic processing units and digital signal processors
JP7345306B2 (ja) * 2019-07-30 2023-09-15 キヤノン株式会社 画像処理装置、画像処理方法

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4636942A (en) * 1983-04-25 1987-01-13 Cray Research, Inc. Computer vector multiprocessing control
US6469746B1 (en) * 1992-12-28 2002-10-22 Sanyo Electric Co., Ltd. Multi-vision screen adapter
FR2735253B1 (fr) * 1995-06-08 1999-10-22 Hewlett Packard Co Synchronisation de donnees entre plusieurs dispositifs de restitution asynchrones de donnees
US6108460A (en) * 1996-01-02 2000-08-22 Pixelfusion Limited Load balanced image generation
US6016542A (en) * 1997-12-31 2000-01-18 Intel Corporation Detecting long latency pipeline stalls for thread switching
WO1999056249A1 (en) * 1998-04-27 1999-11-04 Interactive Silicon, Inc. Graphics system and method for rendering independent 2d and 3d objects
US6198488B1 (en) 1999-12-06 2001-03-06 Nvidia Transform, lighting and rasterization system embodied on a single semiconductor platform
US6501471B1 (en) * 1999-12-13 2002-12-31 Intel Corporation Volume rendering
US6624817B1 (en) * 1999-12-31 2003-09-23 Intel Corporation Symmetrical accelerated graphics port (AGP)
US7358974B2 (en) * 2001-01-29 2008-04-15 Silicon Graphics, Inc. Method and system for minimizing an amount of data needed to test data against subarea boundaries in spatially composited digital video
US7234144B2 (en) * 2002-01-04 2007-06-19 Microsoft Corporation Methods and system for managing computational resources of a coprocessor in a computing system
JP4158413B2 (ja) 2002-05-22 2008-10-01 ソニー株式会社 画像処理装置
US7200721B1 (en) * 2002-10-09 2007-04-03 Unisys Corporation Verification of memory operations by multiple processors to a shared memory
EP1746541B1 (en) * 2002-10-15 2010-11-24 Nokia Corporation Rendering by using object symmetry
US7633506B1 (en) * 2002-11-27 2009-12-15 Ati Technologies Ulc Parallel pipeline graphics system
US7233335B2 (en) * 2003-04-21 2007-06-19 Nividia Corporation System and method for reserving and managing memory spaces in a memory resource
US6919908B2 (en) * 2003-08-06 2005-07-19 Ati Technologies, Inc. Method and apparatus for graphics processing in a handheld device
US7075541B2 (en) * 2003-08-18 2006-07-11 Nvidia Corporation Adaptive load balancing in a multi-processor graphics processing system
US7239322B2 (en) * 2003-09-29 2007-07-03 Ati Technologies Inc Multi-thread graphic processing system
US7174436B1 (en) * 2003-10-08 2007-02-06 Nvidia Corporation Method and system for maintaining shadow copies of data using a shadow mask bit
US7139003B1 (en) * 2003-12-15 2006-11-21 Nvidia Corporation Methods of processing graphics data including reading and writing buffers
US7053901B2 (en) * 2003-12-11 2006-05-30 Nvidia Corporation System and method for accelerating a special purpose processor
US7460126B2 (en) * 2004-08-24 2008-12-02 Silicon Graphics, Inc. Scalable method and system for streaming high-resolution media
JP4637640B2 (ja) 2005-05-16 2011-02-23 三菱電機株式会社 図形描画装置
JP3853829B1 (ja) * 2005-10-31 2006-12-06 株式会社ソニー・コンピュータエンタテインメント 描画処理装置、並列処理装置および排他制御方法

Also Published As

Publication number Publication date
WO2008079984A1 (en) 2008-07-03
EP2122575A1 (en) 2009-11-25
KR20090082512A (ko) 2009-07-30
US20080150949A1 (en) 2008-06-26
JP2010515122A (ja) 2010-05-06
KR101071073B1 (ko) 2011-10-10
US8207972B2 (en) 2012-06-26
CN101563712A (zh) 2009-10-21
JP4981923B2 (ja) 2012-07-25
CA2670646A1 (en) 2008-07-03
CN101563712B (zh) 2013-03-27
EP2122575B1 (en) 2020-07-29

Similar Documents

Publication Publication Date Title
TW200841274A (en) Quick pixel rendering processing
TWI381328B (zh) 用於三維圖像管線之自動負載平衡之方法、器件、裝置、處理器及非暫時性電腦可讀儲存媒體
TWI282518B (en) Graphic processing apparatus, graphic processing system, graphic processing method and graphic processing program
Le Muzic et al. Illustrative visualization of molecular reactions using omniscient intelligence and passive agents
TWI352936B (en) Real-time collision detection using clipping
US9330466B2 (en) Methods and apparatus for 3D camera positioning using a 2D vanishing point grid
US20160358306A1 (en) Graphics Engine And Environment For Efficient Real Time Rendering Of Graphics That Are Not Pre-Known
US9342322B2 (en) System and method for layering using tile-based renderers
TW201019262A (en) Single pass tessellation
JP2005228320A (ja) 深さ画像基盤の3次元グラフィックデータの高速視覚化方法、装置及びプログラムを記録したコンピュータ可読記録媒体
US10186068B2 (en) Method, apparatus and system for rendering an image
WO2017032233A1 (zh) 一种图像生成方法及装置
CN108198229A (zh) 冗余像素减轻
Gemsa et al. Multirow boundary-labeling algorithms for panorama images
EP2038848B1 (en) Facilitating image-editing operations across multiple perspective planes
CN114546206A (zh) 异形屏显示方法、装置、计算机设备和存储介质
Spindler et al. Camera textures
US10719286B2 (en) Mechanism to present in an atomic manner a single buffer that covers multiple displays
US8669984B2 (en) Methods and apparatus for score-based tile placement
CN108805964B (zh) 基于OpenGL ES的VR机顶盒启动动画制作方法及系统
US11972534B2 (en) Modifying materials of three-dimensional digital scenes utilizing a visual neural network
US8587599B1 (en) Asset server for shared hardware graphic data
US20230141395A1 (en) Modifying materials of three-dimensional digital scenes utilizing a visual neural network
Peddie 1980–1989, Graphics Controllers on Other Platforms
Gassenbauer Illumination Coherence for Light Transport Simulation