国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于增強(qiáng)現(xiàn)實(shí)技術(shù)的角色交互設(shè)計(jì)

2021-11-07 09:17薛瑩瑩
關(guān)鍵詞:組件按鈕建模

薛瑩瑩

(福州理工學(xué)院,福建 福州 350508)

0 引言

隨著計(jì)算機(jī)科學(xué)技術(shù)的發(fā)展,AR技術(shù)的應(yīng)用領(lǐng)域越發(fā)廣闊,AR產(chǎn)品逐步進(jìn)入受眾視野,潛移默化之中影響或改變著受眾的生活方式。從二維的平面視覺到三維的角色塑造,受眾對產(chǎn)品信息的接收,不在停留在單一方向上的被動獲取。與此同時,市場需求的多樣化,也要求產(chǎn)品角色在信息傳達(dá)方式上更加多元。而虛擬現(xiàn)實(shí)技術(shù)的革新,帶來了虛實(shí)結(jié)合、實(shí)時交互的全新用戶體驗(yàn)[1],讓受眾在虛擬化空間中與產(chǎn)品角色進(jìn)行對話,實(shí)現(xiàn)虛擬世界與真實(shí)世界的無縫連接[2]。

增強(qiáng)現(xiàn)實(shí)是一種三維自然交互技術(shù)[3],角色虛擬交互是增強(qiáng)現(xiàn)實(shí)角色特有的信息傳遞方式。基于AR技術(shù)來實(shí)現(xiàn)虛擬角色交互設(shè)計(jì)的過程中,可通過中間掃描設(shè)備,高效、快捷地實(shí)現(xiàn)三維角色與現(xiàn)實(shí)生活場景的超現(xiàn)實(shí)展示,進(jìn)而實(shí)現(xiàn)虛擬角色與受眾之間的“零距離”互動。在這一人機(jī)交互過程中,一方面,虛擬角色猶如潛在的推銷員,直接或間接對受眾傳遞著產(chǎn)品的商業(yè)信息,極大地提升了信息傳遞的有效性、準(zhǔn)確性。另一方面,虛擬角色與受眾如此自然、親近的交互方式,也為AR技術(shù)與行業(yè)合作提供了更加多元的角色經(jīng)濟(jì)發(fā)展空間。

1 基于增強(qiáng)現(xiàn)實(shí)技術(shù)的三維虛擬角色交互實(shí)現(xiàn)

增強(qiáng)現(xiàn)實(shí)技術(shù)是以計(jì)算機(jī)技術(shù)為基礎(chǔ),將虛擬信息自然地融合到真實(shí)世界中的技術(shù)[4]。Unity3D作為目前實(shí)用性較強(qiáng)的虛擬開發(fā)工具,具有動畫系統(tǒng)設(shè)定、圖形圖像處理、碰撞與觸發(fā)、粒子系統(tǒng)調(diào)用、光照烘焙等功能。該工具的最大優(yōu)點(diǎn)在于內(nèi)置配備多種標(biāo)準(zhǔn)應(yīng)用資源,允許玩家輕松實(shí)時創(chuàng)建互動內(nèi)容[5]。在設(shè)計(jì)實(shí)現(xiàn)的過程中可直接投入設(shè)計(jì)使用,結(jié)合Vuforia開發(fā)平臺及三維軟件創(chuàng)建與實(shí)現(xiàn),大大提升設(shè)計(jì)者的工作效率。

1.1 基于3DsMax三維虛擬角色建模

角色建模是三維虛擬動畫設(shè)計(jì)的基礎(chǔ)[6]。3DsMax角色建模功能強(qiáng)大、可擴(kuò)展性好[7],可結(jié)合角色后期動作對模型進(jìn)行優(yōu)化處理,實(shí)現(xiàn)角色模型設(shè)計(jì)與應(yīng)用性能的提升。基于3DsMax的軟件建模方式與設(shè)計(jì)制作特點(diǎn),可將三維虛擬角色建模分為以下幾點(diǎn):

1.1.1 前期設(shè)定

前期設(shè)定的主要任務(wù)是整合資料與確定角色定位。包括根據(jù)項(xiàng)目,基于目標(biāo)受眾需求與喜好,提煉設(shè)計(jì)元素,確定風(fēng)格與色調(diào)。結(jié)合Photoshop軟件對角色形象進(jìn)行提煉與概括,根據(jù)角色結(jié)構(gòu)特點(diǎn),繪制出正、側(cè)、背角色三視圖,為角色建模提供空間構(gòu)成依據(jù)。

1.1.2 模型創(chuàng)建

模型創(chuàng)建的主要任務(wù)是實(shí)現(xiàn)交互中的三維虛擬角色的模型設(shè)定,是核心環(huán)節(jié),涵蓋以下幾個創(chuàng)建內(nèi)容:

1)用Zbrush及3DsMax軟件進(jìn)行角色建模。結(jié)合角色三視圖,通過3DsMax中幾何體建模、參數(shù)設(shè)置、修改器的使用,創(chuàng)建角色輪廓。結(jié)合Zbrush軟件筆刷進(jìn)行推動和堆疊動作,進(jìn)一步刻畫角色細(xì)節(jié)部分,并在3DsMax中進(jìn)行面數(shù)的優(yōu)化及調(diào)整。

2)模型中的骨骼綁定。在創(chuàng)建骨骼時,確定人物模型的運(yùn)動關(guān)節(jié),根據(jù)模型每個部位構(gòu)造特征,進(jìn)行骨骼的創(chuàng)建。修改骨骼參數(shù)、調(diào)整骨骼大小以適配角色模型,并在修改器中設(shè)置蒙皮參數(shù),結(jié)合封套設(shè)置,對各個點(diǎn)的分配權(quán)重進(jìn)行重置,并測試權(quán)重分配準(zhǔn)確度。

3)UV展開與貼圖。根據(jù)角色造型特點(diǎn),設(shè)置UVV展開修改器參數(shù),在邊層級中調(diào)整與合理化設(shè)置切割線位置,以便完整平鋪多個部分。結(jié)合松弛參數(shù)、將貼圖高效匹配到原網(wǎng)格形狀上。隨后,將展開的UV模板導(dǎo)入到Photoshop軟件中,繪制對應(yīng)位置的貼圖內(nèi)容。通過貼圖、材質(zhì)設(shè)置,在烘焙技術(shù)的應(yīng)用下完成部分局部對象設(shè)計(jì)[8],以此實(shí)現(xiàn)角色設(shè)定預(yù)期效果。

1.2 AR識別卡的設(shè)置與制作

AR識別卡需要結(jié)合視覺和圖像識別的內(nèi)容進(jìn)行設(shè)置,并上傳到ARPet數(shù)據(jù)庫中,實(shí)現(xiàn)后續(xù)的信息匹配,主要包括以下兩部分:

1.2.1 識別卡的設(shè)置與設(shè)計(jì)

利用Photoshop、Illustrator繪圖軟件進(jìn)行AR識別卡的樣式設(shè)定,在識別卡設(shè)計(jì)中基于整體風(fēng)格繪制二維角色交互識別卡形象。在設(shè)計(jì)匹配角色交互識別卡時,需結(jié)合識別點(diǎn)的提取元素特點(diǎn),有效繪制識別轉(zhuǎn)折點(diǎn),并對識別卡進(jìn)行灰度處理,提取黑白圖像的尖銳處進(jìn)行測試。

1.2.2 Vuforia配置

在制作AR識別卡時,需要將AR識別卡樣式上傳到官方網(wǎng)站生成AR識別卡數(shù)據(jù)庫,獲取項(xiàng)目License Key,使用攝像頭掃描角色卡片生成虛擬角色。需要提前把角色卡片里面的信息進(jìn)行上傳,制作Target Manager。通過掃描并匹配角色數(shù)據(jù)信息,實(shí)現(xiàn)真實(shí)場景與虛擬角色的疊加展現(xiàn)。

1.3 虛擬角色交互設(shè)計(jì)

通過Unity3D技術(shù)結(jié)合Vuforia配置實(shí)現(xiàn)在移動設(shè)備(Android)上的交互應(yīng)用,完成受眾在任意真實(shí)環(huán)境中的虛擬角色互動過程。主要涉及以下幾點(diǎn):

1.3.1 動畫編輯制作

通過Unity3D中的Timeline組件對不同角色以及與角色綁定在同一環(huán)境下的旋轉(zhuǎn)按鈕進(jìn)入動畫編輯制作。結(jié)合動畫運(yùn)動規(guī)律及角色特點(diǎn),通過關(guān)鍵幀的設(shè)置方法對動畫關(guān)鍵位置進(jìn)行設(shè)定,在設(shè)置關(guān)鍵動畫時需注意動作的快慢在設(shè)置點(diǎn)上的準(zhǔn)確表達(dá),讓動畫節(jié)奏有緩有急。并設(shè)置動作的預(yù)備、極限、緩存動畫,調(diào)整中間動畫。

1.3.2 目標(biāo)的跟蹤和失去優(yōu)化

為避免因幀數(shù)跟蹤目標(biāo)丟失導(dǎo)致重播動畫效果。通過封裝ImageTargetMonitor組件進(jìn)行目標(biāo)狀態(tài)的監(jiān)聽并留下OnTracked()和OnLost()兩個抽象函數(shù)提供給子類進(jìn)行實(shí)現(xiàn)。在Update()函數(shù)中不斷監(jiān)聽目標(biāo)的狀態(tài)并與上一次狀態(tài)進(jìn)行比較,如果上一次狀態(tài)為失去,而這一次狀態(tài)為跟蹤,則表示跟蹤已經(jīng)成功,并對其執(zhí)行響應(yīng)的OnTracked()函數(shù)。當(dāng)上一次狀態(tài)為跟蹤,而這一次狀態(tài)為失去,則就標(biāo)記一個lostTime(失去的時間)但不會立刻執(zhí)行OnLost()函數(shù),而會等待一段時間,在這段時間內(nèi)檢測跟蹤目標(biāo)是否失去狀態(tài)以及當(dāng)時間是否超過定義的失去時間閾值,如果都滿足則會執(zhí)行OnLost()函數(shù)。以此來實(shí)現(xiàn)AR應(yīng)用所有角色進(jìn)入時都有進(jìn)入動畫、音樂和粒子效果播放等行為。而如果沒有狀態(tài)監(jiān)聽組件,則無法得知何時進(jìn)行動畫、音樂和粒子效果播放等行為。ImageTargetMonitor組件通過了OnTracked()抽象方法,子類重寫OnTracked()的方法控制進(jìn)入動畫播放的時機(jī)。如圖1所示。

圖1 子類繼承ImageTargetMonitor類

1.3.3 旋轉(zhuǎn)箭頭的設(shè)置

在按鈕設(shè)定過程中,結(jié)合3D呈現(xiàn)形式,并結(jié)合角色進(jìn)行綁定。旋轉(zhuǎn)箭頭會跟隨角色一同出現(xiàn),并配有進(jìn)場動畫。為實(shí)現(xiàn)上述功能,制作了一個Arrow組件,通過在Arrow組件中重寫OnValidate()方法,如圖2所示。使在開發(fā)過程中可以實(shí)時看到旋轉(zhuǎn)箭頭綁定上材質(zhì)和預(yù)覽發(fā)光顏色的功能。Arrow組件是一對旋轉(zhuǎn)按鈕其中包括向左旋轉(zhuǎn)按鈕和向右旋轉(zhuǎn)按鈕,而具體功能的實(shí)現(xiàn)是封裝在ArrowButton組件中,而Arrow組件只是對外的一個接口。左右旋轉(zhuǎn)按鈕各對應(yīng)一個ArrowButton組件。

圖2 Arrow類中的OnValidate方法

1.3.4 角色特效轉(zhuǎn)換

在點(diǎn)擊角色時,會出現(xiàn)相應(yīng)的特效表現(xiàn),角色的動作狀態(tài)也隨之更改。通過CharacterTransform組件進(jìn)行狀態(tài)的切換,CharacterTransform組件同樣繼承了TouchListener組件對點(diǎn)擊進(jìn)行監(jiān)聽。而點(diǎn)擊角色會在正常狀態(tài)和特效狀態(tài)之間進(jìn)行切換,并將角色原本的Shader、Mesh進(jìn)行替換。特效狀態(tài)使用動畫蒙皮網(wǎng)格的頂點(diǎn)作為發(fā)射點(diǎn),它使用特殊的Shader將頂點(diǎn)位置轉(zhuǎn)換為與GPU友好的數(shù)據(jù),從而避免花費(fèi)額外的內(nèi)存和CPU時間來處理它們,如圖3所示。

圖3 CharacterTransform類中OnEnter方法

1.3.5 小游戲的設(shè)定

在角色出現(xiàn)狀態(tài)下,設(shè)計(jì)了猜杯子的小游戲環(huán)節(jié)。編寫CupGame組件實(shí)現(xiàn)游戲的具體邏輯。通過CupGame中的GamePlay()方法進(jìn)行游戲的播放。在游戲播放時會出現(xiàn)三個杯子,杯子會罩住當(dāng)前角色,會通過變化位置來迷惑用戶進(jìn)行選擇。當(dāng)用戶點(diǎn)擊某個杯子后,調(diào)用CupGame中的GameResult()方法進(jìn)行游戲的答案提交。如圖4所示。

圖4 CupGame類中GameResult方法

1.3.6 系統(tǒng)設(shè)置按鈕制作

設(shè)置3個系統(tǒng)控制按鈕,分別為閃光燈的開與關(guān)、控制應(yīng)用是否靜音、控制角色視角切換。3個按鈕都只有生效和失效兩種狀態(tài),并抽象出1個設(shè)置按鈕的組件、實(shí)現(xiàn)狀態(tài)的UI形態(tài)控制,留下OnActive()和OnInactive()的抽象方法供子類復(fù)寫,控制3個按鈕的生效與失效的狀態(tài),避免重復(fù)編寫代碼。

2 實(shí)例測試分析

通過對以上表述中基于增強(qiáng)現(xiàn)實(shí)技術(shù)的三維虛擬角色交互設(shè)計(jì)進(jìn)行實(shí)例測試,以此來檢驗(yàn)角色交互設(shè)計(jì)中的合理性與有效性。

2.1 虛擬建模與識別卡測試

圖5 角色模型示意圖

角色的合理化設(shè)定,直接影響著受眾的視覺體驗(yàn)與整體感受,基于受眾的需求分析,角色設(shè)定時根據(jù)典型代表性形象,選擇:男、女、老、少、胖五種角色形象進(jìn)行建模,如圖5所示。

在與受眾進(jìn)行互動的過程中,VR識別卡的設(shè)計(jì)具有美觀性與視覺統(tǒng)一性特點(diǎn),如圖6所示。

圖6 5個角色模型的識別卡圖片

2.2 虛擬角色交互測試

該交互測試在使用Android系統(tǒng)的手機(jī)上進(jìn)行,硬件、軟件配置環(huán)境如表1所示。

表1 客戶端環(huán)境配置表

選擇Android 5.0系統(tǒng)手機(jī)進(jìn)行交互測試,界面加載正常,如圖7所示。

圖7 交互測試界面

在互動小游戲界面的設(shè)計(jì)中,游戲設(shè)置具有直觀性與易操作的特點(diǎn),如圖8所示。

圖8 小游戲效果展示

對5個角色調(diào)出使用時的性能全部進(jìn)行了測驗(yàn),包括軟件載入、識別靈敏性、系統(tǒng)流暢性的測試,如表2所示。

表2 交互性能測試結(jié)論

以上測試結(jié)果可以得出,5個角色的載入響應(yīng)時間均不超過6秒,可以快速進(jìn)入角色場景;掃描識別卡時可以正確迅速顯示相應(yīng)角色信息;使用系統(tǒng)時系統(tǒng)流暢。交互性能達(dá)到了較好的指標(biāo),符合性能要求。

3 結(jié)語

三維虛擬角色設(shè)計(jì)是鏈接商品信息與受眾的有效手段,虛擬交互也為人機(jī)交互方式帶來全新感知體驗(yàn)。三維虛擬角色設(shè)計(jì)的合理性關(guān)系到信息傳達(dá)的有效性與準(zhǔn)確性,基于Unity3D平臺與Vuforia設(shè)計(jì)開發(fā)的三維虛擬角色交互系統(tǒng),包容性大,在增加趣味性、交互性的同時還可降低開發(fā)成本,可為相關(guān)行業(yè)的虛擬角色塑造提供有效參考。

猜你喜歡
組件按鈕建模
無人機(jī)智能巡檢在光伏電站組件診斷中的應(yīng)用
物理建模在教與學(xué)實(shí)踐中的應(yīng)用
Kistler全新的Kitimer2.0系統(tǒng)組件:使安全氣囊和安全帶測試更加可靠和高效
在經(jīng)歷中發(fā)現(xiàn)在探究中建模
創(chuàng)建Vue組件npm包實(shí)戰(zhàn)分析
艦載雷達(dá)TR組件沖擊計(jì)算方法分析
聯(lián)想等效,拓展建?!浴皫щ娦∏蛟诘刃鲋凶鰣A周運(yùn)動”為例
求距求值方程建模
死循環(huán)
內(nèi)心不能碰的按鈕
曲阳县| 西贡区| 武义县| 南充市| 泰来县| 铁岭县| 南郑县| 平邑县| 兴隆县| 峨眉山市| 闻喜县| 安宁市| 乌拉特后旗| 甘肃省| 浮山县| 长兴县| 临安市| 建德市| 舞阳县| 莲花县| 辽阳县| 莎车县| 苗栗市| 广南县| 黔西县| 博兴县| 台州市| 康保县| 阳朔县| 平阴县| 海城市| 宜章县| 连南| 嘉定区| 丰宁| 铅山县| 乐山市| 湟源县| 广西| 营山县| 华容县|