激情六月丁香婷婷|亚洲色图AV二区|丝袜AV日韩AV|久草视频在线分类|伊人九九精品视频|国产精品一级电影|久草视频在线99|在线看的av网址|伊人99精品无码|午夜无码视频在线

高校合作1:010-59833514 ?咨詢電話:400-810-1418 服務(wù)與監(jiān)督電話:400-810-1418轉(zhuǎn)接2

原來游戲地圖是這樣生成的!

發(fā)布時(shí)間:2024-01-24 17:24:36 瀏覽量:204次

不同的游戲生成地圖的方式有所不同,在此只是記錄幾種不同的生成地圖的方式和思路

地牢型地圖

參考游戲:

- 死亡細(xì)胞

- 傳說法師

- 元?dú)怛T士

大部分的roguelike類游戲的關(guān)卡設(shè)計(jì)都是使用這種類型的地圖生成方式,通過事先設(shè)計(jì)好的幾類模板地圖構(gòu)成小房間,隨機(jī)構(gòu)成各類具有相似結(jié)構(gòu)的房間。這樣的探索可以給玩家初次的新鮮感,但是作為roguelike游戲,反復(fù)的游玩后,重復(fù)的關(guān)卡設(shè)計(jì)很容易使玩家疲倦

關(guān)于這種地圖的實(shí)現(xiàn)思路是:

1. 在有限的網(wǎng)格中放置好關(guān)鍵房間

2. 用柏林噪音隨機(jī)漫步生成聯(lián)通路線

3. 根據(jù)路徑的開口方向放置隨機(jī)的房間

橫板隨機(jī)地圖

參考游戲:

- 泰拉瑞亞

- 缺氧

橫板的地圖生成比較好想,一維噪音用于生成地表,然后根據(jù)深度在噪音圖的規(guī)劃下嵌入不同的其他方塊,再根據(jù)需求加入不同的特殊建筑就好

只是生成這樣一個(gè)二維的地圖可以說是相當(dāng)簡(jiǎn)單的生成方式了,但是為了做到某些效果而不斷調(diào)整生成地圖的參數(shù)也是一件復(fù)雜的工作

平面隨機(jī)地圖

參考游戲:

- 饑荒

饑荒的地圖比較于泰拉瑞亞、缺氧這種地圖還要簡(jiǎn)單,一個(gè)平面內(nèi)只需要一塊大陸保證聯(lián)通就好了,柏林噪音到這里用不上了,不過或許可以使用分形方式生成的噪音,關(guān)于如何生成一塊連通的二值化的圖像咱還得再了解一下

三維地圖

參考游戲:

- MC

這類地圖生成是最復(fù)雜的,但也是最簡(jiǎn)單的

MC作為一款開源模板式的游戲,它的源代碼中有它完整的地形生成方式,想要研究的話有著大量的資料和教程、文檔可供參閱

一般來說,這樣的地圖首先采用柏林噪音生成高度圖,根據(jù)高度初步生成海洋和雪山,再使用三維噪音在地底生成不連通洞穴,后續(xù)的就是各種復(fù)雜的修飾了,嵌入礦物、劃分生物群系之類的

如果有足夠的精力學(xué)習(xí)JAVA和MC的源碼及文檔的話,MC必定是一個(gè)值得學(xué)習(xí)的開源程序

幾點(diǎn)地圖生成中值得注意的問題

- 一般來說,隨機(jī)生成的地圖都會(huì)有一個(gè)對(duì)應(yīng)的種子,而游戲使用這些種子作為依據(jù)生成偽隨機(jī)數(shù),進(jìn)而生成噪聲、創(chuàng)建地圖。但是程序中一般不會(huì)使用系統(tǒng)相關(guān)的隨機(jī)數(shù)生成,而是使用自行編寫的隨機(jī)數(shù)生成器,目的是為了使得不同的電腦、系統(tǒng)上只要游戲程序相同就能使用一個(gè)種子生成相同地圖

- 就生成地圖而言,初期進(jìn)行地圖生成的編寫時(shí),可以使用數(shù)據(jù)可視化工具直接生成柏林噪音灰度圖的三維圖像,對(duì)地形的隨機(jī)生成方式進(jìn)行調(diào)整,比如說使用Qt的可視化工具(真相是C#對(duì)于咱來說還是太不熟悉,很多高級(jí)特性運(yùn)用不熟練,Qt使用C++編寫,只要把重心放到Qt相關(guān)框架的學(xué)習(xí)上就好)

- 游戲編程永遠(yuǎn)和數(shù)學(xué)離不開關(guān)系,柏林噪音的實(shí)現(xiàn)原理和多元微積分、插值這些內(nèi)容分不開,所以盡快完成基本的數(shù)學(xué)知識(shí)的學(xué)習(xí)很必要

熱門課程推薦

熱門資訊

請(qǐng)綁定手機(jī)號(hào)

x

同學(xué)您好!

您已成功報(bào)名0元試學(xué)活動(dòng),老師會(huì)在第一時(shí)間與您取得聯(lián)系,請(qǐng)保持電話暢通!
確定