Random 小基础-更多“;“天然的”;简易雷艇克隆I'的地形生成;我在网上找到了

Random 小基础-更多“;“天然的”;简易雷艇克隆I'的地形生成;我在网上找到了,random,minecraft,terrain,smallbasic,Random,Minecraft,Terrain,Smallbasic,这是问题的主要焦点: For BlockX = 0 To 900 Step 30 'Try to carve out Hills GraphicsWindow.BrushColor = "SkyBlue" depth = Math.GetRandomNumber(5) GraphicsWindow.FillRectangle(BlockX,BlockY,30,depth*30) EndFor 整个计划: GraphicsWindow.Clear() GraphicsWindow.CanR

这是问题的主要焦点:

For BlockX = 0 To 900 Step 30 'Try to carve out Hills
 GraphicsWindow.BrushColor = "SkyBlue"
 depth = Math.GetRandomNumber(5)
 GraphicsWindow.FillRectangle(BlockX,BlockY,30,depth*30)
EndFor
整个计划:

GraphicsWindow.Clear()
GraphicsWindow.CanResize = 0
GraphicsWindow.BackgroundColor = "SkyBlue"


gw = GraphicsWindow.Width
gh = GraphicsWindow.Height
gw = 900
gh = 600

For BlockX = 0 To 900 Step 30
For BlockY = 420 to 270 Step -30
    b = Math.GetRandomNumber(2)    
    If b = 1 Then 'Stone
      GraphicsWindow.DrawImage("C:\AllVersions\Versions\v0.4\SBCraft\assets\rock.png",BlockX,BlockY) 
    EndIf
If b = 2 Then 'Dirt
      GraphicsWindow.DrawImage("C:\AllVersions\Versions\v0.4\SBCraft\assets\dirt.png",BlockX,BlockY)
    EndIf
  EndFor 
EndFor

For BlockX = 0 To 900 Step 30 'Grass Layer
  BlockY = 240
  GraphicsWindow.DrawImage("C:\AllVersions\Versions\v0.4\SBCraft\assets\grass.png",BlockX,BlockY)
EndFor

For BlockX = 0 To 900 Step 30 'Try to carve out Hills
  GraphicsWindow.BrushColor = "SkyBlue"
  depth = Math.GetRandomNumber(5)
  GraphicsWindow.FillRectangle(BlockX,BlockY,30,depth*30)
EndFor   
说明: 我在网上发现了一个非常简单的Minecraft克隆,我正试图通过添加地形生成器来扩展它。地形生成器支持3块泥土、草地和石头。对于底部的6层,随机生成泥土和石头,并在顶部生成一层草。这个问题的主要焦点是最后一句话。
对于每列,选择一个随机数。所选的随机数是每列中删除的块数。但这使得地形非常崎岖和不自然。我能做些奇怪的三角测量来制作山丘/自然地形吗,或者其他方法

可以使用绝对图方程y=-| x |。你将如何实现这一点我不知道,但如果你看这个方程的图表,它看起来像一个尖山,通过它,你可以去做你的山