一種實(shí)時(shí)渲染方法和移動(dòng)終端的制作方法
【專利摘要】本發(fā)明提出了一種實(shí)時(shí)渲染方法和設(shè)備,該方法包括:對(duì)待渲染的三維戶型空間進(jìn)行切割,生成多個(gè)對(duì)應(yīng)單個(gè)房間的子空間;為各子空間設(shè)置預(yù)設(shè)個(gè)數(shù)的光源,并基于各子空間的大小對(duì)所述光源的覆蓋范圍進(jìn)行調(diào)整;針對(duì)各子空間,基于調(diào)整后的光源對(duì)所述子空間進(jìn)行實(shí)時(shí)渲染。以此基于空間切割的各子空間來(lái)進(jìn)行分別的渲染,減少了渲染的光照計(jì)算復(fù)雜度,提升了渲染的效率,以及提高了渲染的真實(shí)度,使得房間內(nèi)物品存在漫反射以及高光的效果。
【專利說(shuō)明】
一種實(shí)時(shí)渲染方法和移動(dòng)終端
技術(shù)領(lǐng)域
[0001 ]本發(fā)明涉及計(jì)算機(jī)領(lǐng)域,特別涉及一種實(shí)時(shí)渲染方法和移動(dòng)終端。
【背景技術(shù)】
[0002]現(xiàn)有家居設(shè)計(jì)類軟件,主要分為兩大類:
[0003]第一類是專業(yè)的三維建模軟件,這類模型的工作過(guò)程是:首先通過(guò)三維模型的構(gòu) 建,然后通過(guò)離線渲染,渲染出高清的效果圖查看房間的效果,其優(yōu)勢(shì)是效果圖可以達(dá)到照 片級(jí)別,但是,其工作過(guò)程是建立在已有的戶型基礎(chǔ)上,為表現(xiàn)真實(shí)的自然光照,其采用全 局光照模型進(jìn)行烘培渲染,由于全局光照的光照信息被烘培到光照貼圖中,所以每個(gè)戶型 都對(duì)應(yīng)一份光照貼圖數(shù)據(jù),所以一旦戶型改變,就必須重新計(jì)算烘培的光照信息,否則將出 現(xiàn)錯(cuò)誤的光照信息,由于全局光照的計(jì)算方法既計(jì)算直接照明也計(jì)算間接照明,當(dāng)光從光 源被發(fā)射出來(lái)后,碰到障礙物就反射和折射,經(jīng)過(guò)多次的反射和折射,來(lái)模擬光的互動(dòng)和反 彈等復(fù)雜行為。正是由于這種復(fù)雜的算法,其占用的內(nèi)存較高,渲染時(shí)間長(zhǎng),因此這類方法 不適用于移動(dòng)端可編輯的家居設(shè)計(jì)軟件。另外,其在進(jìn)行染后無(wú)法對(duì)模型進(jìn)行實(shí)時(shí)編輯。
[0004] 第二類是移動(dòng)端家居設(shè)計(jì)類軟件,這類軟件不采用全局光照的計(jì)算方法,而采用 不計(jì)算光照,使用色彩貼圖的方式保持整個(gè)場(chǎng)景的亮度,這種方法無(wú)層次過(guò)度效果。一些方 法結(jié)合了平行光的方式給予場(chǎng)景光照,但是因?yàn)闆](méi)有反射光源的計(jì)算,只有投射方向范圍 內(nèi)的對(duì)象表面才有光源影響,由于房間的空間均為封閉空間平行光只能從窗照進(jìn)房間,因 此,平行光除模擬光照進(jìn)入窗口的陰影效果外,對(duì)房間墻體、屋內(nèi)物品均無(wú)影響。用這種軟 件在構(gòu)建戶型后可直接查看其戶型家居的三維效果,但其幾乎沒(méi)有光照運(yùn)算效果,不能反 映出房間和房間中物品的受光效果。
[0005] 可見(jiàn),在現(xiàn)有技術(shù)中的家居設(shè)計(jì)類軟件中,針對(duì)移動(dòng)端可編輯的三維戶型空間,平 行光由窗體進(jìn)入空間光線不能模擬空間光線過(guò)渡效果,還存在效率低下問(wèn)題,以及在進(jìn)行 實(shí)時(shí)渲染時(shí),墻體無(wú)漫反射、物品無(wú)漫反射、無(wú)高光效果的缺陷。
【發(fā)明內(nèi)容】
[0006] 針對(duì)現(xiàn)有技術(shù)中的缺陷,本發(fā)明提出了一種實(shí)時(shí)渲染方法和移動(dòng)終端,解決了移 動(dòng)端可編輯的三維戶型空間渲染效率低,在進(jìn)行實(shí)時(shí)渲染時(shí)墻體漫反射過(guò)度平滑、使得房 間內(nèi)物品存在漫反射以及高光的效果,同時(shí)增強(qiáng)了移動(dòng)端可編輯的三維戶型空間實(shí)時(shí)渲染 的真實(shí)度,提高了效率。
[0007]為此,本發(fā)明實(shí)施例提出了一種實(shí)時(shí)渲染方法,包括:
[0008] 移動(dòng)終端對(duì)待渲染的三維戶型空間進(jìn)行切割,生成多個(gè)對(duì)應(yīng)單個(gè)房間的子空間;
[0009] 所述移動(dòng)終端為各子空間設(shè)置預(yù)設(shè)個(gè)數(shù)的光源,并基于各子空間的大小對(duì)所述光 源的位置以及覆蓋范圍進(jìn)行調(diào)整;
[0010] 所述移動(dòng)終端針對(duì)各子空間,基于調(diào)整后的光源對(duì)所述子空間進(jìn)行實(shí)時(shí)渲染。 [0011]優(yōu)選的,所述移動(dòng)終端對(duì)待渲染的三維戶型空間進(jìn)行切割,生成多個(gè)對(duì)應(yīng)單個(gè)房 間的子空間,具體包括:
[0012] 所述移動(dòng)終端確定待渲染的三維戶型空間;
[0013] 所述移動(dòng)終端將所述三維戶型空間切割為多個(gè)房間,生成多個(gè)基于單個(gè)房間的切 割空間;
[0014] 所述移動(dòng)終端基于預(yù)設(shè)的縮放參數(shù)對(duì)所述切割空間進(jìn)行縮放,生成對(duì)應(yīng)單個(gè)房間 的子空間。
[0015] 優(yōu)選的,所述光源,具體為:聚光燈。
[0016] 優(yōu)選的,該方法還包括:
[0017] 所述移動(dòng)終端判斷子空間中是否存在有平行光;
[0018] 若判斷結(jié)果為是,則基于所述平行光的方向,調(diào)整對(duì)應(yīng)所述方向的光源的強(qiáng)度。
[0019] 優(yōu)選的,所述對(duì)存在有平行光內(nèi)的光源的強(qiáng)度進(jìn)行調(diào)整,具體是根據(jù)公式:PN=aPL 來(lái)進(jìn)行的;
[0020] 其中,PN為調(diào)整后光源的強(qiáng)度;Pd周整前光源的強(qiáng)度;α為調(diào)整系數(shù)。
[0021] 本發(fā)明實(shí)施例還提出了一種移動(dòng)終端,包括:
[0022] 切割模塊,用于對(duì)待渲染的三維戶型空間進(jìn)行切割,生成多個(gè)對(duì)應(yīng)單個(gè)房間的子 空間;
[0023] 第一調(diào)整模塊,用于為各子空間設(shè)置預(yù)設(shè)個(gè)數(shù)的光源,并基于各子空間的大小對(duì) 所述光源的位置以及覆蓋范圍進(jìn)行調(diào)整;
[0024] 渲染模塊,用于針對(duì)各子空間,基于調(diào)整后的光源對(duì)所述子空間進(jìn)行實(shí)時(shí)渲染。 [0025]優(yōu)選的,所述切割模塊,具體用于:
[0026]確定待渲染的三維戶型空間;
[0027] 將所述三維戶型空間切割為多個(gè)房間,生成多個(gè)基于單個(gè)房間的切割空間;
[0028] 基于預(yù)設(shè)的縮放參數(shù)對(duì)所述切割空間進(jìn)行縮放,生成對(duì)應(yīng)單個(gè)房間的子空間。 [0029]優(yōu)選的,所述光源,具體為:聚光燈。
[0030] 優(yōu)選的,該設(shè)備還包括:第二調(diào)整模塊,用于判斷子空間中是否存在有平行光;
[0031] 若判斷結(jié)果為是,則基于所述平行光的方向,調(diào)整對(duì)應(yīng)所述方向的光源的強(qiáng)度。
[0032] 優(yōu)選的,所述第二調(diào)整模塊對(duì)存在有平行光內(nèi)的光源的強(qiáng)度進(jìn)行調(diào)整,具體是根 據(jù)公式:ΡΝ=αΙ\來(lái)進(jìn)行的;
[0033]其中,Pn為調(diào)整后光源的強(qiáng)度;Pl調(diào)整前光源的強(qiáng)度;a為調(diào)整系數(shù)。
[0034] 與現(xiàn)有技術(shù)相比,本發(fā)明實(shí)施例提出了一種實(shí)時(shí)渲染方法和移動(dòng)終端,通過(guò)對(duì)待 渲染的三維戶型空間進(jìn)行切割,生成多個(gè)對(duì)應(yīng)單個(gè)房間的子空間;為各子空間設(shè)置預(yù)設(shè)個(gè) 數(shù)的光源,并基于各子空間的大小對(duì)所述光源的覆蓋范圍進(jìn)行調(diào)整;針對(duì)各子空間,基于調(diào) 整后的光源對(duì)所述子空間進(jìn)行實(shí)時(shí)渲染。以此基于空間切割的各子空間來(lái)進(jìn)行分別的實(shí)時(shí) 渲染,減少了實(shí)時(shí)渲染的光照計(jì)算復(fù)雜度,提升了實(shí)時(shí)渲染的效率,以及提高了實(shí)時(shí)渲染的 真實(shí)度,使得房間內(nèi)物品存在漫反射以及高光的效果。
【附圖說(shuō)明】
[0035] 圖1為本發(fā)明實(shí)施例提出的一種實(shí)時(shí)渲染方法的流程示意圖;
[0036] 圖2為本發(fā)明實(shí)施例提出的一種空間切割的示意圖;
[0037] 圖3為本發(fā)明實(shí)施例提出的一種墻體坐標(biāo)示意圖;
[0038] 圖4為本發(fā)明實(shí)施例提出的一種墻體坐標(biāo)不意圖;
[0039] 圖5為本發(fā)明實(shí)施例提出的一種墻體中心點(diǎn)的示意圖;
[0040] 圖6為本發(fā)明實(shí)施例提出的一種光源設(shè)置位置的示意圖;
[0041 ]圖7為本發(fā)明實(shí)施例提出的一種光源覆蓋范圍的示意圖;
[0042] 圖8為本發(fā)明實(shí)施例提出的一種光源覆蓋范圍的示意圖;
[0043] 圖9為本發(fā)明實(shí)施例提出的一種光源覆蓋范圍的示意圖;
[0044] 圖10為本發(fā)明實(shí)施例提出的兩種光照計(jì)算復(fù)雜度的曲線示意圖;
[0045] 圖11為本發(fā)明實(shí)施例提出的一種移動(dòng)終端的結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0046] 針對(duì)現(xiàn)有技術(shù)中的缺陷,本發(fā)明實(shí)施例提出了一種實(shí)時(shí)渲染方法和移動(dòng)終端,用 以克服現(xiàn)有技術(shù)中的缺陷,為此本發(fā)明提出了以下幾個(gè)具體的實(shí)施例:
[0047] 實(shí)施例1
[0048] 本發(fā)明實(shí)施例提出了一種實(shí)時(shí)渲染方法,如圖1所示,該方法包括以下步驟:
[0049] 步驟101、移動(dòng)終端對(duì)待渲染的三維戶型空間進(jìn)行切割,生成多個(gè)對(duì)應(yīng)單個(gè)房間的 子空間。
[0050] 具體的,待渲染的三維戶型空間是可編輯的,例如圖2中所述的戶型空間包括兩個(gè) 獨(dú)立的房間空間(對(duì)應(yīng)圖2中的1和2),因此可以將戶型空間拆分為兩個(gè)房間空間。
[0051]而具體的,為保證移動(dòng)端的處理效率,可以對(duì)空間進(jìn)行縮放,具體的縮放過(guò)程可以 如下:
[0052]移動(dòng)終端確定待渲染的三維戶型空間;
[0053]移動(dòng)終端將所述三維戶型空間切割為多個(gè)房間,生成多個(gè)基于單個(gè)房間的切割空 間;
[0054] 移動(dòng)終端基于預(yù)設(shè)的縮放參數(shù)對(duì)所述切割空間進(jìn)行縮放,生成對(duì)應(yīng)單個(gè)房間的子 空間。
[0055] 以下,在一個(gè)具體的實(shí)施例中,對(duì)縮放進(jìn)行說(shuō)明,具體的,房間空間由四面墻,一個(gè) 天棚,一個(gè)地板組成。為保證每個(gè)房間空間具有獨(dú)立性,每個(gè)墻體由3個(gè)四方面構(gòu)成分別是 前后面和頂面,組成尺寸可以為長(zhǎng)1米,寬1米,高1米,每一個(gè)基本墻體單元的中心點(diǎn)如圖3 所示,其中整個(gè)墻體位于X軸的正半軸,因此墻體的總長(zhǎng)度由縮放因子決定。根據(jù)縮放矩陣 公式:
[0057]其中:Κχ,Κγ,Κζ為縮放因子;x,y,z為模型點(diǎn)坐標(biāo)。
[0058]根據(jù)公式墻體變換的長(zhǎng)寬高方程為:
[0060]其中,可以設(shè)置默認(rèn)大小為(單位為米):
[0062]而具體的,天棚與地板為一個(gè)平面所構(gòu)成,具體的尺寸可以為長(zhǎng)1米,寬1米。同理 可以采用縮放的形式進(jìn)行構(gòu)建,因此其中心點(diǎn)如圖4所示,由此,根據(jù)公式墻體變換的長(zhǎng)寬 高方程為:
[0064]其中,可以設(shè)置默認(rèn)大小為(單位為米):
[0066] 由此得到每個(gè)墻體及天棚地面的中心點(diǎn),具體如圖5所示。其中①點(diǎn)為下側(cè)墻體, 左側(cè)墻體,地板,天棚的中心點(diǎn)。②點(diǎn)為右側(cè)墻體的中心點(diǎn),③點(diǎn)為上側(cè)墻體中心點(diǎn),每一個(gè) 房間空間均由這樣的組合方式構(gòu)成。
[0067] 由此需要變換的橫向長(zhǎng)度為W,縱向長(zhǎng)度Η,則每個(gè)房間的各個(gè)墻體的縮放因子如 下:
[0068]左側(cè)墻體,右側(cè)墻體:
[0070]上側(cè)墻體,下側(cè)墻體:
[0074] 步驟102、移動(dòng)終端為各子空間設(shè)置預(yù)設(shè)個(gè)數(shù)的光源,并基于各子空間的大小對(duì)所 述光源的位置以及覆蓋范圍進(jìn)行調(diào)整。
[0075] 具體光源可以為:聚光燈。如此,由于聚光燈邊緣的衰減性,因此墻面將產(chǎn)生光線 過(guò)渡效果,且物體的也同樣受到光源的作用,而具體的光源的位置,以及各光源的覆蓋范圍 的設(shè)置則是基于對(duì)子空間范圍的全覆蓋需要而進(jìn)行設(shè)置的。具體的,一般而言,房間的空間 是長(zhǎng)方體,因此光源可以設(shè)置為均勻分布的,當(dāng)然也可以設(shè)置為別的實(shí)施例方式,例如對(duì)房 間進(jìn)行劃分區(qū)域后,按照各光源的覆蓋范圍進(jìn)行分配,總之,只要以保障對(duì)房間內(nèi)空間的全 覆蓋,同時(shí)重疊率處于預(yù)設(shè)范圍內(nèi)即可。
[0076] 在一個(gè)具體的實(shí)施例中,可以設(shè)置5個(gè)光源,對(duì)應(yīng)的位置如圖6所示,其中聚光燈1、 2、3、4的方向均為向Z軸負(fù)方向,目的是照亮墻面及空間,而聚光燈5的方向?yàn)閆軸正方向,目 的是照亮天棚,其5個(gè)光源的放射角度均為90度。
[0077]由此可以根據(jù)房間的長(zhǎng)寬動(dòng)態(tài)調(diào)整五個(gè)光源的位置及照射強(qiáng)度。其位置坐標(biāo)動(dòng) 態(tài)變化公式如下:
[0088] 其中:Xr_,Yr_為房間所在的世界坐標(biāo);
[0089] Zroof為天棚的世界高度坐標(biāo),為地面的世界高度坐標(biāo)。
[0090] 隨著房間大小的變化,光源的覆蓋范圍也隨之變化,為保證每個(gè)光源之間的過(guò)渡 柔和,光源的覆蓋范圍即考慮空間的覆蓋性也要考慮光源的重疊性,如圖7所示,為聚光燈 1、2、3、4的覆蓋范圍,剛好全部覆蓋住房間,但重疊部分又最小。
[0091] 由此以上每個(gè)光源的影響半徑計(jì)算公式為:
[0093] 其中:Xiight,Yiight為光源的世界坐標(biāo);
[0094] Χ1;Υ^房間的四個(gè)角點(diǎn)坐標(biāo),光源1取左上角點(diǎn)坐標(biāo),光源2取右上角點(diǎn)坐標(biāo),光源 3取左下角點(diǎn)坐標(biāo),光源4取右下角點(diǎn)坐標(biāo),光源5取任意一個(gè)角點(diǎn)坐標(biāo)。而具體的,光源5的 覆蓋性如圖8所示。
[0095] 具體的,每個(gè)光源的影響范圍是不同的,以上述實(shí)施例來(lái)進(jìn)行說(shuō)明,光源1,光源2, 光源3,光源4影響墻面、地面、房間物品。光源5僅影響天棚,這樣的設(shè)置的目標(biāo)性實(shí)時(shí)渲染 可以有效的減少光的計(jì)算,同時(shí)保證柔和的光線過(guò)渡及絢麗的高光效果。
[0096] 由于房間可能會(huì)在墻體上開(kāi)窗,從而平行光將從窗的位置入射到房間內(nèi),而移動(dòng) 端實(shí)時(shí)渲染的支持彈射和散射效果需要消耗大量的效率,為使得房間在有平行光進(jìn)入的情 況更加真實(shí),該方法將對(duì)光源的強(qiáng)度根據(jù)平行光的方向進(jìn)行調(diào)整,具體的過(guò)程如下
[0097] 移動(dòng)終端判斷子空間中是否存在有平行光;
[0098] 若判斷結(jié)果為是,則基于所述平行光的方向,調(diào)整對(duì)應(yīng)所述方向的光源的強(qiáng)度。
[0099] 優(yōu)選的,所述對(duì)存在有平行光內(nèi)的光源的強(qiáng)度進(jìn)行調(diào)整,具體是根據(jù)公式:PN=aPL 來(lái)進(jìn)行的;
[0100]其中,Pn為調(diào)整后光源的強(qiáng)度;Pl調(diào)整前光源的強(qiáng)度;α為調(diào)整系數(shù),α-般取值為 6.5~8.5〇
[0101]而具體的,可以通過(guò)如下公式判斷窗體是否收到入射平行光:
[0103] 其中:δ為平行光的方向向量;
[0104] g為窗體指向房間內(nèi)部的垂直于墻體的向量。
[0105] 如果其夾角大于0度小于90度,則說(shuō)明窗體將有平行光入射。
[0106] 具體的,根據(jù)窗體所在墻的屬性,當(dāng)上側(cè)墻開(kāi)窗則調(diào)整光源1、2強(qiáng)度,當(dāng)左側(cè)墻開(kāi) 窗則調(diào)整1、3光源強(qiáng)度,當(dāng)右側(cè)墻開(kāi)窗則調(diào)整2、3光源強(qiáng)度,當(dāng)下側(cè)墻開(kāi)窗則調(diào)整3、4光源強(qiáng) 度。
[0107] 步驟103、移動(dòng)終端針對(duì)各子空間,基于調(diào)整后的光源對(duì)所述子空間進(jìn)行實(shí)時(shí)渲 染。
[0108] 經(jīng)過(guò)上述步驟,將空間切割,且為各個(gè)獨(dú)立的空間分配專屬的光源,并以此進(jìn)行實(shí) 時(shí)渲染。以此,在多房間的空間中,由于每個(gè)墻由雙面組成,因此可以完全的區(qū)分空間模型 網(wǎng)格和材質(zhì),每個(gè)房間的材質(zhì)渲染信息光照只提取其內(nèi)部的光照信息,對(duì)于房間內(nèi)的物品, 物品放在哪個(gè)房間內(nèi),其就采集對(duì)應(yīng)房間內(nèi)的光照信息,這種分割式的渲染方式可以有效 的降低實(shí)時(shí)渲染成本,如圖9所示。其中,左邊光源的范圍只影響小房間,右光源范圍只影響 大房間,雖然光源范圍有重合,但是由于小房間的材質(zhì)不采集右邊光源信息,且大房間的材 質(zhì)不采集左邊光源信息,因此相互無(wú)影響。
[0109] 從效率函數(shù)分析,基于區(qū)域分割的光照渲染計(jì)算復(fù)雜度如下:Co = 21N
[0110] 不基于區(qū)域分割的光照渲染計(jì)算復(fù)雜度如下:& = 24N2
[0111] 由此,其復(fù)雜度如圖10所示,由圖10中的曲線,可以明顯的觀察出隨著戶型數(shù)量的 增加,不基于區(qū)域分割的光照計(jì)算復(fù)雜度增長(zhǎng)速度遠(yuǎn)大于基于區(qū)域分割的光照復(fù)雜度,如 此使得像移動(dòng)終端這種性能不是很強(qiáng)的設(shè)備也可以很好地完成光照的實(shí)時(shí)渲染。
[0112] 實(shí)施例2
[0113] 為了對(duì)本發(fā)明進(jìn)行進(jìn)一步地說(shuō)明,本發(fā)明實(shí)施例還提出了一種移動(dòng)終端,如圖11 所示,包括:
[0114] 切割模塊110,用于對(duì)待渲染的三維戶型空間進(jìn)行切割,生成多個(gè)對(duì)應(yīng)單個(gè)房間 的子空間;
[0115] 第一調(diào)整模塊111,用于為各子空間設(shè)置預(yù)設(shè)個(gè)數(shù)的光源,并基于各子空間的大小 對(duì)所述光源的位置以及覆蓋范圍進(jìn)行調(diào)整;
[0116] 渲染模塊112,用于針對(duì)各子空間,基于調(diào)整后的光源對(duì)所述子空間進(jìn)行實(shí)時(shí)渲 染。
[0117] 具體的,所述切割模塊110,具體用于:
[0118] 確定待渲染的三維戶型空間;
[0119] 將所述三維戶型空間切割為多個(gè)房間,生成多個(gè)基于單個(gè)房間的切割空間;
[0120] 基于預(yù)設(shè)的縮放參數(shù)對(duì)所述切割空間進(jìn)行縮放,生成對(duì)應(yīng)單個(gè)房間的子空間。
[0121 ]具體的,所述光源,具體為:聚光燈。
[0122] 具體的,該移動(dòng)終端還包括:第二調(diào)整模塊,用于判斷子空間中是否存在有平行 光;
[0123] 若判斷結(jié)果為是,則基于所述平行光的方向,調(diào)整對(duì)應(yīng)所述方向的光源的強(qiáng)度。
[0124] 具體的,所述第二調(diào)整模塊對(duì)存在有平行光內(nèi)的光源的強(qiáng)度進(jìn)行調(diào)整,具體是根 據(jù)公式:ΡΝ=αΙ\來(lái)進(jìn)行的;
[0125] 其中,PN為調(diào)整后光源的強(qiáng)度;
[0126] PL調(diào)整前光源的強(qiáng)度;
[0127] a為調(diào)整系數(shù)。
[0128] 現(xiàn)有技術(shù)相比,本發(fā)明實(shí)施例提出了一種實(shí)時(shí)渲染方法和移動(dòng)終端,通過(guò)對(duì)待渲 染的三維戶型空間進(jìn)行切割,生成多個(gè)對(duì)應(yīng)單個(gè)房間的子空間;為各子空間設(shè)置預(yù)設(shè)個(gè)數(shù) 的光源,并基于各子空間的大小對(duì)所述光源的覆蓋范圍進(jìn)行調(diào)整;針對(duì)各子空間,基于調(diào)整 后的光源對(duì)所述子空間進(jìn)行實(shí)時(shí)渲染。以此基于空間切割的各子空間來(lái)進(jìn)行分別的實(shí)時(shí)渲 染,減少了實(shí)時(shí)渲染的光照計(jì)算復(fù)雜度,提升了實(shí)時(shí)渲染的效率,以及提高了實(shí)時(shí)渲染的真 實(shí)度,使得房間內(nèi)物品存在漫反射以及高光的效果。
[0129] 本領(lǐng)域技術(shù)人員可以理解附圖只是一個(gè)優(yōu)選實(shí)施場(chǎng)景的示意圖,附圖中的模塊或 流程并不一定是實(shí)施本發(fā)明所必須的。
[0130] 本領(lǐng)域技術(shù)人員可以理解實(shí)施場(chǎng)景中的裝置中的模塊可以按照實(shí)施場(chǎng)景描述進(jìn) 行分布于實(shí)施場(chǎng)景的裝置中,也可以進(jìn)行相應(yīng)變化位于不同于本實(shí)施場(chǎng)景的一個(gè)或多個(gè)裝 置中。上述實(shí)施場(chǎng)景的模塊可以合并為一個(gè)模塊,也可以進(jìn)一步拆分成多個(gè)子模塊。
[0131] 上述本發(fā)明序號(hào)僅僅為了描述,不代表實(shí)施場(chǎng)景的優(yōu)劣。
[0132] 以上公開(kāi)的僅為本發(fā)明的幾個(gè)具體實(shí)施場(chǎng)景,但是,本發(fā)明并非局限于此,任何本 領(lǐng)域的技術(shù)人員能思之的變化都應(yīng)落入本發(fā)明的保護(hù)范圍。
【主權(quán)項(xiàng)】
1. 一種實(shí)時(shí)渲染方法,其特征在于,包括: 移動(dòng)終端對(duì)待渲染的三維戶型空間進(jìn)行切割,生成多個(gè)對(duì)應(yīng)單個(gè)房間的子空間; 所述移動(dòng)終端為各子空間設(shè)置預(yù)設(shè)個(gè)數(shù)的光源,并基于各子空間的大小對(duì)所述光源的 位置以及覆蓋范圍進(jìn)行調(diào)整; 所述移動(dòng)終端針對(duì)各子空間,基于調(diào)整后的光源對(duì)所述子空間進(jìn)行實(shí)時(shí)渲染。2. 如權(quán)利要求1所述的方法,其特征在于,所述移動(dòng)終端對(duì)待渲染的三維戶型空間進(jìn)行 切割,生成多個(gè)對(duì)應(yīng)單個(gè)房間的子空間,具體包括: 所述移動(dòng)終端確定待渲染的三維戶型空間; 所述移動(dòng)終端將所述三維戶型空間切割為多個(gè)房間,生成多個(gè)基于單個(gè)房間的切割空 間; 所述移動(dòng)終端基于預(yù)設(shè)的縮放參數(shù)對(duì)所述切割空間進(jìn)行縮放,生成對(duì)應(yīng)單個(gè)房間的子 空間。3. 如權(quán)利要求1所述的方法,其特征在于,所述光源,具體為聚光燈。4. 如權(quán)利要求1所述的方法,其特征在于,還包括: 所述移動(dòng)終端判斷子空間中是否存在有平行光; 若判斷結(jié)果為是,則基于所述平行光的方向,調(diào)整對(duì)應(yīng)所述方向的光源的強(qiáng)度。5. 如權(quán)利要求4所述的方法,其特征在于,所述對(duì)存在有平行光內(nèi)的光源的強(qiáng)度進(jìn)行調(diào) 整,具體是根據(jù)公式:PN=aP L來(lái)進(jìn)行的; 其中,Pn為調(diào)整后光源的強(qiáng)度; Pl調(diào)整前光源的強(qiáng)度; α為調(diào)整系數(shù)。6. -種移動(dòng)終端,其特征在于,包括: 切割模塊,用于對(duì)待渲染的三維戶型空間進(jìn)行切割,生成多個(gè)對(duì)應(yīng)單個(gè)房間的子空間; 第一調(diào)整模塊,用于為各子空間設(shè)置預(yù)設(shè)個(gè)數(shù)的光源,并基于各子空間的大小對(duì)所述 光源的位置以及覆蓋范圍進(jìn)行調(diào)整; 渲染模塊,用于針對(duì)各子空間,基于調(diào)整后的光源對(duì)所述子空間進(jìn)行實(shí)時(shí)渲染。7. 如權(quán)利要求6所述的移動(dòng)終端,其特征在于,所述切割模塊,具體用于: 確定待渲染的三維戶型空間; 將所述三維戶型空間切割為多個(gè)房間,生成多個(gè)基于單個(gè)房間的切割空間; 基于預(yù)設(shè)的縮放參數(shù)對(duì)所述切割空間進(jìn)行縮放,生成對(duì)應(yīng)單個(gè)房間的子空間。8. 如權(quán)利要求6所述的移動(dòng)終端,其特征在于,所述光源,具體為:聚光燈。9. 如權(quán)利要求6所述的移動(dòng)終端,其特征在于,還包括:第二調(diào)整模塊,用于判斷子空間 中是否存在有平行光; 若判斷結(jié)果為是,則基于所述平行光的方向,調(diào)整對(duì)應(yīng)所述方向的光源的強(qiáng)度。10. 如權(quán)利要求9所述的移動(dòng)終端,其特征在于,所述第二調(diào)整模塊對(duì)存在有平行光內(nèi) 的光源的強(qiáng)度進(jìn)行調(diào)整,具體是根據(jù)公式:ΡΝ=α?\來(lái)進(jìn)行的; 其中,Pn為調(diào)整后光源的強(qiáng)度; Pl調(diào)整前光源的強(qiáng)度; α為調(diào)整系數(shù)。
【文檔編號(hào)】G06T15/20GK105869205SQ201610249182
【公開(kāi)日】2016年8月17日
【申請(qǐng)日】2016年4月20日
【發(fā)明人】曹屹
【申請(qǐng)人】曹屹, 蘇芮