最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

基礎(chǔ) | Roguelike隨機地圖----洞穴類(二)

2020-02-27 11:18 作者:有木乘舟  | 我要投稿

本系列為筆者初學(xué)c/c++和游戲AI開發(fā)的學(xué)習(xí)經(jīng)歷,練習(xí)為主,不涉及到具體的游戲開發(fā)軟件學(xué)習(xí)(如unity,虛幻4等),適合剛?cè)腴T的小伙伴一起學(xué)習(xí)探討,歡迎在評論區(qū)留下意見。

  • 開發(fā)語言:c/c++

  • 開發(fā)平臺:macOS mojave / Linux

  • 編譯器:vs Code

該章節(jié)知識點:

  • vector容器

  • random庫

  • & 引用

1.初始化地圖

  • 在二維平面坐標系(笛卡爾坐標系)中生成一張初始地圖,以二維數(shù)組方式表達,數(shù)組中每個元素對應(yīng)坐標系上每個點。

  • 對每個點,以小于0.45的概率生成墻壁(以1表示,0為地面)。

圖1 初始化地圖

2.生成隨機地圖

關(guān)于細胞自動機的知識不再贅述,b站就有很多up主發(fā)過視頻,可搜索“生命游戲”。

遍歷數(shù)組,對每個點執(zhí)行下列規(guī)則:

  • 若其周圍1的數(shù)量大于4,則設(shè)其為1

  • 若其周圍1的數(shù)量小于4,則設(shè)其為0

圖2 通過&引用來直接改變initMap的值

其中,需要額外函數(shù)來判斷該點周圍墻壁的數(shù)量:

圖3?計算周圍墻壁數(shù)量

要注意的是:?

  1. 計算時候要明確邊界?

  2. 某點本身不計算在內(nèi)

  3. 周圍是指以某點為中心,九宮格內(nèi)其余八個點:

圖4?藍色為需要計算的點

相關(guān)代碼在github獲取:https://github.com/linpeijie/GameToy/tree/master/GameAI/Map

基礎(chǔ) | Roguelike隨機地圖----洞穴類(二)的評論 (共 條)

分享到微博請遵守國家法律
古田县| 凌源市| 石泉县| 始兴县| 周口市| 永顺县| 武穴市| 焦作市| 天长市| 西林县| 洞口县| 鲁山县| 建宁县| 永康市| 徐水县| 寻甸| 林周县| 化州市| 肥东县| 沧州市| 德钦县| 黄冈市| 拉萨市| 汤原县| 洛南县| 洛阳市| 清苑县| 绥化市| 泽库县| 奉新县| 桐庐县| 彭山县| 乌拉特中旗| 永宁县| 山东省| 金塔县| 平原县| 镇原县| 昌都县| 本溪市| 漳州市|