張心悅 謝麗怡 李文娟
關鍵詞:3D場景構建;游戲開發(fā);虛擬現實;Unity3D;導航
0 引言
隨著經濟發(fā)展和社會進步,大學師生人數逐年增加,大學校園的規(guī)模也在不斷擴大。學生群體中既有初來乍到、不能很快熟悉新環(huán)境的新生,也有度過四年時光,不斷耕耘收獲,滿懷不舍之情即將遠航的畢業(yè)生,更有職場沉浮、念念不忘母校青春記憶的校友們。為了讓新生更快熟悉校園環(huán)境、給即將離開母校的畢業(yè)生和更多的校友留下真實美好的回憶,本文以杭州師范大學下沙校區(qū)為背景,在對校園環(huán)境和文化活動進行深入調研的基礎上,基于unity3D開發(fā)了一個校園漫游系統,通過模擬校園建筑物、環(huán)境等,讓使用者體驗到親臨其境的效果。
全景虛擬現實技術可以較好地展示目標場景,通過圖片幾何關系,讓人感受到虛擬影像中的三維立體空間關系,實現全方位瀏覽圖像景色[1-2]。近年來全景技術飛速發(fā)展,包括360°全方位實景圖像或視頻和VR(虛擬現實技術),以及后來由VR 進一步衍生出的AR(增強現實技術),均在各行業(yè)被廣泛應用且得到了很好的反饋[3]。隨著5G時代的到來,虛擬現實技術得到了快速的發(fā)展,搭建虛擬校園可以讓全國各地的新生足不出戶就可以游覽熟悉校園,了解校園文化和場地環(huán)境,通過交互獲得更多的學校信息[4],相較于傳統的校園宣傳,擁有更好的推廣效果[5]。
本文開發(fā)的校園漫游系統分為男女兩個人物視角,玩家既可以選擇女性角色,也可以選擇男性角色,通過圓盤控制人物在模擬的虛擬校園中進行游覽此外,還包含自動導航功能,能夠引導玩家找到相應的地方,同時查看對應地點的校園活動,當然,玩家也可以選擇地點進行場景直接跳轉。同時,系統還帶有若干交互式游戲。校園場景模擬的效果如圖1所示。
校園漫游系統的設計亮點如下:
1) 采用3D技術還原校園場景:首先,對校園實景進行采集并最大限度地加以還原,其次,通過地形地貌設計、場景整合、轉場特效等,以及加入天氣、動物元素,讓場景更加真實;
2) 具備自動導航功能:玩家可以設定目的地,系統將結合人物當前位置進行自動導航,也可選擇目的地進行場景的直接跳轉。
3) 交互方式豐富、體驗感強;添加了多場景交互式小游戲,實現游戲場景轉換,增加交互樣式,考慮光影效果、顏色搭配,通過較少的性能消耗使靜態(tài)場景看上去更真實、豐富,具備立體感,使整體游戲體驗十分豐滿。
本系統有助于方便師生學習生活工作,對宣傳校園文化、提升高校的知名度和影響力具有積極意義,也具有良好的應用、開發(fā)和推廣價值。
1 系統框架
本系統主要包括三個模塊:場景瀏覽主界面模塊,自動導航模塊和小游戲模塊,如圖2所示。
1) 場景瀏覽主界面模塊。在校園瀏覽界面中,玩家通過圓盤控制角色走動,以人物視角進行校園環(huán)境瀏覽。玩家還可以通過天氣控制按鈕切換天氣,以體驗不同天氣狀況下的校園風景,系統還能自動識別白天夜晚,使場景切換白天和黑夜的效果。體驗者控制人物走動到對應的校園的標志性建筑附近,會出現相應地點的介紹,在圖書館的信息欄處可以查看校園的活動。
2) 自動導航模塊。玩家可選擇想去的地點,系統會開啟自動導航,實現路線自動規(guī)劃。玩家還可以點擊場景切換按鈕,在彈出的地點選擇菜單中選擇想去的地點,實現地點的直接跳轉。
3) 小游戲模塊。本系統設計了三個小游戲:小貓喂食、知識問答和投籃。玩家可在知識問答和投籃游戲中獲得金幣,金幣可用于小貓喂食游戲中購買貓糧喂食。
2 系統設計實現
2.1 進入界面
以學校的寢室作為背景,中間是“憶錢江”校園漫游標題,點擊開始按鈕進入角色性別選擇界面,如圖3所示。
以3D校園的俯視圖為背景,體驗者可以選擇性別,完成性別選擇后進入校園瀏覽主界面。
2.2 校園瀏覽界面
2.2.1 控制角色走動
在校園瀏覽界面中,玩家可以通過圓盤控制角色走動,場景90%還原校園真實場景,體驗者可以通過人物視角進行校園環(huán)境的參觀,如圖4所示。
2.2.2 場景切換
在界面的右下角可以看到“場景切換”按鈕,點擊“場景切換”按鈕,會向左彈出地點選擇菜單,體驗者可以選擇想去的地點,實現地點的直接跳轉。
2.2.3 校園公告欄
為了讓玩家能夠更好地了解校園文化,當人物接近標志性建筑物時會出現校園活動介紹。
2.2.4 導航
體驗者可以點擊右下角的“導航”按鈕,選擇想去的地點,角色會進行自動導航,不用體驗者手動選擇圓盤,角色會自動規(guī)劃路線,走動到相應的地點。
2.2.5 天氣切換
在界面的左上角是“天氣控制”按鈕,體驗者可以切換天氣按鈕,用來體驗不同天氣下的校園風景,系統還會自動識別白天和夜晚,使場景切換白天和黑夜的效果,如圖5所示。
2.3 游戲
點擊界面右下角的“游戲”按鈕,進入小游戲的選擇界面,本系統包含小貓喂食、知識問答和投籃三款小游戲。
2.3.1 小貓喂食游戲
在小貓喂食游戲中,體驗者在商店中購買貓糧,點擊小貓進行投喂,小貓頭上的進度條為小貓的饑餓狀態(tài),當進度條被填滿時,小貓被喂飽,會在原地蹲下眨著眼睛看著體驗者,如圖6所示。
2.3.2 知識問答游戲
在知識問答游戲中,每次從題庫中隨機抽取三道題目,答對即可獲得金幣,金幣可用于購買貓食。
2.3.3 投籃游戲
在投籃游戲中,體驗者有三次機會可以進行投籃,將籃球投進籃球框中即為勝利。
3 關鍵技術
3.1 場景搭建
3.1.1 校園實景拍攝
以杭州師范大學下沙校區(qū)的真實場景為虛擬場景的搭建樣板,以圖書館、教學樓、行政樓和體育館等標志性建筑為主,包括學校的綠化景觀的構建,90% 還原真實校園場景,利用實景圖完成整個虛擬校園場景搭建。
3.1.2 地形地貌搭建
在Unity中建立地形(Terrain),在地形的屬性中有設置地形渲染的筆刷,可以導入地面的渲染模型。創(chuàng)建不同的筆刷,用筆刷對地面進行渲染,從而搭建出不同的地貌。
種植樹木的筆刷,可以選擇paint trees 下的edittrees選項,加入樹的模型,調整筆刷的參數,即可在地形上種植樹木。種植花草的筆刷,可以選擇paint de?tails 下的edit details button,點擊add grass texture,即可添加花草筆刷。表1和表2分別顯示了本系統種植樹木和花草所使用的筆刷屬性。
3.2 人物控制
3.2.1 使用搖桿控制
采用Easytouch插件進行人物控制。首先,在官網下載Easytouch插件后導入Unity項目中。創(chuàng)建一個虛擬搖桿,將搖桿與人物綁定,使用EasyTouch實現角色的轉向,再通過設置Camera,相機會跟隨在角色背后,即可通過移動搖桿來控制人物走動。圖7顯示了通過搖桿進行人物綁定的過程。
3.2.2 鍵盤控制人物
使用playmaker 插件實現鍵盤對人物動作的控制。將playmaker包和人物模型導入Unity項目中,創(chuàng)建Animator Controller,添加人物坐標變量Horizontal 和Vertical,在BlendTree中綁定人物向前走、向后走、向右走、向左走的動作,然后將Animator Controller綁定到人物。接下來為人物創(chuàng)建playmaker,將人物的坐標和變動實時記錄下來。上述步驟成功后便可使用鍵盤的上下左右(WSAD) 鍵控制人物走動。
3.3 導航系統
運用Unity自帶的Navigation實現人物的自動導航。主要步驟是:1) 首先進行地面烘焙:在地面In?spector面板中選中靜態(tài)(static)下拉選項的NavigationStatic,再依次選擇菜單欄中的Windows - Navigation,單擊該面板右下角的Bake按鈕,即可生成導航網格;2) 其次,設定可行走與不可行走地區(qū):通過點擊地面上的物體,將障礙物設置為不可行走部分。保證導航系統工作時,人物按照既定路線行走能分辨哪些地方可以行走、哪些不可以行走;3) 最后,創(chuàng)建C#代碼,綁定到人物上,即可進行人物的自動導航功能。
4 總結與展望
本文以杭州師范大學下沙校區(qū)為背景,運用VR 技術搭建了虛擬校園,使體驗者如身臨其境般在虛擬校園中自由漫步,了解校園地理環(huán)境和人文風貌,幫助新生更快地熟悉校園環(huán)境,讓畢業(yè)生能夠回憶往昔美好時光。