From 56deab2de78745607351b265a2e6874132aacaed Mon Sep 17 00:00:00 2001 From: Relintai Date: Mon, 20 Jul 2020 01:17:47 +0200 Subject: [PATCH] Updated Voxelman to get the mesh data resource helper update. Also a bit of work on dungeon generation. --- HEADS | 2 +- .../planets/test_planet/dungeons/dungeon.gd | 12 ++++++++++++ .../planets/test_planet/dungeons/dungeon.tres | 14 +++++++++++++- 3 files changed, 26 insertions(+), 2 deletions(-) diff --git a/HEADS b/HEADS index 37c95cf8..65eca402 100644 --- a/HEADS +++ b/HEADS @@ -1 +1 @@ -{"engine": {"3.2": "07b24de868457c0a190c88771e99ff09e5451c3b", "master": "8c73e813134001e575b6f59e3b0100471c007410"}, "world_generator": {"master": "882008ac7f0b6edf3a1de4481cd41b23f621d25b"}, "entity_spell_system": {"master": "af1bd74fbf38d0ac42d3cf203feb3c7212d01849"}, "ui_extensions": {"master": "6fe4f69fea8d71043b08d959b8085404c9c4fe47"}, "voxelman": {"master": "698f6083ea537374740998b4fd8629e6a68e4fc6"}, "texture_packer": {"master": "2993ed34f34cfa6a5e61b7913380231e9c55eda6"}, "fastnoise": {"master": "d0e3f1c759332cf0d9a5d7e0e71d0b0278310651"}, "mesh_data_resource": {"master": "85417ebee9198be3cd7cc643e0e0e934db64a620"}, "procedural_animations": {"master": "9226d21781ea05828570e592874aa319df0dc53d"}, "ess_data": {"master": "3bd637fdd3304b64a18287a49a6b7387acf2f5de"}, "props": {"master": "544654f49b13af2d25ac14152c8a5014474e6333"}, "mesh_utils": {"master": "4f69ec67b861ce4475cfd17946dfaa586c888d94"}, "broken_seals_module": {"master": "0e5c54a70f8e90f95cbf11419b959a5f67562d48"}, "thread_pool": {"master": "93320fe864128d706bcc47fc7ed0731e6e9bcf69"}} \ No newline at end of file +{"engine": {"3.2": "07b24de868457c0a190c88771e99ff09e5451c3b", "master": "8c73e813134001e575b6f59e3b0100471c007410"}, "world_generator": {"master": "882008ac7f0b6edf3a1de4481cd41b23f621d25b"}, "entity_spell_system": {"master": "af1bd74fbf38d0ac42d3cf203feb3c7212d01849"}, "ui_extensions": {"master": "6fe4f69fea8d71043b08d959b8085404c9c4fe47"}, "voxelman": {"master": "c9ee935af3ee1bc463e6ae0b96d23667232123b1"}, "texture_packer": {"master": "2993ed34f34cfa6a5e61b7913380231e9c55eda6"}, "fastnoise": {"master": "d0e3f1c759332cf0d9a5d7e0e71d0b0278310651"}, "mesh_data_resource": {"master": "85417ebee9198be3cd7cc643e0e0e934db64a620"}, "procedural_animations": {"master": "9226d21781ea05828570e592874aa319df0dc53d"}, "ess_data": {"master": "3bd637fdd3304b64a18287a49a6b7387acf2f5de"}, "props": {"master": "544654f49b13af2d25ac14152c8a5014474e6333"}, "mesh_utils": {"master": "4f69ec67b861ce4475cfd17946dfaa586c888d94"}, "broken_seals_module": {"master": "0e5c54a70f8e90f95cbf11419b959a5f67562d48"}, "thread_pool": {"master": "93320fe864128d706bcc47fc7ed0731e6e9bcf69"}} \ No newline at end of file diff --git a/game/modules/planets/test_planet/dungeons/dungeon.gd b/game/modules/planets/test_planet/dungeons/dungeon.gd index 51b53a2b..60e73e93 100644 --- a/game/modules/planets/test_planet/dungeons/dungeon.gd +++ b/game/modules/planets/test_planet/dungeons/dungeon.gd @@ -26,6 +26,13 @@ export(int) var min_room_dimension : int = 5 export(int) var max_room_dimension : int = 8 export(int) var enemy_count : int = 14 +export(MeshDataResource) var dung_floor : MeshDataResource = null +export(MeshDataResource) var dung_ceiling : MeshDataResource = null +export(MeshDataResource) var dung_wall_xp : MeshDataResource = null +export(MeshDataResource) var dung_wall_xn : MeshDataResource = null +export(MeshDataResource) var dung_wall_zp : MeshDataResource = null +export(MeshDataResource) var dung_wall_zn : MeshDataResource = null + export(MeshDataResource) var dung_entrance_mdr : MeshDataResource = null export(PackedScene) var dung_entrance_scene : PackedScene = null @@ -71,6 +78,11 @@ func _setup(): # get_dungeon_start_room(i).setup_library(library) func _generate_chunk(chunk, spawn_mobs): +# if chunk.position_y == 1: +# for x in range(chunk.size_x): +# for z in range(chunk.size_z): +# chunk.add_mesh_data_resourcev(Vector3(x, 5, z), dung_ceiling) + var aabb : AABB = AABB(Vector3(posx, posy, posz) * chunk.get_voxel_scale(), Vector3(sizex, sizey, sizez) * chunk.get_voxel_scale()) var chunk_aabb : AABB = AABB(chunk.get_position() * Vector3(chunk.size_x, chunk.size_y, chunk.size_z) * chunk.get_voxel_scale(), Vector3(chunk.size_x, chunk.size_y, chunk.size_z) * chunk.get_voxel_scale()) diff --git a/game/modules/planets/test_planet/dungeons/dungeon.tres b/game/modules/planets/test_planet/dungeons/dungeon.tres index b959088d..c40c418e 100644 --- a/game/modules/planets/test_planet/dungeons/dungeon.tres +++ b/game/modules/planets/test_planet/dungeons/dungeon.tres @@ -1,8 +1,14 @@ -[gd_resource type="Dungeon" load_steps=4 format=2] +[gd_resource type="Dungeon" load_steps=10 format=2] [ext_resource path="res://modules/planets/test_planet/dungeons/dungeon.gd" type="Script" id=1] [ext_resource path="res://modules/species/Human/Female/character_models/huf_calf_left.gltf" type="MeshDataResource" id=2] [ext_resource path="res://modules/planets/test_planet/dungeons/dung_teleporter.tscn" type="PackedScene" id=3] +[ext_resource path="res://modules/core_models/ceiling.gltf" type="MeshDataResource" id=4] +[ext_resource path="res://modules/core_models/wall_xp.gltf" type="MeshDataResource" id=5] +[ext_resource path="res://modules/core_models/wall_xn.gltf" type="MeshDataResource" id=6] +[ext_resource path="res://modules/core_models/floor.gltf" type="MeshDataResource" id=7] +[ext_resource path="res://modules/core_models/wall_zn.gltf" type="MeshDataResource" id=8] +[ext_resource path="res://modules/core_models/wall_zp.gltf" type="MeshDataResource" id=9] [resource] sizex = 40 @@ -13,5 +19,11 @@ level_room_count = 9 min_room_dimension = 5 max_room_dimension = 8 enemy_count = 14 +dung_floor = ExtResource( 7 ) +dung_ceiling = ExtResource( 4 ) +dung_wall_xp = ExtResource( 5 ) +dung_wall_xn = ExtResource( 6 ) +dung_wall_zp = ExtResource( 9 ) +dung_wall_zn = ExtResource( 8 ) dung_entrance_mdr = ExtResource( 2 ) dung_entrance_scene = ExtResource( 3 )