一種基于部件模型組合的三維云渲染方法及三維云渲染系統(tǒng)的制作方法
【專利摘要】本發(fā)明公開了一種基于部件模型組合的三維云渲染方法及三維云渲染系統(tǒng),渲染時,從云渲染端下載預存的低精度部件模型至用戶終端進行預覽,生成相應的描述文檔上傳至云渲染端用以結(jié)合云渲染端預存的高精度部件模型得到渲染結(jié)果;從云渲染端獲得渲染結(jié)果。本發(fā)明中用戶終端不需要將待渲染模型上傳給云渲染端,僅上傳描述文檔即可,大大減小了數(shù)據(jù)傳輸?shù)臅r間損耗,有利于提高渲染效率,實現(xiàn)實時渲染,且在用戶終端利用低精度部件模型形成描述文檔,在云渲染端渲染時利用高精度部件模型,這樣既避免了形成描述文檔時傳輸高精度部件模型,又能夠利用高精度部件模型渲染,降低了傳輸時間消耗,且保證了渲染精度。
【專利說明】一種基于部件模型組合的三維云渲染方法及三維云渲染系統(tǒng)
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及渲染【技術(shù)領(lǐng)域】,具體涉及一種基于部件模型組合的三維云渲染方法及三維云渲染系統(tǒng)。
【背景技術(shù)】
[0002]三維數(shù)字模型通過3dMax、Maya等三維設計軟件工具制作,并通過本地三維圖形渲染引擎將三維數(shù)字模型渲染成具有物理真實效果的圖片。渲染是將三維幾何模型轉(zhuǎn)換成圖形圖像的一個過程,對一個場景的渲染是一項非常耗時的過程,因為一個場景一般都是由成千上萬個三維面構(gòu)成的,隨著人們對視覺效果的要求越來越高,每一次渲染的分辨率也越來越高,光線和色彩計算條件也越來越復雜,一幅圖片有可能要花上好幾個小時甚至更長時間才能渲染完,單靠單機來提高渲染效率已經(jīng)沒有辦法滿足實際需求。
[0003]盡管計算機集群組作為渲染端指向渲染任務,能夠大大提高渲染速度。但是,由于計算機集成本高,難以普及。近年來,隨著“云計算”的發(fā)展,基于分布式并行集群計算系統(tǒng)的云渲染技術(shù)得到了迅速發(fā)展。云渲染的模式與常規(guī)的云計算類似,通過第三方提供基于集群計算機的作為渲染端,將渲染程序放在遠程的服務器(云渲染端)中渲染,用戶終端通過Web軟件或者直接在本地的渲染程序中點擊一個“云渲染”按鈕,并借助高速互聯(lián)網(wǎng)將渲染指令發(fā)送給云渲染端,同時借助高速互聯(lián)網(wǎng)將渲染任務(待渲染模型)發(fā)送給云渲染端,云渲染端接收到渲染指令和渲染任務后,根據(jù)渲染指令對待渲染模型進行渲染。
[0004]待渲染模型(三維待渲染模型)是云渲染的基礎(chǔ),用于描述待渲染的場景,通常由大量點云數(shù)據(jù)組成。隨著場景更新,待渲染模型中的各個構(gòu)成部件的空間位置、方位角度、材質(zhì)變換等也需要發(fā)生相應的變化?,F(xiàn)有的云渲染方法中,由用戶終端借助高速互聯(lián)網(wǎng)將待渲染模型發(fā)送給云渲染端,其中,待渲染可以是用戶終端生成的,也可以直接從其他外部設備中獲取得到。對于三維渲染,通常一個場景的數(shù)據(jù)量龐大,這樣造成用于傳輸待渲染模型的時間消耗大,無法滿足高速渲染需要,不利于實現(xiàn)實時渲染。
【發(fā)明內(nèi)容】
[0005]針對現(xiàn)有技術(shù)的不足,本發(fā)明提供了一種基于部件模型組合的三維云渲染方法及三維云渲染系統(tǒng)。
[0006]一種基于部件模型組合的三維云渲染方法,包括:
[0007]向云渲染端發(fā)送下載請求;
[0008]接收來自云渲染端預存的低精度部件模型;
[0009]對低精度部件模型進行預覽,并根據(jù)預覽結(jié)果生成相應的描述文檔上傳至云渲染端;
[0010]從云渲染端獲取渲染結(jié)果,所述渲染結(jié)果是云渲染端根據(jù)所述描述文檔結(jié)合云渲染端預存的高精度部件模型進行渲染得到。
[0011]本發(fā)明中云渲染端用于進行數(shù)據(jù)存儲(包括低精度部件模型和高精度部件模型)和渲染。云渲染端可以只包括一臺服務器(即數(shù)據(jù)存儲和渲染由同一臺服務器完成),也可以包括多臺(兩臺或兩臺以上)服務器,其中至少一臺用于數(shù)據(jù)存儲,至少一臺用于渲染。
[0012]該三維云渲染方法是針對用戶終端而言的,是在實施該三維渲染方法時在用戶終端完成的操作過程。
[0013]本發(fā)明的基于部件模型組合的三維云渲染方法,從云渲染端下載預存的低精度部件模型至用戶終端進行預覽,生成相應的描述文檔上傳至云渲染端;在云渲染端根據(jù)所述描述文檔結(jié)合云渲染端預存的高精度部件模型得到渲染結(jié)果并發(fā)送給用戶終端。
[0014]本發(fā)明的三維云渲染方法在用戶終端形成用于描述待渲染模型的描述文檔上傳給云渲染端,云渲染端根據(jù)該描述文檔結(jié)合相應的高精度部件模型完成渲染,并返回給用戶終端。
[0015]與現(xiàn)有技術(shù)相比,本發(fā)明用戶終端不需要將待渲染模型上傳給云渲染端,僅上傳描述文檔即可,大大減小了數(shù)據(jù)傳輸?shù)臅r間損耗,有利于提高渲染效率,實現(xiàn)實時渲染。且預先在云渲染端存儲低精度部件模型和高精度部件模型,在用戶終端利用低精度部件模型形成描述文檔,在云渲染端渲染時利用高精度部件模型,這樣既避免了形成描述文檔時傳輸高精度部件模型,又能夠利用高精度部件模型渲染,保證了渲染精度,且降低傳輸時間消耗。
[0016]對于相同的低精度部件模型,僅下載一次至用戶終端即可,后續(xù)生成描述文檔時直接利用已經(jīng)下載好的低精度部件模型即可,無需再次下載。因此,本發(fā)明的三維云渲染方法,尤其適用于復用率高的應用場合。
[0017]所述的低精度部件模型和高精度部件模型一一對應,相互對應的低精度部件模型和高精度部件模型具有對應的識別信息。
[0018]相互對應的低精度部件模型和高精度部件模型為相同部件的不同精度的版本,以識別信息索引各個低精度部件模型和高精度部件模型,為保證能夠根據(jù)低精度模型確定對應的高精度模型,相互對應的低精度部件模型和高精度部件模型的識別信息也應該相互對應。本發(fā)明中的識別信息可以為ID信息等。在室內(nèi)設計領(lǐng)域,低精度部件模型和高精度部件模型對應的部件包括房間、地板、墻壁、門、窗、家具、家紡、裝飾物、材料貼圖等。
[0019]作為優(yōu)選,預覽過程如下:
[0020]將下載的低精度部件模型組合后進行顯示,并根據(jù)顯示的內(nèi)容調(diào)整各個低精度部件模型的位置得到相應的預覽結(jié)果。通過預覽直接獲取各個低精度部件模型按照不同的位置組合時的整體效果,進而調(diào)整各個低精度部件模型的位置,直至滿足需要。對于各個低精度部件模型的初始位置并無特性要求,由用戶指定。
[0021]所述的描述文檔用于記錄預覽結(jié)果中各個低精度部件模型的識別信息和位置信息,述的位置信息包括坐標信息和角度信息。
[0022]得到的預覽結(jié)果低精度部件模型組合,每個低精度部件模型具有相應的識別信息和位置,因此利用低精度部件模型的識別信息和位置信息即可描述該預覽結(jié)果。
[0023]進一步,通過如下方法獲取渲染結(jié)果:
[0024]根據(jù)描述文檔將對應的高精度部件模型按相應的位置組合,得到待渲染模型,經(jīng)渲染后得到渲染結(jié)果。
[0025]渲染時所需的渲染參數(shù)通常通過用戶終端設定,并與描述文檔一并上傳至云渲染端供渲染使用。所述的渲染參數(shù)包括渲染結(jié)果的分辨率、質(zhì)量級別和輸出格式,可根據(jù)需求設定。
[0026]本發(fā)明還提供了另一種基于部件模型組合的三維云渲染方法,包括:
[0027]接收來自用戶終端的下載請求;
[0028]響應于所述請求,向用戶終端發(fā)送云渲染端預存的低精度部件模型;
[0029]從用戶終端接收描述文檔結(jié)合云渲染端預存的高精度部件模型進行渲染得到渲染結(jié)果,所述描述文檔為在用戶終端對低精度部件進行預覽,并根據(jù)預覽結(jié)果生成;
[0030]發(fā)送渲染結(jié)果給用戶終端。
[0031]該三維云渲染方法是針對云渲染端而言的,是在實施該三維渲染方法時在云渲染端完成的操作過程,各個過程的具體實現(xiàn)方式與上述的三維云渲染方法相同。
[0032]本發(fā)明還提供了一種基于部件模型組合的三維云渲染系統(tǒng),包括:
[0033]用于向云渲染端發(fā)送下載請求的模塊;
[0034]用于接收來自云渲染端預存的低精度部件模型的模塊;
[0035]用于對低精度部件模型進行預覽,并根據(jù)預覽結(jié)果生成相應的描述文檔上傳至云渲染端的模塊;
[0036]用于從云渲染端獲取渲染結(jié)果的模塊,所述渲染結(jié)果是云渲染端根據(jù)所述描述文檔結(jié)合云渲染端預存的高精度部件模型進行渲染得到。
[0037]該三維云渲染系統(tǒng)應用于用戶終端。
[0038]本發(fā)明還提供了另一種基于部件模型組合的三維云渲染系統(tǒng),包括:
[0039]用于接收來自用戶終端的下載請求的模塊;
[0040]用于響應于所述下載請求,向用戶終端發(fā)送云渲染端預存的低精度部件模型的模塊;
[0041]用于從用戶終端接收描述文檔結(jié)合云渲染端預存的高精度部件模型進行渲染得到渲染結(jié)果的模塊,所述描述文檔為在用戶終端對低精度部件進行預覽,并根據(jù)預覽結(jié)果生成;
[0042]用于發(fā)送渲染結(jié)果給用戶終端的模塊。
[0043]該三維云渲染系統(tǒng)應用于云渲染端。
[0044]與現(xiàn)有技術(shù)相比,本發(fā)明的優(yōu)點在于:
[0045]用戶終端不需要將待渲染模型上傳給云渲染端,僅上傳描述文檔即可,大大減小了數(shù)據(jù)傳輸?shù)臅r間損耗,有利于提高渲染效率,實現(xiàn)實時渲染;且預先在云渲染端存儲低精度部件模型和高精度部件模型,在用戶終端形成描述文檔利用低精度部件模型,在云渲染端渲染時利用高精度部件模型,這樣既避免了形成描述文檔時傳輸高精度部件模型,又能夠利用高精度部件模型渲染,保證了渲染精度,且能夠降低傳輸時間消耗。
【具體實施方式】
[0046]下面將結(jié)合具體實施例對本發(fā)明進行詳細描述。
[0047]本實施例的三維云渲染方法和三維云渲染系統(tǒng)應用于具有用戶終端和云渲染端的云渲染平臺。該云渲染平臺中用戶終端和云渲染端通過網(wǎng)絡鏈路進行數(shù)據(jù)和信息交換。
[0048]本實施例方法在渲染前可以先構(gòu)建一個部件庫并存到云渲染端,該部件庫可以采用現(xiàn)有技術(shù)中的各種數(shù)據(jù)類型以及存儲方式,考慮到其通用性,可以采用現(xiàn)有三維設計軟件可識別的格式。
[0049]部件庫中包括若干部件,根據(jù)應用需求不同,部件庫中的部件種類也可做相應調(diào)整。以室內(nèi)設計為例,部件庫中包括房間、地板、墻壁、門、窗、家具、家紡(包括被子、床單、靠枕等)、裝飾物(如字畫、相片等)、各種材料貼圖(如面料、木紋等)。
[0050]每個部件都構(gòu)建有低精度部件模型和高精度部件模型,相互對應的低精度部件模型和高精度部件模型為同一部件不同精度版本的3D幾何模型的工程文件。為便于根據(jù)低精度部件模型調(diào)用高精度部件模型,相互對應的低精度部件模型和高精度部件模型具有對應的識別信息。本實施例中識別信息為ID信息,且相對應的低精度部件模型和高精度部件模型的ID信息相同。
[0051]為了節(jié)省下載流量,降低傳輸時間消耗,低精度部件模型文件較小,其包含的部件輪廓以及紋理特征也相對較少,相比較而言,高精度部件模型更接近部件的真實形狀和表面紋理,相應數(shù)據(jù)量也遠大于低精度部件模型。就單個部件而言,其低精度部件模型的數(shù)據(jù)量大小一般與部件的復雜程度以及預期精度有關(guān),但也可以根據(jù)應用場合的網(wǎng)絡負載能力對低精度部件模型的文件大小加以限定,同理也適用于高低精度部件模型的處理。
[0052]本實施例中是預先構(gòu)建兩個精度版本的部件模型,在實際應用中,也可以根據(jù)需要預先構(gòu)建更多版本的部件模型,以適應用戶終端所處場合的網(wǎng)絡負載能力。
[0053]本實施例的三維云渲染方法,在具體實施時先通過用戶終端瀏覽預存在云渲染端中的各個部件選擇需要的部件,而后向云渲染端發(fā)送下載請求以獲取所需部件的低精度部件模型。為便于用戶選擇需要的部件,本實施例中預先針對各個部件生成相應的索引,根據(jù)該索引選擇部件,之后再向云渲染端發(fā)送下載請求,以獲取所選部件的低精度部件模型。部件索引的形式可以是狀態(tài)圖片或視頻動畫等,以便于在線預覽。
[0054]以狀態(tài)圖片為例,可以是針對部件的各個角度生成的多張圖片,而視頻動畫的每一幀可以是由各圖片組成。
[0055]各個部件的索引,既可以是通過對應的部件模型導出得到,也可以采用實物拍攝等方式獲得。必要時可結(jié)合文字或音頻的說明,使用戶了解該部件的材質(zhì)、來源等細節(jié)信肩、O
[0056]向云渲染端發(fā)送下載請求后,云渲染端接收來自用戶終端的下載請求,并響應于該下載請求,從部件庫中調(diào)取相應部件的低精度部件模型,并向用戶終端發(fā)送。
[0057]用戶終端接收來自云渲染端的低精度部件模型后,對低精度部件模型進行預覽。
[0058]本實施例中下載的低精度部件模型包括房間、地板、墻壁、門、窗、家具、家紡、裝飾物的低精度部件模型。
[0059]部件模型(包括低精度部件模型和高精度部件模型)通常為立體結(jié)構(gòu),且具有各自獨立的基準坐標系,以任一部件模型為例,可以選取該部件模型任意一點為基準坐標系的原點,以該部件模型的某一狀態(tài)(例如床單水平展開狀態(tài))為初始狀態(tài),在后續(xù)操作過程中,當該部件模型狀態(tài)發(fā)生變化時,根據(jù)與初始狀態(tài)的相對位置關(guān)系,可以獲得模型的當前位置。
[0060]由于各部件模型(除房間外)都是放置在房間內(nèi),因此比較方便的做法是在初始狀態(tài)的房間中建立參考坐標系,其余各部件模型放入房間,也就意味著置入?yún)⒖甲鴺讼?,從而便于計算各部件模型在房間中的位置。
[0061]本實施例中的位置包括坐標和角度,坐標指各個部件模型在參考坐標系中的坐標,角度指每個部件模型相對于自身基準坐標系的旋轉(zhuǎn)角度。
[0062]預覽時,將下載的低精度部件模型進行組合,并顯示組合后的整體效果,根據(jù)整體效果對各個低精度部件模型進行位置調(diào)整(包括坐標和角度),位置調(diào)整主要包括移動和旋轉(zhuǎn)操作,直至滿足設計要求,即得到預覽結(jié)果。
[0063]得到預覽結(jié)果后,提取該預覽結(jié)果中各個低精度部件模型的ID信息和位置信息,并將每一個低精度部件模型的ID信息和位置信息排列組合為一個行向量。排列時,ID信息和位置信息的順序無特殊要求,但必須保證所有的行向量排列時的順序保持一致。將所有低精度部件模型的行向量排列成矩陣即作為相應的描述文檔,并上傳至云渲染端。
[0064]在上傳描述文檔時,還一并將設定的渲染參數(shù)上傳至云渲染端,該渲染參數(shù)為渲染結(jié)果的分辨率、輸出格式。
[0065]渲染參數(shù)由用戶終端設定,根據(jù)不同的渲染要求和網(wǎng)絡負載能力,可以設置不同的渲染參數(shù)。
[0066]云渲染端從用戶終端接收描述文檔結(jié)合云渲染端預存的高精度部件模型進行渲染得到渲染結(jié)果,具體操作為:
[0067]首先對描述文檔進行解析,根據(jù)描述文檔中各個行向量的排列順序,提取得到每個行向量對應的ID信息和位置信息。
[0068]然后根據(jù)解析得到的ID信息,從預存于云渲染端中獲取相應的高精度部件模型,并根據(jù)解析得到的位置信息組合得到待渲染模型,利用云渲染端對待渲染模型進渲染,并發(fā)送渲染結(jié)果給用戶終端。本實施例的三維云渲染方法,在用戶終端利用低精度部件模型形成描述文檔,在云渲染端渲染時利用高精度部件模型,這樣既避免了形成描述文檔時傳輸高精度部件模型,又能夠利用高精度部件模型渲染,保證了渲染精度,降低了傳輸時間消耗。
[0069]本實施例的一種基于部件模型組合的三維云渲染系統(tǒng),該三維云渲染系統(tǒng)應用于用戶終端,具體包括:
[0070]用于向云渲染端發(fā)送下載請求的模塊;
[0071]用于接收來自云渲染端預存的低精度部件模型的模塊;
[0072]用于對低精度部件模型進行預覽,并根據(jù)預覽結(jié)果生成相應的描述文檔上傳至云渲染端的模塊;
[0073]用于從云渲染端獲取渲染結(jié)果的模塊,其中,渲染結(jié)果是云渲染端根據(jù)所述描述文檔結(jié)合云渲染端預存的高精度部件模型進行渲染得到。
[0074]本實施例的另一種基于部件模型組合的三維云渲染系統(tǒng),該三維云渲染系統(tǒng)應用于云渲染端,包括:
[0075]用于接收來自用戶終端的下載請求的模塊;
[0076]用于響應于所述下載請求,向用戶終端發(fā)送云渲染端預存的低精度部件模型的模塊;
[0077]用于從用戶終端接收描述文檔結(jié)合云渲染端預存的高精度部件模型進行渲染得到渲染結(jié)果的模塊,其中,描述文檔為在用戶終端對低精度部件進行預覽,并根據(jù)預覽結(jié)果生成;
[0078]用于發(fā)送渲染結(jié)果給用戶終端的模塊。
[0079]以上所述的【具體實施方式】對本發(fā)明的技術(shù)方案和有益效果進行了詳細說明,應理解的是以上所述僅為本發(fā)明的最優(yōu)選實施例,并不用于限制本發(fā)明,凡在本發(fā)明的原則范圍內(nèi)所做的任何修改、補充和等同替換等,均應包含在本發(fā)明的保護范圍之內(nèi)。
【權(quán)利要求】
1.一種基于部件模型組合的三維云渲染方法,其特征在于,包括: 向云渲染端發(fā)送下載請求; 接收來自云渲染端預存的低精度部件模型; 對低精度部件模型進行預覽,并根據(jù)預覽結(jié)果生成相應的描述文檔上傳至云渲染端;從云渲染端獲取渲染結(jié)果,所述渲染結(jié)果是云渲染端根據(jù)所述描述文檔結(jié)合云渲染端預存的高精度部件模型進行渲染得到。
2.如權(quán)利要求1所述的基于部件模型組合的三維云渲染方法,其特征在于,所述的低精度部件模型和高精度部件模型一一對應,相互對應的低精度部件模型和高精度部件模型具有對應的識別信息。
3.如權(quán)利要求2所述的基于部件模型組合的三維云渲染方法,其特征在于,預覽過程如下: 將下載的低精度部件模型組合后進行顯示,并根據(jù)顯示的內(nèi)容調(diào)整各個低精度部件模型的位置得到相應的預覽結(jié)果。
4.如權(quán)利要求3所述的基于部件模型組合的三維云渲染方法,其特征在于,所述的描述文檔包括預覽結(jié)果中各個低精度部件模型的識別信息和位置信息,所述的位置信息包括坐標信息和角度信息。
5.如權(quán)利要求4所述的基于部件模型組合的三維云渲染方法,其特征在于,通過如下方法獲取渲染結(jié)果: 根據(jù)描述文檔將對應的高精度部件模型按相應的位置組合,得到待渲染模型,經(jīng)渲染后得到渲染結(jié)果。
6.一種基于部件模型組合的三維云渲染方法,其特征在于,包括: 接收來自用戶終端的下載請求; 響應于所述請求,向用戶終端發(fā)送云渲染端預存的低精度部件模型; 從用戶終端接收描述文檔結(jié)合云渲染端預存的高精度部件模型進行渲染得到渲染結(jié)果,所述描述文檔為在用戶終端對低精度部件進行預覽,并根據(jù)預覽結(jié)果生成; 發(fā)送渲染結(jié)果給用戶終端。
7.一種基于部件模型組合的三維云渲染系統(tǒng),其特征在于,包括: 用于向云渲染端發(fā)送下載請求的模塊; 用于接收來自云渲染端預存的低精度部件模型的模塊; 用于對低精度部件模型進行預覽,并根據(jù)預覽結(jié)果生成相應的描述文檔上傳至云渲染端的模塊; 用于從云渲染端獲取渲染結(jié)果的模塊,所述渲染結(jié)果是云渲染端根據(jù)所述描述文檔結(jié)合云渲染端預存的高精度部件模型進行渲染得到。
8.一種基于部件模型組合的三維云渲染系統(tǒng),其特征在于,包括: 用于接收來自用戶終端的下載請求的模塊; 用于響應于所述下載請求,向用戶終端發(fā)送云渲染端預存的低精度部件模型的模塊;用于從用戶終端接收描述文檔結(jié)合云渲染端預存的高精度部件模型進行渲染得到渲染結(jié)果的模塊,所述描述文檔為在用戶終端對低精度部件進行預覽,并根據(jù)預覽結(jié)果生成;用于發(fā)送渲染結(jié)果給用戶終端的模塊。
【文檔編號】G06T17/00GK104200520SQ201410439156
【公開日】2014年12月10日 申請日期:2014年8月29日 優(yōu)先權(quán)日:2014年8月29日
【發(fā)明者】馬英俊 申請人:杭州易上弘網(wǎng)絡技術(shù)有限公司