• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于UDK引擎下的3D小游戲的設(shè)計(jì)與開發(fā)

    2014-04-29 00:00:00胡楠葉瀅李偉偉

    摘 要:本文首先簡要概述了3D游戲的現(xiàn)狀和UDK引擎的相關(guān)概念,主要介紹了本款3D迷宮尋寶游戲的總體設(shè)計(jì),和可視化腳本編輯系統(tǒng)Kismet來實(shí)現(xiàn)迷宮中的障礙設(shè)置。實(shí)踐表明,UDK為3D獨(dú)立游戲的開發(fā)提供了便利,很大程度地節(jié)約了游戲制作的時(shí)間和成本。

    關(guān)鍵詞:UDK;可視化腳本(Kismet);3D游戲開發(fā);Matinee

    中圖分類號(hào):TP391.9

    游戲的開發(fā)技術(shù)手段由之前所使用的C語言,到后來受到廣泛關(guān)注和運(yùn)用的C/C++及JAVA等一些編程語言的混搭模式,到現(xiàn)在廣受好評(píng)的第三方平臺(tái),游戲開發(fā)日趨成熟。相比其他開發(fā)方式,雖然使用C++開發(fā)的游戲具有穩(wěn)定性強(qiáng)、高效等優(yōu)點(diǎn),但是它繁瑣的代碼編寫不是一般游戲開發(fā)者能夠承受,使用第三方平臺(tái)適合游戲開發(fā)初學(xué)者,縮短了游戲開發(fā)周期,第三方平臺(tái)在未來將受到更多初級(jí)游戲開發(fā)者的青睞。

    1 UDK(Unreal Development Kit)概述

    UDK是基于Unreal3引擎(虛幻游戲引擎第三代)的免費(fèi)版開發(fā)工具,是一套為Direct X 9/10 PC、Xbox 360、PlayStation 3平臺(tái)準(zhǔn)備的完整的游戲開發(fā)框架,支持64位HDR高精度動(dòng)態(tài)渲染、多種類光照和高級(jí)動(dòng)態(tài)陰影特效,可以在低多邊形數(shù)量(通常在5000~15000多邊形)的模型上表現(xiàn)出數(shù)百萬個(gè)多邊形模型才有的高精度,這樣就可以用最低的計(jì)算機(jī)資源做到極高畫質(zhì)渲染,符合虛擬場(chǎng)景的真實(shí)感要求。

    2 游戲總體設(shè)計(jì)

    主要實(shí)現(xiàn)對(duì)整個(gè)3D迷宮游戲的場(chǎng)景設(shè)計(jì)和功能設(shè)計(jì),將傳統(tǒng)迷宮游戲與尋寶游戲相結(jié)合,玩家通過尋找鑰匙打開迷宮中的障礙門,從而走出迷宮出口,傳送到祭壇,取下男神像下的圣杯為結(jié)束。

    3 游戲的實(shí)現(xiàn)

    3.1 游戲場(chǎng)景的實(shí)現(xiàn)

    關(guān)卡或地圖構(gòu)成了游戲發(fā)生的世界或環(huán)境,創(chuàng)建關(guān)卡可以歸結(jié)為在虛幻編輯器中向地圖中放置對(duì)象。而這些對(duì)象可能是世界幾何體、以BSP畫刷形式出現(xiàn)的裝飾物、靜態(tài)網(wǎng)格物體、光源、玩家起點(diǎn)、武器或載具。運(yùn)用BSP畫刷和靜態(tài)網(wǎng)格物體這兩種方式創(chuàng)建世界幾何體的Actor。UDK自帶的建模工具如BSP畫刷等,它們雖然能很好的完成建立模型的任務(wù),極大的簡化建模工作,但畢竟UDK是一個(gè)專業(yè)的游戲開發(fā)引擎,若要建立效果逼真的場(chǎng)景,就需要大量的優(yōu)質(zhì)精細(xì)的模型,這就需要從UDK外部導(dǎo)入。

    將模型從外部導(dǎo)入需要在專業(yè)的建模軟件如3ds Max、maya中制作好模型及模型的法線貼圖、UV貼圖、高光貼圖等等,在Photoshop等專業(yè)作圖軟件中美化貼圖,對(duì)貼圖進(jìn)行后期的編輯的制作,再在建模軟件中合成看模型效果。將模型導(dǎo)入時(shí)只能將模型和各個(gè)貼圖分別導(dǎo)入到UDK材質(zhì)編輯器中的相應(yīng)模塊,再在材質(zhì)編輯器中將模型和貼圖結(jié)合,制作UDK能直接使用的模型。

    建模需要耗費(fèi)大量的時(shí)間和精力,本游戲主要研究UDK開發(fā)游戲的模塊功能,而UDK系統(tǒng)也提供了豐富的模型供開發(fā)者使用,故使用的是UDK自帶的模型。結(jié)合UDK內(nèi)置建BSP畫刷制作場(chǎng)景的基本模型和靜態(tài)網(wǎng)格物體,如地面,墻壁、門、祭臺(tái)、臺(tái)階等。一些比較復(fù)雜的如花、草、樹等模型,運(yùn)用的是系統(tǒng)自帶的模型。

    在場(chǎng)景建立好之后需要使用UDK中的光源系統(tǒng)構(gòu)架整個(gè)場(chǎng)景的光源。UDK為開發(fā)者提供了一套完備的光照系統(tǒng),有DirectionalLights、PointLights、SkyLights和SpotLights,幾乎可以滿足開發(fā)者對(duì)于光照的需求。通過BSP畫刷建立一個(gè)LightmassImportanceVolume來計(jì)算所添加的光照,在LightmassImportanceVolume范圍內(nèi)根據(jù)需要添加在天空添加了模仿太陽光的SkyLights并調(diào)整光源顏色,在各個(gè)燈模型上添加PointLights并調(diào)整顏色,在祭壇上添加SpotLights并調(diào)整光源顏色。經(jīng)過反復(fù)調(diào)試,營造出游戲所需要的最佳效果。

    最終制作了兩個(gè)主要場(chǎng)景,圖1里包含迷宮場(chǎng)景和出口傳送后的祭壇場(chǎng)景。

    圖1 全景

    3.2 游戲功能的實(shí)現(xiàn)

    本次迷宮游戲要實(shí)現(xiàn)的主要功能是障礙的設(shè)置與解除。在迷宮中設(shè)置了四道門和四把鑰匙,玩家要通過尋找鑰匙打開門找到出路,傳送到祭壇,取下男神像下的圣杯為結(jié)束。主要用到了可視化腳本unrealscript和其中主要的動(dòng)畫模塊matinee。

    3.2.1 功能實(shí)現(xiàn)

    UDK通過可視化腳本編輯器kismet實(shí)現(xiàn)游戲功能和動(dòng)畫。由于UDK上層是使用JAVA與C++相結(jié)合的編程語言實(shí)現(xiàn),在可視化腳本編輯器Kismet中創(chuàng)建的動(dòng)作、動(dòng)畫、條件、事件、變量等與面向?qū)ο缶幊陶Z言的要求相符,也可以得到相應(yīng)的輸入輸出。類似于節(jié)點(diǎn)連接操作一樣,通過節(jié)點(diǎn)的組合就可完成序列對(duì)象的構(gòu)建。

    圖2是通過拿到鑰匙打開一扇相應(yīng)的門的腳本示意圖。在鑰匙的模型處添加一個(gè)觸發(fā)器(trigger),為觸發(fā)器創(chuàng)建一個(gè)觸碰事件(Touch),觸發(fā)器觸發(fā)結(jié)果為鑰匙隱藏(Toggle Hidden),門打開同時(shí)發(fā)出聲效(Play Sound),在7秒后門自動(dòng)關(guān)閉(Delay)。

    圖2 Kismet的界面

    UDK引擎默認(rèn)制作的是第一人稱的射擊游戲,但本游戲并不需要對(duì)戰(zhàn)效果,故通過Level Loaded的關(guān)卡開始加載時(shí)便Toggle HUD關(guān)閉顯示Heads Up Display (平視顯示器儀)中玩家生命值,所持武器和雷達(dá)等,否則在游戲視口初始化時(shí)便會(huì)自動(dòng)創(chuàng)建生成上述信息序列。

    Kismet中,有一個(gè)稱為Matinee的節(jié)點(diǎn),它類似驅(qū)動(dòng)關(guān)鍵幀功能:通過設(shè)置條件,觸發(fā)預(yù)設(shè)的動(dòng)畫。它通過在不同的時(shí)間點(diǎn)插入關(guān)鍵幀來確定位置,提供了電影導(dǎo)演級(jí)別的全面控制,這包括對(duì)場(chǎng)景中的對(duì)象、相機(jī)等的控制,同時(shí)還可以實(shí)時(shí)預(yù)覽,這樣便可以在引擎中預(yù)覽過場(chǎng)動(dòng)畫的所有的視覺效果。游戲以取下圣杯播放迷宮縱觀圖的過場(chǎng)動(dòng)畫為完結(jié)。

    控制臺(tái)命令是指游戲中或者編輯器中運(yùn)行的基于字符串的命令,通過按下~鍵彈出控制臺(tái)或者Kismet中的Console Command,即可輸入可執(zhí)行命令。如behindview 1切換為第三人稱視角,disconnect從當(dāng)前服務(wù)器斷開等等。此項(xiàng)功能大大的給予開發(fā)者查看游戲信息和增加游戲模式的便利,從而多方面調(diào)試游戲的完整性和正確性。

    3.2.2 打包和發(fā)布

    場(chǎng)景及游戲功能全部完成后,還需放置playerstart的出生點(diǎn)規(guī)定玩家的初始落地點(diǎn),構(gòu)建所有將把關(guān)卡內(nèi)的幾何體、光源以及其他項(xiàng)目編譯成一個(gè)可運(yùn)行環(huán)境。接下來只需用UDK自帶的UnrealFrontend將自己的關(guān)卡烘焙并打包成應(yīng)用程序發(fā)布,供玩家安裝在個(gè)人PC機(jī)上。UDK兼容大量的操作系統(tǒng),玩家只需要在游戲客戶端選擇適合自己的系統(tǒng)模式即可,大大增加UDK制作成游戲后的普遍性和可玩性。

    4 結(jié)束語

    通過對(duì)本款3D游戲的總體設(shè)計(jì)來闡述了當(dāng)今功能強(qiáng)大的UDK引擎,可視化腳本編輯器作為一個(gè)面向設(shè)計(jì)人員的工具,不需要在底層編寫代碼,從而在機(jī)關(guān)的設(shè)置過程中充分體現(xiàn)了其快速靈活的特點(diǎn),大大節(jié)省了游戲的開發(fā)時(shí)間。相信會(huì)有更多的獨(dú)立開發(fā)者利用這些工具來制作游戲,特別是如今創(chuàng)意缺乏的國內(nèi)游戲市場(chǎng),多一些原創(chuàng)游戲作品的出現(xiàn)將能大大提高整個(gè)國內(nèi)游戲行業(yè)創(chuàng)意水平,為游戲市場(chǎng)注入新的血液。

    參考文獻(xiàn):

    [1]高義棟,李曼曼,雍炎炎,賀亞杰.基于UDK引擎的圖書館虛擬漫游系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn),2013.

    [2]鄧世垠.數(shù)字校園基于UDK的實(shí)現(xiàn),2013.

    [3]http://www.bfmil.cn/post-1157018-1.fhtml.虛幻引擎3基礎(chǔ)知識(shí),2013.

    [4]http://forums.epicgames.com/forums/366-UDK.UDK社區(qū).

    作者簡介:胡楠(1991-),女,桂林人,本科在讀,研究方向:計(jì)算機(jī)軟件應(yīng)用,3d游戲設(shè)計(jì)與開發(fā)。

    作者單位:廣西大學(xué)計(jì)算機(jī)與電子信息學(xué)院,南寧 530004

    西平县| 横山县| 英德市| 天峻县| 邯郸县| 安泽县| 龙南县| 浦江县| 合山市| 高邑县| 贡觉县| 汝阳县| 永顺县| 沙湾县| 双鸭山市| 长春市| 达拉特旗| 北辰区| 台东市| 宝鸡市| 都匀市| 阳山县| 东乌珠穆沁旗| 上栗县| 隆化县| 迭部县| 蓬溪县| 广丰县| 乌兰浩特市| 邢台县| 思茅市| 新田县| 沽源县| 若尔盖县| 始兴县| 滨海县| 甘谷县| 泌阳县| 苍溪县| 崇州市| 遵化市|