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

?

基于Unity平臺的漫游交互系統(tǒng)的設(shè)計

2014-11-15 20:09董健
軟件工程 2014年11期

董健

摘 要:隨著網(wǎng)絡(luò)及計算機技術(shù)的發(fā)展,3D實景虛擬漫游已經(jīng)作為一種全新的展示在房產(chǎn)銷售中普遍運用。本系統(tǒng)運用了3Dmax、Photoshop、Unity3D軟件,參考現(xiàn)實廣場小區(qū),創(chuàng)建虛擬場景。為達(dá)到預(yù)期效果,通過骨骼動畫及JavaScript語言實現(xiàn)控制角色移動轉(zhuǎn)向等動作,用戶可以對場景自主漫游、瀏覽,讓用戶真正沉浸在虛擬交互環(huán)境當(dāng)中,實現(xiàn)用戶與虛擬環(huán)境直接交互。

關(guān)鍵詞:UV貼圖;Unity3D;交互漫游

中圖分類號:TP391.9 文獻標(biāo)識碼:A

1 引言(Introduction)

虛擬環(huán)境系統(tǒng)都是以真實場景為藍(lán)圖,可以實現(xiàn)訪問者自動漫游虛擬漫游系統(tǒng)是基于地理信息系統(tǒng)技術(shù)、虛擬現(xiàn)實技術(shù)、寬帶網(wǎng)絡(luò)技術(shù)、多媒體技術(shù)、計算機圖形學(xué)等高新技術(shù)[1],將真實地理空間信息和其屬性信息相結(jié)合,構(gòu)建一個逼真的、具有視覺、聽覺、觸覺的虛擬景觀,用戶可以利用計算機網(wǎng)絡(luò)遠(yuǎn)程訪問這個全新的虛擬景觀,通過終端計算機在虛擬景觀中漫游。

漫游系統(tǒng)在目前遇到的最大的困難就是在設(shè)計和使用中,因為計算機性能的限制,無法做到模型的精細(xì)程度和漫游畫面的實時性做到完美的統(tǒng)一。要求我們能夠針對系統(tǒng)設(shè)計的要求進行取舍[2]。

2 場景漫游的實現(xiàn)方法(Method for realizing the

scene roaming)

要實現(xiàn)漫游主要有三個要素,首先是一個完整的虛擬場景,其次是帶有行走動畫的角色,最后是操控角色的代碼控制[3]。其中實現(xiàn)漫游的關(guān)鍵就是在Unity3D中通過JavaScript語言控制綁定人物骨骼動畫的角色在虛擬場景中按照用戶的意圖實現(xiàn)自主交互式漫游。在這里我們采用的是Unity3D來構(gòu)建我們的漫游系統(tǒng),Unity3D是目前比較流行的用于三維動畫場景模擬、游戲設(shè)計等全面的綜合設(shè)計引擎。

3 場景漫游系統(tǒng)的總體設(shè)計(The overall design of

scene walkthrough system)

3.1 系統(tǒng)的技術(shù)平臺架構(gòu)

本系統(tǒng)基于Unity3D實現(xiàn)漫游交互,在系統(tǒng)當(dāng)中用戶控制角色漫游,通過角色視角的變化讓用戶了解該場景,主要的架構(gòu)如圖1所示。

圖1 系統(tǒng)技術(shù)架構(gòu)圖

Fig.1 Technical system architecture

3.2 系統(tǒng)的開發(fā)流程介紹

作為一個虛擬漫游系統(tǒng),整個設(shè)計過程包含了四個過程,分別是問題分析、采集場景參數(shù)、建立虛擬場景、實現(xiàn)漫游。主要的過程框架圖如圖2所示。

圖2 系統(tǒng)流程圖

Fig.2 Flow chart of the system

4 基于Unity3D漫游系統(tǒng)的實現(xiàn)(Realization of

roaming system based on Unity3D)

4.1 場景中角色的控制

本系統(tǒng)主要構(gòu)建的是一個建筑小區(qū)廣場漫游系統(tǒng),在本系統(tǒng)中可以實現(xiàn)人物前后左右的任意行走、跳躍,可以觀察到所建場景的任意一個角度,不會產(chǎn)生人物與建筑的穿插,含有碰撞檢測系統(tǒng),使人物行走觀察更為合理[4]。

利用Unity3D提供的Java Script語言編寫人物控制腳本,實現(xiàn)人物的移動的調(diào)用,腳本如下:

var Bip01:GameObject;

function Update () { ren=GameObject.Find("meng");

if(ren==null){

return;}

if(Input.GetKey(KeyCode.Space)) {

animation.CrossFade ("jump"); }

else{

animation.CrossFade ("idle"); }

將編輯好的腳本添加到場景中的人物模型上,即可實現(xiàn)相應(yīng)功能。

4.2 漫游視角的控制

在本漫游系統(tǒng)當(dāng)中我們設(shè)定了第三人稱視角。根據(jù)鼠標(biāo)控制攝像機來控制視角,利用Unity3D提供的C# Script MouseLook腳本編寫攝像機腳本,使攝像機跟隨人物運動,右鍵控制視角旋轉(zhuǎn),滾輪縮放視距。

using UnityEngine;

public RotationAxes axes = RotationAxes.MouseXAndY;

void Update ()

{ target = GameObject.Find("N1");

// 滾輪設(shè)置相機與人物的距離.

if(Input.GetAxis("Mouse ScrollWheel") != 0)

{theDistance = theDistance + Input.GetAxis("Mouse ScrollWheel") * Time.deltaTime * ScrollKeySpeed; }

4.3 場景碰撞模型的實現(xiàn)

當(dāng)角色靠近被碰撞物體時,系統(tǒng)根據(jù)碰撞檢測算法檢測該物體的尺寸,若被檢物體高度低于預(yù)設(shè)值則角色可以通過,反之,角色被物體擋住無法前進[5],如圖3所示碰撞檢測原理圖。

圖3 碰撞檢測原理圖

Fig.3 Schematic diagram of collision detection

在Unity3D當(dāng)中集成了碰撞檢測模塊,在Apply Root motion后面打鉤即可,臺階高度碰撞設(shè)定是調(diào)整Step Offset的數(shù)值來實現(xiàn)的。

5 結(jié)論(Conclusion)

交互式的漫游系統(tǒng)在現(xiàn)在的社會生活中應(yīng)用的越來越廣泛,成為了一個前景十分看好的技術(shù)領(lǐng)域。虛擬場景讓用戶“身臨其境”地在漫游中進行多角度體驗性觀察,尤其是針對于建筑行業(yè)以及需要進行數(shù)字化展示的特殊行業(yè),多角度全方位的展示與互動也必將成為以后技術(shù)發(fā)展的新方向。

參考文獻(References)

[1] 趙俊昌,程朝武.3DS MAX2010游戲設(shè)計師必備實戰(zhàn)寶典[M].

北京:科學(xué)出版社,2010.

[2] 張凡,諶寶業(yè).3DS MAX游戲場景設(shè)計[M].北京:中國鐵道出

版社,2009.

[3] 宣雨松.Unity 3D游戲開發(fā)[M].北京:人民郵電出版社,2012.

[4] 胡安林.3DS MAX材質(zhì)與貼圖應(yīng)用技法精粹[M].北京:科學(xué)

出版社,2008.

[5] 程罡,吳江濤.三維游戲場景設(shè)計與制作[M].北京:電子工業(yè)出

版社,2010.

作者簡介:

董 ?。?980-),男,碩士,講師.研究領(lǐng)域:多媒體信息處理.endprint

摘 要:隨著網(wǎng)絡(luò)及計算機技術(shù)的發(fā)展,3D實景虛擬漫游已經(jīng)作為一種全新的展示在房產(chǎn)銷售中普遍運用。本系統(tǒng)運用了3Dmax、Photoshop、Unity3D軟件,參考現(xiàn)實廣場小區(qū),創(chuàng)建虛擬場景。為達(dá)到預(yù)期效果,通過骨骼動畫及JavaScript語言實現(xiàn)控制角色移動轉(zhuǎn)向等動作,用戶可以對場景自主漫游、瀏覽,讓用戶真正沉浸在虛擬交互環(huán)境當(dāng)中,實現(xiàn)用戶與虛擬環(huán)境直接交互。

關(guān)鍵詞:UV貼圖;Unity3D;交互漫游

中圖分類號:TP391.9 文獻標(biāo)識碼:A

1 引言(Introduction)

虛擬環(huán)境系統(tǒng)都是以真實場景為藍(lán)圖,可以實現(xiàn)訪問者自動漫游虛擬漫游系統(tǒng)是基于地理信息系統(tǒng)技術(shù)、虛擬現(xiàn)實技術(shù)、寬帶網(wǎng)絡(luò)技術(shù)、多媒體技術(shù)、計算機圖形學(xué)等高新技術(shù)[1],將真實地理空間信息和其屬性信息相結(jié)合,構(gòu)建一個逼真的、具有視覺、聽覺、觸覺的虛擬景觀,用戶可以利用計算機網(wǎng)絡(luò)遠(yuǎn)程訪問這個全新的虛擬景觀,通過終端計算機在虛擬景觀中漫游。

漫游系統(tǒng)在目前遇到的最大的困難就是在設(shè)計和使用中,因為計算機性能的限制,無法做到模型的精細(xì)程度和漫游畫面的實時性做到完美的統(tǒng)一。要求我們能夠針對系統(tǒng)設(shè)計的要求進行取舍[2]。

2 場景漫游的實現(xiàn)方法(Method for realizing the

scene roaming)

要實現(xiàn)漫游主要有三個要素,首先是一個完整的虛擬場景,其次是帶有行走動畫的角色,最后是操控角色的代碼控制[3]。其中實現(xiàn)漫游的關(guān)鍵就是在Unity3D中通過JavaScript語言控制綁定人物骨骼動畫的角色在虛擬場景中按照用戶的意圖實現(xiàn)自主交互式漫游。在這里我們采用的是Unity3D來構(gòu)建我們的漫游系統(tǒng),Unity3D是目前比較流行的用于三維動畫場景模擬、游戲設(shè)計等全面的綜合設(shè)計引擎。

3 場景漫游系統(tǒng)的總體設(shè)計(The overall design of

scene walkthrough system)

3.1 系統(tǒng)的技術(shù)平臺架構(gòu)

本系統(tǒng)基于Unity3D實現(xiàn)漫游交互,在系統(tǒng)當(dāng)中用戶控制角色漫游,通過角色視角的變化讓用戶了解該場景,主要的架構(gòu)如圖1所示。

圖1 系統(tǒng)技術(shù)架構(gòu)圖

Fig.1 Technical system architecture

3.2 系統(tǒng)的開發(fā)流程介紹

作為一個虛擬漫游系統(tǒng),整個設(shè)計過程包含了四個過程,分別是問題分析、采集場景參數(shù)、建立虛擬場景、實現(xiàn)漫游。主要的過程框架圖如圖2所示。

圖2 系統(tǒng)流程圖

Fig.2 Flow chart of the system

4 基于Unity3D漫游系統(tǒng)的實現(xiàn)(Realization of

roaming system based on Unity3D)

4.1 場景中角色的控制

本系統(tǒng)主要構(gòu)建的是一個建筑小區(qū)廣場漫游系統(tǒng),在本系統(tǒng)中可以實現(xiàn)人物前后左右的任意行走、跳躍,可以觀察到所建場景的任意一個角度,不會產(chǎn)生人物與建筑的穿插,含有碰撞檢測系統(tǒng),使人物行走觀察更為合理[4]。

利用Unity3D提供的Java Script語言編寫人物控制腳本,實現(xiàn)人物的移動的調(diào)用,腳本如下:

var Bip01:GameObject;

function Update () { ren=GameObject.Find("meng");

if(ren==null){

return;}

if(Input.GetKey(KeyCode.Space)) {

animation.CrossFade ("jump"); }

else{

animation.CrossFade ("idle"); }

將編輯好的腳本添加到場景中的人物模型上,即可實現(xiàn)相應(yīng)功能。

4.2 漫游視角的控制

在本漫游系統(tǒng)當(dāng)中我們設(shè)定了第三人稱視角。根據(jù)鼠標(biāo)控制攝像機來控制視角,利用Unity3D提供的C# Script MouseLook腳本編寫攝像機腳本,使攝像機跟隨人物運動,右鍵控制視角旋轉(zhuǎn),滾輪縮放視距。

using UnityEngine;

public RotationAxes axes = RotationAxes.MouseXAndY;

void Update ()

{ target = GameObject.Find("N1");

// 滾輪設(shè)置相機與人物的距離.

if(Input.GetAxis("Mouse ScrollWheel") != 0)

{theDistance = theDistance + Input.GetAxis("Mouse ScrollWheel") * Time.deltaTime * ScrollKeySpeed; }

4.3 場景碰撞模型的實現(xiàn)

當(dāng)角色靠近被碰撞物體時,系統(tǒng)根據(jù)碰撞檢測算法檢測該物體的尺寸,若被檢物體高度低于預(yù)設(shè)值則角色可以通過,反之,角色被物體擋住無法前進[5],如圖3所示碰撞檢測原理圖。

圖3 碰撞檢測原理圖

Fig.3 Schematic diagram of collision detection

在Unity3D當(dāng)中集成了碰撞檢測模塊,在Apply Root motion后面打鉤即可,臺階高度碰撞設(shè)定是調(diào)整Step Offset的數(shù)值來實現(xiàn)的。

5 結(jié)論(Conclusion)

交互式的漫游系統(tǒng)在現(xiàn)在的社會生活中應(yīng)用的越來越廣泛,成為了一個前景十分看好的技術(shù)領(lǐng)域。虛擬場景讓用戶“身臨其境”地在漫游中進行多角度體驗性觀察,尤其是針對于建筑行業(yè)以及需要進行數(shù)字化展示的特殊行業(yè),多角度全方位的展示與互動也必將成為以后技術(shù)發(fā)展的新方向。

參考文獻(References)

[1] 趙俊昌,程朝武.3DS MAX2010游戲設(shè)計師必備實戰(zhàn)寶典[M].

北京:科學(xué)出版社,2010.

[2] 張凡,諶寶業(yè).3DS MAX游戲場景設(shè)計[M].北京:中國鐵道出

版社,2009.

[3] 宣雨松.Unity 3D游戲開發(fā)[M].北京:人民郵電出版社,2012.

[4] 胡安林.3DS MAX材質(zhì)與貼圖應(yīng)用技法精粹[M].北京:科學(xué)

出版社,2008.

[5] 程罡,吳江濤.三維游戲場景設(shè)計與制作[M].北京:電子工業(yè)出

版社,2010.

作者簡介:

董 ?。?980-),男,碩士,講師.研究領(lǐng)域:多媒體信息處理.endprint

摘 要:隨著網(wǎng)絡(luò)及計算機技術(shù)的發(fā)展,3D實景虛擬漫游已經(jīng)作為一種全新的展示在房產(chǎn)銷售中普遍運用。本系統(tǒng)運用了3Dmax、Photoshop、Unity3D軟件,參考現(xiàn)實廣場小區(qū),創(chuàng)建虛擬場景。為達(dá)到預(yù)期效果,通過骨骼動畫及JavaScript語言實現(xiàn)控制角色移動轉(zhuǎn)向等動作,用戶可以對場景自主漫游、瀏覽,讓用戶真正沉浸在虛擬交互環(huán)境當(dāng)中,實現(xiàn)用戶與虛擬環(huán)境直接交互。

關(guān)鍵詞:UV貼圖;Unity3D;交互漫游

中圖分類號:TP391.9 文獻標(biāo)識碼:A

1 引言(Introduction)

虛擬環(huán)境系統(tǒng)都是以真實場景為藍(lán)圖,可以實現(xiàn)訪問者自動漫游虛擬漫游系統(tǒng)是基于地理信息系統(tǒng)技術(shù)、虛擬現(xiàn)實技術(shù)、寬帶網(wǎng)絡(luò)技術(shù)、多媒體技術(shù)、計算機圖形學(xué)等高新技術(shù)[1],將真實地理空間信息和其屬性信息相結(jié)合,構(gòu)建一個逼真的、具有視覺、聽覺、觸覺的虛擬景觀,用戶可以利用計算機網(wǎng)絡(luò)遠(yuǎn)程訪問這個全新的虛擬景觀,通過終端計算機在虛擬景觀中漫游。

漫游系統(tǒng)在目前遇到的最大的困難就是在設(shè)計和使用中,因為計算機性能的限制,無法做到模型的精細(xì)程度和漫游畫面的實時性做到完美的統(tǒng)一。要求我們能夠針對系統(tǒng)設(shè)計的要求進行取舍[2]。

2 場景漫游的實現(xiàn)方法(Method for realizing the

scene roaming)

要實現(xiàn)漫游主要有三個要素,首先是一個完整的虛擬場景,其次是帶有行走動畫的角色,最后是操控角色的代碼控制[3]。其中實現(xiàn)漫游的關(guān)鍵就是在Unity3D中通過JavaScript語言控制綁定人物骨骼動畫的角色在虛擬場景中按照用戶的意圖實現(xiàn)自主交互式漫游。在這里我們采用的是Unity3D來構(gòu)建我們的漫游系統(tǒng),Unity3D是目前比較流行的用于三維動畫場景模擬、游戲設(shè)計等全面的綜合設(shè)計引擎。

3 場景漫游系統(tǒng)的總體設(shè)計(The overall design of

scene walkthrough system)

3.1 系統(tǒng)的技術(shù)平臺架構(gòu)

本系統(tǒng)基于Unity3D實現(xiàn)漫游交互,在系統(tǒng)當(dāng)中用戶控制角色漫游,通過角色視角的變化讓用戶了解該場景,主要的架構(gòu)如圖1所示。

圖1 系統(tǒng)技術(shù)架構(gòu)圖

Fig.1 Technical system architecture

3.2 系統(tǒng)的開發(fā)流程介紹

作為一個虛擬漫游系統(tǒng),整個設(shè)計過程包含了四個過程,分別是問題分析、采集場景參數(shù)、建立虛擬場景、實現(xiàn)漫游。主要的過程框架圖如圖2所示。

圖2 系統(tǒng)流程圖

Fig.2 Flow chart of the system

4 基于Unity3D漫游系統(tǒng)的實現(xiàn)(Realization of

roaming system based on Unity3D)

4.1 場景中角色的控制

本系統(tǒng)主要構(gòu)建的是一個建筑小區(qū)廣場漫游系統(tǒng),在本系統(tǒng)中可以實現(xiàn)人物前后左右的任意行走、跳躍,可以觀察到所建場景的任意一個角度,不會產(chǎn)生人物與建筑的穿插,含有碰撞檢測系統(tǒng),使人物行走觀察更為合理[4]。

利用Unity3D提供的Java Script語言編寫人物控制腳本,實現(xiàn)人物的移動的調(diào)用,腳本如下:

var Bip01:GameObject;

function Update () { ren=GameObject.Find("meng");

if(ren==null){

return;}

if(Input.GetKey(KeyCode.Space)) {

animation.CrossFade ("jump"); }

else{

animation.CrossFade ("idle"); }

將編輯好的腳本添加到場景中的人物模型上,即可實現(xiàn)相應(yīng)功能。

4.2 漫游視角的控制

在本漫游系統(tǒng)當(dāng)中我們設(shè)定了第三人稱視角。根據(jù)鼠標(biāo)控制攝像機來控制視角,利用Unity3D提供的C# Script MouseLook腳本編寫攝像機腳本,使攝像機跟隨人物運動,右鍵控制視角旋轉(zhuǎn),滾輪縮放視距。

using UnityEngine;

public RotationAxes axes = RotationAxes.MouseXAndY;

void Update ()

{ target = GameObject.Find("N1");

// 滾輪設(shè)置相機與人物的距離.

if(Input.GetAxis("Mouse ScrollWheel") != 0)

{theDistance = theDistance + Input.GetAxis("Mouse ScrollWheel") * Time.deltaTime * ScrollKeySpeed; }

4.3 場景碰撞模型的實現(xiàn)

當(dāng)角色靠近被碰撞物體時,系統(tǒng)根據(jù)碰撞檢測算法檢測該物體的尺寸,若被檢物體高度低于預(yù)設(shè)值則角色可以通過,反之,角色被物體擋住無法前進[5],如圖3所示碰撞檢測原理圖。

圖3 碰撞檢測原理圖

Fig.3 Schematic diagram of collision detection

在Unity3D當(dāng)中集成了碰撞檢測模塊,在Apply Root motion后面打鉤即可,臺階高度碰撞設(shè)定是調(diào)整Step Offset的數(shù)值來實現(xiàn)的。

5 結(jié)論(Conclusion)

交互式的漫游系統(tǒng)在現(xiàn)在的社會生活中應(yīng)用的越來越廣泛,成為了一個前景十分看好的技術(shù)領(lǐng)域。虛擬場景讓用戶“身臨其境”地在漫游中進行多角度體驗性觀察,尤其是針對于建筑行業(yè)以及需要進行數(shù)字化展示的特殊行業(yè),多角度全方位的展示與互動也必將成為以后技術(shù)發(fā)展的新方向。

參考文獻(References)

[1] 趙俊昌,程朝武.3DS MAX2010游戲設(shè)計師必備實戰(zhàn)寶典[M].

北京:科學(xué)出版社,2010.

[2] 張凡,諶寶業(yè).3DS MAX游戲場景設(shè)計[M].北京:中國鐵道出

版社,2009.

[3] 宣雨松.Unity 3D游戲開發(fā)[M].北京:人民郵電出版社,2012.

[4] 胡安林.3DS MAX材質(zhì)與貼圖應(yīng)用技法精粹[M].北京:科學(xué)

出版社,2008.

[5] 程罡,吳江濤.三維游戲場景設(shè)計與制作[M].北京:電子工業(yè)出

版社,2010.

作者簡介:

董 健(1980-),男,碩士,講師.研究領(lǐng)域:多媒體信息處理.endprint