mirror of
https://github.com/Relintai/broken_seals.git
synced 2024-11-13 20:47:19 +01:00
Update HEADS to get the indexing/Cubic Mesher improvements from Voxelman. Updated most of the level generation logic. (A few errors still get printed to the console though.) Right now (temporarily) only the Cubic Mesher's mesh is visible.
This commit is contained in:
parent
c77dfd8350
commit
d0a0d6ec39
2
HEADS
2
HEADS
@ -1 +1 @@
|
|||||||
{"engine": {"3.2": "8a0f94a688f18a9565a21657bf44791550aec96a", "master": "8c73e813134001e575b6f59e3b0100471c007410"}, "world_generator": {"master": "09372b146936fda509f5c23a522e998d12f38e13"}, "entity_spell_system": {"master": "0bdf71c431b62b24d56c1fc178dbcb792e5dca3d"}, "ui_extensions": {"master": "38acc650db260a831dc26ca96fe9d9a087230bdc"}, "voxelman": {"master": "8b08a9b14ff98f54a3658a9b79f247bafd723d44"}, "texture_packer": {"master": "b17c174906f84de93d84aa60d010ffe603efaa28"}, "fastnoise": {"master": "41b7ea05a1f7aa2b8ecddaa1fd739e64d6970f7e"}, "mesh_data_resource": {"master": "4bda19b12be2c2a79a6121de6d22e48f3934e726"}, "procedural_animations": {"master": "00f6c128bd0e9799b7f7f86e118ed68277fbe27d"}, "fast_quadratic_mesh_simplifier": {"master": "d3f3a829eff40a93464f6b321c13ce26d44e11e3"}, "ess_data": {"master": "3bd637fdd3304b64a18287a49a6b7387acf2f5de"}, "prop_tool": {"master": "df438053ebc900966f8f842fc65f0264f1271d49"}}
|
{"engine": {"3.2": "8a0f94a688f18a9565a21657bf44791550aec96a", "master": "8c73e813134001e575b6f59e3b0100471c007410"}, "world_generator": {"master": "09372b146936fda509f5c23a522e998d12f38e13"}, "entity_spell_system": {"master": "0bdf71c431b62b24d56c1fc178dbcb792e5dca3d"}, "ui_extensions": {"master": "38acc650db260a831dc26ca96fe9d9a087230bdc"}, "voxelman": {"master": "a457ed400c3980b40fe800ea43fdb7a0870079a2"}, "texture_packer": {"master": "b17c174906f84de93d84aa60d010ffe603efaa28"}, "fastnoise": {"master": "41b7ea05a1f7aa2b8ecddaa1fd739e64d6970f7e"}, "mesh_data_resource": {"master": "4bda19b12be2c2a79a6121de6d22e48f3934e726"}, "procedural_animations": {"master": "00f6c128bd0e9799b7f7f86e118ed68277fbe27d"}, "fast_quadratic_mesh_simplifier": {"master": "655be02357fb4fd9d8d1b537758c1599fb37bb15"}, "ess_data": {"master": "3bd637fdd3304b64a18287a49a6b7387acf2f5de"}, "prop_tool": {"master": "df438053ebc900966f8f842fc65f0264f1271d49"}}
|
@ -20,7 +20,6 @@
|
|||||||
[ext_resource path="res://scripts/world_generators/MainPlanetGenerator.gd" type="Script" id=18]
|
[ext_resource path="res://scripts/world_generators/MainPlanetGenerator.gd" type="Script" id=18]
|
||||||
[ext_resource path="res://scripts/settings/DirectionalLightSettings.gd" type="Script" id=19]
|
[ext_resource path="res://scripts/settings/DirectionalLightSettings.gd" type="Script" id=19]
|
||||||
|
|
||||||
|
|
||||||
[sub_resource type="VoxelmanLevelGenerator" id=1]
|
[sub_resource type="VoxelmanLevelGenerator" id=1]
|
||||||
script = ExtResource( 18 )
|
script = ExtResource( 18 )
|
||||||
_force_planet = -1
|
_force_planet = -1
|
||||||
@ -563,6 +562,8 @@ current = true
|
|||||||
[node name="World" type="VoxelWorld" parent="." groups=[
|
[node name="World" type="VoxelWorld" parent="." groups=[
|
||||||
"save",
|
"save",
|
||||||
]]
|
]]
|
||||||
|
data_margin_start = 1
|
||||||
|
data_margin_end = 2
|
||||||
use_threads = false
|
use_threads = false
|
||||||
max_concurrent_generations = 1
|
max_concurrent_generations = 1
|
||||||
library = ExtResource( 17 )
|
library = ExtResource( 17 )
|
||||||
|
@ -56,10 +56,13 @@ adjustment_enabled = true
|
|||||||
[node name="World" type="VoxelWorld" groups=[
|
[node name="World" type="VoxelWorld" groups=[
|
||||||
"save",
|
"save",
|
||||||
]]
|
]]
|
||||||
|
data_margin_start = 1
|
||||||
|
data_margin_end = 2
|
||||||
use_threads = false
|
use_threads = false
|
||||||
max_concurrent_generations = 1
|
max_concurrent_generations = 1
|
||||||
library = ExtResource( 2 )
|
library = ExtResource( 2 )
|
||||||
level_generator = SubResource( 1 )
|
level_generator = SubResource( 1 )
|
||||||
|
voxel_scale = 1.3
|
||||||
chunk_spawn_range = 3
|
chunk_spawn_range = 3
|
||||||
script = ExtResource( 8 )
|
script = ExtResource( 8 )
|
||||||
|
|
||||||
|
@ -26,9 +26,6 @@ func _generate_chunk(chunk: VoxelChunk, spawn_mobs: bool) -> void:
|
|||||||
generate_terrarin(chunk, spawn_mobs)
|
generate_terrarin(chunk, spawn_mobs)
|
||||||
|
|
||||||
func generate_terrarin(chunk : VoxelChunk, spawn_mobs: bool) -> void:
|
func generate_terrarin(chunk : VoxelChunk, spawn_mobs: bool) -> void:
|
||||||
# chunk.create(int(chunk.size_x) + 1, int(chunk.size_y) + 1, int(chunk.size_z) + 1)
|
|
||||||
chunk.set_size(int(chunk.size_x), int(chunk.size_y), int(chunk.size_z), 0, 1)
|
|
||||||
|
|
||||||
var noise : OpenSimplexNoise = OpenSimplexNoise.new()
|
var noise : OpenSimplexNoise = OpenSimplexNoise.new()
|
||||||
noise.seed = 10 * current_seed
|
noise.seed = 10 * current_seed
|
||||||
noise.octaves = 4
|
noise.octaves = 4
|
||||||
@ -47,8 +44,8 @@ func generate_terrarin(chunk : VoxelChunk, spawn_mobs: bool) -> void:
|
|||||||
det_noise.period = 80.0
|
det_noise.period = 80.0
|
||||||
det_noise.persistence = 0.3
|
det_noise.persistence = 0.3
|
||||||
|
|
||||||
for x in range(0, chunk.size_x + 1):
|
for x in range(-chunk.get_margin_start(), chunk.size_x + chunk.get_margin_end()):
|
||||||
for z in range(0, chunk.size_z + 1):
|
for z in range(-chunk.get_margin_start(), chunk.size_z + chunk.get_margin_end()):
|
||||||
var val : float = noise.get_noise_2d(x + (chunk.position_x * chunk.size_x), z + (chunk.position_z * chunk.size_z))
|
var val : float = noise.get_noise_2d(x + (chunk.position_x * chunk.size_x), z + (chunk.position_z * chunk.size_z))
|
||||||
val *= val
|
val *= val
|
||||||
val *= 200
|
val *= 200
|
||||||
@ -66,10 +63,10 @@ func generate_terrarin(chunk : VoxelChunk, spawn_mobs: bool) -> void:
|
|||||||
|
|
||||||
v -= chunk.position_y * (chunk.size_y)
|
v -= chunk.position_y * (chunk.size_y)
|
||||||
|
|
||||||
if v > chunk.size_y + 1:
|
if v > chunk.size_y + chunk.get_margin_end():
|
||||||
v = chunk.size_y + 1
|
v = chunk.size_y + chunk.get_margin_end()
|
||||||
|
|
||||||
for y in range(0, v):
|
for y in range(-chunk.get_margin_start(), v):
|
||||||
seed(x + (chunk.position_x * chunk.size_x) + z + (chunk.position_z * chunk.size_z) + y + (chunk.position_y * chunk.size_y))
|
seed(x + (chunk.position_x * chunk.size_x) + z + (chunk.position_z * chunk.size_z) + y + (chunk.position_y * chunk.size_y))
|
||||||
|
|
||||||
|
|
||||||
|
@ -47,12 +47,11 @@ func _create_meshers():
|
|||||||
var mesher : TVVoxelMesher = TVVoxelMesher.new()
|
var mesher : TVVoxelMesher = TVVoxelMesher.new()
|
||||||
mesher.base_light_value = 0.45
|
mesher.base_light_value = 0.45
|
||||||
mesher.ao_strength = 0.2
|
mesher.ao_strength = 0.2
|
||||||
# var m : float = 1.0 / 16.0
|
|
||||||
|
|
||||||
mesher.uv_margin = Rect2(0.017, 0.017, 1 - 0.034, 1 - 0.034)
|
mesher.uv_margin = Rect2(0.017, 0.017, 1 - 0.034, 1 - 0.034)
|
||||||
|
|
||||||
add_mesher(mesher)
|
add_mesher(mesher)
|
||||||
|
|
||||||
|
add_mesher(VoxelMesherCubic.new())
|
||||||
|
|
||||||
_prop_texture_packer = TexturePacker.new()
|
_prop_texture_packer = TexturePacker.new()
|
||||||
_prop_texture_packer.max_atlas_size = 1024
|
_prop_texture_packer.max_atlas_size = 1024
|
||||||
_prop_texture_packer.margin = 1
|
_prop_texture_packer.margin = 1
|
||||||
|
@ -373,7 +373,7 @@ func get_case_code(buffer : VoxelChunk, x : int, y : int, z : int, size : int =
|
|||||||
|
|
||||||
return case_code
|
return case_code
|
||||||
|
|
||||||
func _add_chunk(buffer : VoxelChunk) -> void:
|
func _add_chunk(buffer : Node) -> void:
|
||||||
var x_size : int = buffer.get_size_x() - 1
|
var x_size : int = buffer.get_size_x() - 1
|
||||||
var y_size : int = buffer.get_size_y() - 1
|
var y_size : int = buffer.get_size_y() - 1
|
||||||
var z_size : int = buffer.get_size_z() - 1
|
var z_size : int = buffer.get_size_z() - 1
|
||||||
|
Loading…
Reference in New Issue
Block a user