2022年unity3d游戲課程設(shè)計(jì)報(bào)告報(bào)告_第1頁(yè)
2022年unity3d游戲課程設(shè)計(jì)報(bào)告報(bào)告_第2頁(yè)
2022年unity3d游戲課程設(shè)計(jì)報(bào)告報(bào)告_第3頁(yè)
2022年unity3d游戲課程設(shè)計(jì)報(bào)告報(bào)告_第4頁(yè)
2022年unity3d游戲課程設(shè)計(jì)報(bào)告報(bào)告_第5頁(yè)
已閱讀5頁(yè),還剩9頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、學(xué)習(xí)資料收集于網(wǎng)絡(luò),僅供參考嬉戲程序設(shè)計(jì)課程報(bào)告課程: Unity3D課程設(shè)計(jì)題目:探究迷宮班 級(jí):學(xué) 號(hào):姓 名:日 期: 2022.12 學(xué)習(xí)資料學(xué)習(xí)資料收集于網(wǎng)絡(luò),僅供參考一、 摘要UNITY嬉戲是一種新型的 IT引擎;我們討論主要內(nèi)容是UNITY嬉戲設(shè)計(jì)方法;指以嬉戲客戶端軟件為信息交互窗口的旨在實(shí)現(xiàn)娛 樂(lè)、休閑、溝通和取得虛擬成就的具有可連續(xù)性的個(gè)體性單人嬉戲;本報(bào)告主要敘述了這個(gè)小嬉戲的設(shè)計(jì)思路及初步使用 Unity3D 軟件的感受和總結(jié);設(shè)計(jì)過(guò)程中,第一建立自己想要的模型,然后在 此基礎(chǔ)上進(jìn)行需求迭代, 具體設(shè)計(jì)時(shí)不斷地修正和完善,經(jīng)過(guò)測(cè)試階 段反復(fù)調(diào)試和驗(yàn)證,最終形成達(dá)到設(shè)計(jì)要

2、求的小嬉戲;基于 UNITY基礎(chǔ),構(gòu)建了一個(gè)益智嬉戲風(fēng)格的嬉戲,并有主角與 關(guān)卡、嬉戲規(guī)律、 嬉戲環(huán)境域面等設(shè)計(jì),使得玩家可以在場(chǎng)景中進(jìn)行 查找神龕的冒險(xiǎn)嬉戲;本嬉戲的掌握很簡(jiǎn)潔,及用鍵盤的WASD及 SPACE五個(gè)掌握人物的上下左右跳動(dòng)五個(gè)方向, 用戶依據(jù)自己的戰(zhàn)略方式挑選查找油桶點(diǎn) 亮煤油燈然后查找神龕;二、 概述UNITY嬉戲程序設(shè)計(jì)這一課程以大作業(yè)形式進(jìn)行考核,能更好地錘煉同學(xué)綜合運(yùn)用本課程所授學(xué)問(wèn)的才能;學(xué)習(xí)資料大作業(yè)主要內(nèi)容為設(shè)學(xué)習(xí)資料收集于網(wǎng)絡(luò),僅供參考計(jì)完成面對(duì)某一主題內(nèi)容的嬉戲演示程序;自選嬉戲主題, 并依據(jù)所選定的主題內(nèi)容設(shè)計(jì)一個(gè)典型的嬉戲場(chǎng) 景及玩家規(guī)律,其中包含主角與關(guān)

3、卡,嬉戲規(guī)律,嬉戲環(huán)境域面與交 互過(guò)程等的設(shè)計(jì);開(kāi)發(fā)完成與設(shè)計(jì)相符的嬉戲 Demo;要求使用 Unity3D 嬉戲開(kāi)發(fā)軟件實(shí)現(xiàn)上述嬉戲 Demo;三、 具體要求 1、每人單獨(dú)完成,特別可由多人合作完成;2、嬉戲主題自擬;3、依據(jù)所設(shè)嬉戲主題、 場(chǎng)景及玩家規(guī)律, 實(shí)現(xiàn)完成相應(yīng)的嬉戲 Demo,并撰寫設(shè)計(jì)開(kāi)發(fā)報(bào)告;四、 設(shè)計(jì)主題 基于視頻教程“ 平穩(wěn)球” 的基礎(chǔ),構(gòu)建了一個(gè)益智嬉戲風(fēng)格的游 戲,并有主角與關(guān)卡(一關(guān)) 、嬉戲規(guī)律(觸碰油桶、神龕) 、嬉戲環(huán) 境域面(通道)等設(shè)計(jì),使得玩家可以在場(chǎng)景軌道中進(jìn)行吃油桶、神 龕的冒險(xiǎn)嬉戲;五、 設(shè)計(jì)思路 本嬉戲以幾個(gè)環(huán)環(huán)相扣的通道作為人物運(yùn)動(dòng)的軌跡,在通

4、道上分別設(shè)計(jì)一些油桶,通過(guò)電腦上的WASD SPACE 分別掌握人物的運(yùn)動(dòng)方向;假如人物運(yùn)動(dòng)位置沒(méi)有偏離所設(shè)計(jì)通道平面而且碰觸到油桶,即算初步成功,當(dāng)人物吃掉所設(shè)計(jì)的油桶,油燈就會(huì)點(diǎn)亮;當(dāng)人物找到并吃掉所設(shè)計(jì)的神龕,就會(huì)通過(guò)關(guān)卡;本報(bào)告主要敘述了這個(gè)小嬉戲的設(shè)計(jì)思路及初步使用 Unity3D學(xué)習(xí)資料學(xué)習(xí)資料收集于網(wǎng)絡(luò),僅供參考軟件的感受和總結(jié);設(shè)計(jì)過(guò)程中,第一建立自己想要的模型,然后在 此基礎(chǔ)上進(jìn)行需求迭代, 具體設(shè)計(jì)時(shí)不斷地修正和完善,經(jīng)過(guò)測(cè)試階 段反復(fù)調(diào)試和驗(yàn)證,最終形成達(dá)到設(shè)計(jì)要求的小嬉戲;六、 具體構(gòu)建步驟1、 場(chǎng)景素材的添加,通過(guò)3DMAX建模完成素材的創(chuàng)建2、 在 UNITY3D中

5、完成素材的組裝3、 為場(chǎng)景貼圖;貼圖時(shí),依據(jù)道具的風(fēng)格, 挑選地面與墻的 BSP貼圖,每次貼圖挑選一個(gè)平面的一個(gè)面;學(xué)習(xí)資料學(xué)習(xí)資料收集于網(wǎng)絡(luò),僅供參考4、 創(chuàng)建預(yù)組件5、 將創(chuàng)建并且組裝的模型添加到預(yù)組件中,并且通過(guò)復(fù)制完成整個(gè)嬉戲場(chǎng)景的拼接6、 導(dǎo)入 UNITY的人物掌握組件 7 、在場(chǎng)景中添加細(xì)節(jié)學(xué)習(xí)資料學(xué)習(xí)資料收集于網(wǎng)絡(luò),僅供參考七、 程序腳本1、 嬉戲開(kāi)頭觸發(fā)器程序(main):using UnityEngine; using System.Collections; public class main : MonoBehaviour public Rect windowRect =

6、new Rect 20, 20, 120, 50; / Use this for initialization void Start / Update is called once per frame void Update void OnGUI windowRect = GUILayout .Window 0, windowRect, DoMyWindow, Find Shrine; void DoMyWindowint windowID 學(xué)習(xí)資料學(xué)習(xí)資料收集于網(wǎng)絡(luò),僅供參考if GUILayout .Button Game Start Application .LoadLevel test

7、game_02 ; print Got a click ; 2、 人物所觸發(fā)的大事:using UnityEngine; using System.Collections; public class inventory : MonoBehaviour public int fuelAmount= 0; public AudioClip fuelcollectedsound; public Texture2D hudFuelAmount; public GUITexture fuelAmountHUDGUI; public Light lanternlight; public float ori

8、gfueltimer= 30.0f ; public float fueltimer= 0.0f ; public float origfuelGUItimer= 30.0f ; public float fuelGUItimer= 0.0f ; public int maxfuelAmount; /public Rect windowRect = new Rect20, 20, 120, 50; / Use this for initialization void Start fuelAmount = 0; Lantern.GetComponent ; lanternlight = Game

9、Object .Find maxfuelAmount = hudFuelAmount .Length; / Update is called once per frame void Update if fueltimer 0 fueltimer -= Time.deltaTime ; if fueltimer 0.0f & fuelAmount 0 學(xué)習(xí)資料學(xué)習(xí)資料收集于網(wǎng)絡(luò),僅供參考fuelGUItimer -= Time.deltaTime ; if fuelGUItimer 0.0f removeGUIfuel ; void FuelPickUp if fuelAmount 0 fuel

10、Amount -; fuelAmountHUDGUI.texture = hudFuelAmount fuelAmount; fuelGUItimer =origfuelGUItimer ; 3、 油燈被觸發(fā)時(shí)的大事:using UnityEngine; using System.Collections; publicclass LanternFuel : MonoBehaviour / Use this for initialization void Start 學(xué)習(xí)資料學(xué)習(xí)資料收集于網(wǎng)絡(luò),僅供參考/ Update is called once per frame void Update v

11、oid OnTriggerEnterCollider player player .gameObject .SendMessage FuelPickUp; Destroy this .gameObject ; 4、 嬉戲開(kāi)頭時(shí)隨機(jī)顯現(xiàn)人物與神龕的位置:using UnityEngine; using System.Collections; publicclass gamestate : MonoBehaviour private GameObject player; private playerspawncontroller playerspawnCTRL; private GameObjec

12、t randPlayerSpawn; private GameObject Shrine; private Shrinespawn shrinespawnCTRL; private GameObject randShrinespawn; void Awake player = GameObject.FindWithTag Player ; playerspawnCTRL = GameObject .FindGameObjectWithTag PlayerSpawnCTRL .GetComponent ; Shrine = GameObject .FindWithTag Shrine ; shr

13、inespawnCTRL = GameObject .FindGameObjectWithTag shrinespawnCTRL .GetComponent ; / Use this for initialization void Start int randNum = 0; int randNum1 = 0; randPlayerSpawn = playerspawnCTRL.GetRandomPlayerSpawn randNum; SpawnPlayer ; randShrinespawn = shrinespawnCTRL .GetRandomshrineSpawn randNum1;

14、 學(xué)習(xí)資料學(xué)習(xí)資料收集于網(wǎng)絡(luò),僅供參考Spawnshrine ; / Update is called once per frame void Update void SpawnPlayer player.transform.position = randPlayerSpawn .transform .position; Debug .Log 你誕生在 +randPlayerSpawn .name ; void Spawnshrine Shrine .transform .position = randShrinespawn .transform .position; Debug .Log 神

15、龕誕生在 +randShrinespawn .name ; 5、接觸到油桶后油桶會(huì)消逝using UnityEngine; using System.Collections; publicclass LanternFuel : MonoBehaviour / Use this for initialization void Start / Update is called once per frame void Update void OnTriggerEnterCollider player player .gameObject .SendMessage FuelPickUp; Destro

16、y this .gameObject ; 學(xué)習(xí)資料學(xué)習(xí)資料收集于網(wǎng)絡(luò),僅供參考八、嬉戲規(guī)章嬉戲規(guī)章模塊也是本文的一個(gè)重點(diǎn)部分,需要實(shí)現(xiàn)人物接觸油桶嬉戲的基本規(guī)章,因此,第一要解決的問(wèn)題是觸發(fā)問(wèn)題,依據(jù)通道的 大小制定油桶的地點(diǎn),然后要解決的問(wèn)題是人物與油桶的接觸過(guò)程,保證人物接觸油桶后油桶消逝;假如能查找到神龕,就嬉戲成功;九、十、 用戶掌握本嬉戲的掌握很簡(jiǎn)潔,及用鍵盤的WASD四個(gè)箭頭掌握人物的運(yùn)動(dòng),用戶依據(jù)自己的戰(zhàn)略方式挑選人物能吃到油桶的正確捷徑,從而一步步查找神龕;十一、十二、運(yùn)行結(jié)果學(xué)習(xí)資料學(xué)習(xí)資料收集于網(wǎng)絡(luò),僅供參考學(xué)習(xí)資料學(xué)習(xí)資料收集于網(wǎng)絡(luò),僅供參考十三、心得體會(huì) 在學(xué)習(xí)并實(shí)踐的過(guò)程中, 可能在腳本嬉戲的代碼編寫上仍是顯現(xiàn) 最多問(wèn)題的,有的時(shí)候就是照搬書本上的代碼,也會(huì)出錯(cuò),不僅僅是 馬虎,也是我對(duì)于代碼并不熟識(shí)導(dǎo)致的,在一遍遍的修改中,我對(duì)代 碼的編寫也更加?jì)故? 相比較之前的生疏, 現(xiàn)在算是比較得心應(yīng)手了;此外,比較困擾我的就是攝像機(jī)位置的各方面調(diào)整,有的時(shí)候很難調(diào) 整到想要的角度, 最終只能將就, 這點(diǎn)讓我很是糾結(jié); 對(duì)于這種情形,我試著各種方法達(dá)到抱負(fù)成效,假如說(shuō)我轉(zhuǎn)變不了攝像機(jī), 那我只能轉(zhuǎn)變我設(shè)置的場(chǎng)景、對(duì)象的位置了,雖然這樣的方法比較笨,而且可 能會(huì)比較繁瑣, 但是最終也幫忙我實(shí)現(xiàn)了想要達(dá)到的成

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論