梁志慧 鄭文鋒
摘? 要: 為了提高多角色虛擬人物三維仿真設(shè)計(jì)的可視化效果,綜合利用視覺傳達(dá)設(shè)計(jì)中的VR技術(shù)、傳感器技術(shù)以及虛擬人技術(shù),建立以虛擬人物三維模型為基礎(chǔ)的基于視覺傳達(dá)的多角色虛擬人物三維融合系統(tǒng)。采用三維仿真渲染工具Vega Prime進(jìn)行多角色虛擬人物三維造型模塊創(chuàng)建和虛擬場(chǎng)景仿真,然后設(shè)計(jì)了多角色虛擬人的運(yùn)動(dòng)算法,最終達(dá)到了用戶、三維仿真場(chǎng)景以及多角色虛擬人物之間的融合。仿真實(shí)驗(yàn)結(jié)果表明,采用該系統(tǒng)進(jìn)行多角色虛擬人物三維融合設(shè)計(jì)的可視化效果較好,滿足特殊角色人物三維造型設(shè)計(jì)要求。
關(guān)鍵詞: 三維融合系統(tǒng); 虛擬人物; 視覺傳達(dá); 系統(tǒng)設(shè)計(jì); VR技術(shù); 仿真實(shí)驗(yàn)
中圖分類號(hào): TN911.73?34; TP39? ? ? ? ? ? ? ? 文獻(xiàn)標(biāo)識(shí)碼: A? ? ? ? ? ? ? ? ? ? ? ?文章編號(hào): 1004?373X(2020)04?0117?03
Design of multi?role virtual character 3D fusion system based on visual communication
LIANG Zhihui, ZHENG Wenfeng
(Wuzhou University, Wuzhou 543002, China)
Abstract: On the basis of 3D model of virtual character, a multi?role virtual character 3D fusion system based on the visual communication is established with the VR technology, sensor technology and virtual human technology in the visual communication design, so as to improve the visualization effect of multi?role virtual character 3D simulation design. The construction of 3D modeling modules of multi?role virtual characters and the virtual scenes simulation are performed with Vega Prime, a 3D simulation rendering tool, and the motion algorithm of multi?role virtual character is designed, so as to achieve the fusion of users, 3D simulation scenes and multi?role virtual characters. The simulation results show that the visualization effect of multi?role virtual character 3D fusion designed with this system is well, which can meet the requirements of 3D modeling design for special role character.
Keywords: 3D fusion system; virtual character; visual communication; system design; VR technology; simulation experiment
隨著虛擬現(xiàn)實(shí)和三維仿真技術(shù)的發(fā)展,使用虛擬現(xiàn)實(shí)技術(shù)進(jìn)行多角色虛擬人物造型設(shè)計(jì),能夠多角度展示虛擬人物的三維造型[1]。現(xiàn)存系統(tǒng)中,對(duì)虛擬人物三維仿真設(shè)計(jì)的虛擬重建方法主要有點(diǎn)云融合、角點(diǎn)檢測(cè)以及圖形圖像處理方法等[2]。其中,文獻(xiàn)[3]提出基于VR技術(shù)的虛擬人物三維仿真設(shè)計(jì)方法,采用B/S架構(gòu)進(jìn)行多角色虛擬人物三維仿真設(shè)計(jì)模型的VR渲染和三維場(chǎng)景建模,在嵌入式Linux中完成虛擬人物三維仿真設(shè)計(jì)軟件開發(fā),但該系統(tǒng)進(jìn)行虛擬人物三維仿真設(shè)計(jì)中存在一定程度上比例失真,致使設(shè)計(jì)的虛擬人物逼真度不高。文獻(xiàn)[4]提出基于三層體系結(jié)構(gòu)的虛擬人物三維融合系統(tǒng)。該系統(tǒng)在人機(jī)交互環(huán)境下實(shí)現(xiàn)對(duì)多角色虛擬人物的綜合設(shè)計(jì),提高不同角色的虛擬人物在三維仿真場(chǎng)景下的沉浸感,但該系統(tǒng)對(duì)多角色虛擬人物設(shè)計(jì)實(shí)時(shí)處理性能不佳。
針對(duì)以上問題,本文引入視覺傳達(dá)設(shè)計(jì)理念,提出基于視覺傳達(dá)的多角色虛擬人物三維融合系統(tǒng)。實(shí)驗(yàn)結(jié)果表明,所設(shè)計(jì)的三維融合系統(tǒng)在優(yōu)化多角色虛擬人物三維仿真設(shè)計(jì)性能,以及提高虛擬人物多角色逼真度等方面具有優(yōu)越性能。
1? 多角色虛擬人物三維融合系統(tǒng)設(shè)計(jì)
1.1? 設(shè)計(jì)原理
基于B/S構(gòu)架進(jìn)行多角色虛擬人物三維融合系統(tǒng)總體設(shè)計(jì)構(gòu)架構(gòu)建[5],在嵌入式軟件環(huán)境、B/S構(gòu)架中進(jìn)行多角色虛擬人物圖像信息處理和界面的信息交互開發(fā),建立多角色虛擬人物塑造的影像處理系統(tǒng)。采用相關(guān)軟件開發(fā)進(jìn)行多角色虛擬人物塑造的網(wǎng)格化紋理渲染,選取MBM29LV400BC[6]作為系統(tǒng)邏輯譯碼控制組件,完成對(duì)虛擬人物多角色塑造的界面交互性處理。結(jié)合嵌入式總線控制技術(shù),提高多角色虛擬人物塑造過程中的信息整合以及相關(guān)特征融合能力。
1.2? 多角色虛擬人物造型設(shè)計(jì)模型總體建模
多角色虛擬人物塑造模型可劃分為圖像處理模塊、圖片編輯模塊、圖像三維重構(gòu)模塊、程序驅(qū)動(dòng)加載模塊、圖像3D渲染模塊及虛擬現(xiàn)實(shí)虛擬仿真模塊。利用嵌入式總線控制技術(shù)完成多角色虛擬人物設(shè)計(jì)的總線傳輸調(diào)度和信息采集?;谝陨戏治?,本文構(gòu)建的多角色虛擬人物塑造模型總體結(jié)構(gòu)如圖1所示。
2? 三維虛擬場(chǎng)景的構(gòu)建及渲染
2.1? 三維虛擬場(chǎng)景的構(gòu)建
使用體繪制方法進(jìn)行多角色虛擬人物塑造過程中的紋理渲染,在觀測(cè)體(Viewing Volume)模型中構(gòu)建虛擬場(chǎng)景數(shù)據(jù)庫,將虛擬場(chǎng)景數(shù)據(jù)庫中多角色虛擬人物構(gòu)造信息經(jīng)渲染指令實(shí)現(xiàn)相關(guān)程序輸出控制[7?8],有效提高多角色虛擬人物三維塑造模型控制能力。
2.2? 程序輸出控制
使用相關(guān)紋理渲染技術(shù)和三維場(chǎng)景數(shù)據(jù)庫模型構(gòu)建方法進(jìn)行多角色虛擬化特征繪制和可視化環(huán)境設(shè)計(jì)。在多角色虛擬人物塑造階段建立模型數(shù)據(jù)庫,使用0penFlight數(shù)據(jù)庫進(jìn)行多角色虛擬人物三維仿真設(shè)計(jì)中點(diǎn)云重構(gòu),虛擬人物三維仿真點(diǎn)云數(shù)據(jù)庫是整個(gè)模型構(gòu)建根本。使用Multigen Creator 3.2構(gòu)建模型,三維仿真場(chǎng)景數(shù)據(jù)庫中的多角色虛擬人物塑造數(shù)據(jù)信息根據(jù)系統(tǒng)渲染指令實(shí)現(xiàn)相關(guān)程序輸出。將多角色虛擬人物的三維仿真模型載入Vega Prime中,結(jié)合場(chǎng)景視化程序構(gòu)造多角色虛擬人物三維仿真模型開發(fā)庫,采用Matlab編程工具實(shí)現(xiàn)多角色虛擬人物三維仿真模型的三維開發(fā)[9]。使用三維可視化渲染工具Vega Prime進(jìn)行虛擬人物多角度三維仿真設(shè)計(jì)的功能系統(tǒng)構(gòu)建及視景仿真,建立相關(guān)程序輸出控制模塊,在輸出端完成虛擬人物三維仿真設(shè)計(jì)的視景仿真。采用套接字構(gòu)建網(wǎng)絡(luò)連通系統(tǒng),完成網(wǎng)絡(luò)控制和程序加載,具體過程如圖2所示。
3? 多角色虛擬化身運(yùn)動(dòng)建模與分析
3.1? 虛擬化身的運(yùn)動(dòng)學(xué)建模
本文所采用的三維仿真場(chǎng)景中,將不同角色虛擬人物視為OSG的一個(gè)節(jié)點(diǎn),該節(jié)點(diǎn)可發(fā)生水平、垂直、旋轉(zhuǎn)運(yùn)動(dòng),僅需變換虛擬人物最小單元的頂點(diǎn)坐標(biāo)[10],就可實(shí)現(xiàn)不同角色虛擬人物的移動(dòng)。設(shè)定虛擬人物可變換最小單元某一點(diǎn)坐標(biāo)為[(X,Y,Z)],根據(jù)該坐標(biāo)可創(chuàng)建虛擬人物抽象運(yùn)動(dòng)模型,即:
[x=V(t)cos(θt)dty=V(t)sin(θt)dtz=const-high] (1)
式中:[θ]表示三維虛擬人物運(yùn)動(dòng)變換角度;[V(t)]表示虛擬人物當(dāng)前運(yùn)動(dòng)速度;[x],[y]分別表示該人物在三維場(chǎng)景中的質(zhì)心位置;[z]表示與其相關(guān)的另一虛擬人物的高度。
3.2? 三維虛擬人物的運(yùn)動(dòng)
在虛擬場(chǎng)景中,由點(diǎn)構(gòu)成的三維虛擬人物根據(jù)軌跡做直線運(yùn)動(dòng)或轉(zhuǎn)彎運(yùn)動(dòng),設(shè)定該人物在虛擬場(chǎng)景中的當(dāng)前位置坐標(biāo)為[(x,y)],其偏轉(zhuǎn)角度為[θ],直線運(yùn)動(dòng)模型如圖3所示。
在三維虛擬場(chǎng)景的某個(gè)拐點(diǎn)處,采用線段分解方式將虛擬人物執(zhí)行的轉(zhuǎn)彎運(yùn)動(dòng)調(diào)整成直線運(yùn)動(dòng),但這種突發(fā)性轉(zhuǎn)換容易產(chǎn)生畫面抖動(dòng)。因此,本文采用圓弧形運(yùn)動(dòng)方式,當(dāng)發(fā)生突發(fā)性轉(zhuǎn)換時(shí),保證觀察者觀察到的畫面仍然流暢。轉(zhuǎn)彎運(yùn)動(dòng)模型如圖4所示。
圖4中,[r]表示轉(zhuǎn)彎半徑,運(yùn)動(dòng)時(shí)長(zhǎng)為[Δt]時(shí),轉(zhuǎn)角為[θ],此時(shí)該虛擬人物的質(zhì)心位置更新為:
[x′=x+r·cos θy′=y+r·sin θθ=180°·V(t)·Δt(2πr)] (2)
半徑[r]為:
[r=2P(P-c)(P-b)(P-c)(a+b+c)P=(a+b+c)2] (3)
式中,[a],[b],[c]分別表示虛擬人物可變換最小單元三個(gè)邊的長(zhǎng)度。
3.3? 虛擬人物多角色協(xié)同與場(chǎng)景融合
將不同虛擬人物的運(yùn)動(dòng)變換融合到一個(gè)三維虛擬場(chǎng)景中,虛擬人物的角色要在行為上協(xié)同工作,以免發(fā)生運(yùn)動(dòng)沖突。因此,需要先獲取三維虛擬場(chǎng)景的移動(dòng)路徑參數(shù),對(duì)不同移動(dòng)路徑做好規(guī)劃,為不同角色虛擬人物劃分與其行為相應(yīng)的移動(dòng)路徑。依據(jù)式(4)可給出不同角色的虛擬人物移動(dòng)軌跡限制關(guān)系:
[Dobj=min f(x,y)=(x-x1)2+(y-y1)2]? (4)
式中,[min f(x,y)≥max[Z1,Z2]2],即不同角色之間的閾值為最高的那個(gè)角色的[12]高度。
考慮到虛擬人物角色的多樣性、三維場(chǎng)景的復(fù)雜性,以及不同角色之間協(xié)同運(yùn)動(dòng)時(shí)的空間限制,利用有限狀態(tài)機(jī)自適應(yīng)決策不同角色的虛擬人物在各段移動(dòng)軌跡上的移動(dòng)決策策略。
4? 測(cè)試結(jié)果與分析
采用某游戲公司提供的多種角色測(cè)試本文提出的基于視覺傳達(dá)的多角色虛擬人物三維融合系統(tǒng)設(shè)計(jì)方法。實(shí)驗(yàn)環(huán)境為Windows 7操作系統(tǒng)、4 GB內(nèi)存、Intel Core i5?3470處理器、Matlab R2012a軟件。圖5為本文系統(tǒng)多角色虛擬人物的最終融合效果。
表1給出本文系統(tǒng)、文獻(xiàn)[3]系統(tǒng)、文獻(xiàn)[5]系統(tǒng)多角色虛擬人物三維融合時(shí)間對(duì)比結(jié)果。
分析上述多角色虛擬人物三維融合實(shí)驗(yàn)結(jié)果表明,本文系統(tǒng)可在短暫的時(shí)間內(nèi)快速根據(jù)已有的三維場(chǎng)景中的虛擬人物角色模型,構(gòu)造出多種類型的新角色虛擬人物。這些虛擬人物角色模型已經(jīng)得到合作的動(dòng)漫公司相關(guān)部門專業(yè)人員的認(rèn)可,可達(dá)到實(shí)際動(dòng)畫場(chǎng)景使用的要求。
5? 結(jié)? 語
本文研究基于視覺傳達(dá)的多角色虛擬人物三維融合系統(tǒng),提高虛擬人物三維仿真設(shè)計(jì)的逼真程度。結(jié)果表明,本文系統(tǒng)進(jìn)行多角色虛擬人物三維融合的輸出性能較好,可在短暫的時(shí)間內(nèi)快速根據(jù)已有的三維場(chǎng)景中的虛擬人物角色模型,構(gòu)造出多種類型的新角色虛擬人物。
參考文獻(xiàn)
[1] 劉霞,左長(zhǎng)輝,劉東東.Unity平臺(tái)下的交互式虛擬演播場(chǎng)景設(shè)計(jì)[J].電視技術(shù),2018,42(8):104?106.
[2] 崔麗.VR虛擬現(xiàn)實(shí)技術(shù)在三維游戲設(shè)計(jì)中的開發(fā)與實(shí)現(xiàn)[J].電視技術(shù),2018,42(5):49?53.
[3] 杜召平,杜艷.一種基于虛擬仿真技術(shù)的三維態(tài)勢(shì)顯示系統(tǒng)設(shè)計(jì)[J].艦船科學(xué)技術(shù),2018,40(9):141?143.
[4] 趙爾平,孟小峰.基于Spark的3D點(diǎn)云數(shù)據(jù)空間索引技術(shù)[J].計(jì)算機(jī)科學(xué),2018,45(9):213?219.
[5] 陳良超,詹勇,王俊勇.一種傾斜攝影實(shí)景三維模型單體化方法[J].測(cè)繪通報(bào),2018(6):71.
[6] 孫昭,柳有權(quán),張彩榮.一種場(chǎng)景內(nèi)容分布的交互式渲染系統(tǒng)[J].圖學(xué)學(xué)報(bào),2019,40(1):87?91.
[7] 呂立,姚拓中,宋加濤.基于單目視覺三維重建系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)工程,2018,44(12):239?245.
[8] 馮遠(yuǎn)靜,鄭天馳,陳曄,等.基于混合現(xiàn)實(shí)技術(shù)的實(shí)景騎行訓(xùn)練方法,CN110490978A[P].2019?11?22.
[9] 趙佳慧.庫淑蘭剪紙?jiān)O(shè)計(jì)構(gòu)成研究與善用[D].西安:西京學(xué)院,2018.
[10] 李瓊艷.新媒體營(yíng)銷中的視覺設(shè)計(jì)對(duì)品牌推廣的影響[J].西部皮革,2018(21):114.