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

?

開放世界類型游戲的設(shè)計與制作

2020-10-09 10:24周正司占軍秦雷
電腦知識與技術(shù) 2020年22期

周正 司占軍 秦雷

摘要:如今的國內(nèi)游戲市場多以移動游戲為主,單機、主機游戲比重占比較少,在畫面表現(xiàn)和游戲創(chuàng)意玩法上與國外游戲存在較大差距,開放世界游戲是現(xiàn)在主流的游戲模式,這種模式可以給玩家?guī)碜銐虻淖杂啥?,玩家的不同選擇會導致游戲任務結(jié)局的不同。該文基于Unity引擎設(shè)計并制作一個開放世界類型游戲,使用了Unity的HDRP管線,然后通過3dsMax、Blender來制作模型動畫,通過Unfold3D來對模型進行展UV操作,使用Photoshop來對游戲中的圖像元素進行制作。最后使用C#語言腳本實現(xiàn)游戲邏輯,最后在Unity引擎制作游戲并將其發(fā)布。

關(guān)鍵詞:開放世界類型游戲;HDRP;Unity3D

中圖分類號:TP37 文獻標識碼:A

開放科學(資源服務)標識碼(OSID):

文章編號:1009-3044( 2020122-0001-02

在開放世界型游戲中,玩家可以自由地在場景中進行漫游,可以有選擇性地完成任務,這種游戲也被稱為“漫游式”游戲。由于自由度高且可玩性較強,如今開放世界游戲設(shè)計模式已經(jīng)廣泛被運用到各大廠商游戲作品中。然而國內(nèi)游戲中使用開放世界游戲模式設(shè)計的游戲少之又少,刨除大部分移動手機游戲,剩余的RPG游戲中,游戲模式多以線性劇情為主,游戲可玩性較差。

本文采用Unity引擎進行制作,主要研究內(nèi)容為在Unity如何開發(fā)開放世界類游戲和游戲優(yōu)化上,包括計算機編程、鏡頭運用、動畫設(shè)計制作、平面設(shè)計以及游戲關(guān)卡等方面。另外,高清渲染管線(HDRP)的應用,相比于以往的默認管線,在圖像的繪制和表現(xiàn)上具有較大的提升。

1 開發(fā)環(huán)境及軟件

Unity開發(fā)環(huán)境為Windowsl0專業(yè)版,英特爾Core(TM)i7-6900k CPU3.20GHz,32G內(nèi)存,64位操作系統(tǒng)。另外游戲制作還用到了Autodesk 3ds Max 2016,Adobe Photoshop CC 2018,Blender, Visual Studi0 2019 Community,Unfold3D等軟件。

2 游戲設(shè)計思路

本次開放世界類型游戲的整體思路由以下幾個部分組成,使用3ds Max以及Blender進行建模,使用Photoshop進行平面素材的設(shè)計與制作,使用Unity引擎中的UGUI工具完成交互部分,在Unity中完成游戲場景搭建,以及C#語言實現(xiàn)游戲邏輯功能。本次設(shè)計的整體思路流程圖如圖1所示。

3 開放世界類型游戲的設(shè)計與制作

3.1 模型制作和貼圖繪制

使用3ds Max制作的模型主要為人物模型,由于整體的畫風屬于Lowploy風格,所以在人物建模上可以有效地縮短制作時間,制作完成后將三維模型導出為.obj格式的文件并導人Unfold3d軟件進行UV展開。使用Blender2.8制作Lowploy風格的房屋樹木等場景,因為Blender在2.8版本的雕刻模式可以更快地實現(xiàn)Lowploy風格的制作。

接下來將展開UV的模型文件導入SubstancePainer中去,將貼圖的大小設(shè)置為2048*2048大小,創(chuàng)建成功后如圖2所示。SubstancePainter可以將不同的圖層疊加,生成最后的貼圖,各圖層之間可以添加蒙版,可以對相應區(qū)域進行遮罩處理。在SubstancePainter中可以使用智能材質(zhì),智能材質(zhì)可以直接拖拽到模型上,添加到模型上時會自動展開成不同的層級。

3.2 游戲UI設(shè)計

本次制作的游戲整體風格為Lowploy風格,游戲名稱命名為《紙屆》,所以整體的風格設(shè)計偏紙上涂鴉。因此需要對大量的圖像進行手繪,從而使得整體效果與游戲風格相匹配。游戲中含有的UI系統(tǒng)包括主頁、設(shè)置界面、背包系統(tǒng)、角色面板等,制作過程在Photoshop中完成。

3.3 場景搭建

將模型導入Unity中后,需要創(chuàng)建材質(zhì)球。在Assets中創(chuàng)建相應的文件結(jié)構(gòu),把模型資源放在Arties文件夾中,并在其中創(chuàng)建Models文件夾并創(chuàng)建Material,由于工程采用HDRP,所以材質(zhì)使用名稱為“HDRP/Lit”的著色器。創(chuàng)建完對應材質(zhì)球后,需要對其屬性進行修改。首先對SurfaceType進行設(shè)置,如果需要呈現(xiàn)透明效果的話,將該屬性設(shè)置為Transparent。在SurfaceInputs屬性分類中,Base Map屬性可以改變材質(zhì)球的顏色,可以將材質(zhì)球設(shè)置為純色,也可以將其設(shè)置為一張紋理貼圖,Metal-Iic和Smoothness屬性可以對材質(zhì)球的金屬度和光滑度進行設(shè)置。制作完材質(zhì)球后,把材質(zhì)球賦予模型,將每個模型組建變?yōu)轭A制體,將預制體拖入場景,并擺放到合適的位置,制作完成后如圖4所示。

3.4 游戲邏輯腳本編寫

代碼首先要實現(xiàn)的功能是對游戲角色的控制,包括使用鍵盤完成行走、加速跑、跳躍功能,以及使用鼠標實現(xiàn)角色的旋轉(zhuǎn)等。以跳躍功能為例,需要檢測玩家是否位于地面,首先要以游戲角色下方為原點,向下發(fā)射一條有長度的射線,如果該射線檢測到碰撞物體為地面的話,證明角色現(xiàn)在位于空中,該代碼的實現(xiàn)方式如下:

RaycastHit hitlnfo;

#if UNITY_EDITOR

Debug. DrawLine(transf'orm. position+ (Vector3. up*O.lf),transform. position+(Vector3. up*0.1f)+(Vector3. down*In—GroundCheckDistance》;

#endif

if (Physics. Raycast(transform. position+(Vector3. up*O.lf), Vector3.down, out hitlnfo,m_GroundCheckDistance》

{

m_GroundNormal= hitlnfo.normal;

m_lsGrounded= true;

m_Animator.applyRootMotion= true:

elsef

m_IsGrounded= false:

m_GroundNormal= Vector3.up;

m_Animator.applyRootMotion= false;

游戲中NPC的行為通過BehaviorTree插件來實現(xiàn)。該插件主要功能為輔助創(chuàng)建電腦角色的行為樹,優(yōu)點在于可以使游戲中NPC的行為可視化。首先打開Behavior Designer面板,選擇需要添加行為的電腦角色,點擊創(chuàng)建行為樹,首先創(chuàng)建一個Se-quence節(jié)點,該節(jié)點為順序節(jié)點,當其下的子節(jié)點執(zhí)行返回為真時,該節(jié)點為真,結(jié)束行為樹,然而當節(jié)點為假時,繼續(xù)執(zhí)行下一節(jié)點,所有節(jié)點均為假時,此節(jié)點的返回值為假。

之后再新建兩個Sequence節(jié)點,實現(xiàn)NPC在兩點之間的移動,分別在兩個節(jié)點之下再添加Seek節(jié)點和Wait節(jié)點,Seek節(jié)點將實現(xiàn)該NPC移向目標點的行為,而Wait節(jié)點則實現(xiàn)了NPC停留的功能,制作完畢的行為樹如圖5所示。然而此時進行播放,并不會達到預期效果,行為樹的Seek節(jié)點完成之后,并不會繼續(xù)執(zhí)行下一個行為,而是直接返回,此時需要將Sequence節(jié)點的Abort Type設(shè)置為Self,此時當其中一個子節(jié)點完成后,將繼續(xù)按順序執(zhí)行下個一子節(jié)點,而不會像之前一樣直接返回,此時已經(jīng)完成了NPC的行為樹[1]。

3.5 測試與發(fā)布

在制作完畢之后,需要對游戲進行多次測試,包括場景地圖的搭建,UI貼圖,游戲角色控制的流暢度以及相關(guān)的代碼邏輯等,找到游戲中存在的Bug,然后對其進行修復,之后在Unity中將其發(fā)布到PC平臺,在File菜單欄下找到Buiding Setting,再設(shè)置相關(guān)參數(shù)之后點擊Build即可。

4 結(jié)束語

根據(jù)國外游戲設(shè)計發(fā)展趨勢,開放世界游戲?qū)⒅饾u成為一種主流關(guān)卡設(shè)計模式,它可以減少過多的可視化場景加載,減弱地圖邊界的存在,提升了玩家玩游戲時的沉浸感。另外,游戲采用Unity最新的高清管線(HDRP)進行制作,在性能優(yōu)化和畫面表現(xiàn)力上要整體好于默認管線,因此基于Unity技術(shù)開發(fā)開放世界類游戲非常具有前瞻性。

參考文獻:

[1]何賽,游戲人工智能關(guān)鍵技術(shù)研究與應用[D].北京:北京郵電大學,2015.

【通聯(lián)編輯:謝媛媛】

作者簡介:周正(1996-),男,山東棗莊人,碩士,研究方向為虛擬仿真技術(shù);司占軍(1971-),男,河北人,教授,碩士,研究方向為數(shù)字媒體技術(shù);秦雷(1997-),男,學士,研究方向為數(shù)字出版。

化德县| 阳高县| 德化县| 桂阳县| 兴化市| 皋兰县| 和平县| 鄂尔多斯市| 井陉县| 蛟河市| 平南县| 乐都县| 吴江市| 民权县| 惠东县| 南充市| 新竹市| 绥芬河市| 新沂市| 大兴区| 和田市| 衡阳市| 克东县| 自贡市| 建阳市| 甘肃省| 襄樊市| 家居| 麻城市| 当涂县| 且末县| 淮阳县| 那曲县| 桐城市| 龙山县| 墨脱县| 彩票| 崇文区| 贡嘎县| 曲水县| 平顶山市|