用于數(shù)字內(nèi)容制作的分層數(shù)據(jù)共享的制作方法
【專利摘要】本發(fā)明提供了利用層級(jí)圖來(lái)渲染三維圖像的系統(tǒng)和方法。訪問(wèn)層級(jí)圖,所述層級(jí)圖包括第一節(jié)點(diǎn)、第二節(jié)點(diǎn)和目標(biāo)節(jié)點(diǎn)。第二節(jié)點(diǎn)和目標(biāo)節(jié)點(diǎn)是第一節(jié)點(diǎn)的后繼。第一節(jié)點(diǎn)包括第一場(chǎng)景描述數(shù)據(jù),第二節(jié)點(diǎn)包括第一變化數(shù)據(jù),所述目標(biāo)節(jié)點(diǎn)包括第二變化數(shù)據(jù)。選擇目標(biāo)節(jié)點(diǎn)以用于計(jì)算。確定目標(biāo)節(jié)點(diǎn)祖先。第一節(jié)點(diǎn)和第二節(jié)點(diǎn)是目標(biāo)節(jié)點(diǎn)的祖先。確定祖先的線性化,線性化包括階。利用第一場(chǎng)景描述數(shù)據(jù)來(lái)初始化場(chǎng)景描述?;诰€性化將第一變化應(yīng)用于場(chǎng)景描述。第二變化應(yīng)用于場(chǎng)景描述以產(chǎn)生最終場(chǎng)景描述。利用最終場(chǎng)景描述來(lái)渲染圖像。
【專利說(shuō)明】用于數(shù)字內(nèi)容制作的分層數(shù)據(jù)共享
【技術(shù)領(lǐng)域】
[0001]本公開(kāi)涉及計(jì)算機(jī)生成場(chǎng)景數(shù)據(jù),尤其涉及利用定向非循環(huán)圖的計(jì)算機(jī)生成場(chǎng)景數(shù)據(jù)。
【背景技術(shù)】
[0002]計(jì)算機(jī)生成動(dòng)畫(huà)通常是通過(guò)渲染圖像序列來(lái)創(chuàng)建的,每個(gè)圖像描繪了由一個(gè)或多個(gè)計(jì)算機(jī)生成對(duì)象(例如人物、一群人、環(huán)境、效果或燈光用具)構(gòu)成的計(jì)算機(jī)生成場(chǎng)景。通常,計(jì)算機(jī)生成圖像圖示出包含相同資產(chǎn)的不同場(chǎng)景。例如,在白天時(shí)候場(chǎng)景可描繪男性人物,并且在夜間時(shí)候不同的場(chǎng)景可以描繪同一人物。在該實(shí)施例中,在白天時(shí)候人物可以是無(wú)胡子的,但是在夜間時(shí)候可具有短須或其它外表差別。
[0003]當(dāng)資產(chǎn)具有在不同場(chǎng)景中具有不同特性時(shí),傳統(tǒng)的用于渲染圖像的技術(shù)需要管理資產(chǎn)的各種實(shí)現(xiàn)。然而,維護(hù)資產(chǎn)的多個(gè)分離的版本提出了挑戰(zhàn)。維護(hù)資產(chǎn)的分離版本的一個(gè)尤其有挑戰(zhàn)性的方面是難以在資產(chǎn)的一些或全部版本中應(yīng)用相同變化的難度。
[0004]返回參考上文的實(shí)施例,通常維護(hù)同一人物的兩個(gè)版本:第一資產(chǎn),其將人物表示為無(wú)胡子的,用在描繪白天時(shí)候的場(chǎng)景中;以及第二資產(chǎn),其將人物表示為具有短須的,用在描繪夜間時(shí)候的場(chǎng)景中。在動(dòng)畫(huà)制作期間對(duì)人物的修改可要求變化應(yīng)用于人物的所有版本。作為實(shí)施例,制作會(huì)需要人物的鼻子和下巴的變化。對(duì)于兩個(gè)人物資產(chǎn)實(shí)現(xiàn)該相同變化是耗時(shí)的且計(jì)算機(jī)密集型的任務(wù)。
[0005]因此,期望使用用于以減少維護(hù)資產(chǎn)的多個(gè)獨(dú)立版本的需要的方式共享數(shù)字內(nèi)容的技術(shù)。
[0006]發(fā)明概述
[0007]描述了利用層級(jí)圖來(lái)渲染三維圖像的過(guò)程。一個(gè)示例過(guò)程可包括訪問(wèn)層級(jí)圖。層級(jí)圖包括第一節(jié)點(diǎn)、第二節(jié)點(diǎn)和目標(biāo)節(jié)點(diǎn)。第二節(jié)點(diǎn)和目標(biāo)節(jié)點(diǎn)是第一節(jié)點(diǎn)的后繼。第一節(jié)點(diǎn)包括第一場(chǎng)景描述數(shù)據(jù),第二節(jié)點(diǎn)包括第一變化數(shù)據(jù),并且目標(biāo)節(jié)點(diǎn)包括第二變化數(shù)據(jù)。接收目標(biāo)節(jié)點(diǎn)的選擇以用于計(jì)算。確定目標(biāo)節(jié)點(diǎn)的祖先。第一節(jié)點(diǎn)和第二節(jié)點(diǎn)是目標(biāo)節(jié)點(diǎn)的祖先。確定目標(biāo)節(jié)點(diǎn)的祖先的線性化。線性化包括目標(biāo)節(jié)點(diǎn)的祖先的階。利用第一節(jié)點(diǎn)的第一場(chǎng)景描述數(shù)據(jù)來(lái)初始化場(chǎng)景描述?;诰€性化將第二節(jié)點(diǎn)的第一變化應(yīng)用于場(chǎng)景描述以產(chǎn)生更新場(chǎng)景描述。將目標(biāo)節(jié)點(diǎn)的第二變化應(yīng)用于更新場(chǎng)景描述以產(chǎn)生最終場(chǎng)景描述?;谧罱K場(chǎng)景描述來(lái)渲染圖像。
[0008]描述了利用層級(jí)圖來(lái)渲染三維圖像的系統(tǒng)和計(jì)算機(jī)可讀存儲(chǔ)媒體。
【專利附圖】
【附圖說(shuō)明】
[0009]通過(guò)參考結(jié)合所附附圖進(jìn)行的下面的說(shuō)明,能夠最佳地理解本申請(qǐng),其中相似的部件可由相似的標(biāo)記表示。
[0010]圖1A-B描繪了根據(jù)各個(gè)實(shí)施方案的可利用分級(jí)數(shù)據(jù)共享來(lái)渲染的示例性的計(jì)算機(jī)生成圖像。[0011 ] 圖2示出了用于內(nèi)容制作的示例性的層級(jí)圖。
[0012]圖3示出了用于內(nèi)容制作的另一示例性的層級(jí)圖。
[0013]圖4示出了利用層級(jí)圖來(lái)渲染三維圖像的示例性過(guò)程。
[0014]圖5示出了利用層級(jí)圖來(lái)渲染三維圖像的示例性過(guò)程。
[0015]圖6示出了示例性的計(jì)算系統(tǒng)。
[0016]發(fā)明詳述
[0017]提供了下面的說(shuō)明書(shū)以使本領(lǐng)域普通技術(shù)人員能夠?qū)崿F(xiàn)和利用各個(gè)實(shí)施方案。具體的設(shè)備、技術(shù)和應(yīng)用的描述僅作為實(shí)施例被提供。對(duì)本文所描述的實(shí)施例的各種改進(jìn)對(duì)于本領(lǐng)域普通技術(shù)人員而言將是顯而易見(jiàn)的,并且本文限定的一般性原理可應(yīng)用于其它實(shí)施例和應(yīng)用,而不偏離本技術(shù)的精神和范圍。因此,所公開(kāi)的技術(shù)不旨在局限于本文描述和圖示的實(shí)施例,而是與權(quán)利要求相一致的范圍相符合。
[0018]為了描述的目的,在本公開(kāi)全文中,軟件、軟件模塊、軟件對(duì)象等可描述為執(zhí)行各種功能。然而,本領(lǐng)域普通技術(shù)人員將認(rèn)識(shí)到,軟件不會(huì)主動(dòng)地執(zhí)行任何功能,相反,會(huì)包含能夠在計(jì)算機(jī)處理器上執(zhí)行的指令。因此,雖然本文將軟件描述為執(zhí)行功能,應(yīng)理解為計(jì)算機(jī)處理器或其它計(jì)算設(shè)備通常可通過(guò)執(zhí)行由軟件模塊或?qū)ο筇峁┑挠?jì)算機(jī)指令來(lái)實(shí)施那些在本文屬于軟件模塊或?qū)ο蟮墓δ堋?br>
[0019]計(jì)算機(jī)生成動(dòng)畫(huà)通常是通過(guò)渲染圖像序列而創(chuàng)建的,每個(gè)圖像描繪了由一個(gè)或多個(gè)計(jì)算機(jī)生成資產(chǎn)構(gòu)成的計(jì)算機(jī)生成場(chǎng)景。光源、材料、紋理和其它視覺(jué)效果可與計(jì)算機(jī)生成對(duì)象相關(guān)聯(lián)以創(chuàng)建計(jì)算機(jī)生成場(chǎng)景的逼真視覺(jué)外觀。為了本文論述的目的,計(jì)算機(jī)生成場(chǎng)景通常是指可利用虛擬攝像機(jī)來(lái)拍攝的三維(3D)空間,并且還可一般性地稱為場(chǎng)景。
[0020]下文描述的各個(gè)實(shí)施方案涉及制作數(shù)字內(nèi)容。數(shù)字內(nèi)容可以指的是參數(shù)化場(chǎng)景描述數(shù)據(jù)。場(chǎng)景描述數(shù)據(jù)的部分在多個(gè)場(chǎng)合重復(fù)使用。場(chǎng)合可指的是單獨(dú)的拍攝或成組拍攝?;A(chǔ)數(shù)據(jù)是指資產(chǎn)定義,諸如用于人物、環(huán)境和燈光用具。修改是指應(yīng)用于場(chǎng)景描述數(shù)據(jù)的改動(dòng)。
[0021]圖1A-B描繪了根據(jù)各個(gè)實(shí)施方案的可利用分級(jí)數(shù)據(jù)共享來(lái)渲染的示例性的計(jì)算機(jī)生成圖像。圖1A示出了資產(chǎn),在白天場(chǎng)景下描繪的擬人化獅子角色。動(dòng)畫(huà)師或美術(shù)師可能更愿意使獅子角色在白天場(chǎng)景中出現(xiàn)的一系列拍攝中具有短的面毛以制作白天動(dòng)作。圖1B示出了同一獅子角色,但是是在夜間場(chǎng)景中描繪的。動(dòng)畫(huà)師或美術(shù)師可能更愿意使獅子角色在夜間場(chǎng)景中出現(xiàn)的一系列拍攝中具有長(zhǎng)的面毛以制作夜間動(dòng)畫(huà)。這給予了時(shí)間已消逝的表現(xiàn),允許獅子角色的面毛在一天中生長(zhǎng)。通常地,這需要將兩個(gè)獅子角色維護(hù)為兩個(gè)分離的資產(chǎn),每個(gè)資產(chǎn)具有其自身的特性以及描述資產(chǎn)的數(shù)據(jù)。
[0022]利用分級(jí)數(shù)據(jù)共享,同一獅子資產(chǎn)能夠高效地用于其中獅子角色的視覺(jué)特性基于拍攝而不同的各拍攝。因?yàn)橥毁Y產(chǎn)用作用于在各拍攝中產(chǎn)生獅子角色的各描繪的基礎(chǔ),甚至對(duì)獅子角色進(jìn)行的基本改變,諸如改變獅子角色的面部結(jié)構(gòu)的變化,也可以容易地應(yīng)用于使用獅子資產(chǎn)的所有拍攝。這加速了動(dòng)畫(huà)的制作并且降低了為渲染目的的計(jì)算復(fù)雜度。
[0023]圖2示出了用于內(nèi)容制作的示例性的層級(jí)圖200。層級(jí)圖是定向非循環(huán)圖。層級(jí)圖包括場(chǎng)景描述。場(chǎng)景描述可以是用于描述資產(chǎn)的數(shù)據(jù)格式或語(yǔ)言。場(chǎng)面描述數(shù)據(jù)直接地使用或者傳遞到另一過(guò)程,諸如渲染過(guò)程,以制作圖像或圖像系列。修改或“S (deltas)”用于描述對(duì)場(chǎng)景描述數(shù)據(jù)或其它修改的改動(dòng)。因此,給定場(chǎng)景描述和5集合,能夠生成各種新場(chǎng)景描述。
[0024]層級(jí)圖被限定為動(dòng)畫(huà)制作過(guò)程的部分。層級(jí)圖中的每個(gè)節(jié)點(diǎn)稱為層級(jí)節(jié)點(diǎn),并且包含場(chǎng)景描述數(shù)據(jù)、修改或兩者。圖的每個(gè)層級(jí)可以通過(guò)將來(lái)自進(jìn)入邊緣的內(nèi)容與節(jié)點(diǎn)自身的內(nèi)容合并來(lái)生成場(chǎng)景描述(例如,“層級(jí)”)。在邊緣起始處的節(jié)點(diǎn)可稱為母節(jié)點(diǎn),并且在邊緣末尾處的節(jié)點(diǎn)可稱為子節(jié)點(diǎn)。
[0025]在圖2的實(shí)施例中,基礎(chǔ)節(jié)點(diǎn)202是三個(gè)子節(jié)點(diǎn)的母節(jié)點(diǎn),每個(gè)子節(jié)點(diǎn)都包含用于基礎(chǔ)場(chǎng)景描述數(shù)據(jù)的變化。三個(gè)子節(jié)點(diǎn)是變化節(jié)點(diǎn)204、變化節(jié)點(diǎn)206和變化節(jié)點(diǎn)208?;A(chǔ)節(jié)點(diǎn)202與場(chǎng)景描述數(shù)據(jù)相關(guān)聯(lián)。變化節(jié)點(diǎn)204與標(biāo)記為“模型I”的變化相關(guān)聯(lián)。變化節(jié)點(diǎn)206與標(biāo)記為“模型2”的變化相關(guān)聯(lián)。變化節(jié)點(diǎn)208與標(biāo)記為“模型3”的變化相關(guān)聯(lián)。
[0026]在一個(gè)實(shí)施例中,系統(tǒng)接收請(qǐng)求以在變化節(jié)點(diǎn)204的層級(jí)“變化I”處生成場(chǎng)景描述。節(jié)點(diǎn)204的層級(jí)“變化I”是將“模型I”應(yīng)用于基礎(chǔ)節(jié)點(diǎn)202的場(chǎng)景描述數(shù)據(jù)的結(jié)果。假設(shè)基礎(chǔ)節(jié)點(diǎn)202描述了想要在白天期間描繪為不具有短須的獅子角色資產(chǎn),節(jié)點(diǎn)204的模型I可描述將基礎(chǔ)節(jié)點(diǎn)202的獅子角色變換成具有短須且想要在夜間期間描繪的獅子角色所需的改變。
[0027]在動(dòng)畫(huà)制作過(guò)程中利用該技術(shù),用戶能夠獨(dú)立地工作與基礎(chǔ)節(jié)點(diǎn)和變化。例如,一個(gè)用戶可以負(fù)責(zé)通過(guò)改變角色資產(chǎn)的面部結(jié)構(gòu)來(lái)更新與基礎(chǔ)節(jié)點(diǎn)202相關(guān)聯(lián)的場(chǎng)景描述數(shù)據(jù),而不同的用戶負(fù)責(zé)改變?cè)谧兓?jié)點(diǎn)204中描述的面毛變化的顏色或紋理。
[0028]活性(Liveness)描述了當(dāng)在作為變化的基礎(chǔ)節(jié)點(diǎn)的子節(jié)點(diǎn)的變化處計(jì)算層級(jí)時(shí)可以并入對(duì)基礎(chǔ)節(jié)點(diǎn)做出的改變的構(gòu)思。共享數(shù)據(jù)的活性是通過(guò)在任意時(shí)候重新計(jì)算層級(jí)的能力來(lái)實(shí)現(xiàn)的。當(dāng)計(jì)算與變化相關(guān)聯(lián)的層級(jí)時(shí),對(duì)基礎(chǔ)節(jié)點(diǎn)做出的變化并入到生成的描述數(shù)據(jù)中。為了有效地支持活性,內(nèi)容制作工具和編輯工具可適于傳遞S形式的變化。
[0029]另外,駐留在子節(jié)點(diǎn)處的數(shù)據(jù),諸如變化或描述數(shù)據(jù),可通過(guò)圖升級(jí)。例如,如果制作要求駐留在子節(jié)點(diǎn)處的變化用于所有拍攝,則用戶可以將變化升級(jí)以使其并入到基礎(chǔ)節(jié)點(diǎn)中。這樣,包括基礎(chǔ)節(jié)點(diǎn)的任意層級(jí)計(jì)算將(至少起初)包括升級(jí)后變化。
[0030]圖3示出了用于內(nèi)容制作的示例性的層級(jí)圖300。如圖3所示,層級(jí)節(jié)點(diǎn)可具有多個(gè)母節(jié)點(diǎn),并且可包含場(chǎng)景描述數(shù)據(jù)和修改數(shù)據(jù)。在該實(shí)施例中,基礎(chǔ)302包括場(chǎng)景描述數(shù)據(jù)。節(jié)點(diǎn)304、306和310包括修改數(shù)據(jù)。節(jié)點(diǎn)308包括修改數(shù)據(jù)和場(chǎng)景描述數(shù)據(jù)兩者。
[0031]計(jì)算節(jié)點(diǎn)310 (模型)處的層級(jí)是按如下完成的。該過(guò)程開(kāi)始于基礎(chǔ)節(jié)點(diǎn)302的場(chǎng)景描述數(shù)據(jù)。對(duì)節(jié)點(diǎn)306或308中的哪一個(gè)首先處理做出決策。做出該決策的技術(shù)稱為線性化,在下文進(jìn)行詳細(xì)說(shuō)明。假設(shè)做出決策在節(jié)點(diǎn)308之前處理節(jié)點(diǎn)306,則節(jié)點(diǎn)306的修改數(shù)據(jù)應(yīng)用于基礎(chǔ)節(jié)點(diǎn)302的場(chǎng)景描述數(shù)據(jù),生成第一中間描述數(shù)據(jù)。該中間描述數(shù)據(jù)可存儲(chǔ)在存儲(chǔ)器中。接著,節(jié)點(diǎn)308的修改數(shù)據(jù)和場(chǎng)景描述數(shù)據(jù)應(yīng)用于第一中間描述數(shù)據(jù)以生成第二中間描述數(shù)據(jù)。當(dāng)節(jié)點(diǎn)308的修改數(shù)據(jù)應(yīng)用于第一中間描述數(shù)據(jù)時(shí),其修改了在之前步驟附加的場(chǎng)景描述數(shù)據(jù)。當(dāng)節(jié)點(diǎn)308的場(chǎng)景描述數(shù)據(jù)附加到第一中間結(jié)果時(shí),其不影響現(xiàn)有的場(chǎng)景描述數(shù)據(jù)。相反,其添加了場(chǎng)景描述數(shù)據(jù)。接著,節(jié)點(diǎn)310的修改數(shù)據(jù)應(yīng)用于第二修改數(shù)據(jù)。因此,對(duì)于層級(jí)圖300中的節(jié)點(diǎn)310計(jì)算層級(jí)。
[0032]圖4示出了示例性的過(guò)程400,其用于計(jì)算利用層級(jí)圖渲染三維圖像的層級(jí)。當(dāng)系統(tǒng)檢測(cè)到處理與目標(biāo)節(jié)點(diǎn)相關(guān)聯(lián)的層級(jí)的請(qǐng)求時(shí),過(guò)程開(kāi)始于塊402。目標(biāo)節(jié)點(diǎn)是正在計(jì)算層級(jí)的節(jié)點(diǎn)。在塊404處,系統(tǒng)確定目標(biāo)節(jié)點(diǎn)的層級(jí)祖先節(jié)點(diǎn)集合。這些是目標(biāo)節(jié)點(diǎn)的母節(jié)點(diǎn)、祖母節(jié)點(diǎn)以及其它祖先。
[0033]在塊406處,利用線性化技術(shù)將祖先節(jié)點(diǎn)排序成序列。下面描述了各種線性化技術(shù)。在塊408處,基于層級(jí)祖先節(jié)點(diǎn)集合中的作為序列中第一個(gè)的節(jié)點(diǎn)來(lái)初始化場(chǎng)景描述。這生成了中間描述數(shù)據(jù),該中間描述數(shù)據(jù)可存儲(chǔ)在存儲(chǔ)器中。
[0034]在塊410中,過(guò)程繼續(xù),通過(guò)將層級(jí)祖先節(jié)點(diǎn)集合中的其余祖先節(jié)點(diǎn)按線性化技術(shù)確定的序列連續(xù)地應(yīng)用于中間描述數(shù)據(jù)。層級(jí)祖先節(jié)點(diǎn)可包含場(chǎng)景描述數(shù)據(jù)、S或兩者。在節(jié)點(diǎn)包括節(jié)點(diǎn)的情況下,將S應(yīng)用于中間場(chǎng)景描述數(shù)據(jù)的操作會(huì)失敗。在一個(gè)實(shí)施例中,當(dāng)操作試圖將δ應(yīng)用于非存在數(shù)據(jù)時(shí),應(yīng)用δ的操作失敗。在更具體的實(shí)施例中,當(dāng)中間場(chǎng)景數(shù)據(jù)不包含角色面部時(shí),增加面毛到角色面部的變化失敗。因此,不能對(duì)面毛屬性進(jìn)行修改。如果應(yīng)用δ的操作失敗,則包含失敗的δ的節(jié)點(diǎn)可略過(guò),并且可以在不具有包含失敗δ的節(jié)點(diǎn)的情況下計(jì)算整個(gè)層級(jí)計(jì)算。在一個(gè)實(shí)施例中,如果應(yīng)用δ的操作失敗,則層級(jí)計(jì)算會(huì)停止,并且可將失敗通知用戶。
[0035]在塊412處,將目標(biāo)節(jié)點(diǎn)應(yīng)用于中間描述數(shù)據(jù),得到最終層級(jí)場(chǎng)景描述。在塊414處,利用最終層級(jí)場(chǎng)景描述來(lái)渲染圖像。
[0036]在應(yīng)用δ的次序應(yīng)用最終層級(jí)場(chǎng)景描述的范圍內(nèi),用于線性化的算法是重要的。δ不變的情況可特征化為沖突,因此,線性化用于確定應(yīng)當(dāng)如何解決沖突的修改。
[0037]第一線性化技術(shù)是從為編程語(yǔ)言Dylan開(kāi)發(fā)的“C3母集合線性化”方法得到的。在分級(jí)數(shù)據(jù)共享技術(shù)的背景下,層級(jí)圖扮演了類繼承分層結(jié)構(gòu)的角色。該算法要求用戶或過(guò)程將表明進(jìn)入邊緣的先后次序的注釋添加到層級(jí)圖中。
[0038]第二線性化技術(shù)依賴于與每個(gè)層級(jí)節(jié)點(diǎn)相關(guān)聯(lián)的整數(shù)標(biāo)簽注釋。線性化按標(biāo)簽的降序列出祖先節(jié)點(diǎn),當(dāng)相等標(biāo)簽出現(xiàn)在同一線性化輸入集合中時(shí)為失敗條件。本領(lǐng)域普通技術(shù)人員將理解的是可以應(yīng)用其它線性化技術(shù)。
[0039]圖5示出了利用層級(jí)圖來(lái)渲染三維圖像的示例性過(guò)程。在塊502處,訪問(wèn)層級(jí)圖。層級(jí)圖包括第一節(jié)點(diǎn)、第二節(jié)點(diǎn)和目標(biāo)節(jié)點(diǎn)。第二節(jié)點(diǎn)和目標(biāo)節(jié)點(diǎn)是第一節(jié)點(diǎn)的后繼。第一節(jié)點(diǎn)包括第一場(chǎng)景描述數(shù)據(jù),第二節(jié)點(diǎn)包括第一變化數(shù)據(jù),目標(biāo)節(jié)點(diǎn)包括第二變化數(shù)據(jù)。在一些實(shí)施例中,第一節(jié)點(diǎn)是基礎(chǔ)節(jié)點(diǎn),其是層級(jí)圖的根節(jié)點(diǎn)?;A(chǔ)節(jié)點(diǎn)可與諸如人物、一群人、環(huán)境、效果或燈光用具的資產(chǎn)相關(guān)聯(lián)。
[0040]在塊504處,接收目標(biāo)節(jié)點(diǎn)的選擇以用于計(jì)算。例如,目標(biāo)節(jié)點(diǎn)的選擇可通過(guò)外部渲染過(guò)程或通過(guò)用戶來(lái)進(jìn)行。在塊506處,確定目標(biāo)節(jié)點(diǎn)的祖先。第一節(jié)點(diǎn)和第二節(jié)點(diǎn)目標(biāo)節(jié)點(diǎn)的祖先。
[0041]在塊508處,確定目標(biāo)節(jié)點(diǎn)的祖先的線性化。線性化包括所述目標(biāo)節(jié)點(diǎn)的祖先中的至少一些的排序。在一個(gè)實(shí)施例中,線性化可基于C3母集合線性化技術(shù)。在另一實(shí)施例中,第一節(jié)點(diǎn)包括第一標(biāo)簽,第二節(jié)點(diǎn)包括第二標(biāo)簽。在該實(shí)施例中,祖先的線性化包括:基于其相應(yīng)的標(biāo)簽對(duì)第一節(jié)點(diǎn)和第二節(jié)點(diǎn)排序。在本技術(shù)的一種實(shí)施方式中,用戶可通過(guò)適當(dāng)?shù)卦O(shè)定標(biāo)簽的值來(lái)手動(dòng)地確定哪些節(jié)點(diǎn)應(yīng)當(dāng)在其它節(jié)點(diǎn)之前應(yīng)用。在塊510處,利用第一節(jié)點(diǎn)的第一場(chǎng)景描述數(shù)據(jù)來(lái)初始化場(chǎng)景描述。在一個(gè)實(shí)施例中,初始化基于線性化。
[0042]在塊512處,第二節(jié)點(diǎn)的第一變化應(yīng)用于場(chǎng)景描述?;诰€性化而應(yīng)用第一變化。在一些實(shí)施例中,第二節(jié)點(diǎn)還包括第二場(chǎng)景描述數(shù)據(jù)。在該情況下,第二場(chǎng)景描述數(shù)據(jù)也應(yīng)用于場(chǎng)景描述。這生存了更新場(chǎng)景描述。在塊514處,目標(biāo)節(jié)點(diǎn)的第二變化應(yīng)用于更新場(chǎng)景描述。這生成了最終場(chǎng)景描述。最終場(chǎng)景描述可以是描述資產(chǎn)的數(shù)據(jù)。在塊516處,基于最終場(chǎng)景描述來(lái)渲染圖像。
[0043]圖6示出了能夠用于實(shí)現(xiàn)上述分級(jí)數(shù)據(jù)共享技術(shù)的示例性的動(dòng)畫(huà)系統(tǒng)600。分級(jí)數(shù)據(jù)共享技術(shù)能夠以例如硬件或存儲(chǔ)在非暫態(tài)性計(jì)算機(jī)可讀存儲(chǔ)媒體上的軟件來(lái)實(shí)現(xiàn)。
[0044]動(dòng)畫(huà)系統(tǒng)600能夠配置為從輸入設(shè)備620接收用戶輸入。輸入設(shè)備620可以是接收來(lái)自用戶的輸入并且將其傳輸?shù)絼?dòng)畫(huà)系統(tǒng)600的任何設(shè)備。例如,輸入設(shè)備620可以是鍵盤(pán)、鼠標(biāo)、平板式電腦、觸針等。本領(lǐng)域技術(shù)人員將理解到還可以使用其它類型的輸入設(shè)備。
[0045]動(dòng)畫(huà)系統(tǒng)600能夠配置為將圖形、圖像或動(dòng)畫(huà)輸出到輸出設(shè)備630。輸出設(shè)備630能夠包括任何從動(dòng)畫(huà)系統(tǒng)接收數(shù)據(jù)且將數(shù)據(jù)呈現(xiàn)給用戶的設(shè)備。例如,輸出設(shè)備630可包括液晶顯示器、一組發(fā)光二極管、投影儀等。本領(lǐng)域技術(shù)人員將理解的是還可使用其它類型的輸出設(shè)備。
[0046]動(dòng)畫(huà)系統(tǒng)600可進(jìn)一步包括中央處理單元602。中央處理單元可以包括一個(gè)或多個(gè)處理核。中央處理單元602可與輸入設(shè)備620耦合并且能夠與輸入設(shè)備620通信。雖然動(dòng)畫(huà)系統(tǒng)600圖示出具有一個(gè)中央處理單元602,但是動(dòng)畫(huà)系統(tǒng)600可以包括多個(gè)處理單元。動(dòng)畫(huà)系統(tǒng)600還可包括圖形處理單元604。圖形處理單元604可專用于處理圖形相關(guān)數(shù)據(jù)。圖形處理單元604可包括單個(gè)處理核或多個(gè)處理核。雖然圖示出動(dòng)畫(huà)系統(tǒng)600具有一個(gè)圖形處理單元604,但是動(dòng)畫(huà)系統(tǒng)600可以包括多個(gè)圖形處理單元。中央處理單元602和/或圖形處理單元604可與輸出設(shè)備630耦合并且能夠?qū)?shù)據(jù)傳達(dá)給輸出設(shè)備630。
[0047]在一個(gè)實(shí)施例中,動(dòng)畫(huà)系統(tǒng)600可包括一個(gè)或多個(gè)處理器以及存儲(chǔ)在諸如內(nèi)存或存儲(chǔ)設(shè)備的非暫態(tài)性計(jì)算機(jī)可讀存儲(chǔ)媒體中的指令,當(dāng)通過(guò)一個(gè)或多個(gè)處理器執(zhí)行時(shí),指令利用上述分級(jí)數(shù)據(jù)共享技術(shù)來(lái)執(zhí)行動(dòng)畫(huà)渲染,如上所述。在本文描述的實(shí)施方案的背景下,“非暫態(tài)性計(jì)算機(jī)可讀存儲(chǔ)媒體”可以是能夠收容或存儲(chǔ)由指令執(zhí)行系統(tǒng)、裝置或設(shè)備使用或者與指令執(zhí)行系統(tǒng)、裝置或設(shè)備關(guān)聯(lián)的程序的任何媒體。非暫態(tài)性計(jì)算機(jī)可讀存儲(chǔ)媒體可包括但不限于電子、磁、光、電磁、紅外或半導(dǎo)體系統(tǒng)、裝置或設(shè)備、便攜式計(jì)算機(jī)磁盤(pán)(磁)、隨機(jī)存取存儲(chǔ)器(RAM)(磁)、只讀存儲(chǔ)器(ROM)(磁)、可擦除可編程只讀存儲(chǔ)器(EPROM)(磁)、諸如CD、CD-R、CD-RW、DVD、DVD-R或DVD-RW的便攜式光盤(pán)、或者諸如壓縮閃存卡、安全數(shù)字卡、USB存儲(chǔ)設(shè)備、存儲(chǔ)棒等快擦寫(xiě)存儲(chǔ)器。
[0048]動(dòng)畫(huà)系統(tǒng)600可以包括易失性存儲(chǔ)器606,其是非暫態(tài)性計(jì)算機(jī)可讀存儲(chǔ)媒體,與中央處理單元602通信。易失性存儲(chǔ)器606可包括例如隨機(jī)存取存儲(chǔ)器,諸如動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器或靜態(tài)隨機(jī)存取存儲(chǔ)器,或者任何其它類型的易失性存儲(chǔ)器。易失性存儲(chǔ)器606可用于在動(dòng)畫(huà)系統(tǒng)600操作過(guò)程中存儲(chǔ)數(shù)據(jù)或指令。本領(lǐng)域技術(shù)人員將理解的是還能夠使用其它類型的易失性存儲(chǔ)器。
[0049]動(dòng)畫(huà)系統(tǒng)600還可以包括非易失性存儲(chǔ)器608,其是非暫態(tài)性計(jì)算機(jī)可讀存儲(chǔ)媒體,與中央處理單元602通信。非易失性存儲(chǔ)器608可以包括快擦寫(xiě)存儲(chǔ)器、硬盤(pán)、磁存儲(chǔ)設(shè)備、只讀存儲(chǔ)器等。非易失性存儲(chǔ)器608可用于存儲(chǔ)動(dòng)畫(huà)數(shù)據(jù)、分級(jí)數(shù)據(jù)、計(jì)算機(jī)指令或任何其它信息。本領(lǐng)域技術(shù)人員將理解到還可以使用其它類型的非易失性存儲(chǔ)器。
[0050]動(dòng)畫(huà)系統(tǒng)600不限于上文所描述的設(shè)備、配置和功能。例如,雖然示出了單個(gè)的易失性存儲(chǔ)器606、非易失性存儲(chǔ)器608、中央處理單元602、圖形處理單元604、輸入設(shè)備620和輸出設(shè)備630,可在動(dòng)畫(huà)系統(tǒng)600的內(nèi)部或外部實(shí)現(xiàn)這些設(shè)備中任意多個(gè)設(shè)備。另外,動(dòng)畫(huà)系統(tǒng)600可包括用于訪問(wèn)諸如內(nèi)網(wǎng)或因特網(wǎng)的網(wǎng)絡(luò)上的信息的網(wǎng)絡(luò)訪問(wèn)設(shè)備。本領(lǐng)域技術(shù)人員將理解的是能夠使用動(dòng)畫(huà)系統(tǒng)600的其它配置。
[0051 ] 本文描述了各個(gè)示例性實(shí)施方案。在非限制意義上參考了這些實(shí)施例。提供這些是為了更寬泛地說(shuō)明所公開(kāi)技術(shù)的可應(yīng)用方面??梢赃M(jìn)行各種改變并且可替代等同方案,而不偏離各個(gè)實(shí)施方案的真正主旨和范圍。另外,可進(jìn)行多方面修改以將特定的情形、材料、物理組成、過(guò)程、過(guò)程動(dòng)作或步驟適應(yīng)各個(gè)實(shí)施方案的目標(biāo)、精神或范圍。此外,本領(lǐng)域技術(shù)人員將理解的是,本文所描述和圖示的每一個(gè)單個(gè)的變型例具有可易于與其它多個(gè)實(shí)施方案中的任一個(gè)的特征分離或組合的離散部件和特征,而不偏離各實(shí)施方案的范圍或精神。
【權(quán)利要求】
1.計(jì)算機(jī)實(shí)現(xiàn)方法,利用層級(jí)圖來(lái)渲染三維圖像,所述方法包括: 訪問(wèn)所述層級(jí)圖,所述層級(jí)圖包括第一節(jié)點(diǎn)、第二節(jié)點(diǎn)和目標(biāo)節(jié)點(diǎn),其中所述第二節(jié)點(diǎn)和目標(biāo)節(jié)點(diǎn)是第一節(jié)點(diǎn)的后繼,并且其中,所述第一節(jié)點(diǎn)包括第一場(chǎng)景描述數(shù)據(jù),所述第二節(jié)點(diǎn)包括第一變化數(shù)據(jù),并且所述目標(biāo)節(jié)點(diǎn)包括第二變化數(shù)據(jù); 接收所述目標(biāo)節(jié)點(diǎn)的選擇以用于計(jì)算; 確定所述目標(biāo)節(jié)點(diǎn)的祖先,其中所述目標(biāo)節(jié)點(diǎn)的所述祖先包括所述第一節(jié)點(diǎn)和所述第二節(jié)點(diǎn); 確定所述目標(biāo)節(jié)點(diǎn)的所述祖先的線性化,所述線性化包括所述目標(biāo)節(jié)點(diǎn)的所述祖先的階; 利用所述第一節(jié)點(diǎn)的所述第一場(chǎng)景描述數(shù)據(jù)來(lái)初始化場(chǎng)景描述; 基于所述線性化將所述第二節(jié)點(diǎn)的所述第一變化應(yīng)用于所述場(chǎng)景描述,以產(chǎn)生更新場(chǎng)景描述; 將所述目標(biāo)節(jié)點(diǎn)的所述第二變化應(yīng)用于所述更新場(chǎng)景描述以產(chǎn)生最終場(chǎng)景描述;以及 基于所述最終場(chǎng)景描述來(lái)渲染圖像。
2.如權(quán)利要求1所述的計(jì)算機(jī)實(shí)現(xiàn)方法,其中所述第一節(jié)點(diǎn)是作為根節(jié)點(diǎn)的基礎(chǔ)節(jié)點(diǎn)。
3.如權(quán)利要求1所述的計(jì)算機(jī)實(shí)現(xiàn)方法,其中利用所述第一節(jié)點(diǎn)的所述場(chǎng)景描述數(shù)據(jù)初始化所述場(chǎng)景描述是基于所述線性化。
4.如權(quán)利要求1所述的計(jì)算機(jī)實(shí)現(xiàn)方法,其中所述第二節(jié)點(diǎn)還包括第二場(chǎng)景描述數(shù)據(jù),并且其中所述第二場(chǎng)景描述數(shù)據(jù)應(yīng)用于所述場(chǎng)景描述以產(chǎn)生所述更新場(chǎng)景描述。
5.如權(quán)利要求1所述的計(jì)算機(jī)實(shí)現(xiàn)方法,其中確定所述目標(biāo)節(jié)點(diǎn)的所述祖先的所述線性化包括:基于C3母集合線性化算法來(lái)確定所述目標(biāo)節(jié)點(diǎn)的所述祖先的所述線性化。
6.如權(quán)利要求1所述的計(jì)算機(jī)實(shí)現(xiàn)方法,其中: 所述第一節(jié)點(diǎn)包括第一標(biāo)簽,并且所述第二節(jié)點(diǎn)包括第二標(biāo)簽;以及確定所述目標(biāo)節(jié)點(diǎn)的所述祖先的所述線性化包括:基于所述標(biāo)簽和所述第二標(biāo)簽對(duì)所述第一節(jié)點(diǎn)和所述第二節(jié)點(diǎn)進(jìn)行排序。
7.非暫態(tài)性計(jì)算機(jī)可讀存儲(chǔ)媒體,其包括利用層級(jí)圖來(lái)渲染三維圖像的計(jì)算機(jī)可執(zhí)行指令,所述計(jì)算機(jī)可執(zhí)行指令包括如下指令: 訪問(wèn)所述層級(jí)圖,所述層級(jí)圖包括第一節(jié)點(diǎn)、第二節(jié)點(diǎn)和目標(biāo)節(jié)點(diǎn),其中所述第二節(jié)點(diǎn)和目標(biāo)節(jié)點(diǎn)是第一節(jié)點(diǎn)的后繼,并且其中,所述第一節(jié)點(diǎn)包括第一場(chǎng)景描述數(shù)據(jù),所述第二節(jié)點(diǎn)包括第一變化數(shù)據(jù),并且所述目標(biāo)節(jié)點(diǎn)包括第二變化數(shù)據(jù); 接收所述目標(biāo)節(jié)點(diǎn)的選擇以用于計(jì)算; 確定所述目標(biāo)節(jié)點(diǎn)的祖先,其中所述目標(biāo)節(jié)點(diǎn)的所述祖先包括所述第一節(jié)點(diǎn)和所述第二節(jié)點(diǎn); 確定所述目標(biāo)節(jié)點(diǎn)的所述祖先的線性化,所述線性化包括所述目標(biāo)節(jié)點(diǎn)的所述祖先的階; 利用所述第一節(jié)點(diǎn)的所述第一場(chǎng)景描述數(shù)據(jù)來(lái)初始化場(chǎng)景描述; 基于所述線性化將所述第二節(jié)點(diǎn)的所述第一變化應(yīng)用于所述場(chǎng)景描述,以產(chǎn)生更新場(chǎng)景描述;將所述目標(biāo)節(jié)點(diǎn)的所述第二變化應(yīng)用于所述更新場(chǎng)景描述以產(chǎn)生最終場(chǎng)景描述;以及 基于所述最終場(chǎng)景描述來(lái)渲染圖像。
8.如權(quán)利要求7所述的非暫態(tài)性計(jì)算機(jī)可讀存儲(chǔ)媒體,其中所述第一節(jié)點(diǎn)是作為根節(jié)點(diǎn)的基礎(chǔ)節(jié)點(diǎn)。
9.如權(quán)利要求7所述的非暫態(tài)性計(jì)算機(jī)可讀存儲(chǔ)媒體,其中利用所述第一節(jié)點(diǎn)的所述場(chǎng)景描述數(shù)據(jù)初始化所述場(chǎng)景描述是基于所述線性化。
10.如權(quán)利要求7所述的非暫態(tài)性計(jì)算機(jī)可讀存儲(chǔ)媒體,其中所述第二節(jié)點(diǎn)還包括第二場(chǎng)景描述數(shù)據(jù),并且其中所述第二場(chǎng)景描述數(shù)據(jù)應(yīng)用于所述場(chǎng)景描述以產(chǎn)生所述更新場(chǎng)景描述。
11.如權(quán)利要求7所述的非暫態(tài)性計(jì)算機(jī)可讀存儲(chǔ)媒體,其中確定所述目標(biāo)節(jié)點(diǎn)的所述祖先的所述線性化包括:基于C3母集合線性化算法來(lái)確定所述目標(biāo)節(jié)點(diǎn)的所述祖先的所述線性化。
12.如權(quán)利要求7所述的非暫態(tài)性計(jì)算機(jī)可讀存儲(chǔ)媒體,其中: 所述第一節(jié)點(diǎn)包括第一標(biāo)簽,并且所述第二節(jié)點(diǎn)包括第二標(biāo)簽;以及 確定所述目標(biāo)節(jié)點(diǎn)的所述祖先的所述線性化包括:基于所述標(biāo)簽和所述第二標(biāo)簽對(duì)所述第一節(jié)點(diǎn)和所述第二節(jié)點(diǎn)進(jìn)行排序。
13.利用層級(jí)圖來(lái)渲染三維圖像的裝置,所述裝置包括: 存儲(chǔ)器,其配置為存儲(chǔ)所述層級(jí)圖;以及 一個(gè)或多個(gè)計(jì)算機(jī)處理器,其配置為: 訪問(wèn)所述層級(jí)圖,所述層級(jí)圖包括第一節(jié)點(diǎn)、第二節(jié)點(diǎn)和目標(biāo)節(jié)點(diǎn),其中所述第二節(jié)點(diǎn)和目標(biāo)節(jié)點(diǎn)是第一節(jié)點(diǎn)的后繼,并且其中,所述第一節(jié)點(diǎn)包括第一場(chǎng)景描述數(shù)據(jù),所述第二節(jié)點(diǎn)包括第一變化數(shù)據(jù),并且所述目標(biāo)節(jié)點(diǎn)包括第二變化數(shù)據(jù); 接收所述目標(biāo)節(jié)點(diǎn)的選擇以用于計(jì)算; 確定所述目標(biāo)節(jié)點(diǎn)的祖先,其中所述目標(biāo)節(jié)點(diǎn)的所述祖先包括所述第一節(jié)點(diǎn)和所述第二節(jié)點(diǎn); 確定所述目標(biāo)節(jié)點(diǎn)的所述祖先的線性化,所述線性化包括所述目標(biāo)節(jié)點(diǎn)的所述祖先的階; 利用所述第一節(jié)點(diǎn)的所述第一場(chǎng)景描述數(shù)據(jù)來(lái)初始化場(chǎng)景描述; 基于所述線性化將所述第二節(jié)點(diǎn)的所述第一變化應(yīng)用于所述場(chǎng)景描述,以產(chǎn)生更新場(chǎng)景描述; 將所述目標(biāo)節(jié)點(diǎn)的所述第二變化應(yīng)用于所述更新場(chǎng)景描述以產(chǎn)生最終場(chǎng)景描述;以及 基于所述最終場(chǎng)景描述來(lái)渲染圖像。
14.如權(quán)利要求13所述的裝置,其中所述第一節(jié)點(diǎn)是作為根節(jié)點(diǎn)的基礎(chǔ)節(jié)點(diǎn)。
15.如權(quán)利要求13所述的裝置,其中利用所述第一節(jié)點(diǎn)的所述場(chǎng)景描述數(shù)據(jù)初始化所述場(chǎng)景描述是基于所述線性化。
16.如權(quán)利要求13所述的裝置,其中所述第二節(jié)點(diǎn)還包括第二場(chǎng)景描述數(shù)據(jù),并且其中所述第二場(chǎng)景描述數(shù)據(jù)應(yīng)用于所述場(chǎng)景描述以產(chǎn)生所述更新場(chǎng)景描述。
17.如權(quán)利要求13所述的裝置,其中確定所述目標(biāo)節(jié)點(diǎn)的所述祖先的所述線性化包括:基于C3母集合線性化算法來(lái)確定所述目標(biāo)節(jié)點(diǎn)的所述祖先的所述線性化。
18.如權(quán)利要求13所述的裝置,其中: 所述第一節(jié)點(diǎn)包括第一標(biāo)簽,并且所述第二節(jié)點(diǎn)包括第二標(biāo)簽;以及確定所述目標(biāo)節(jié)點(diǎn)的所述祖先的所述線性化包括:基于所述標(biāo)簽和所述第二標(biāo)簽對(duì)所述第一節(jié)點(diǎn)和所述 第二節(jié)點(diǎn)進(jìn)行排序。
【文檔編號(hào)】G06T13/40GK104050698SQ201410097094
【公開(kāi)日】2014年9月17日 申請(qǐng)日期:2014年3月17日 優(yōu)先權(quán)日:2013年3月15日
【發(fā)明者】P·麥克納尼, E·P·史密斯, R·G·威爾遜, G·赫夫林, J·比爾, J·吉布斯, M·哈姆勒, B·蓋農(nóng) 申請(qǐng)人:夢(mèng)工廠動(dòng)畫(huà)公司