猫史档案馆


【地形生成】原创地形生成!

用户:卑微OIer卑微OIer查看:5 回复:3 评论:5 创建时间:2022-02-27T17:03:44


经过我苦读柏林噪音和分形地形,研究出来了一套原创多地形群的生成算法。

STEP1小分区区块选择

先将256*256的地图分成16*16大小的区块,这个每个群系最大大小参数,或者定义一个类。每一次dfs的结果是一种群系,每种群系的生成概率由代码决定,并给每个土地标号。分别进行每一个区块的的生成。最后将每一个群系的的边缘平整化。

tp:生成的时候只生成特定的方块,比如喵原就只用dirt和grass,不需要别的

STEP2大分区区块平滑

以32*32的大小作为一个区块A,遍历每一个大区块,如果是群系边缘。则将两个群边缘大的平整化,这样防止超大山脉到低谷的突然。

STEP3特殊地形生成

先进行河流生成,从海平面群系对陆地进行迭代(dfs),生成一条河流,在将河流周围平整化。 再矿物生成,先铺石头,再用dfs或者bfs写矿物生成(啥铁啊,啥煤啊)(然后套用尹子的生成矿洞算法)

STEP4小细节优化

在每个群系上放置对应的模型,比如水旁边的沙子啊,甘蔗啊(老mc了)最后进行生物覆盖 对于比较高的地方,将地形表面变成ice-grass,在雪地上加上几层雪模型,进行美观

(尹子可以写一下代码可以吗,我实在写不出来,不然我早发代码了………………/xyx)    


回复

上一页1 页 / 共 1下一页
yee089yee089

沙发~

点赞0


评论


一个STUB用户_14302596一个STUB用户_14302596

STEP1-2我可以试试,但是出来的地形可能比较糟糕

STEP3awa有点困难

STEP4还不是简简单单()

还有,尹子好像最近比较忙(屑,我邮件都不回(他开学了))

点赞1


评论


斯文的力士甲虫_B6N斯文的力士甲虫_B6N

ddd

点赞0


评论