利用多重處理的渲染處理裝置及方法
【專利摘要】本發(fā)明涉及利用多重處理的渲染處理方法。上述利用多重處理的渲染處理方法包括:由預(yù)渲染管理部生成以幀為單位對(duì)應(yīng)用程序運(yùn)行窗口進(jìn)行拆分并且按幀對(duì)圖像執(zhí)行渲染處理的渲染處理命令的步驟;根據(jù)所生成的上述渲染處理命令,由渲染管理部生成幀相關(guān)渲染圖像的步驟;以及將生成的上述渲染圖像保存到存儲(chǔ)器的步驟,而用于執(zhí)行上述渲染處理命令生成步驟的操作,拆分為至少一個(gè)操作,用于執(zhí)行上述渲染圖像生成步驟的操作,拆分為至少一個(gè)操作,上述拆分操作能夠在多個(gè)線程得到同步處理。
【專利說(shuō)明】利用多重處理的渲染處理裝置及方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及渲染處理裝置及方法,更具體地涉及在以幀為單位的圖像的處理中拆分渲染處理命令生成部分和制圖處理部分,并在多個(gè)線程中進(jìn)行處理,由此實(shí)現(xiàn)渲染處理性能最大化的利用多重處理的渲染處理裝置及方法。
【背景技術(shù)】
[0002]現(xiàn)有的渲染(rendering)方式為:中央處理器(CPU)不是以單核為準(zhǔn)使用線程,而是在單一進(jìn)程中利用雙緩沖(double buffering)對(duì)圖形進(jìn)行處理或者在性能存在問(wèn)題時(shí)制作一個(gè)左右的線程,以生成整個(gè)畫(huà)面。
[0003]圖1是表示以往的渲染方式的示例圖。如上述圖1所示,在以往的渲染方式中,由于在共享內(nèi)存中僅處理一個(gè)線程(單一操作),因此導(dǎo)致渲染處理速度較慢。
[0004]根據(jù)以往的渲染方式,由于包含在多個(gè)幀的圖像所需處理時(shí)間較長(zhǎng),因此,近年來(lái)安裝于筆記本、電腦、平板電腦或智能手機(jī)等設(shè)備的中央處理器(CPU)沿著如四核以上等多核方向發(fā)展的情況下,需要能夠快速處理圖像的技術(shù)。
【發(fā)明內(nèi)容】
[0005]本發(fā)明的目的在于,提供一種在對(duì)以幀為單位的圖像進(jìn)行處理時(shí),通過(guò)拆分命令生成部分和制圖處理部分并進(jìn)行同步處理,從而能夠提高圖像處理性能的利用多重處理的渲染處理裝置及方法。
[0006]本發(fā)明的目的包括但不限于上述內(nèi)容,本發(fā)明所屬【技術(shù)領(lǐng)域】的普通技術(shù)人員可通過(guò)以下記載內(nèi)容來(lái)明確理解未記載的本發(fā)明的其他目的。
[0007]根據(jù)旨在解決上述課題的本發(fā)明的一個(gè)實(shí)施方式,利用多重處理的渲染處理方法可包括:由預(yù)渲染管理部(Pre-Rendering Manager)生成以巾貞為單位對(duì)應(yīng)用程序運(yùn)行窗口(window)進(jìn)行拆分并且按幀對(duì)圖像執(zhí)行渲染處理的渲染處理命令的步驟;根據(jù)所生成的上述渲染處理命令,由渲染管理部(Rendering Manager)生成巾貞相關(guān)渲染圖像的步驟;以及將生成的上述渲染圖像保存到存儲(chǔ)器的步驟,而用于執(zhí)行上述渲染處理命令生成步驟的操作,可拆分為至少一個(gè)操作,用于執(zhí)行上述渲染圖像生成步驟的操作,可拆分為至少一個(gè)操作,上述拆分操作能夠在多個(gè)線程得到同步處理。
[0008]并且,能夠依次處理按上述幀執(zhí)行的上述拆分操作。
[0009]并且,上述圖像能夠以位圖格式生成。
[0010]并且,上述渲染處理命令生成步驟可包括:由場(chǎng)景圖(Scene Graph)優(yōu)化程序?qū)斎胗袖秩咎幚碚?qǐng)求的預(yù)渲染隊(duì)列進(jìn)行掃描,在幀上的相同坐標(biāo)上連續(xù)輸入有相同圖像生成相關(guān)的多個(gè)處理請(qǐng)求的情況下進(jìn)行控制,使得在上述多個(gè)處理請(qǐng)求中僅有一個(gè)處理請(qǐng)求得到處理的步驟。
[0011]根據(jù)本發(fā)明的另一個(gè)實(shí)施方式,利用多重處理的渲染處理裝置可包括:預(yù)渲染管理部(Pre-Rendering Manager),以巾貞為單位對(duì)應(yīng)用程序運(yùn)行窗口(window)進(jìn)行拆分,生成用于對(duì)至少一個(gè)幀的圖像執(zhí)行渲染處理的渲染處理命令;渲染管理部(R e n d e r i n gManager),根據(jù)上述渲染處理命令,生成幀相關(guān)渲染圖像;以及存儲(chǔ)器,用于保存生成的上述渲染圖像,而在上述預(yù)渲染管理部中生成上述渲染處理命令的操作與在上述渲染管理部中生成上述渲染圖像的操作,能夠分別拆分為至少一個(gè)操作,上述拆分操作能夠在多個(gè)線程得到同步處理。
[0012]并且,能夠依次處理按上述幀執(zhí)行的上述拆分操作。
[0013]并且,上述圖像能夠以位圖格式生成。
[0014]并且,上述預(yù)渲染管理部可包括:預(yù)渲染隊(duì)列,用于接收?qǐng)D像處理事件命令;以及場(chǎng)景圖優(yōu)化程序,其對(duì)上述預(yù)渲染隊(duì)列進(jìn)行掃描,在幀上的相同坐標(biāo)上連續(xù)輸入有相同圖像生成相關(guān)的多個(gè)處理請(qǐng)求的情況下進(jìn)行控制,使得在上述多個(gè)渲染處理請(qǐng)求中僅有一個(gè)處理請(qǐng)求得到處理。
[0015]根據(jù)本發(fā)明的實(shí)施例的利用多重處理的渲染處理裝置及方法,利用多重處理,將以幀為單位的圖像拆分為計(jì)算處理部分和制圖處理部分,在多個(gè)線程進(jìn)行同步處理,由此實(shí)現(xiàn)設(shè)備的圖像處理性能的最大化。
[0016]本發(fā)明的效果包括但不限于上述內(nèi)容,本發(fā)明所屬【技術(shù)領(lǐng)域】的普通技術(shù)人員可通過(guò)以下記載內(nèi)容來(lái)明確理解未記載的本發(fā)明的其他效果。
【專利附圖】
【附圖說(shuō)明】
[0017]圖1是表示以往的渲染方式的示例圖。
[0018]圖2是本發(fā)明的實(shí)施例的利用多重處理的渲染處理裝置的結(jié)構(gòu)圖。
[0019]圖3是應(yīng)用本發(fā)明的一實(shí)施例的利用多重處理的渲染處理方法的窗口的一例。 [0020]圖4是表示本發(fā)明的實(shí)施例的利用多重處理的渲染處理方法的線程處理方法的第一不例圖。
[0021]圖5是表示本發(fā)明的實(shí)施例的利用多重處理的渲染處理方法的線程處理方法的第二示例圖。
[0022]圖6是本發(fā)明的一實(shí)施例的利用多重處理的渲染處理裝置的預(yù)渲染管理部的詳細(xì)結(jié)構(gòu)圖。
[0023]圖7是本發(fā)明的一實(shí)施例的利用多重處理的渲染處理裝置的渲染管理部的詳細(xì)結(jié)構(gòu)圖。附圖標(biāo)記
[0024]100:渲染處理裝置110:渲染引擎
[0025]120:預(yù)渲染管理部130:渲染管理部
[0026]140:存儲(chǔ)器W:窗口
[0027]Fl ~F3:幀
【具體實(shí)施方式】
[0028]以下參照附圖詳細(xì)說(shuō)明的實(shí)施例會(huì)讓本發(fā)明的目的和效果以及實(shí)現(xiàn)這些目的和效果的技術(shù)結(jié)構(gòu)更加明確。在本發(fā)明的說(shuō)明中,認(rèn)為對(duì)共知的功能或結(jié)構(gòu)的詳細(xì)說(shuō)明對(duì)本發(fā)明要旨的解釋產(chǎn)生不必要的消極影響時(shí),將對(duì)此省略詳細(xì)說(shuō)明。另外,后述的術(shù)語(yǔ)是根據(jù)各自在本發(fā)明中的結(jié)構(gòu)、作用及功能來(lái)下定義的,因此根據(jù)不同的使用人和操作人的意圖或慣例,術(shù)語(yǔ)可以有所不同。
[0029]但是,本發(fā)明不局限于以下所公開(kāi)的實(shí)施例,能夠以互不相同的各種方式實(shí)施。本實(shí)施例只用于使本發(fā)明的公開(kāi)內(nèi)容更加完整,有助于本發(fā)明所屬【技術(shù)領(lǐng)域】的普通技術(shù)人員完整地理解本發(fā)明的范疇,本發(fā)明根據(jù)權(quán)利要求書(shū)的范圍而定義,因此應(yīng)基于說(shuō)明書(shū)全文的內(nèi)容來(lái)下定義。
[0030]在說(shuō)明書(shū)全文中,當(dāng)某一個(gè)部分“包括”某一個(gè)結(jié)構(gòu)部件時(shí),如無(wú)特別記載,就意味著還可包括其他結(jié)構(gòu)部件,而不是排除其他結(jié)構(gòu)部件。并且,說(shuō)明書(shū)中所記載的“…組件”、“…部”等術(shù)語(yǔ)意味著處理至少一個(gè)功能或動(dòng)作的單位,這能夠以硬件、軟件或硬件和軟件的結(jié)合來(lái)體現(xiàn)。
[0031]一方面,在本發(fā)明的實(shí)施例中,各個(gè)結(jié)構(gòu)部件、功能塊或單元可由一個(gè)或一個(gè)以上的下級(jí)結(jié)構(gòu)部件來(lái)組成,各個(gè)結(jié)構(gòu)部件所執(zhí)行的電氣、電子、機(jī)械功能能夠以電子電路、集成電路、專業(yè)集成電路(ASIC,Application Specific Integrated Circuit)等共知的各種元件或機(jī)械部件來(lái)體現(xiàn),而且能夠以單個(gè)體現(xiàn)或者以由兩個(gè)以上整合的形態(tài)來(lái)體現(xiàn)。
[0032]并且,所附的塊圖的各塊和流程圖的各步驟的組合可通過(guò)計(jì)算機(jī)程序指令來(lái)執(zhí)行。由于這些計(jì)算機(jī)程序指令可搭載于通用計(jì)算機(jī)、特殊計(jì)算機(jī)或可編程的數(shù)據(jù)處理裝置的其他處理器中,因此通過(guò)計(jì)算機(jī)或能夠運(yùn)行程序的數(shù)據(jù)處理裝置的其他處理器來(lái)執(zhí)行的指令將生成單元,而該單元用于執(zhí)行在塊圖的各塊或流程圖的各步驟說(shuō)明的功能。這些計(jì)算機(jī)程序指令為了以特定方式實(shí)現(xiàn)其功能,可存儲(chǔ)于指向計(jì)算機(jī)或其他可編程的數(shù)據(jù)處理裝置的計(jì)算機(jī)可用存儲(chǔ)器或計(jì)算機(jī)可讀存儲(chǔ)器中。因此,存儲(chǔ)于上述計(jì)算機(jī)可用存儲(chǔ)器或計(jì)算機(jī)可讀存儲(chǔ)器的指令,可生產(chǎn)出包括指令單元的制造類目,上述指令單元用于執(zhí)行在塊圖的各塊或流程圖的各步驟中說(shuō)明的功能。而且,由于計(jì)算機(jī)程序指令還可搭載于計(jì)算機(jī)或其他可編程數(shù)據(jù)處理裝置,因此在計(jì)算機(jī)或其他可編程數(shù)據(jù)處理裝置中執(zhí)行一系列動(dòng)作步驟,并生成由計(jì)算機(jī)運(yùn)行的進(jìn)程,執(zhí)行計(jì)算機(jī)或其他可編程數(shù)據(jù)處理裝置的指令還可提供用于執(zhí)行在塊圖的各塊及流程圖的各步驟說(shuō)明的功能的步驟。
[0033]并且,各塊或各步驟可表示包括用于運(yùn)行特定的(多個(gè))邏輯功能的,一個(gè)以上的可運(yùn)行的指令的模塊、分段或代碼的一部分。例如:接連圖示的兩個(gè)塊或步驟可同步執(zhí)行,而且上述塊或步驟還可以按照相應(yīng)的功能按倒序執(zhí)行。
[0034]以下將參考附圖,對(duì)本發(fā)明的實(shí)施例的利用多重處理的渲染處理裝置及方法進(jìn)行說(shuō)明。
[0035]本發(fā)明中的渲染是指,運(yùn)行應(yīng)用程序,在畫(huà)面標(biāo)示的窗口(window)出現(xiàn)事件時(shí),生成與事件相對(duì)應(yīng)的新的圖像,新建窗口的圖像處理。
[0036]本發(fā)明中的線程是指,在任意程序,尤其是任意流程內(nèi)運(yùn)行的流的單位。
[0037]圖2是本發(fā)明的實(shí)施例的利用多重處理的渲染處理裝置的結(jié)構(gòu)圖。
[0038]如上述圖2所示,上述利用多重處理的渲染處理裝置100包括渲染引擎(rendering engine) 110 和存儲(chǔ)器 140。
[0039]上述存儲(chǔ)器140可保存操作系統(tǒng)(operating system)、應(yīng)用程序(application)和數(shù)據(jù)文件。
[0040]渲染引擎100包括預(yù)渲染管理部(pre-rendering manager) 120和渲染管理部(rendering manager) 130。[0041]預(yù)渲染管理部120執(zhí)行在進(jìn)行渲染之前保存和管理渲染所需的信息,以生成最終渲染命令的功能。
[0042]具體而言,預(yù)渲染管理部(Pre-Rendering Manager)120以巾貞為單位對(duì)應(yīng)用程序的運(yùn)行窗口(window)進(jìn)行拆分,并生成用于對(duì)至少一個(gè)幀的圖像執(zhí)行渲染處理的渲染處理命令。
[0043]圖3是應(yīng)用本發(fā)明的一實(shí)施例的利用多重處理的渲染處理方法的窗口的一例。
[0044]如上述圖3所示,運(yùn)行應(yīng)用程序,將會(huì)顯示運(yùn)行應(yīng)用程序所需的窗口 W,窗口可拆分為互不相同的多個(gè)幀F(xiàn)l?F3。
[0045]在此情況下,以窗口為單位執(zhí)行渲染處理,在特定的幀出現(xiàn)事件時(shí),雖然其他幀保持與當(dāng)前圖像相同的圖像,但需要對(duì)整個(gè)窗口都進(jìn)行渲染處理,因此有可能導(dǎo)致渲染處理速度下降。
[0046]因此在本發(fā)明中,以幀為單位對(duì)窗口進(jìn)行拆分,以幀為單位執(zhí)行圖像處理,由此可加快圖像處理速度。
[0047]一方面,渲染管理部130作為執(zhí)行渲染的模塊,依次對(duì)由預(yù)渲染管理部120生成的渲染處理命令進(jìn)行處理,向所需的緩沖區(qū)(buffer)執(zhí)行制圖(drawing),以生成圖像。
[0048]在此情況下,通過(guò)上述渲染管理部130來(lái)生成的圖像能夠以位圖格式生成。
[0049]在上述預(yù)渲染管理部120生成上述渲染處理命令的操作和在上述渲染管理部130生成上述渲染圖像的操作將分開(kāi)進(jìn)行處理,上述渲染處理命令生成操作和上述渲染圖像生成操作能夠在多個(gè)線程得到處理。
[0050]上述渲染處理命令生成操作包括通過(guò)確認(rèn)渲染處理命令的區(qū)域的計(jì)算和渲染處理對(duì)象等,以生成渲染處理命令的操作等計(jì)算處理部分,上述渲染圖像生成操作相當(dāng)于根據(jù)渲染處理命令來(lái)生成渲染圖像的操作。
[0051]圖4是表示本發(fā)明的實(shí)施例的利用多重處理的渲染處理方法的線程處理方法的第一不例圖。
[0052]上述圖4屬于利用多個(gè)線程來(lái)處理操作的情況,它是表示對(duì)三個(gè)幀相關(guān)圖像進(jìn)行處理的示例圖。
[0053]如上述圖4所示,渲染管理部130針對(duì)圖像1、圖像2和圖像3,將渲染命令生成操作和渲染圖像生成操作分別拆分為計(jì)算1、計(jì)算2和計(jì)算3以及制圖1、制圖2和制圖3,使用兩個(gè)線程進(jìn)行處理。
[0054]使用一個(gè)線程來(lái)處理上述操作時(shí),將有6個(gè)操作依次得到處理。
[0055]但是使用兩個(gè)線程時(shí),將依次執(zhí)行第一處理(計(jì)算I)、第二處理(計(jì)算2和制圖1)、第三處理(計(jì)算3和制圖2)和第四處理(制圖3),由于在特定時(shí)間點(diǎn)(例如:第二處理、第三處理和第四處理),渲染命令生成操作和渲染圖像生成操作在兩個(gè)線程得到同步處理,因此可加快操作處理速度。
[0056]一方面,為了進(jìn)一步加快圖像處理速度,將在上述預(yù)渲染管理部120生成上述渲染處理命令的操作拆分為多個(gè)操作,所拆分的多個(gè)操作能夠在多個(gè)線程得到處理。
[0057]圖5是表示本發(fā)明的實(shí)施例的利用多重處理的渲染處理方法的線程處理方法的第二示例圖。
[0058]如上述圖5所示,渲染管理部130將對(duì)圖像1、圖像2、圖像3的渲染命令處理部分拆分為2個(gè),分別拆分為計(jì)算1-1、計(jì)算1-2、計(jì)算2_1、計(jì)算2_2、計(jì)算3_1和計(jì)算3_2,將值染圖像生成部分拆分為制圖1、制圖2和制圖3。
[0059]在此情況下,如果使用操作(線程I )、操作(線程2)和操作(線程3)對(duì)上述操作進(jìn)行處理,就將依次執(zhí)行第一處理(計(jì)算1-1)、第二處理(計(jì)算1-2和計(jì)算2-1)、第三處理(計(jì)算3-1、計(jì)算2-2、制圖1)、第四處理(計(jì)算3-2、制圖2)和第五處理(制圖3)。
[0060]由于在特定的處理時(shí)間點(diǎn)上,被拆分的多個(gè)渲染處理命令部分和渲染圖像生成部分可在多個(gè)線程得到同步處理,因此能夠進(jìn)一步加快渲染處理速度。
[0061]然后,所生成的上述渲染圖像將保存于存儲(chǔ)器140中。
[0062]以下,將進(jìn)一步對(duì)組成渲染引擎110的預(yù)渲染管理部120和渲染管理部130的結(jié)構(gòu)及功能進(jìn)行詳細(xì)說(shuō)明。
[0063]圖6是本發(fā)明的一實(shí)施例的利用多重處理的渲染處理裝置的預(yù)渲染管理部的詳細(xì)結(jié)構(gòu)圖。
[0064]如上述圖6所示,預(yù)渲染管理部120包括預(yù)渲染隊(duì)列(pre-rendering queue)121、位置調(diào)節(jié)器(location adjuster) 122、多個(gè)場(chǎng)景圖(scene graph, SG) 123、場(chǎng)景圖操縱器(SG manipulator) 124、場(chǎng)景圖優(yōu)化程序(SG optimizer) 125和場(chǎng)景圖處理器(SGcommander) 126。
[0065]上述預(yù)渲染隊(duì)列121執(zhí)行接收渲染處理請(qǐng)求,并生成與之對(duì)應(yīng)的渲染處理命令的功能。向上述預(yù)渲染隊(duì)列121輸入的渲染請(qǐng)求可大分為三種。第一是可通過(guò)元素交界面(element interface)輸入命令。第二是在顯示器的畫(huà)面中顯示有關(guān)特定坐標(biāo)的請(qǐng)求時(shí),可在渲染引擎110中包括的命中測(cè)試管理器(hittest manager)(未圖示)輸入對(duì)于該坐標(biāo)的元素的命令。并且,第三是可在包括制圖界面(drawing interface)和制圖軟件(Painter)的帆布模塊輸入命令。上述命令可包括渲染處理的對(duì)象相關(guān)信息。
[0066]上述位置調(diào)節(jié)器122作為處理位置相關(guān)信息的模塊,執(zhí)行考慮到渲染所需的坐標(biāo)系校正處理及轉(zhuǎn)換(transformation)的漏洞升級(jí)(Update Rect)處理。
[0067]對(duì)于在界面中因窗口重疊而位于后面的窗口的幀中被隱藏的部分,位置調(diào)節(jié)器122可將其從渲染處理區(qū)域排除在外,以使不對(duì)其執(zhí)行渲染處理。
[0068]上述場(chǎng)景圖123用于保存和管理為渲染而需要保持的信息,上述場(chǎng)景圖123相當(dāng)于深度優(yōu)先向無(wú)環(huán)圖(depth first acyclic graph)。并且,場(chǎng)景圖123表示制圖順序和包含關(guān)系,以已更新區(qū)域?yàn)闇?zhǔn),決定需要進(jìn)行渲染的對(duì)象,從已決定的節(jié)點(diǎn)(node)生成渲染處理命令。
[0069]上述場(chǎng)景圖操縱器124用于處理場(chǎng)景圖123的節(jié)點(diǎn)的添加、刪除、插入或移動(dòng)等操作,執(zhí)行變更場(chǎng)景圖123的內(nèi)容的功能。
[0070]上述場(chǎng)景圖優(yōu)化程序125基于場(chǎng)景圖123的內(nèi)容執(zhí)行優(yōu)化。
[0071]尤其是,上述場(chǎng)景圖優(yōu)化程序125對(duì)預(yù)渲染隊(duì)列121進(jìn)行掃描,能夠在幀上的相同坐標(biāo)上連續(xù)輸入有相同圖像生成相關(guān)的多個(gè)處理請(qǐng)求的情況下進(jìn)行控制,使得在上述多個(gè)處理請(qǐng)求中僅有一個(gè)處理請(qǐng)求得到處理。
[0072]上述場(chǎng)景圖處理器126以由位置調(diào)節(jié)器122生成的更新區(qū)域?yàn)闇?zhǔn),生成渲染處理命令。
[0073]上述命中測(cè)試管理器用于處理命中測(cè)試相關(guān)信息,以請(qǐng)求的坐標(biāo)為準(zhǔn),求出被命中的元素。并且,為了使用場(chǎng)景圖123,通過(guò)預(yù)渲染隊(duì)列121來(lái)執(zhí)行請(qǐng)求,接收響應(yīng)并進(jìn)行處理。
[0074]圖7是本發(fā)明的一實(shí)施例的利用多重處理的渲染處理裝置的渲染管理部的詳細(xì)結(jié)構(gòu)圖。
[0075]如上述圖7所示,上述渲染管理部130包括執(zhí)行渲染處理命令所需的渲染隊(duì)列131、執(zhí)行制圖所需的制圖軟件(Painter) 132和作為應(yīng)用程序設(shè)計(jì)接口(API,ApplicationProgramming Interface)庫(kù)的 VG 庫(kù) 133。
[0076]上述制圖軟件(Painter) 132具有用于使用VG庫(kù)133的接口,相當(dāng)于在制圖緩沖區(qū)(drawing buffer)上制圖所需的模塊。通過(guò)上述帆布模塊制圖時(shí),可利用制圖軟件(Painter) 132,直接繪制圖像。
[0077]一方面,利用如上所述的多重處理的渲染方法體現(xiàn)為可通過(guò)各種計(jì)算機(jī)手段來(lái)執(zhí)行的程序命令形態(tài),記錄于具有計(jì)算機(jī)讀寫(xiě)功能的媒體中。上述計(jì)算機(jī)和具有計(jì)算機(jī)讀寫(xiě)功能的上述媒體可包含程序命令、數(shù)據(jù)文件、數(shù)據(jù)結(jié)構(gòu)等的單體或其組合。記錄于上述媒體的程序命令可以是為了本發(fā)明而特別設(shè)計(jì)和組成的程序命令或者是計(jì)算機(jī)軟件領(lǐng)域的普通技術(shù)人員共知的可使用的程序命令。具有計(jì)算機(jī)讀寫(xiě)功能的記錄媒體包括為了能夠保存和執(zhí)行程序命令而特別組成的硬件裝置,例如:硬盤、軟盤以及磁帶等磁性媒體(magneticmedia)、光盤只讀存儲(chǔ)器(CD-ROM)、數(shù)字化視頻光盤(DVD)等光學(xué)媒體(optical media)、光磁軟盤(floptical disk)等磁光介質(zhì)(magneto-optical media)以及只讀內(nèi)存(ROM)、隨機(jī)存儲(chǔ)器(RAM)、閃存等。程序命令不僅包含由編譯器制作的機(jī)械語(yǔ)言代碼,而且還包含利用解釋程序等,能夠在計(jì)算機(jī)中運(yùn)行的高級(jí)語(yǔ)言代碼。
[0078]如上所述,參照附圖對(duì)本發(fā)明的實(shí)施例進(jìn)行了說(shuō)明,但本發(fā)明在未超出本發(fā)明的精神及必需特征的前提下,能夠以不同的特定形態(tài)來(lái)實(shí)現(xiàn)。因此,如上所述的詳細(xì)說(shuō)明僅用于例示,不得在所有方面解釋為有限制。本發(fā)明的真正要求保護(hù)的技術(shù)范圍應(yīng)該由所附的權(quán)利要求書(shū)進(jìn)行定義,本發(fā)明的等價(jià)范圍內(nèi)的所有變更應(yīng)包含于本發(fā)明的范圍內(nèi)。
【權(quán)利要求】
1.一種利用多重處理的渲染處理方法,其特征在于, 包括: 由預(yù)渲染管理部生成以幀為單位對(duì)應(yīng)用程序運(yùn)行窗口進(jìn)行拆分并且按幀對(duì)圖像執(zhí)行渲染處理的渲染處理命令的步驟; 根據(jù)所生成的上述渲染處理命令,由渲染管理部生成幀相關(guān)渲染圖像的步驟; 將生成的上述渲染圖像保存到存儲(chǔ)器的步驟, 用于執(zhí)行上述渲染處理命令生成步驟的操作,拆分為至少一個(gè)操作,用于執(zhí)行上述渲染圖像生成步驟的操作,拆分為至少一個(gè)操作,上述拆分操作能夠在多個(gè)線程得到同步處理。
2.根據(jù)權(quán)利要求1所述的利用多重處理的渲染處理方法,其特征在于,依次處理按上述幀執(zhí)行的上述拆分操作。
3.根據(jù)權(quán)利要求1所述的利用多重處理的渲染處理方法,其特征在于,上述圖像以位圖格式生成。
4.根據(jù)權(quán)利要求1所述的利用多重處理的渲染處理方法,其特征在于,上述渲染處理命令生成步驟包括:由場(chǎng)景圖優(yōu)化程序?qū)斎胗袖秩咎幚碚?qǐng)求的預(yù)渲染隊(duì)列進(jìn)行掃描,在幀上的相同坐標(biāo)上連續(xù)輸入有相同圖像生成相關(guān)的多個(gè)處理請(qǐng)求的情況下進(jìn)行控制,使得在上述多個(gè)處理請(qǐng)求中僅有一個(gè)處理請(qǐng)求得到處理的步驟。
5.一種利用多重處理的渲染處理裝置,其特征在于, 包括: 預(yù)渲染管理部,以幀為單位對(duì)應(yīng)用程序運(yùn)行窗口進(jìn)行拆分,生成用于對(duì)至少一個(gè)幀的圖像執(zhí)行渲染處理的渲染處理命令; 渲染管理部,根據(jù)上述渲染處理命令,生成幀相關(guān)渲染圖像;以及 存儲(chǔ)器,用于保存生成的上述渲染圖像, 在上述預(yù)渲染管理部中生成上述渲染處理命令的操作與在上述渲染管理部中生成上述渲染圖像的操作,分別拆分為至少一個(gè)操作,上述拆分操作能夠在多個(gè)線程得到同步處理。
6.根據(jù)權(quán)利要求5所述的利用多重處理的渲染處理裝置,其特征在于,依次處理按上述幀執(zhí)行的上述拆分操作。
7.根據(jù)權(quán)利要求5所述的利用多重處理的渲染處理裝置,其特征在于,上述圖像以位圖格式生成。
8.根據(jù)權(quán)利要求5所述的利用多重處理的渲染處理裝置,其特征在于,上述預(yù)渲染管理部包括: 預(yù)渲染隊(duì)列,用于接收?qǐng)D像處理事件命令;以及 場(chǎng)景圖優(yōu)化程序,其對(duì)上述預(yù)渲染隊(duì)列進(jìn)行掃描,在幀上的相同坐標(biāo)上連續(xù)輸入有相同圖像生成相關(guān)的多個(gè)處理請(qǐng)求的情況下進(jìn)行控制,使得在上述多個(gè)渲染處理請(qǐng)求中僅有一個(gè)處理請(qǐng)求得到處理。
【文檔編號(hào)】G06F9/38GK103593168SQ201310347920
【公開(kāi)日】2014年2月19日 申請(qǐng)日期:2013年8月9日 優(yōu)先權(quán)日:2012年8月13日
【發(fā)明者】宋和俊 申請(qǐng)人:株式會(huì)社突飛軟件