Advertisement
Guest User

Untitled

a guest
Jul 16th, 2018
84
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.89 KB | None | 0 0
  1. function WorldGenerator.GenerateChunk(x,y,z)
  2.  
  3. local x =x+seedx
  4. local z =z+seedz
  5.  
  6. local Voxels ={}
  7.  
  8. local threshold
  9.  
  10. for i=1, ChunkSize do
  11. for j=1, ChunkSize do
  12. for k=1, ChunkSize do
  13.  
  14. local maxterrainheight =math.max(1,(noise((i/ChunkSize+x)*.5*Scale,(k/ChunkSize+z)*.5*Scale)+.5)*50+4)
  15. threshold =math.min(math.max((j-1)+(y-1)*ChunkSize,1),maxterrainheight)/maxterrainheight
  16.  
  17. local level =noise((i/ChunkSize+x)*2*Scale,(j/ChunkSize+y)*2*Scale,(k/ChunkSize+z)*2*Scale)+.5
  18. +noise((i/ChunkSize)*3*Scale+x,(j/ChunkSize)*3*Scale+y,(k/ChunkSize)*3*Scale+z)*.5+.25
  19. +noise((i/ChunkSize)*5*Scale+x,(j/ChunkSize)*5*Scale+y,(k/ChunkSize)*5*Scale+z)*.25+.125
  20.  
  21. level =level/1.75
  22.  
  23. Voxels[tostring(i)..";"..tostring(j)..";"..tostring(k)] =(level > threshold) and 1 or 0
  24. end
  25. end
  26. end
  27.  
  28. return Voxels
  29. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement