diff --git a/HEADS b/HEADS index babb209f..2fa28b6a 100644 --- a/HEADS +++ b/HEADS @@ -1 +1 @@ -{"engine": {"3.2": "da4eb7101d986af0ba6a15efaaed3dee77370d80", "master": "8c73e813134001e575b6f59e3b0100471c007410"}, "world_generator": {"master": "533c25e96fe0e5c46f68e6a532da6583cf86f4e2"}, "entity_spell_system": {"master": "b5bd583e8ec0bf5160b506a0d90d418191175153"}, "ui_extensions": {"master": "38acc650db260a831dc26ca96fe9d9a087230bdc"}, "voxelman": {"master": "a36b7a8ab6943b1a961808c910edccdf1b8ce883"}, "texture_packer": {"master": "b17c174906f84de93d84aa60d010ffe603efaa28"}, "fastnoise": {"master": "ea3b34d972fb5f76474daabd7c1e192419811348"}, "mesh_data_resource": {"master": "4bda19b12be2c2a79a6121de6d22e48f3934e726"}, "procedural_animations": {"master": "16d0ff1ed1e986202ed7f743d3c70666e0859b28"}, "ess_data": {"master": "3bd637fdd3304b64a18287a49a6b7387acf2f5de"}, "fast_quadratic_mesh_simplifier": {"master": "dc598c59322185032835f964db069964244e58bc"}} \ No newline at end of file +{"engine": {"3.2": "da4eb7101d986af0ba6a15efaaed3dee77370d80", "master": "8c73e813134001e575b6f59e3b0100471c007410"}, "world_generator": {"master": "35a2ab30fe30f791e14cd8febf77307da133f19c"}, "entity_spell_system": {"master": "b5bd583e8ec0bf5160b506a0d90d418191175153"}, "ui_extensions": {"master": "38acc650db260a831dc26ca96fe9d9a087230bdc"}, "voxelman": {"master": "6cae9a0494999ac77f0206509d4e251836095971"}, "texture_packer": {"master": "b17c174906f84de93d84aa60d010ffe603efaa28"}, "fastnoise": {"master": "ea3b34d972fb5f76474daabd7c1e192419811348"}, "mesh_data_resource": {"master": "4bda19b12be2c2a79a6121de6d22e48f3934e726"}, "procedural_animations": {"master": "45efc21f3e8af941d96b53d54f82572a6644fef7"}, "ess_data": {"master": "3bd637fdd3304b64a18287a49a6b7387acf2f5de"}, "fast_quadratic_mesh_simplifier": {"master": "dc598c59322185032835f964db069964244e58bc"}} \ No newline at end of file diff --git a/game/data/models/armature.dae.import b/game/data/models/armature.dae.import index b50f4341..d4010455 100644 --- a/game/data/models/armature.dae.import +++ b/game/data/models/armature.dae.import @@ -24,6 +24,7 @@ meshes/ensure_tangents=true meshes/storage=0 meshes/light_baking=0 meshes/lightmap_texel_size=0.1 +skins/use_named_skins=true external_files/store_in_subdir=false animation/import=true animation/fps=15 diff --git a/game/project.godot b/game/project.godot index 94a628ee..06ecdaff 100644 --- a/game/project.godot +++ b/game/project.godot @@ -500,7 +500,7 @@ actionbar_1_12={ quality/driver/driver_name="GLES2" quality/driver/fallback_to_gles2=true vram_compression/import_etc=true -quality/2d/use_batching=true quality/directional_shadow/size.mobile=1024 quality/shading/force_vertex_shading=true +quality/2d/use_batching=true quality/shadows/enabled=false diff --git a/game/test_weapons/handpainted weapons 2-80.glb.import b/game/test_weapons/handpainted weapons 2-80.glb.import index ef421eca..fe6333a7 100644 --- a/game/test_weapons/handpainted weapons 2-80.glb.import +++ b/game/test_weapons/handpainted weapons 2-80.glb.import @@ -24,6 +24,7 @@ meshes/ensure_tangents=true meshes/storage=1 meshes/light_baking=0 meshes/lightmap_texel_size=0.1 +skins/use_named_skins=true external_files/store_in_subdir=false animation/import=true animation/fps=15 diff --git a/game/voxelman/world/CubicVoxelMesher.gd b/game/voxelman/world/CubicVoxelMesher.gd index 06d36b4f..8826531d 100644 --- a/game/voxelman/world/CubicVoxelMesher.gd +++ b/game/voxelman/world/CubicVoxelMesher.gd @@ -26,7 +26,7 @@ class_name GDCubicVoxelMesher var count : int = 0 -func _add_chunk(chunk : Node) -> void: +func _add_chunk(chunk : VoxelChunk) -> void: chunk.generate_ao(); var x_size : int = chunk.get_size_x() - 1 diff --git a/game/voxelman/world/TVVoxelChunk.gd b/game/voxelman/world/TVVoxelChunk.gd index 1fdbe8d0..f56cae56 100644 --- a/game/voxelman/world/TVVoxelChunk.gd +++ b/game/voxelman/world/TVVoxelChunk.gd @@ -112,14 +112,14 @@ func build_phase_prop_mesh() -> void: var t : Transform = get_prop_transform(prop, prop.snap_to_mesh, prop.snap_axis) for i in range(get_mesher_count()): - prop.prop.add_meshes_into(get_mesher(i), _prop_texture_packer, t, self) + prop.prop.add_meshes_into(get_mesher(i), _prop_texture_packer, t, voxel_world) if prop.prop != null: var vmanpp : PropData = prop.prop as PropData var t : Transform = get_prop_transform(prop, vmanpp.snap_to_mesh, vmanpp.snap_axis) for i in range(get_mesher_count()): - prop.prop.add_meshes_into(get_mesher(i), _prop_texture_packer, t, self) + prop.prop.add_meshes_into(get_mesher(i), _prop_texture_packer, t, voxel_world) for i in range(get_mesher_count()): get_mesher(i).bake_colors(self) @@ -164,29 +164,29 @@ func get_prop_transform(prop : VoxelChunkPropData, snap_to_mesh: bool, snap_axis var t : Transform = Transform(Basis(prop.rotation).scaled(prop.scale), pos) if snap_to_mesh: - var global_pos : Vector3 = to_global(t.origin) - var world_snap_axis : Vector3 = to_global(t.xform(snap_axis)) + var global_pos : Vector3 = voxel_world.to_global(t.origin) + var world_snap_axis : Vector3 = voxel_world.to_global(t.xform(snap_axis)) var world_snap_dir : Vector3 = (world_snap_axis - global_pos) * 100 - var space_state : PhysicsDirectSpaceState = get_world().direct_space_state + var space_state : PhysicsDirectSpaceState = voxel_world.direct_space_state var result : Dictionary = space_state.intersect_ray(global_pos - world_snap_dir, global_pos + world_snap_dir, [], 1) if result.size() > 0: - t.origin = to_local(result["position"]) + t.origin = voxel_world.to_local(result["position"]) return t func get_prop_mesh_transform(base_transform : Transform, snap_to_mesh: bool, snap_axis: Vector3) -> Transform: if snap_to_mesh: - var pos : Vector3 = to_global(base_transform.origin) - var world_snap_axis : Vector3 = to_global(base_transform.xform(snap_axis)) + var pos : Vector3 = voxel_world.to_global(base_transform.origin) + var world_snap_axis : Vector3 = voxel_world.to_global(base_transform.xform(snap_axis)) var world_snap_dir : Vector3 = (world_snap_axis - pos) * 100 - var space_state : PhysicsDirectSpaceState = get_world().direct_space_state + var space_state : PhysicsDirectSpaceState = voxel_world.get_world().direct_space_state var result : Dictionary = space_state.intersect_ray(pos - world_snap_dir, pos + world_snap_dir, [], 1) if result.size() > 0: - base_transform.origin = to_local(result["position"]) + base_transform.origin = voxel_world.to_local(result["position"]) return base_transform diff --git a/game/voxelman/world/TVVoxelMesher.gd b/game/voxelman/world/TVVoxelMesher.gd index ac7d4c5b..b03863f1 100644 --- a/game/voxelman/world/TVVoxelMesher.gd +++ b/game/voxelman/world/TVVoxelMesher.gd @@ -141,9 +141,7 @@ func get_voxel_type(chunk : VoxelChunk, x : int, y : int, z : int, size : int = return type -func n_add_chunk(b : Node) -> void: - var chunk : VoxelChunk = b as VoxelChunk - +func n_add_chunk(chunk : VoxelChunk) -> void: chunk.generate_ao() var x_size : int = chunk.get_size_x() diff --git a/game/voxelman/world/TVVoxelWorld.gd b/game/voxelman/world/TVVoxelWorld.gd index f2749c6c..48455bc8 100644 --- a/game/voxelman/world/TVVoxelWorld.gd +++ b/game/voxelman/world/TVVoxelWorld.gd @@ -167,7 +167,7 @@ func get_chunk_lod_level(x : int, y : int, z : int, default : int) -> int: return ch.lod_size -func _create_chunk(x : int, y : int, z : int, pchunk : Node) -> VoxelChunk: +func _create_chunk(x : int, y : int, z : int, pchunk : VoxelChunk) -> VoxelChunk: var chunk : VoxelChunk = TVVoxelChunk.new() #chunk.meshing_create_collider = false diff --git a/game/voxelman/world/TestVoxelMesher.gd b/game/voxelman/world/TestVoxelMesher.gd index ca929a6b..0d67d72e 100644 --- a/game/voxelman/world/TestVoxelMesher.gd +++ b/game/voxelman/world/TestVoxelMesher.gd @@ -373,7 +373,7 @@ func get_case_code(buffer : VoxelChunk, x : int, y : int, z : int, size : int = return case_code -func _add_chunk(buffer : Node) -> void: +func _add_chunk(buffer : VoxelChunk) -> void: var x_size : int = buffer.get_size_x() - 1 var y_size : int = buffer.get_size_y() - 1 var z_size : int = buffer.get_size_z() - 1