郭曉民 莊學(xué)偉
(泉州經(jīng)貿(mào)職業(yè)技術(shù)學(xué)院,福建 泉州 362000)
體育運(yùn)動(dòng)一直以來都扮演著重要的社會(huì)和文化角色,同時(shí)也是人們互動(dòng)、鍛煉和娛樂的方式。其中,龍舟運(yùn)動(dòng)作為一項(xiàng)歷史悠久的傳統(tǒng)體育活動(dòng),具有豐富的內(nèi)涵[1]。由于現(xiàn)代生活節(jié)奏加快,許多人無法親身參與精彩的體育賽事。虛擬現(xiàn)實(shí)(VR)和體感交互技術(shù)飛速進(jìn)步,為大眾提供了親身模擬體驗(yàn)龍舟運(yùn)動(dòng)的機(jī)會(huì)。該文設(shè)計(jì)了一種基于體感交互技術(shù)的多人龍舟運(yùn)動(dòng)虛擬交互展示系統(tǒng),該系統(tǒng)將傳統(tǒng)的龍舟運(yùn)動(dòng)帶入數(shù)字時(shí)代,使更多人可以享受其樂趣。該系統(tǒng)使不同地區(qū)的龍舟愛好者使用虛擬現(xiàn)實(shí)頭盔和手柄模擬劃槳?jiǎng)幼?,通過虛擬龍舟賽事體驗(yàn)龍舟競(jìng)技精神。
基于體感交互技術(shù)的多人龍舟運(yùn)動(dòng)虛擬交互展示系統(tǒng)總框架如圖1所示。
圖1 基于體感交互技術(shù)的多人龍舟運(yùn)動(dòng)虛擬交互展示系統(tǒng)總框架圖
由圖1可知,基于體感交互技術(shù)的多人龍舟運(yùn)動(dòng)虛擬交互展示系統(tǒng)包括硬件設(shè)計(jì)、軟件設(shè)計(jì)2個(gè)部分。其中,硬件設(shè)計(jì)中采用Oculus Rift S系列的虛擬現(xiàn)實(shí)頭盔讓參與者進(jìn)入虛擬龍舟運(yùn)動(dòng)環(huán)境,為其提供視覺沉浸感;采用HTC Vive Controller系列的體感控制器模擬槳的劃動(dòng)動(dòng)作,使參與者與虛擬環(huán)境進(jìn)行互動(dòng);采用Oculus Rift內(nèi)置傳感器實(shí)時(shí)跟蹤參與者的運(yùn)動(dòng)狀態(tài)。軟件設(shè)計(jì)包括虛擬環(huán)境建模模塊、用戶界面和交互模塊、多人在線模塊以及訓(xùn)練模塊4個(gè)部分。虛擬環(huán)境建模模塊通過實(shí)時(shí)三維建模技術(shù)將真實(shí)的龍舟賽道、自然景觀、龍舟以及其他物體精確地還原到虛擬環(huán)境中;用戶界面和交互模塊根據(jù)虛擬建模模塊建設(shè)的賽道分成不同的模式供參賽者選擇,同時(shí)參賽者通過控制體感控制器進(jìn)行虛擬龍舟運(yùn)動(dòng);多人在線模塊通過網(wǎng)絡(luò)連接為不同地點(diǎn)的多名參與者提供互動(dòng)和競(jìng)技的機(jī)會(huì);訓(xùn)練模塊為新手提供教程,解釋龍舟賽事的規(guī)則和技巧。以上硬件、軟件的相互配合,可以為參與者提供全面的虛擬龍舟運(yùn)動(dòng)體驗(yàn)。
在基于體感交互技術(shù)的多人龍舟運(yùn)動(dòng)虛擬交互展示系統(tǒng)中,虛擬環(huán)境建模模塊起到關(guān)鍵作用,其通過實(shí)時(shí)三維建模技術(shù)和物理引擎來還原龍舟運(yùn)動(dòng)的真實(shí)場(chǎng)景,增強(qiáng)參與者的沉浸感[2]。具體虛擬環(huán)境建模模塊流程如圖2所示。
圖2 虛擬環(huán)境建模模塊流程
由圖2可知,采集現(xiàn)實(shí)世界中龍舟賽道、自然景觀、龍舟以及其他物體的數(shù)據(jù)后,建模師將采集到的數(shù)據(jù)轉(zhuǎn)換為三維模型,并用三維建模軟件創(chuàng)建虛擬環(huán)境中的物體和場(chǎng)景,根據(jù)物理引擎原理使用其中的數(shù)學(xué)模型來模擬自然元素,用納維-斯托克斯(Navier-Stokes)方程模擬流體動(dòng)力學(xué),如公式(1)所示。
式中:ρ為密度;t為時(shí)間變量;u為速度向量;為壓力梯度;η為動(dòng)力黏性系數(shù);為速度的拉普拉斯算子;為速度的梯度;g為重力加速度。
通過碰撞檢測(cè)模塊檢測(cè)物體之間的交點(diǎn)或重疊,從而確定是否發(fā)生碰撞;根據(jù)碰撞檢測(cè)模塊檢測(cè)到的數(shù)據(jù)并通過數(shù)據(jù)反饋模塊計(jì)算物體之間的力或振動(dòng),用牛頓定律進(jìn)行計(jì)算,如公式(2)所示。
式中:F為力;m為物體的質(zhì)量;a為加速度。
數(shù)據(jù)反饋接收數(shù)據(jù)后進(jìn)行驗(yàn)證并確認(rèn)數(shù)據(jù)的完整性、準(zhǔn)確性,采用圖像處理技術(shù)對(duì)紋理進(jìn)行過濾、著色以及增強(qiáng)濾鏡,再采用WebSocket通信對(duì)競(jìng)賽實(shí)況進(jìn)行實(shí)時(shí)更新,根據(jù)所發(fā)生的狀態(tài)變化來調(diào)整模型狀態(tài)。
用戶界面和交互模塊是確保參與者可以輕松掌握系統(tǒng)并享受虛擬龍舟運(yùn)動(dòng)的關(guān)鍵組成部分,同時(shí)為參與者提供直觀的選擇界面和實(shí)時(shí)響應(yīng)的交互體驗(yàn)。主要包括以下2個(gè)部分:1) 用戶界面設(shè)計(jì)。用戶界面是參與者與系統(tǒng)互動(dòng)的窗口,因此非常重要,用戶界面為參與者提供清晰簡(jiǎn)潔的選項(xiàng),讓參與者選擇不同的龍舟運(yùn)動(dòng)模式。如圖3所示,用戶界面有競(jìng)技、多人競(jìng)賽以及訓(xùn)練模式3種選項(xiàng)供參與者選擇。此外,還有設(shè)置選項(xiàng),使參與者通過自身的喜好調(diào)整音頻、圖形以及靈敏度等設(shè)置來獲得最佳虛擬龍舟運(yùn)動(dòng)體驗(yàn)。界面還包括參與者游戲進(jìn)度和成就的顯示模塊,可以記錄參與者的游戲數(shù)據(jù)。2) 交互控制。參與者通過使用體感控制器來模擬劃槳?jiǎng)幼?,這些控制器與虛擬龍舟的運(yùn)動(dòng)緊密連接[3]。同時(shí),交互控制需要實(shí)時(shí)響應(yīng),采用低延遲的通信協(xié)議和技術(shù)保證參與者的動(dòng)作能夠立即反映在虛擬環(huán)境中,縮短響應(yīng)延遲時(shí)間差,響應(yīng)延遲時(shí)間差是參與者執(zhí)行某個(gè)動(dòng)作的時(shí)間與虛擬環(huán)境中相應(yīng)變化的差異,具體計(jì)算方法如公式(3)所示。
圖3 虛擬龍舟用戶界面設(shè)計(jì)
式中:Ta為延遲時(shí)間;Tc為虛擬環(huán)境響應(yīng)時(shí)間;Td為參與者執(zhí)行動(dòng)作時(shí)間。
此外,在控制器中嵌入振動(dòng)裝置馬達(dá),設(shè)置震動(dòng)強(qiáng)度為2.5 m/s2,參與者也可以根據(jù)自身所處的虛擬環(huán)境設(shè)置對(duì)應(yīng)的震動(dòng)強(qiáng)度和頻率。綜上所述,用戶界面和交互控制模塊的設(shè)計(jì)需要注重面向參與者的友好性和可訪問性,保證不同地區(qū)的參與者都能輕松參與虛擬龍舟運(yùn)動(dòng)。
多人在線模塊使不同地點(diǎn)的參與者可以互相連接,共享虛擬龍舟運(yùn)動(dòng),其設(shè)計(jì)目的是增強(qiáng)參與者之間的社交互動(dòng)性,使參與者可以在虛擬環(huán)境中競(jìng)技或協(xié)作,與其他龍舟運(yùn)動(dòng)愛好者共享樂趣。具體設(shè)計(jì)步驟如下:1) 選擇虛擬專用服務(wù)器(VPS)承載多人在線模式,采用負(fù)載均衡和自動(dòng)擴(kuò)展技術(shù)處理大量參與者連接,通過TCP通信協(xié)議實(shí)現(xiàn)多地點(diǎn)參與者的網(wǎng)絡(luò)的連接,采用內(nèi)容分發(fā)網(wǎng)絡(luò)(CDN)提供更穩(wěn)定的內(nèi)容傳輸和減少網(wǎng)絡(luò)延遲。2)采用TLS協(xié)議進(jìn)行系統(tǒng)數(shù)據(jù)加密,保障數(shù)據(jù)在傳輸過程中的安全性,建立參與者身份驗(yàn)證和授權(quán)機(jī)制,防止未經(jīng)授權(quán)參與者的訪問,遵循GDPR隱私法規(guī),確保參與者的隱私信息受到保護(hù)保護(hù)。3) 采用網(wǎng)絡(luò)通信庫(kù)(WebSocket)來實(shí)現(xiàn)實(shí)時(shí)數(shù)據(jù)傳輸,用音視頻編解碼器支持參與者之間進(jìn)行實(shí)時(shí)音頻和視頻通信。4) 采用Apache JMeter性能測(cè)試工具模擬多人在線場(chǎng)景,測(cè)量網(wǎng)絡(luò)延遲、帶寬需求和服務(wù)器負(fù)載的情況,同步對(duì)HTTP性能測(cè)試結(jié)果進(jìn)行分析,解決性能瓶頸,再邀請(qǐng)參與者參與測(cè)試,采用Survey Monkey在線反饋工具收集參與者的意見和建議。5) 定期更新系統(tǒng)組件、操作系統(tǒng)和安全補(bǔ)丁,修復(fù)已知漏洞,部署防火墻、入侵檢測(cè)系統(tǒng)(intrusion detection system,IDS)和反病毒軟件來防范網(wǎng)絡(luò)攻擊。
通過上述步驟,多人在線模塊可以實(shí)現(xiàn)多地點(diǎn)參與者的全球互聯(lián),也可以為參與者提供實(shí)時(shí)互動(dòng)和高度安全的龍舟在線運(yùn)動(dòng)體驗(yàn)。
訓(xùn)練模塊可以幫助新手參與者逐步熟悉龍舟賽事規(guī)則和技巧,同時(shí)為其提供實(shí)時(shí)練習(xí)反饋,幫助參與者不斷提升技能。主要包括以下2個(gè)部分:1) 教育性功能。訓(xùn)練模塊包括一系列新手教程,以引導(dǎo)初學(xué)者了解龍舟賽事的基本規(guī)則、龍舟的結(jié)構(gòu)以及槳的使用方法等。這些教程包括文字說明、圖像示范和視頻教程。同時(shí),為參與者提供不同類型的龍舟賽事(例如競(jìng)速、協(xié)作賽事)的介紹和解釋,使參與者了解各種賽事的特點(diǎn)和規(guī)則,向參與者提供關(guān)于正確劃槳?jiǎng)幼?、團(tuán)隊(duì)協(xié)作技巧和龍舟控制的技術(shù)指導(dǎo),評(píng)估參與者劃槳的節(jié)奏、平衡性等指標(biāo),將這些指標(biāo)轉(zhuǎn)化為技能得分評(píng)估參與者的技能水平。參與者劃槳節(jié)奏的得分如公式(4)所示。根據(jù)參與者操縱龍舟的水平和垂直平衡性計(jì)算其平衡性的得分,如公式(5)所示(利用公式(5)可以評(píng)估參與者在龍舟運(yùn)動(dòng)中的準(zhǔn)確性)。2) 進(jìn)度追蹤。訓(xùn)練模塊學(xué)習(xí)管理系統(tǒng)(LMS)跟蹤參與者游戲的進(jìn)度和成就,記錄其完成的教程、提高的技能水平等,以鼓勵(lì)參與者繼續(xù)學(xué)習(xí)和訓(xùn)練。同時(shí),采用游戲化元素(例如任務(wù)、獎(jiǎng)勵(lì)以及成就系統(tǒng))來提高參與者的參與度和積極性,可以獎(jiǎng)勵(lì)參與者完成任務(wù)或挑戰(zhàn)成功后獲得虛擬貨幣,可購(gòu)買虛擬物品或升級(jí)。采用機(jī)器學(xué)習(xí)模型分析參與者的學(xué)習(xí)和訓(xùn)練數(shù)據(jù),為其提供個(gè)性化的建議和反饋。此外,NLP技術(shù)可以更好地理解參與者提出的問題,快速為其提供精確合理的答案,通過建立參與者模型,系統(tǒng)可以根據(jù)每位參與者的需求和技能水平提供個(gè)性化的學(xué)習(xí)路徑和建議。
式中:S為節(jié)奏得分;C實(shí)際為參與者實(shí)際的節(jié)奏;S理想為系統(tǒng)設(shè)定的理想節(jié)奏值。
式中:H為參與者平衡性得分值;A實(shí)際為參與者實(shí)際操作的平衡值;I理想為系統(tǒng)設(shè)定的理想平衡值。
為了保證基于體感交互技術(shù)的多人龍舟運(yùn)動(dòng)虛擬交互展示系統(tǒng)運(yùn)行的穩(wěn)定性、可靠性,通過模擬試驗(yàn)測(cè)試系統(tǒng)的性能。試驗(yàn)測(cè)試需要準(zhǔn)備Intel Xeon Gold 6254系列的雙插槽服務(wù)器,每個(gè)插槽支持多個(gè)核心和線程,具備1TBDDR4ECC的內(nèi)存容量;采用Microsoft SQL Server系列的數(shù)據(jù)庫(kù)儲(chǔ)存與傳輸數(shù)據(jù),采用Unity Test Runner系列的測(cè)試工具測(cè)試虛擬環(huán)境的性能以及遠(yuǎn)程桌面數(shù)據(jù)管理工具VCN等設(shè)備,確保其配置足夠支持試驗(yàn)順利進(jìn)行。
結(jié)合采集的數(shù)據(jù)對(duì)基于體感交互技術(shù)的多人龍舟運(yùn)動(dòng)虛擬交互展示系統(tǒng)進(jìn)行分析,并生成詳細(xì)的試驗(yàn)報(bào)告,從而對(duì)該平臺(tái)的運(yùn)行效率和穩(wěn)定性進(jìn)行評(píng)估。試驗(yàn)數(shù)據(jù)見表1。
表1 試驗(yàn)數(shù)據(jù)結(jié)果
由表1可知,系統(tǒng)最長(zhǎng)響應(yīng)時(shí)間為45 ms,最短響應(yīng)時(shí)間為78 ms,平均響應(yīng)時(shí)間為32 ms,平均響應(yīng)時(shí)間低于50 ms,表明該系統(tǒng)在響應(yīng)參與者操作方面表現(xiàn)出色;平均幀速率為90 f/s,最低幀速率為80 f/s,最高幀速率為100 f/s,最低幀速率>80 f/s,表明該系統(tǒng)在幀速率方面表現(xiàn)良好;系統(tǒng)平均延遲時(shí)間為20 ms,最長(zhǎng)延遲時(shí)間為35 ms,最短延遲時(shí)間為15 ms,測(cè)試的延遲時(shí)間<20 ms,最長(zhǎng)延遲時(shí)間相對(duì)較短,這表明當(dāng)參與者啟動(dòng)游戲時(shí),系統(tǒng)能夠迅速響應(yīng)。綜上所述,基于體感交互技術(shù)的多人龍舟運(yùn)動(dòng)虛擬交互展示系統(tǒng)在性能測(cè)試方面表現(xiàn)出色,該系統(tǒng)的響應(yīng)時(shí)間、幀速率和延遲時(shí)間都在可接受范圍內(nèi),需要注意的是,要繼續(xù)優(yōu)化最長(zhǎng)響應(yīng)時(shí)間,保證系統(tǒng)在各種情況下的響應(yīng)性能一致,從而進(jìn)一步提升參與者的游戲體驗(yàn)。
基于體感交互技術(shù)的多人龍舟運(yùn)動(dòng)虛擬交互展示系統(tǒng)代表了虛擬現(xiàn)實(shí)技術(shù)在娛樂和體育領(lǐng)域的創(chuàng)新應(yīng)用。通過該系統(tǒng),參與者可以在虛擬環(huán)境中體驗(yàn)真實(shí)的龍舟運(yùn)動(dòng),可以與全球的龍舟運(yùn)動(dòng)愛好者互動(dòng),還可以提高技能并享受社交的樂趣。該文圍繞該系統(tǒng)的虛擬環(huán)境建模、用戶界面設(shè)計(jì)以及多人在線互動(dòng)進(jìn)行研究,確保系統(tǒng)可以提供給參與者最佳的體驗(yàn),并通過全面測(cè)試系統(tǒng)性能來進(jìn)一步優(yōu)化系統(tǒng),以期為虛擬現(xiàn)實(shí)技術(shù)在娛樂和體育領(lǐng)域的發(fā)展提供有力的支持和啟示。