程 萍
(西華大學(xué)機(jī)械工程學(xué)院四川成都610039)
隨著計(jì)算機(jī)圖形學(xué)的進(jìn)步和快速發(fā)展的軟硬件技術(shù),虛擬現(xiàn)實(shí)技術(shù)(VR)越來越多的應(yīng)用到人們的工作、生活、娛樂之中。3D引擎作為一種底層工具支持高層圖形軟件開發(fā),可以把它看成是對(duì)3D API的封裝,對(duì)一些圖形通用算法的封裝,對(duì)一些底層工具的封裝;利用它可以快速開發(fā)3D應(yīng)用而不必關(guān)心底層細(xì)節(jié),如三維場(chǎng)景中旋轉(zhuǎn)、移動(dòng)、碰撞、特效等。本文用3dsmax[1]對(duì)場(chǎng)景建模,導(dǎo)入U(xiǎn)3D引擎中,進(jìn)行腳本編程實(shí)現(xiàn)用戶的交互行為控制[2-4]。
本模擬系統(tǒng)主要用于駕校的場(chǎng)地考試模擬訓(xùn)練,三維模擬與傳統(tǒng)的現(xiàn)場(chǎng)考試相比,主要有以下優(yōu)勢(shì):(1)便捷。人們可以隨時(shí)、隨地進(jìn)行駕駛模擬訓(xùn)練;(2)便宜。不用花很多錢去上駕校;(3)省時(shí)。在有空時(shí)即可打開電腦訓(xùn)練一下,而不用讓自己的假期在學(xué)車中渡過。當(dāng)然,本軟件有很多細(xì)節(jié)需要完善,特別是物理仿真這一塊。下面,主要介紹UI設(shè)計(jì)、汽車控制、腳本通信等主要部分。

圖1 系統(tǒng)的主要組成
為了提升用戶的交互體驗(yàn),利用UniSkin制作的按鈕來響應(yīng)鼠標(biāo)事件,如移動(dòng)、點(diǎn)擊等。此外,考慮不同用戶機(jī)的分辨率不同,制作按鈕時(shí)采用了顯示分辨率的自適應(yīng);在模式選擇和考試場(chǎng)地選擇時(shí),為了給用戶眼前一亮的感覺,制作了一組多次放大的移動(dòng)按鈕來吸引用戶的眼球。
考慮到用戶的屏幕分辨率有多種設(shè)置,而采用固定坐標(biāo)的控件位置會(huì)出現(xiàn)錯(cuò)誤。針對(duì)這種情況,設(shè)計(jì)一種默認(rèn)分辯率;然后,獲取用戶屏幕分辨率,并計(jì)算2種分辯率的縮放比例;最后,應(yīng)用于控件的坐標(biāo)。……