Updated Terraman (and the engine) to get JobSteps support for PropJob. This also fixes the error spam during mesh generation.

This commit is contained in:
Relintai 2021-08-07 13:56:24 +02:00
parent 20875c756e
commit 7476d08ed2
2 changed files with 31 additions and 12 deletions

2
HEADS
View File

@ -1 +1 @@
{"engine": {"3.2": "94a0fc47f7b4e90f8973f9adbfd3312579ed2825", "master": "8c73e813134001e575b6f59e3b0100471c007410", "3.x": "3585c4f3d0b9f749f8f0034603463c7109d8aec4"}, "world_generator": {"master": "260c430f11b0b591eaf4714516419aa327d2842c"}, "entity_spell_system": {"master": "0f709b5455411652f371879e83a0737589d690c3"}, "ui_extensions": {"master": "f82273f54cb1ab87d458c91af9554acec5c10831"}, "voxelman": {"master": "9253cc53c6fbbd78b5e4268eb498ef55b4dd0181"}, "texture_packer": {"master": "dbf3c59a9c52f155f0d98b567d571708e8b3f253"}, "fastnoise": {"master": "d447fd5364e9ab5a6b14184483eab23cd3fe820b"}, "mesh_data_resource": {"master": "3199cbe1a52e9d5714106e0332897ebac7a42496"}, "procedural_animations": {"master": "f8aae42bf06b3936cc6bd24cb18e1c3ec9f78f4f"}, "ess_data": {"master": "3bd637fdd3304b64a18287a49a6b7387acf2f5de"}, "props": {"master": "0eee4dba90e486ee7abd8039220d86f742a2fb6a"}, "mesh_utils": {"master": "29c5cc9a75af4506dfd44ae4c919a0771240dfb0"}, "broken_seals_module": {"master": "2afea56eba66beeb543934edf5a38a8aa63fc79b"}, "thread_pool": {"master": "b2e8c815392052947e7386f722913a12eea543a4"}, "terraman": {"master": "f76a7f9df489dff36f549cd6ab0fc18f7f34955b"}}
{"engine": {"3.2": "94a0fc47f7b4e90f8973f9adbfd3312579ed2825", "master": "8c73e813134001e575b6f59e3b0100471c007410", "3.x": "41cf7f27607d29946575877eb8bebdc2d892e78d"}, "world_generator": {"master": "260c430f11b0b591eaf4714516419aa327d2842c"}, "entity_spell_system": {"master": "0f709b5455411652f371879e83a0737589d690c3"}, "ui_extensions": {"master": "f82273f54cb1ab87d458c91af9554acec5c10831"}, "voxelman": {"master": "9253cc53c6fbbd78b5e4268eb498ef55b4dd0181"}, "texture_packer": {"master": "dbf3c59a9c52f155f0d98b567d571708e8b3f253"}, "fastnoise": {"master": "d447fd5364e9ab5a6b14184483eab23cd3fe820b"}, "mesh_data_resource": {"master": "3199cbe1a52e9d5714106e0332897ebac7a42496"}, "procedural_animations": {"master": "f8aae42bf06b3936cc6bd24cb18e1c3ec9f78f4f"}, "ess_data": {"master": "3bd637fdd3304b64a18287a49a6b7387acf2f5de"}, "props": {"master": "0eee4dba90e486ee7abd8039220d86f742a2fb6a"}, "mesh_utils": {"master": "29c5cc9a75af4506dfd44ae4c919a0771240dfb0"}, "broken_seals_module": {"master": "2afea56eba66beeb543934edf5a38a8aa63fc79b"}, "thread_pool": {"master": "b2e8c815392052947e7386f722913a12eea543a4"}, "terraman": {"master": "f62b605d9a3e2a66cb4c9ec057c91d56bb926b79"}}

View File

@ -206,17 +206,6 @@ func _create_chunk(x : int, z : int, pchunk : TerraChunk) -> TerraChunk:
if pchunk.job_get_count() == 0:
var tj : TerraTerrarinJob = TerraTerrarinJob.new()
var lj : TerraLightJob = TerraLightJob.new()
var pj : TerraPropJob = TerraPropJob.new()
var prop_mesher = TerraMesherBlocky.new()
prop_mesher.base_light_value = 0.45
prop_mesher.ao_strength = 0.2
prop_mesher.uv_margin = Rect2(0.017, 0.017, 1 - 0.034, 1 - 0.034)
prop_mesher.voxel_scale = voxel_scale
prop_mesher.build_flags = build_flags
prop_mesher.texture_scale = 3
pj.set_prop_mesher(prop_mesher);
var mesher : TerraMesherBlocky = TerraMesherBlocky.new()
mesher.base_light_value = 0.45
@ -253,6 +242,36 @@ func _create_chunk(x : int, z : int, pchunk : TerraChunk) -> TerraChunk:
tj.add_jobs_step(s)
var pj : TerraPropJob = TerraPropJob.new()
var prop_mesher = TerraMesherBlocky.new()
prop_mesher.base_light_value = 0.45
prop_mesher.ao_strength = 0.2
prop_mesher.uv_margin = Rect2(0.017, 0.017, 1 - 0.034, 1 - 0.034)
prop_mesher.voxel_scale = voxel_scale
prop_mesher.build_flags = build_flags
prop_mesher.texture_scale = 3
s.job_type = TerraMesherJobStep.TYPE_NORMAL
pj.add_jobs_step(s)
s = TerraMesherJobStep.new()
s.job_type = TerraMesherJobStep.TYPE_MERGE_VERTS
pj.add_jobs_step(s)
s = TerraMesherJobStep.new()
s.job_type = TerraMesherJobStep.TYPE_BAKE_TEXTURE
pj.add_jobs_step(s)
s = TerraMesherJobStep.new()
s.job_type = TerraMesherJobStep.TYPE_SIMPLIFY_MESH
var fqms : FastQuadraticMeshSimplifier = FastQuadraticMeshSimplifier.new()
s.fqms = fqms
s.simplification_steps = 2
pj.add_jobs_step(s)
pj.set_prop_mesher(prop_mesher);
pchunk.job_add(lj)
pchunk.job_add(tj)
pchunk.job_add(pj)