Updated terraman. Now it uses JobSteps.

This commit is contained in:
Relintai 2021-04-17 19:07:35 +02:00
parent 02548015ea
commit 1dac12d28e
2 changed files with 45 additions and 1 deletions

2
HEADS
View File

@ -1 +1 @@
{"engine": {"3.2": "94a0fc47f7b4e90f8973f9adbfd3312579ed2825", "master": "8c73e813134001e575b6f59e3b0100471c007410", "3.x": "701fa8a7796615d2fdd0c19931b50e020eb0a5ad"}, "world_generator": {"master": "d12ab222a2387e20164b3e7c6236983223ca88ef"}, "entity_spell_system": {"master": "3bbe1138973bafe57638e569e87d28b6e0a0eb46"}, "ui_extensions": {"master": "f1ae14c1be0750f65c77ecaad037dbe1cfb28269"}, "voxelman": {"master": "9253cc53c6fbbd78b5e4268eb498ef55b4dd0181"}, "texture_packer": {"master": "c712c4b30839400ba22e5a6b01f2a20fd9b311fa"}, "fastnoise": {"master": "d447fd5364e9ab5a6b14184483eab23cd3fe820b"}, "mesh_data_resource": {"master": "2cb2d2e558e00e55c8995b19d59e3b7c654b5210"}, "procedural_animations": {"master": "f8aae42bf06b3936cc6bd24cb18e1c3ec9f78f4f"}, "ess_data": {"master": "3bd637fdd3304b64a18287a49a6b7387acf2f5de"}, "props": {"master": "f4bc70c94e5042c2f8bc91b89bd5d476274f79cc"}, "mesh_utils": {"master": "9bd800489580680d4b778d78cc7b2449092caefd"}, "broken_seals_module": {"master": "4d8de70db8e48b283beb0b0537649e7e4f1b19e7"}, "thread_pool": {"master": "da4e049da09cb726a00f1edb1df935a2e8475902"}, "terraman": {"master": "8741d8d646592ad2eea45b8313c47b54cf7e171e"}}
{"engine": {"3.2": "94a0fc47f7b4e90f8973f9adbfd3312579ed2825", "master": "8c73e813134001e575b6f59e3b0100471c007410", "3.x": "701fa8a7796615d2fdd0c19931b50e020eb0a5ad"}, "world_generator": {"master": "d12ab222a2387e20164b3e7c6236983223ca88ef"}, "entity_spell_system": {"master": "3bbe1138973bafe57638e569e87d28b6e0a0eb46"}, "ui_extensions": {"master": "f1ae14c1be0750f65c77ecaad037dbe1cfb28269"}, "voxelman": {"master": "9253cc53c6fbbd78b5e4268eb498ef55b4dd0181"}, "texture_packer": {"master": "c712c4b30839400ba22e5a6b01f2a20fd9b311fa"}, "fastnoise": {"master": "d447fd5364e9ab5a6b14184483eab23cd3fe820b"}, "mesh_data_resource": {"master": "2cb2d2e558e00e55c8995b19d59e3b7c654b5210"}, "procedural_animations": {"master": "f8aae42bf06b3936cc6bd24cb18e1c3ec9f78f4f"}, "ess_data": {"master": "3bd637fdd3304b64a18287a49a6b7387acf2f5de"}, "props": {"master": "f4bc70c94e5042c2f8bc91b89bd5d476274f79cc"}, "mesh_utils": {"master": "9bd800489580680d4b778d78cc7b2449092caefd"}, "broken_seals_module": {"master": "4d8de70db8e48b283beb0b0537649e7e4f1b19e7"}, "thread_pool": {"master": "da4e049da09cb726a00f1edb1df935a2e8475902"}, "terraman": {"master": "3841a53e3d199adc3ef484a0b388efd76b0034cf"}}

View File

@ -53,6 +53,8 @@ var _max_frame_chunk_build_temp : int
var rc : int = 0
export(int) var test_lod : int = 0 setget set_test_lod
func _enter_tree():
if !Engine.is_editor_hint() && use_global_chunk_settings:
Settings.connect("setting_changed", self, "on_setting_changed")
@ -229,6 +231,38 @@ func _create_chunk(x : int, z : int, pchunk : TerraChunk) -> TerraChunk:
mesher.channel_index_isolevel = TerraChunkDefault.DEFAULT_CHANNEL_ISOLEVEL
# mesher.lod_index = 3
tj.set_mesher(mesher)
var s : TerraMesherJobStep = TerraMesherJobStep.new()
s.job_type = TerraMesherJobStep.TYPE_NORMAL
tj.add_jobs_step(s)
# s = TerraMesherJobStep.new()
# s.job_type = TerraMesherJobStep.TYPE_NORMAL_LOD
# s.lod_index = 1
# tj.add_jobs_step(s)
#
# s = TerraMesherJobStep.new()
# s.job_type = TerraMesherJobStep.TYPE_NORMAL_LOD
# s.lod_index = 2
# tj.add_jobs_step(s)
#
# s = TerraMesherJobStep.new()
# s.job_type = TerraMesherJobStep.TYPE_NORMAL_LOD
# s.lod_index = 3
# tj.add_jobs_step(s)
# s = TerraMesherJobStep.new()
# s.job_type = TerraMesherJobStep.TYPE_DROP_UV2
# tj.add_jobs_step(s)
#
# s = TerraMesherJobStep.new()
# s.job_type = TerraMesherJobStep.TYPE_MERGE_VERTS
# tj.add_jobs_step(s)
#
# s = TerraMesherJobStep.new()
# s.job_type = TerraMesherJobStep.TYPE_SIMPLIFY_MESH
# s.fqms = FastQuadraticMeshSimplifier.new()
# tj.add_jobs_step(s)
pchunk.job_add(lj)
pchunk.job_add(tj)
@ -329,3 +363,13 @@ func get_mob_level() -> int:
func set_mob_level(level : int) -> void:
mob_level = level
func set_test_lod(val : int) -> void:
test_lod = val
for i in range(chunk_get_count()):
var c : TerraChunkDefault = chunk_get_index(i)
c.current_lod_level = test_lod