diff options
author | dusoleil <howcansocksbereal@gmail.com> | 2022-09-18 19:38:35 -0400 |
---|---|---|
committer | dusoleil <howcansocksbereal@gmail.com> | 2022-09-18 19:42:01 -0400 |
commit | 32bf9d2024362d45dc351c8f1d0b3b301caf1131 (patch) | |
tree | fb6540bce94cb55c6123ecfe1327abeabea2925f /ChunkGen.gd | |
parent | ffc92ed12c6e680776d355ff9fcef70e5e28d7c8 (diff) | |
download | godot_wildjam_49-32bf9d2024362d45dc351c8f1d0b3b301caf1131.tar.gz godot_wildjam_49-32bf9d2024362d45dc351c8f1d0b3b301caf1131.zip |
Organize World Gen Stuff
Diffstat (limited to 'ChunkGen.gd')
-rw-r--r-- | ChunkGen.gd | 49 |
1 files changed, 0 insertions, 49 deletions
diff --git a/ChunkGen.gd b/ChunkGen.gd deleted file mode 100644 index ef29365..0000000 --- a/ChunkGen.gd +++ /dev/null @@ -1,49 +0,0 @@ -extends Node - -var chunk_half_size setget _set_chunk_size -var chunk_size - -func _set_chunk_size(val): - chunk_half_size = val - chunk_size = val * 2.0 - -onready var noise = OpenSimplexNoise.new() - -func _ready(): - randomize() - noise.seed = randi() - noise.octaves = 4 - noise.period = 64 - noise.persistence = 0.001 - noise.lacunarity = 2.0 - -func gen_chunk(chunk): - var gen_tree = Spatial.new() - gen_tree.name = "gen_tree" - chunk.add_child(gen_tree) - iterate_chunk(chunk, Vector2(10.0,10.0), funcref(self,"gen_rocks")) - -func v2_coords(coords:Vector3): - return Vector2(coords.x,coords.z) - -func v3_coords(coords:Vector2): - return Vector3(coords.x,0.0,coords.y) - -func iterate_chunk(chunk,step:Vector2,cb:FuncRef): - var chunk_size_rounded = Vector2(chunk_half_size,chunk_half_size).snapped(step) - for x in range(-chunk_size_rounded.x,chunk_size_rounded.x,step.x): - for y in range(-chunk_size_rounded.y,chunk_size_rounded.y,step.y): - cb.call_func(chunk,Vector2(x,y)) - -onready var Rock = preload("res://Rock.tscn") -const rock_size = 5.0 -func make_rock(chunk,xform:Transform): - var rock = Rock.instance() - rock.transform = xform - chunk.get_node("gen_tree").add_child(rock) - -func gen_rocks(chunk,chunk_coords:Vector2): - var world_coords = chunk_coords + v2_coords(chunk.transform.origin) - var noise_val = self.noise.get_noise_2dv(world_coords) - if noise_val > 0.4: - make_rock(chunk,Transform(Basis().scaled(Vector3(2.0,2.0,2.0)),v3_coords(chunk_coords))) |