999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Unity3D的虛擬展廳風格定制的研究與實現

2017-02-05 02:13:12吳保文王勇堅
文山學院學報 2017年6期
關鍵詞:按鈕定義

吳保文,王勇堅,羅 勇

(1.文山學院 信息科學學院,云南 文山 663099;2.文山學院 藝術學院,云南 文山 663099)

隨著虛擬現實技術的發展,各類主題的數字展廳的應用層出不窮。中國的陶瓷文化歷史悠久,它的存在可以追溯到公元前8000年至2500年,是中華民族的發展史中重要的組成部分,它代表著中國歷史各個時期人們的審美。陶瓷是珍貴易碎的,將陶瓷藝術品應用于三維數字化技術的展示在文化遺產保護的行業內得到廣泛認可。

本展廳是以陶瓷文化展廳設計為例,使用3ds Max構建三維模型,在uniyt3D中實現漫游和交互的同時,把展廳風格的自由變換作為研究重點,實現了在不打開和編輯展廳源文件的情況下,只要通過菜單式選擇,就可以實現展廳不同風格材質的選擇與變換。

1 陶瓷虛擬展廳的開發流程

以陶瓷展品為主題的虛擬展廳首先使用AutoCAD繪制平面圖;然后在3ds Max中利用3d捕捉開關的圖形按鈕對平面圖中的直線進行擠出命令操作,按平面圖建立三維墻體,并建立三維模型,將完成的展廳三維模型導出為FBX格式;最后將在Unity 3D中為展廳添加材質和燈光、實現漫游和展廳風格的變換[1]。開發思路及流程如圖1所示:

圖1 陶瓷展廳開發流程

2 陶瓷展廳風格定制功能的實現

2.1 可變換對象的確定

展廳中的墻面、地板、吊頂和展臺表面均是展廳風格變換的對象,本展廳中共有28個對象實例需要進行材質的變換,把這些實例分別命名為a1、a2、a3……an……a28。

2.2 材質庫的建立

材質變換功能的實現,首先在場景中建立18個(根據開發需要自行確定可供用戶選擇的材質數量)不同顏色、紋理和風格的實例作為展廳風格變換的材質庫,并分別命名為Y1、Y2、Y3……Yn……Y18。

利用Unity 3D的按鈕組件創建18個按鈕,并定義anniu_01、anniu_02、……anniu_n、……anniu_18函數,用于選擇材質Y1、Y2、Y3……Yn……Y18。修改各按鈕的on click事件屬性,建立changeColor文件與按鈕的關聯,即當鼠標點擊按鈕時自動加載changeColor文件中對應的anniu_n函數。

2.3 材質的選擇與變換

為展廳創建一JSP腳本文件并命名為changeColor。本展廳實例材質的選擇與變換通過各按鈕加載此文件實現,changeColor文件中程序的推導及實現步驟如下:

1)定義兩個Color類型的變量oldcolor和newcolor,用來存放物體原來的和新替換的顏色或材質;

2)定義兩個布爾型變量jihuo和tj。jihuo作為是否選定各材質對應按鈕的判斷,并賦初值為否,即在未點擊裝修材質對應的按鈕之前,不能對變換實體an進行材質更改。變量tj表示選定變換的實例狀態,用于判斷用戶需要更改的物體是否選定,即用戶可以修改tj為真true的物體材質。

定義一個激活函數jihuo_daima(),當按鈕按下時jihuo的值變為true,表示可對展廳實例進行修改:

3)定義一個函數Start(),將Renderer組件下material中對應的顏色值賦給oldcolor的作為初值:

4)定義anniu_01、anniu_02、……anniu_n、……anniu_18函數,分別作為18個材質按鈕的觸發事件:

pd=1則表示按下的是第一個按鈕anniu_01、pd=2則表示按下的是第二個按鈕anniu_02,以此類推,pd=n則表示按下的是第n個按鈕;

newcolor=GameObject.Find("Yn").GetComponent(Renderer).material.color

表示把場景中命名為“Yn”物體的顏色或材質值存儲到newcolor變量中。如果pd=1,則newcolor的值為Y1的顏色,pd=2則newcolor的值為Y2的顏色值。每個按鈕的在點擊時都要響應對應的anniu_n函數。

5)定義鼠標劃過事件函數OnMouseOver(),用于修改鼠標劃過的某一場景實例狀態,將其顏色變為紅色:

6)定義鼠標按下事件函數OnMouseDown(),用于修改鼠標按下某一場景實例時,將其顏色變為白色:

7)定義鼠標退出事件函數OnMouseExit( ),用于實現場景實例顏色或材質的變換:

當鼠標退出時判斷tj為false或者pd為0,表示展廳實例或按鈕未被選中,展廳實例則保留原來的顏色或材質;當判斷tj為true并且pd不為0,即表示展廳某一實例和按鈕同時被選中,展廳實例將進行與按鈕相對應的顏色或材質替換。

8)每一次完成展廳實例材質的變換都需要將激活函數回復到未激活狀態,等待下一個展廳實例的選擇與材質變換。

3 結束語

本文在Unity 3D中通過JSP編程實現了用戶通過菜單操作與展廳進行交互控制,從而實現了用戶對展廳風格的一鍵式定制。此方法從材質變換的角度實現了對展廳的一次建模多次使用,為提高虛擬博物館的重復利用率提供了思路。

[1] 吳保文.基于3ds Max與Unity3D的虛擬展廳圖片更新的實現.文山學院學院學報[J].2016(6):56-58.

[2] 年愛華.基于Unity3D的三維虛擬展廳的設計與實現.廣東交通職業技術學院學報[J].2015(8):55-57.

[3] 吳亞峰.Unity開發實戰詳解[M].人民郵電出版社,2013.12.

[4] 朱惠娟.基于Unity3D的虛擬漫游系統[J]. 2012(12):56-58.

猜你喜歡
按鈕定義
這些按鈕能隨便按嗎?
哪個是門鈴真正的按鈕
當你面前有個按鈕
永遠不要用“起點”定義自己
海峽姐妹(2020年9期)2021-01-04 01:35:44
定義“風格”
死循環
成功的定義
山東青年(2016年1期)2016-02-28 14:25:25
內心不能碰的按鈕
商業評論(2014年9期)2015-02-28 04:32:41
修辭學的重大定義
當代修辭學(2014年3期)2014-01-21 02:30:44
山的定義
公務員文萃(2013年5期)2013-03-11 16:08:37
主站蜘蛛池模板: 日本在线国产| 久久鸭综合久久国产| 亚洲一级色| 亚洲精品在线观看91| 亚洲国产成人自拍| 国内自拍久第一页| 日韩精品亚洲精品第一页| 欧美中文字幕无线码视频| 99久久免费精品特色大片| 精品国产成人av免费| 日韩AV手机在线观看蜜芽| 国产浮力第一页永久地址| 狠狠色噜噜狠狠狠狠色综合久| 亚洲综合精品香蕉久久网| 国产成人艳妇AA视频在线| 中国特黄美女一级视频| 人人澡人人爽欧美一区| 国产欧美日韩综合一区在线播放| 99热这里只有成人精品国产| 中文字幕精品一区二区三区视频| 欧洲精品视频在线观看| 在线观看网站国产| 欧美亚洲香蕉| 国产成人精品在线| 国产成人精品免费av| 亚洲色图欧美激情| 亚洲视频一区在线| 亚洲黄色成人| 2021亚洲精品不卡a| 欧美午夜性视频| 国产杨幂丝袜av在线播放| 99久久人妻精品免费二区| 亚国产欧美在线人成| 精品色综合| 91黄视频在线观看| 国产欧美日韩在线一区| 五月婷婷精品| www.亚洲色图.com| 熟女视频91| 伊人久久婷婷| 草逼视频国产| 在线看片国产| 国产一区二区三区免费| 中文字幕欧美成人免费| 久久综合色视频| 日韩欧美在线观看| a免费毛片在线播放| 免费av一区二区三区在线| 国产精品视频猛进猛出| 看国产一级毛片| 91年精品国产福利线观看久久 | 黄网站欧美内射| 永久免费AⅤ无码网站在线观看| 91蝌蚪视频在线观看| 国产日韩精品欧美一区灰| 蜜桃视频一区二区| 一区二区无码在线视频| 国产一区二区色淫影院| 亚洲男人天堂网址| 国产又粗又爽视频| 91蜜芽尤物福利在线观看| 99久久国产精品无码| 2020国产在线视精品在| 亚洲成a∧人片在线观看无码| 91成人精品视频| 中文字幕色在线| 亚洲免费三区| 一区二区三区四区精品视频| 亚洲色图欧美在线| 成人夜夜嗨| 亚洲精品日产AⅤ| 久久中文字幕av不卡一区二区| 亚洲无码高清一区| 久久国产亚洲偷自| 好紧太爽了视频免费无码| 日韩高清成人| 国产精品黄色片| 亚洲成人福利网站| 国产日韩欧美成人| 亚洲精品无码人妻无码| 欧美激情视频一区二区三区免费| 亚洲三级成人|