pull/7/head
Valentin Stark 3 years ago
parent 117ef36300
commit efccecdb2c
  1. 59
      world/World.gd
  2. 6
      world/game.gd

@ -7,36 +7,35 @@ func _ready():
func draw_world(): func draw_world():
for i in range(0, 1, 1): # for i in range(0, 1, 1):
print(i) # print(i)
var st = SurfaceTool.new() var st = SurfaceTool.new()
st.begin(Mesh.PRIMITIVE_TRIANGLES) st.begin(Mesh.PRIMITIVE_TRIANGLES)
st.add_smooth_group(true) st.add_smooth_group(true)
for triangle in terrain.get_triangles(): for triangle in terrain.get_triangles():
for point in triangle.points(): for point in triangle.points():
var factor = Vector3(1, 24*5, 1) var factor = Vector3(1, 24*5, 1)
if point.get_data("river") and i == 0: # if point.get_data("river") and i == 0:
factor.y -= 0 # factor.y -= 0
if i == 1: # if i == 1:
factor.y -= 2.0 # factor.y -= 2.0
st.add_vertex(point.point3d() * factor) st.add_vertex(point.point3d() * factor)
st.generate_normals() st.generate_normals()
# st.generate_tangents() # st.generate_tangents()
st.index() st.index()
# Commit to a mesh. # Commit to a mesh.
var mesh = st.commit() var mesh = st.commit()
var mi = MeshInstance.new() var mi = MeshInstance.new()
mi.mesh = mesh mi.mesh = mesh
if i == 0: var material = load("res://world/world.material")
var material = load("res://world/world.material") mi.set_surface_material(0, material)
mi.set_surface_material(0, material) mi.create_trimesh_collision()
mi.create_trimesh_collision() mi.cast_shadow = GeometryInstance.SHADOW_CASTING_SETTING_ON
mi.cast_shadow = GeometryInstance.SHADOW_CASTING_SETTING_ON print(mi)
print(mi) add_child(mi)
add_child(mi)
func _on_Game_world_loaded(game_terrain): func _on_Game_world_loaded(game_terrain):
terrain = game_terrain terrain = game_terrain

@ -24,7 +24,7 @@ func _ready():
noise.octaves = octaves noise.octaves = octaves
# terrain = Terrain.new(width,height,spacing,false) # terrain = Terrain.new(width,height,spacing,false)
var terrain_name="bonjour" var terrain_name="bonjourazeazea"
terrain = Terrain.new() terrain = Terrain.new()
print(terrain.list()) print(terrain.list())
@ -48,7 +48,7 @@ func init_data():
point.set_elevation(point_find_elevation(point.point2d())) point.set_elevation(point_find_elevation(point.point2d()))
point.set_data("water", point_is_water(point)) point.set_data("water", point_is_water(point))
point.set_data("mountain", point_is_mountain(point)) point.set_data("mountain", point_is_mountain(point))
point.set_data("river", point_is_river(point)) # point.set_data("river", point_is_river(point))
fill_oceans() fill_oceans()
@ -141,7 +141,7 @@ func point_find_elevation(point):
elevation = min(elevation, 1) elevation = min(elevation, 1)
# elevation = round(elevation * terraces) / terraces elevation = round(elevation * terraces) / terraces
return elevation return elevation
func point_is_water(point): func point_is_water(point):

Loading…
Cancel
Save