From eb09963e3a787098c2b3a21efc4ed89ccceb3852 Mon Sep 17 00:00:00 2001 From: Halbear Date: Sun, 5 Jul 2026 17:56:47 +0100 Subject: [PATCH] Physics corrections --- LastSession.t4jlog | 1725 ++++++++--------- resources/models/cube/Cube.bbmodel | 1 + resources/models/cube/Cube.colmesh | 0 resources/models/cube/Cube.idx | Bin 0 -> 144 bytes resources/models/cube/Cube.json | 15 + resources/models/cube/Cube.mtl | 4 + resources/models/cube/Cube.obj | 49 + resources/models/cube/Cube.vtx | Bin 0 -> 1344 bytes resources/models/cube/Cube_mat.json | 44 + resources/models/cube/cubetexture.png | Bin 0 -> 1908 bytes .../Logic/Physics/RigidBody/RigidBody.java | 2 +- .../Physics/RigidBody/RigidCollision.java | 5 +- .../RigidBody/RigidPhysicsController.java | 22 +- .../SeparatingAxisTheoremTester.java | 18 +- .../Logic/Physics/WorldPhysicsManager.java | 49 +- .../Terrain4J/EngineCore/Main/GameCore.java | 12 +- .../EngineCore/Threads/PhysicsThread.java | 79 + 17 files changed, 1126 insertions(+), 899 deletions(-) create mode 100644 resources/models/cube/Cube.bbmodel create mode 100644 resources/models/cube/Cube.colmesh create mode 100644 resources/models/cube/Cube.idx create mode 100644 resources/models/cube/Cube.json create mode 100644 resources/models/cube/Cube.mtl create mode 100644 resources/models/cube/Cube.obj create mode 100644 resources/models/cube/Cube.vtx create mode 100644 resources/models/cube/Cube_mat.json create mode 100644 resources/models/cube/cubetexture.png create mode 100644 src/main/java/net/halbear/Terrain4J/EngineCore/Threads/PhysicsThread.java diff --git a/LastSession.t4jlog b/LastSession.t4jlog index 523d297..749e30a 100644 --- a/LastSession.t4jlog +++ b/LastSession.t4jlog @@ -1,871 +1,870 @@ -186:07:2026 01:19:00.754 INFO: +186:07:2026 17:56:16.699 INFO: Launching New Terrain4J Powered Software! -186:07:2026 01:19:00.758 DEBUG: File [terrain4j.properties] read -186:07:2026 01:19:00.761 DEBUG: +186:07:2026 17:56:16.702 DEBUG: File [terrain4j.properties] read +186:07:2026 17:56:16.706 DEBUG: successfully loaded configuration: {compatibility_mode=false, ShaderRecompiling=true, cap_main_to_tickrate=true, LoadingScreenLocation=resources/EngineResources/Texture/Terrain4JTitleImage.png, z_near_plane=10000.0f, display_width=640, anti_alias_mode=0, main_thread_tickrate=120, Software_Icon=ProgramIcon.png, MaxAllowedVulkanCrashes=10, throttle_on_unfocus=true, vsync=false, cap_fast_to_tickrate=true, Software_Icon_Path=/WindowResources/Icon/, RequestedImages=3, throttle_accuracy=100000000, DualPassRendering=false, field_of_view=60.0f, ShadowMapSize=2048, PhysicalDeviceName=, fast_thread_tickrate=240, vkValidated=true, cap_master_to_tickrate=true, AlphaToCoverage=false, display_height=480, Renderer=1, Software_Title=Terrain4J Game Engine, z_far_plane=0.1f, frame_accuracy=0, master_tick_rate=240, Debug_Shaders=false, DefaultTexturePath=resources/EngineResources/Texture/NoTexture.png} -186:07:2026 01:19:01.014 DEBUG: Loading Icon From Location [src\main\resources\WindowResources\Icon\ProgramIcon.png] -186:07:2026 01:19:01.027 DEBUG: Freeing icon Buffer -186:07:2026 01:19:01.204 DEBUG: Loading Models From [resources/models/melona/melona.json] -186:07:2026 01:19:01.230 DEBUG: Loaded Model Data: [ModelData[ID=melona, Meshes=[MeshData[ID=m_6d7d0384-980c-6574-37d9-8a8b11a5fdda_0, MaterialID=melona-mat-1, OffsetVertex=0, VertexSize=24192, OffsetIndex=0, IndexSize=2640], MeshData[ID=none_1, MaterialID=melona-mat-2, OffsetVertex=24192, VertexSize=672, OffsetIndex=2640, IndexSize=96]], VertexPath=resources/models/melona/melona.vtx, IndexPath=resources/models/melona/melona.idx]] -186:07:2026 01:19:01.231 DEBUG: Loading Materials From [resources/models/melona/melona_mat.json] -186:07:2026 01:19:01.237 DEBUG: Loaded Material Data: [[MaterialData[ID=melona-mat-0, TexturePath=, NormalTexturePath=, MetalRoughnessMap=, DiffuseColour=( 6.000E-1 6.000E-1 6.000E-1 1.000E+0), Roughness=0.0, Metallic=0.0], MaterialData[ID=melona-mat-1, TexturePath=resources\models\melona\Melonamodel.png, NormalTexturePath=, MetalRoughnessMap=, DiffuseColour=( 6.000E-1 6.000E-1 6.000E-1 1.000E+0), Roughness=0.0, Metallic=0.0], MaterialData[ID=melona-mat-2, TexturePath=, NormalTexturePath=, MetalRoughnessMap=, DiffuseColour=( 6.000E-1 6.000E-1 6.000E-1 1.000E+0), Roughness=0.0, Metallic=0.0]]] -186:07:2026 01:19:01.264 DEBUG: Starting Main Thread -186:07:2026 01:19:01.264 DEBUG: Starting Fast Thread -186:07:2026 01:19:01.267 DEBUG: Initialising Vulkan Instance -186:07:2026 01:19:01.276 DEBUG: Validation Layer Count:12 -186:07:2026 01:19:01.278 TRACE: Supported Layer [VK_LAYER_AMD_switchable_graphics] -186:07:2026 01:19:01.278 TRACE: Supported Layer [GalaxyOverlayVkLayer] -186:07:2026 01:19:01.278 TRACE: Supported Layer [GalaxyOverlayVkLayer_VERBOSE] -186:07:2026 01:19:01.278 TRACE: Supported Layer [GalaxyOverlayVkLayer_DEBUG] -186:07:2026 01:19:01.278 TRACE: Supported Layer [VK_LAYER_EOS_Overlay] -186:07:2026 01:19:01.278 TRACE: Supported Layer [VK_LAYER_RENDERDOC_Capture] -186:07:2026 01:19:01.278 TRACE: Supported Layer [VK_LAYER_OW_OVERLAY] -186:07:2026 01:19:01.278 TRACE: Supported Layer [VK_LAYER_OW_OBS_HOOK] -186:07:2026 01:19:01.278 TRACE: Supported Layer [VK_LAYER_VALVE_steam_overlay] -186:07:2026 01:19:01.278 TRACE: Supported Layer [VK_LAYER_VALVE_steam_fossilize] -186:07:2026 01:19:01.278 TRACE: Supported Layer [VK_LAYER_OBS_HOOK] -186:07:2026 01:19:01.278 TRACE: Supported Layer [VK_LAYER_ROCKSTAR_GAMES_social_club] -186:07:2026 01:19:01.278 WARN: No Layers Found to Validate, continuing without validation -186:07:2026 01:19:01.278 DEBUG: Validation:false -186:07:2026 01:19:01.282 DEBUG: Instance Extension Count:[14] -186:07:2026 01:19:01.283 TRACE: Supported Instance Extension [VK_KHR_device_group_creation] -186:07:2026 01:19:01.283 TRACE: Supported Instance Extension [VK_KHR_external_fence_capabilities] -186:07:2026 01:19:01.284 TRACE: Supported Instance Extension [VK_KHR_external_memory_capabilities] -186:07:2026 01:19:01.284 TRACE: Supported Instance Extension [VK_KHR_external_semaphore_capabilities] -186:07:2026 01:19:01.284 TRACE: Supported Instance Extension [VK_KHR_get_physical_device_properties2] -186:07:2026 01:19:01.284 TRACE: Supported Instance Extension [VK_KHR_get_surface_capabilities2] -186:07:2026 01:19:01.284 TRACE: Supported Instance Extension [VK_KHR_surface] -186:07:2026 01:19:01.284 TRACE: Supported Instance Extension [VK_KHR_win32_surface] -186:07:2026 01:19:01.284 TRACE: Supported Instance Extension [VK_EXT_debug_report] -186:07:2026 01:19:01.284 TRACE: Supported Instance Extension [VK_EXT_debug_utils] -186:07:2026 01:19:01.284 TRACE: Supported Instance Extension [VK_EXT_swapchain_colorspace] -186:07:2026 01:19:01.284 TRACE: Supported Instance Extension [VK_KHR_surface_maintenance1] -186:07:2026 01:19:01.284 TRACE: Supported Instance Extension [VK_KHR_portability_enumeration] -186:07:2026 01:19:01.284 TRACE: Supported Instance Extension [VK_LUNARG_direct_driver_loading] -186:07:2026 01:19:01.353 DEBUG: selecting physical devices -186:07:2026 01:19:01.354 DEBUG: Detected Physical Device Count: 2 -186:07:2026 01:19:01.367 DEBUG: freeing physical device [AMD Radeon(TM) Graphics] -186:07:2026 01:19:01.367 DEBUG: Selected Graphics Driver: [AMD Radeon RX 9070 XT] -186:07:2026 01:19:01.367 DEBUG: Creating Device Interface Layer -186:07:2026 01:19:01.367 TRACE: Device supports [221] number of extensions -186:07:2026 01:19:01.367 TRACE: [VK_KHR_16bit_storage] is a supported extension -186:07:2026 01:19:01.367 TRACE: [VK_KHR_8bit_storage] is a supported extension -186:07:2026 01:19:01.367 TRACE: [VK_KHR_acceleration_structure] is a supported extension -186:07:2026 01:19:01.367 TRACE: [VK_KHR_bind_memory2] is a supported extension -186:07:2026 01:19:01.367 TRACE: [VK_KHR_buffer_device_address] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_calibrated_timestamps] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_compute_shader_derivatives] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_cooperative_matrix] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_copy_commands2] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_copy_memory_indirect] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_create_renderpass2] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_dedicated_allocation] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_deferred_host_operations] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_depth_clamp_zero_one] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_depth_stencil_resolve] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_descriptor_update_template] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_device_address_commands] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_device_group] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_draw_indirect_count] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_driver_properties] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_dynamic_rendering] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_dynamic_rendering_local_read] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_external_fence] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_external_fence_win32] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_external_memory] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_external_memory_win32] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_external_semaphore] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_external_semaphore_win32] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_format_feature_flags2] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_fragment_shader_barycentric] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_fragment_shading_rate] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_get_memory_requirements2] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_global_priority] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_imageless_framebuffer] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_image_format_list] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_index_type_uint8] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_line_rasterization] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_load_store_op_none] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_maintenance1] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_maintenance2] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_maintenance3] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_maintenance4] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_maintenance5] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_maintenance6] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_maintenance7] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_maintenance8] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_maintenance9] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_maintenance10] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_maintenance11] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_map_memory2] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_multiview] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_pipeline_binary] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_pipeline_executable_properties] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_pipeline_library] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_present_id2] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_present_mode_fifo_latest_ready] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_present_wait2] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_push_descriptor] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_ray_query] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_ray_tracing_maintenance1] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_ray_tracing_pipeline] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_ray_tracing_position_fetch] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_relaxed_block_layout] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_robustness2] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_sampler_mirror_clamp_to_edge] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_sampler_ycbcr_conversion] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_separate_depth_stencil_layouts] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_shader_atomic_int64] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_shader_bfloat16] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_shader_clock] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_shader_draw_parameters] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_shader_expect_assume] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_shader_float16_int8] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_shader_float_controls] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_shader_float_controls2] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_shader_fma] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_shader_integer_dot_product] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_shader_maximal_reconvergence] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_shader_non_semantic_info] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_shader_quad_control] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_shader_subgroup_extended_types] is a supported extension -186:07:2026 01:19:01.368 TRACE: [VK_KHR_shader_subgroup_rotate] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_KHR_shader_subgroup_uniform_control_flow] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_KHR_shader_terminate_invocation] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_KHR_shader_untyped_pointers] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_KHR_spirv_1_4] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_KHR_storage_buffer_storage_class] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_KHR_swapchain] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_KHR_swapchain_maintenance1] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_KHR_swapchain_mutable_format] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_KHR_synchronization2] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_KHR_timeline_semaphore] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_KHR_uniform_buffer_standard_layout] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_KHR_variable_pointers] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_KHR_vertex_attribute_divisor] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_KHR_video_decode_av1] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_KHR_video_decode_h264] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_KHR_video_decode_h265] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_KHR_video_decode_queue] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_KHR_video_decode_vp9] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_KHR_video_encode_av1] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_KHR_video_encode_h264] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_KHR_video_encode_h265] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_KHR_video_encode_intra_refresh] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_KHR_video_encode_quantization_map] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_KHR_video_encode_queue] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_KHR_video_maintenance1] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_KHR_video_queue] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_KHR_vulkan_memory_model] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_KHR_win32_keyed_mutex] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_KHR_workgroup_memory_explicit_layout] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_KHR_zero_initialize_workgroup_memory] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_4444_formats] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_attachment_feedback_loop_layout] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_border_color_swizzle] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_calibrated_timestamps] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_color_write_enable] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_conditional_rendering] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_conservative_rasterization] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_custom_border_color] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_depth_clamp_control] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_depth_clamp_zero_one] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_depth_clip_control] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_depth_clip_enable] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_depth_range_unrestricted] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_descriptor_buffer] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_descriptor_heap] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_descriptor_indexing] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_device_address_binding_report] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_device_fault] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_device_generated_commands] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_dynamic_rendering_unused_attachments] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_extended_dynamic_state] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_extended_dynamic_state2] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_extended_dynamic_state3] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_external_memory_host] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_fragment_shader_interlock] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_frame_boundary] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_full_screen_exclusive] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_global_priority] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_global_priority_query] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_graphics_pipeline_library] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_hdr_metadata] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_host_image_copy] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_host_query_reset] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_image_2d_view_of_3d] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_image_robustness] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_image_sliced_view_of_3d] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_image_view_min_lod] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_index_type_uint8] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_inline_uniform_block] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_line_rasterization] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_load_store_op_none] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_memory_budget] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_memory_priority] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_mesh_shader] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_mutable_descriptor_type] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_nested_command_buffer] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_non_seamless_cube_map] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_pageable_device_local_memory] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_pipeline_creation_cache_control] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_pipeline_creation_feedback] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_pipeline_library_group_handles] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_post_depth_coverage] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_present_mode_fifo_latest_ready] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_primitive_topology_list_restart] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_primitives_generated_query] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_private_data] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_provoking_vertex] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_queue_family_foreign] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_ray_tracing_invocation_reorder] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_robustness2] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_sampler_filter_minmax] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_sample_locations] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_scalar_block_layout] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_separate_stencil_usage] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_shader_atomic_float] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_shader_atomic_float2] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_shader_demote_to_helper_invocation] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_shader_float8] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_shader_image_atomic_int64] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_shader_long_vector] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_shader_module_identifier] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_shader_object] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_shader_replicated_composites] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_shader_stencil_export] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_shader_subgroup_ballot] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_shader_subgroup_vote] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_shader_uniform_buffer_unsized_array] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_shader_viewport_index_layer] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_subgroup_size_control] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_texel_buffer_alignment] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_tooling_info] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_transform_feedback] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_vertex_attribute_divisor] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_vertex_input_dynamic_state] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_EXT_ycbcr_image_arrays] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_AMD_anti_lag] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_AMD_buffer_marker] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_AMD_device_coherent_memory] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_AMD_display_native_hdr] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_AMD_draw_indirect_count] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_AMD_gcn_shader] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_AMD_gpa_interface] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_AMD_gpu_shader_half_float] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_AMD_gpu_shader_int16] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_AMD_memory_overallocation_behavior] is a supported extension -186:07:2026 01:19:01.369 TRACE: [VK_AMD_mixed_attachment_samples] is a supported extension -186:07:2026 01:19:01.370 TRACE: [VK_AMD_shader_ballot] is a supported extension -186:07:2026 01:19:01.370 TRACE: [VK_AMD_shader_core_properties] is a supported extension -186:07:2026 01:19:01.370 TRACE: [VK_AMD_shader_core_properties2] is a supported extension -186:07:2026 01:19:01.370 TRACE: [VK_AMD_shader_early_and_late_fragment_tests] is a supported extension -186:07:2026 01:19:01.370 TRACE: [VK_AMD_shader_explicit_vertex_parameter] is a supported extension -186:07:2026 01:19:01.370 TRACE: [VK_AMD_shader_image_load_store_lod] is a supported extension -186:07:2026 01:19:01.370 TRACE: [VK_AMD_shader_info] is a supported extension -186:07:2026 01:19:01.370 TRACE: [VK_AMD_shader_trinary_minmax] is a supported extension -186:07:2026 01:19:01.370 TRACE: [VK_AMDX_dense_geometry_format] is a supported extension -186:07:2026 01:19:01.370 TRACE: [VK_GOOGLE_decorate_string] is a supported extension -186:07:2026 01:19:01.370 TRACE: [VK_GOOGLE_hlsl_functionality1] is a supported extension -186:07:2026 01:19:01.370 TRACE: [VK_GOOGLE_user_type] is a supported extension -186:07:2026 01:19:01.370 TRACE: [VK_VALVE_mutable_descriptor_type] is a supported extension -186:07:2026 01:19:01.441 DEBUG: Creating Vulkan Surface -186:07:2026 01:19:01.445 DEBUG: Creating Vulkan SwapChain -186:07:2026 01:19:01.506 DEBUG: Creating new Vk Pipeline Cache -186:07:2026 01:19:01.507 DEBUG: Creating Descriptor Allocator -186:07:2026 01:19:01.508 DEBUG: Creating Descriptor pool -186:07:2026 01:19:01.516 DEBUG: Vulkan: Creating A Queue -186:07:2026 01:19:01.518 DEBUG: Vulkan: Creating A Queue -186:07:2026 01:19:01.519 DEBUG: Creating Vulkan Command Pool -186:07:2026 01:19:01.519 DEBUG: Creating Command Buffer -186:07:2026 01:19:01.520 DEBUG: Creating Vulkan Command Pool -186:07:2026 01:19:01.520 DEBUG: Creating Command Buffer -186:07:2026 01:19:01.547 DEBUG: Loading Compiled Shader [resources\EngineResources\shaders\scene_vertex.glsl.spv] -186:07:2026 01:19:01.547 DEBUG: Loading Compiled Shader [resources\EngineResources\shaders\scene_fragment_deferred.glsl.spv] -186:07:2026 01:19:01.550 DEBUG: Creating Pipeline -186:07:2026 01:19:01.552 DEBUG: registered Descriptor sets -186:07:2026 01:19:01.552 DEBUG: created render info -186:07:2026 01:19:01.553 DEBUG: created BlendAttributeStates -186:07:2026 01:19:01.553 DEBUG: created PipelineLayout -186:07:2026 01:19:01.553 DEBUG: created vertexInputState -186:07:2026 01:19:01.554 DEBUG: created PipelineCreateInfo -186:07:2026 01:19:01.556 DEBUG: created GraphicsPipeline -186:07:2026 01:19:01.556 DEBUG: Pipeline Created -186:07:2026 01:19:01.556 DEBUG: Loading Compiled Shader [resources\EngineResources\shaders\scene_vertex.glsl.spv] -186:07:2026 01:19:01.556 DEBUG: Loading Compiled Shader [resources\EngineResources\shaders\scene_opaque_fragment_deferred.glsl.spv] -186:07:2026 01:19:01.557 DEBUG: Creating Pipeline -186:07:2026 01:19:01.557 DEBUG: registered Descriptor sets -186:07:2026 01:19:01.557 DEBUG: created render info -186:07:2026 01:19:01.557 DEBUG: created BlendAttributeStates -186:07:2026 01:19:01.557 DEBUG: created PipelineLayout -186:07:2026 01:19:01.557 DEBUG: created vertexInputState -186:07:2026 01:19:01.557 DEBUG: created PipelineCreateInfo -186:07:2026 01:19:01.557 DEBUG: created GraphicsPipeline -186:07:2026 01:19:01.557 DEBUG: Pipeline Created -186:07:2026 01:19:01.557 DEBUG: Loading Compiled Shader [resources\EngineResources\shaders\scene_vertex.glsl.spv] -186:07:2026 01:19:01.557 DEBUG: Loading Compiled Shader [resources\EngineResources\shaders\scene_translucent_fragment_deferred.glsl.spv] -186:07:2026 01:19:01.558 DEBUG: Creating Pipeline -186:07:2026 01:19:01.558 DEBUG: registered Descriptor sets -186:07:2026 01:19:01.558 DEBUG: created render info -186:07:2026 01:19:01.558 DEBUG: created BlendAttributeStates -186:07:2026 01:19:01.558 DEBUG: created PipelineLayout -186:07:2026 01:19:01.558 DEBUG: created vertexInputState -186:07:2026 01:19:01.558 DEBUG: created PipelineCreateInfo -186:07:2026 01:19:01.558 DEBUG: created GraphicsPipeline -186:07:2026 01:19:01.558 DEBUG: Pipeline Created -186:07:2026 01:19:01.558 DEBUG: Loading Compiled Shader [resources\EngineResources\shaders\skybox_vertex.glsl.spv] -186:07:2026 01:19:01.558 DEBUG: Loading Compiled Shader [resources\EngineResources\shaders\skybox_fragment.glsl.spv] -186:07:2026 01:19:01.558 DEBUG: Creating Pipeline -186:07:2026 01:19:01.558 DEBUG: registered Descriptor sets -186:07:2026 01:19:01.558 DEBUG: created render info -186:07:2026 01:19:01.558 DEBUG: created BlendAttributeStates -186:07:2026 01:19:01.558 DEBUG: created PipelineLayout -186:07:2026 01:19:01.558 DEBUG: created vertexInputState -186:07:2026 01:19:01.558 DEBUG: created PipelineCreateInfo -186:07:2026 01:19:01.558 DEBUG: created GraphicsPipeline -186:07:2026 01:19:01.558 DEBUG: Skybox Pipeline Created Successfully -186:07:2026 01:19:01.558 DEBUG: Deferred Renderer Pipeline -> [1649336446112] -186:07:2026 01:19:01.563 DEBUG: Loading Compiled Shader [resources\EngineResources\shaders\lighting_vertex.glsl.spv] -186:07:2026 01:19:01.563 DEBUG: Loading Compiled Shader [resources\EngineResources\shaders\lighting_frag.glsl.spv] -186:07:2026 01:19:01.565 DEBUG: Creating Pipeline -186:07:2026 01:19:01.565 DEBUG: registered Descriptor sets -186:07:2026 01:19:01.565 DEBUG: created render info -186:07:2026 01:19:01.565 DEBUG: created BlendAttributeStates -186:07:2026 01:19:01.565 DEBUG: created PipelineLayout -186:07:2026 01:19:01.565 DEBUG: created vertexInputState -186:07:2026 01:19:01.565 DEBUG: created PipelineCreateInfo -186:07:2026 01:19:01.565 DEBUG: created GraphicsPipeline -186:07:2026 01:19:01.565 DEBUG: Light Renderer Pipeline -> [1649336640672] -186:07:2026 01:19:01.569 DEBUG: Loading Compiled Shader [resources\EngineResources\shaders\post_process_vtx.glsl.spv] -186:07:2026 01:19:01.570 DEBUG: Loading Compiled Shader [resources\EngineResources\shaders\post_process_frag.glsl.spv] -186:07:2026 01:19:01.570 DEBUG: Creating Pipeline -186:07:2026 01:19:01.570 DEBUG: registered Descriptor sets -186:07:2026 01:19:01.570 DEBUG: created render info -186:07:2026 01:19:01.570 DEBUG: created BlendAttributeStates -186:07:2026 01:19:01.570 DEBUG: created PipelineLayout -186:07:2026 01:19:01.570 DEBUG: created vertexInputState -186:07:2026 01:19:01.570 DEBUG: created PipelineCreateInfo -186:07:2026 01:19:01.570 DEBUG: created GraphicsPipeline -186:07:2026 01:19:01.570 DEBUG: Post Process Renderer Pipeline -> [1649336680800] -186:07:2026 01:19:01.571 DEBUG: Loading Compiled Shader [resources\EngineResources\GuiShaders\gui_vertex.glsl.spv] -186:07:2026 01:19:01.571 DEBUG: Loading Compiled Shader [resources\EngineResources\GuiShaders\gui_frag.glsl.spv] -186:07:2026 01:19:01.572 DEBUG: Creating Pipeline -186:07:2026 01:19:01.572 DEBUG: registered Descriptor sets -186:07:2026 01:19:01.572 DEBUG: created render info -186:07:2026 01:19:01.572 DEBUG: created BlendAttributeStates -186:07:2026 01:19:01.572 DEBUG: created PipelineLayout -186:07:2026 01:19:01.572 DEBUG: created vertexInputState -186:07:2026 01:19:01.572 DEBUG: created PipelineCreateInfo -186:07:2026 01:19:01.572 DEBUG: created GraphicsPipeline -186:07:2026 01:19:01.629 DEBUG: Creating Vulkan Command Pool -186:07:2026 01:19:01.629 DEBUG: Creating Command Buffer -186:07:2026 01:19:01.641 TRACE: Destroyed Command Buffer -186:07:2026 01:19:01.642 DEBUG: Destroying Vulkan Command Pool -186:07:2026 01:19:01.644 DEBUG: GUI Renderer Pipeline -> [1649336744944] -186:07:2026 01:19:01.645 DEBUG: Loading Compiled Shader [resources\EngineResources\shaders\swap_vtx.glsl.spv] -186:07:2026 01:19:01.645 DEBUG: Loading Compiled Shader [resources\EngineResources\shaders\swap_frag.glsl.spv] -186:07:2026 01:19:01.645 DEBUG: Creating Pipeline -186:07:2026 01:19:01.645 DEBUG: registered Descriptor sets -186:07:2026 01:19:01.645 DEBUG: created render info -186:07:2026 01:19:01.645 DEBUG: created BlendAttributeStates -186:07:2026 01:19:01.645 DEBUG: created PipelineLayout -186:07:2026 01:19:01.645 DEBUG: created vertexInputState -186:07:2026 01:19:01.645 DEBUG: created PipelineCreateInfo -186:07:2026 01:19:01.645 DEBUG: created GraphicsPipeline -186:07:2026 01:19:01.646 DEBUG: Swap Chain Renderer Pipeline -> [1649337704272] -186:07:2026 01:19:01.647 DEBUG: Starting Render Thread -186:07:2026 01:19:01.647 DEBUG: Loading 3 Materials -186:07:2026 01:19:01.649 DEBUG: Creating Command Buffer -186:07:2026 01:19:01.649 DEBUG: Material Texture Path -> [] -186:07:2026 01:19:01.650 TRACE: MaterialData[ID=melona-mat-0, TexturePath=, NormalTexturePath=, MetalRoughnessMap=, DiffuseColour=( 6.000E-1 6.000E-1 6.000E-1 1.000E+0), Roughness=0.0, Metallic=0.0] -186:07:2026 01:19:01.650 DEBUG: Material Texture Path -> [resources\models\melona\Melonamodel.png] -186:07:2026 01:19:01.650 DEBUG: Loading Image [resources\models\melona\Melonamodel.png] -186:07:2026 01:19:01.650 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=65536 cap=65536]] -186:07:2026 01:19:01.650 TRACE: MaterialData[ID=melona-mat-1, TexturePath=resources\models\melona\Melonamodel.png, NormalTexturePath=, MetalRoughnessMap=, DiffuseColour=( 6.000E-1 6.000E-1 6.000E-1 1.000E+0), Roughness=0.0, Metallic=0.0] -186:07:2026 01:19:01.651 DEBUG: Material Texture Path -> [] -186:07:2026 01:19:01.651 TRACE: MaterialData[ID=melona-mat-2, TexturePath=, NormalTexturePath=, MetalRoughnessMap=, DiffuseColour=( 6.000E-1 6.000E-1 6.000E-1 1.000E+0), Roughness=0.0, Metallic=0.0] -186:07:2026 01:19:01.653 TRACE: Destroyed Command Buffer -186:07:2026 01:19:01.653 DEBUG: Loaded 3 Materials -186:07:2026 01:19:01.653 DEBUG: Loading Image [resources/EngineResources/SkyBoxTextures/autumn_field_pureskyRight.png] -186:07:2026 01:19:01.689 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=16777216 cap=16777216]] -186:07:2026 01:19:01.698 DEBUG: Loading Image [resources/EngineResources/SkyBoxTextures/autumn_field_pureskyRight.png] -186:07:2026 01:19:01.735 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=16777216 lim=16777216 cap=16777216]] -186:07:2026 01:19:01.735 DEBUG: Loading Image [resources/EngineResources/SkyBoxTextures/autumn_field_pureskyLeft.png] -186:07:2026 01:19:01.774 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=16777216 lim=16777216 cap=16777216]] -186:07:2026 01:19:01.775 DEBUG: Loading Image [resources/EngineResources/SkyBoxTextures/autumn_field_pureskyUp.png] -186:07:2026 01:19:01.826 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=16777216 lim=16777216 cap=16777216]] -186:07:2026 01:19:01.826 DEBUG: Loading Image [resources/EngineResources/SkyBoxTextures/autumn_field_pureskyDown.png] -186:07:2026 01:19:01.858 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=16777216 lim=16777216 cap=16777216]] -186:07:2026 01:19:01.858 DEBUG: Loading Image [resources/EngineResources/SkyBoxTextures/autumn_field_pureskyFront.png] -186:07:2026 01:19:01.896 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=16777216 lim=16777216 cap=16777216]] -186:07:2026 01:19:01.896 DEBUG: Loading Image [resources/EngineResources/SkyBoxTextures/autumn_field_pureskyBack.png] -186:07:2026 01:19:01.934 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=16777216 lim=16777216 cap=16777216]] -186:07:2026 01:19:02.124 DEBUG: Loading Image [resources/EngineResources/Texture/Terrain4JTitleImage.png] -186:07:2026 01:19:02.125 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=198720 cap=198720]] -186:07:2026 01:19:02.125 DEBUG: Loading Image [resources/EngineResources/Texture/Billy.png] -186:07:2026 01:19:02.137 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=7613760 cap=7613760]] -186:07:2026 01:19:02.137 DEBUG: Transitioning Textures -186:07:2026 01:19:02.137 DEBUG: Recording Texture Transition -186:07:2026 01:19:02.138 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.143 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.143 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.147 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.147 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.151 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.151 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.154 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.154 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.158 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.158 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.162 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.162 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.166 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.166 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.170 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.170 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.173 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.173 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.178 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.178 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.181 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.182 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.185 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.185 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.189 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.189 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.193 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.193 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.197 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.197 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.201 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.201 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.204 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.204 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.208 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.208 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.212 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.212 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.216 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.216 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.219 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.219 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.223 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.223 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.227 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.227 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.231 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.231 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.234 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.234 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.238 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.238 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.241 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.241 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.245 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.245 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.257 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.257 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.260 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.261 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.264 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.264 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.268 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.268 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.271 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.271 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.275 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.275 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.280 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.280 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.283 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.283 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.287 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.287 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.291 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.291 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.294 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.294 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.298 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.298 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.301 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.301 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.306 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.306 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.310 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.310 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.314 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.314 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.317 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.317 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.321 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.321 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.325 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.325 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.329 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.329 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.332 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.332 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.336 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.336 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.339 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.339 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.343 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.343 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.347 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.347 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.350 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.350 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.354 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.354 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.358 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.358 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.361 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.361 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.366 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.366 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.369 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.369 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.373 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.373 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.377 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.377 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.380 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.380 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.384 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.384 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.388 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.388 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.391 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.391 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.395 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.395 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.399 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.399 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.403 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.403 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.406 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.406 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.411 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.411 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.414 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.414 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.418 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.418 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.421 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.421 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.425 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.425 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.429 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.429 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.434 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.434 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.438 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.438 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.443 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.443 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.446 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.446 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.450 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.450 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.454 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.454 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.457 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.457 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.461 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.461 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.465 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.465 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.469 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.469 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.472 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.472 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.476 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.476 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.480 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.480 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.483 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.483 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.488 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.488 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.491 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.491 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.495 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.495 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.498 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.498 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.501 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.501 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.506 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.506 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.510 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.510 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.513 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.513 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.517 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.517 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.521 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.521 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.524 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.524 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.527 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.527 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.531 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.531 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.535 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.535 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.540 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.540 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.543 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.543 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.547 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.547 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.551 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.551 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.554 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.554 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.558 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.558 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.562 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.562 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.565 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.565 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.568 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.568 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.584 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.584 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.588 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.588 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.591 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.591 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.595 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.595 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.599 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.599 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.603 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.603 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.606 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.606 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.610 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.610 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.614 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.614 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.617 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.617 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.621 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.621 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] -186:07:2026 01:19:02.625 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] -186:07:2026 01:19:02.625 DEBUG: Creating Command Buffer -186:07:2026 01:19:02.644 TRACE: Destroyed Command Buffer -186:07:2026 01:19:02.660 DEBUG: Recorded Texture Transition -186:07:2026 01:19:02.660 DEBUG: Transitioned Textures -186:07:2026 01:19:02.660 DEBUG: Loading 1 models -186:07:2026 01:19:02.660 DEBUG: Creating Command Buffer -186:07:2026 01:19:02.661 DEBUG: Creating Vertices Transfer Buffer, Mesh Data -> ID=[m_6d7d0384-980c-6574-37d9-8a8b11a5fdda_0] VertexSize=[24192] -186:07:2026 01:19:02.662 DEBUG: Creating Vertices Transfer Buffer, Mesh Data -> ID=[none_1] VertexSize=[672] -186:07:2026 01:19:02.663 TRACE: Destroyed Command Buffer -186:07:2026 01:19:02.676 DEBUG: Loaded 1 models -186:07:2026 01:19:02.677 DEBUG: Fetching Texture -> [SKYBOX_TEXTURE] -186:07:2026 01:19:02.677 DEBUG: Fetching Texture -> [resources/EngineResources/Texture/Terrain4JTitleImage.png] -186:07:2026 01:19:02.677 DEBUG: Fetching Texture -> [resources/EngineResources/Texture/Billy.png] -186:07:2026 01:19:02.817 INFO: Launched Terrain4J Engine -186:07:2026 01:19:02.818 DEBUG: Primary Thread Started -186:07:2026 01:19:02.818 DEBUG: Main Thread Started -186:07:2026 01:19:02.818 DEBUG: Render Thread Started -186:07:2026 01:19:02.818 DEBUG: Fast Thread Started -186:07:2026 01:19:13.604 DEBUG: Closing Software of name [Terrain4J Game Engine] -186:07:2026 01:19:13.604 DEBUG: Closing Fast Thread, Thread: [Thread[#42,Terrain4J Fast Engine Thread,5,main]] -186:07:2026 01:19:13.604 DEBUG: Closing Main Thread, Thread: [Thread[#41,Terrain4J Main Engine Thread,5,main]] -186:07:2026 01:19:13.604 DEBUG: Waiting Vulkan Context -186:07:2026 01:19:13.604 DEBUG: destroying Pipeline -186:07:2026 01:19:13.604 DEBUG: destroying Pipeline -186:07:2026 01:19:13.604 DEBUG: destroying Pipeline -186:07:2026 01:19:13.605 DEBUG: Destroying Descriptor Set Layout -186:07:2026 01:19:13.605 DEBUG: Destroying Descriptor Set Layout -186:07:2026 01:19:13.605 DEBUG: Destroying Descriptor Set Layout -186:07:2026 01:19:13.605 DEBUG: Destroying Image View -186:07:2026 01:19:13.605 DEBUG: Destroying Image View -186:07:2026 01:19:13.606 DEBUG: Destroying Image View -186:07:2026 01:19:13.606 DEBUG: Destroying Image View -186:07:2026 01:19:13.606 DEBUG: Destroying Image View -186:07:2026 01:19:13.606 DEBUG: Destroying Descriptor Set Layout -186:07:2026 01:19:13.607 DEBUG: Destroying Descriptor Set Layout -186:07:2026 01:19:13.607 DEBUG: destroying Pipeline -186:07:2026 01:19:13.607 DEBUG: Destroying Descriptor Set Layout -186:07:2026 01:19:13.607 DEBUG: Destroying Image View -186:07:2026 01:19:13.607 DEBUG: Destroying Image View -186:07:2026 01:19:13.607 DEBUG: Destroying Descriptor Set Layout -186:07:2026 01:19:13.607 DEBUG: Destroying Descriptor Set Layout -186:07:2026 01:19:13.607 DEBUG: destroying Pipeline -186:07:2026 01:19:13.607 DEBUG: Destroying Descriptor Set Layout -186:07:2026 01:19:13.607 DEBUG: destroying Pipeline -186:07:2026 01:19:13.608 DEBUG: Destroying Image View -186:07:2026 01:19:13.608 DEBUG: Destroying Descriptor Set Layout -186:07:2026 01:19:13.608 DEBUG: destroying Pipeline -186:07:2026 01:19:13.609 DEBUG: Destroying Image View -186:07:2026 01:19:13.609 DEBUG: Destroying Image View -186:07:2026 01:19:13.609 DEBUG: Destroying Image View -186:07:2026 01:19:13.609 DEBUG: Destroying Image View -186:07:2026 01:19:13.609 DEBUG: Destroying Image View -186:07:2026 01:19:13.609 DEBUG: Destroying Image View -186:07:2026 01:19:13.610 DEBUG: Destroying Image View -186:07:2026 01:19:13.610 DEBUG: Destroying Image View -186:07:2026 01:19:13.610 DEBUG: Destroying Image View -186:07:2026 01:19:13.610 DEBUG: Destroying Image View -186:07:2026 01:19:13.611 DEBUG: Destroying Image View -186:07:2026 01:19:13.611 DEBUG: Destroying Image View -186:07:2026 01:19:13.611 DEBUG: Destroying Image View -186:07:2026 01:19:13.611 DEBUG: Destroying Image View -186:07:2026 01:19:13.611 DEBUG: Destroying Image View -186:07:2026 01:19:13.611 DEBUG: Destroying Image View -186:07:2026 01:19:13.611 DEBUG: Destroying Image View -186:07:2026 01:19:13.611 DEBUG: Destroying Image View -186:07:2026 01:19:13.611 DEBUG: Destroying Image View -186:07:2026 01:19:13.611 DEBUG: Destroying Image View -186:07:2026 01:19:13.611 DEBUG: Destroying Image View -186:07:2026 01:19:13.612 DEBUG: Destroying Image View -186:07:2026 01:19:13.612 DEBUG: Destroying Image View -186:07:2026 01:19:13.612 DEBUG: Destroying Image View -186:07:2026 01:19:13.612 DEBUG: Destroying Image View -186:07:2026 01:19:13.612 DEBUG: Destroying Image View -186:07:2026 01:19:13.612 DEBUG: Destroying Image View -186:07:2026 01:19:13.612 DEBUG: Destroying Image View -186:07:2026 01:19:13.612 DEBUG: Destroying Image View -186:07:2026 01:19:13.612 DEBUG: Destroying Image View -186:07:2026 01:19:13.613 DEBUG: Destroying Image View -186:07:2026 01:19:13.613 DEBUG: Destroying Image View -186:07:2026 01:19:13.613 DEBUG: Destroying Image View -186:07:2026 01:19:13.613 DEBUG: Destroying Image View -186:07:2026 01:19:13.613 DEBUG: Destroyed Window -186:07:2026 01:19:13.613 DEBUG: Destroying Image View -186:07:2026 01:19:13.614 DEBUG: Destroying Image View -186:07:2026 01:19:13.614 DEBUG: Destroying Image View -186:07:2026 01:19:13.614 DEBUG: Destroying Image View -186:07:2026 01:19:13.614 DEBUG: Destroying Image View -186:07:2026 01:19:13.614 DEBUG: Destroying Image View -186:07:2026 01:19:13.615 DEBUG: Destroying Image View -186:07:2026 01:19:13.615 DEBUG: Destroying Image View -186:07:2026 01:19:13.615 DEBUG: Destroying Image View -186:07:2026 01:19:13.615 DEBUG: Destroying Image View -186:07:2026 01:19:13.615 DEBUG: Destroying Image View -186:07:2026 01:19:13.615 DEBUG: Destroying Image View -186:07:2026 01:19:13.615 DEBUG: Destroying Image View -186:07:2026 01:19:13.616 DEBUG: Destroying Image View -186:07:2026 01:19:13.616 DEBUG: Destroying Image View -186:07:2026 01:19:13.616 DEBUG: Destroying Image View -186:07:2026 01:19:13.616 DEBUG: Destroying Image View -186:07:2026 01:19:13.616 DEBUG: Destroying Image View -186:07:2026 01:19:13.616 DEBUG: Destroying Image View -186:07:2026 01:19:13.624 DEBUG: Destroyed Window -186:07:2026 01:19:13.624 DEBUG: Process still running: [[Thread[#39,tinylog-WritingThread,1,main], Thread[#3,Terrain4J Primary Runtime Thread,5,main], Thread[#17,Finalizer,8,system], Thread[#18,Signal Dispatcher,9,system], Thread[#19,Attach Listener,5,system], Thread[#37,Notification Thread,9,system], Thread[#38,Common-Cleaner,8,InnocuousThreadGroup], Thread[#65,Terrain4J Render Engine Thread,5,main], Thread[#16,Reference Handler,10,system]]] -186:07:2026 01:19:13.624 DEBUG: Waiting to close Primary Thread, making sure vulkan has shut down properly first and Engine Threads are closed -Threads Open:[2] +186:07:2026 17:56:16.969 DEBUG: Loading Icon From Location [src\main\resources\WindowResources\Icon\ProgramIcon.png] +186:07:2026 17:56:16.986 DEBUG: Freeing icon Buffer +186:07:2026 17:56:17.166 DEBUG: Loading Models From [resources/models/cube/Cube.json] +186:07:2026 17:56:17.193 DEBUG: Loaded Model Data: [ModelData[ID=Cube, Meshes=[MeshData[ID=mesh_0, MaterialID=Cube-mat-1, OffsetVertex=0, VertexSize=1344, OffsetIndex=0, IndexSize=144]], VertexPath=resources/models/cube/Cube.vtx, IndexPath=resources/models/cube/Cube.idx]] +186:07:2026 17:56:17.193 DEBUG: Loading Materials From [resources/models/cube/Cube_mat.json] +186:07:2026 17:56:17.198 DEBUG: Loaded Material Data: [[MaterialData[ID=Cube-mat-0, TexturePath=, NormalTexturePath=, MetalRoughnessMap=, DiffuseColour=( 6.000E-1 6.000E-1 6.000E-1 1.000E+0), Roughness=0.0, Metallic=0.0], MaterialData[ID=Cube-mat-1, TexturePath=resources\models\cube\cubetexture.png, NormalTexturePath=, MetalRoughnessMap=, DiffuseColour=( 6.000E-1 6.000E-1 6.000E-1 1.000E+0), Roughness=0.0, Metallic=0.0], MaterialData[ID=Cube-mat-2, TexturePath=, NormalTexturePath=, MetalRoughnessMap=, DiffuseColour=( 6.000E-1 6.000E-1 6.000E-1 1.000E+0), Roughness=0.0, Metallic=0.0]]] +186:07:2026 17:56:17.225 DEBUG: Starting Main Thread +186:07:2026 17:56:17.225 DEBUG: Starting Fast Thread +186:07:2026 17:56:17.228 DEBUG: Initialising Vulkan Instance +186:07:2026 17:56:17.240 DEBUG: Validation Layer Count:12 +186:07:2026 17:56:17.242 TRACE: Supported Layer [VK_LAYER_AMD_switchable_graphics] +186:07:2026 17:56:17.242 TRACE: Supported Layer [GalaxyOverlayVkLayer] +186:07:2026 17:56:17.242 TRACE: Supported Layer [GalaxyOverlayVkLayer_VERBOSE] +186:07:2026 17:56:17.242 TRACE: Supported Layer [GalaxyOverlayVkLayer_DEBUG] +186:07:2026 17:56:17.242 TRACE: Supported Layer [VK_LAYER_EOS_Overlay] +186:07:2026 17:56:17.242 TRACE: Supported Layer [VK_LAYER_RENDERDOC_Capture] +186:07:2026 17:56:17.242 TRACE: Supported Layer [VK_LAYER_OW_OVERLAY] +186:07:2026 17:56:17.242 TRACE: Supported Layer [VK_LAYER_OW_OBS_HOOK] +186:07:2026 17:56:17.242 TRACE: Supported Layer [VK_LAYER_VALVE_steam_overlay] +186:07:2026 17:56:17.242 TRACE: Supported Layer [VK_LAYER_VALVE_steam_fossilize] +186:07:2026 17:56:17.242 TRACE: Supported Layer [VK_LAYER_OBS_HOOK] +186:07:2026 17:56:17.242 TRACE: Supported Layer [VK_LAYER_ROCKSTAR_GAMES_social_club] +186:07:2026 17:56:17.242 WARN: No Layers Found to Validate, continuing without validation +186:07:2026 17:56:17.242 DEBUG: Validation:false +186:07:2026 17:56:17.246 DEBUG: Instance Extension Count:[14] +186:07:2026 17:56:17.249 TRACE: Supported Instance Extension [VK_KHR_device_group_creation] +186:07:2026 17:56:17.249 TRACE: Supported Instance Extension [VK_KHR_external_fence_capabilities] +186:07:2026 17:56:17.249 TRACE: Supported Instance Extension [VK_KHR_external_memory_capabilities] +186:07:2026 17:56:17.249 TRACE: Supported Instance Extension [VK_KHR_external_semaphore_capabilities] +186:07:2026 17:56:17.249 TRACE: Supported Instance Extension [VK_KHR_get_physical_device_properties2] +186:07:2026 17:56:17.249 TRACE: Supported Instance Extension [VK_KHR_get_surface_capabilities2] +186:07:2026 17:56:17.249 TRACE: Supported Instance Extension [VK_KHR_surface] +186:07:2026 17:56:17.249 TRACE: Supported Instance Extension [VK_KHR_win32_surface] +186:07:2026 17:56:17.249 TRACE: Supported Instance Extension [VK_EXT_debug_report] +186:07:2026 17:56:17.249 TRACE: Supported Instance Extension [VK_EXT_debug_utils] +186:07:2026 17:56:17.249 TRACE: Supported Instance Extension [VK_EXT_swapchain_colorspace] +186:07:2026 17:56:17.249 TRACE: Supported Instance Extension [VK_KHR_surface_maintenance1] +186:07:2026 17:56:17.249 TRACE: Supported Instance Extension [VK_KHR_portability_enumeration] +186:07:2026 17:56:17.249 TRACE: Supported Instance Extension [VK_LUNARG_direct_driver_loading] +186:07:2026 17:56:17.320 DEBUG: selecting physical devices +186:07:2026 17:56:17.321 DEBUG: Detected Physical Device Count: 2 +186:07:2026 17:56:17.331 DEBUG: freeing physical device [AMD Radeon(TM) Graphics] +186:07:2026 17:56:17.331 DEBUG: Selected Graphics Driver: [AMD Radeon RX 9070 XT] +186:07:2026 17:56:17.331 DEBUG: Creating Device Interface Layer +186:07:2026 17:56:17.331 TRACE: Device supports [221] number of extensions +186:07:2026 17:56:17.331 TRACE: [VK_KHR_16bit_storage] is a supported extension +186:07:2026 17:56:17.331 TRACE: [VK_KHR_8bit_storage] is a supported extension +186:07:2026 17:56:17.331 TRACE: [VK_KHR_acceleration_structure] is a supported extension +186:07:2026 17:56:17.331 TRACE: [VK_KHR_bind_memory2] is a supported extension +186:07:2026 17:56:17.331 TRACE: [VK_KHR_buffer_device_address] is a supported extension +186:07:2026 17:56:17.331 TRACE: [VK_KHR_calibrated_timestamps] is a supported extension +186:07:2026 17:56:17.331 TRACE: [VK_KHR_compute_shader_derivatives] is a supported extension +186:07:2026 17:56:17.331 TRACE: [VK_KHR_cooperative_matrix] is a supported extension +186:07:2026 17:56:17.331 TRACE: [VK_KHR_copy_commands2] is a supported extension +186:07:2026 17:56:17.331 TRACE: [VK_KHR_copy_memory_indirect] is a supported extension +186:07:2026 17:56:17.331 TRACE: [VK_KHR_create_renderpass2] is a supported extension +186:07:2026 17:56:17.331 TRACE: [VK_KHR_dedicated_allocation] is a supported extension +186:07:2026 17:56:17.331 TRACE: [VK_KHR_deferred_host_operations] is a supported extension +186:07:2026 17:56:17.331 TRACE: [VK_KHR_depth_clamp_zero_one] is a supported extension +186:07:2026 17:56:17.331 TRACE: [VK_KHR_depth_stencil_resolve] is a supported extension +186:07:2026 17:56:17.331 TRACE: [VK_KHR_descriptor_update_template] is a supported extension +186:07:2026 17:56:17.331 TRACE: [VK_KHR_device_address_commands] is a supported extension +186:07:2026 17:56:17.331 TRACE: [VK_KHR_device_group] is a supported extension +186:07:2026 17:56:17.331 TRACE: [VK_KHR_draw_indirect_count] is a supported extension +186:07:2026 17:56:17.331 TRACE: [VK_KHR_driver_properties] is a supported extension +186:07:2026 17:56:17.331 TRACE: [VK_KHR_dynamic_rendering] is a supported extension +186:07:2026 17:56:17.331 TRACE: [VK_KHR_dynamic_rendering_local_read] is a supported extension +186:07:2026 17:56:17.331 TRACE: [VK_KHR_external_fence] is a supported extension +186:07:2026 17:56:17.331 TRACE: [VK_KHR_external_fence_win32] is a supported extension +186:07:2026 17:56:17.331 TRACE: [VK_KHR_external_memory] is a supported extension +186:07:2026 17:56:17.331 TRACE: [VK_KHR_external_memory_win32] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_external_semaphore] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_external_semaphore_win32] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_format_feature_flags2] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_fragment_shader_barycentric] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_fragment_shading_rate] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_get_memory_requirements2] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_global_priority] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_imageless_framebuffer] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_image_format_list] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_index_type_uint8] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_line_rasterization] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_load_store_op_none] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_maintenance1] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_maintenance2] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_maintenance3] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_maintenance4] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_maintenance5] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_maintenance6] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_maintenance7] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_maintenance8] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_maintenance9] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_maintenance10] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_maintenance11] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_map_memory2] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_multiview] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_pipeline_binary] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_pipeline_executable_properties] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_pipeline_library] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_present_id2] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_present_mode_fifo_latest_ready] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_present_wait2] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_push_descriptor] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_ray_query] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_ray_tracing_maintenance1] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_ray_tracing_pipeline] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_ray_tracing_position_fetch] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_relaxed_block_layout] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_robustness2] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_sampler_mirror_clamp_to_edge] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_sampler_ycbcr_conversion] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_separate_depth_stencil_layouts] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_shader_atomic_int64] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_shader_bfloat16] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_shader_clock] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_shader_draw_parameters] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_shader_expect_assume] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_shader_float16_int8] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_shader_float_controls] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_shader_float_controls2] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_shader_fma] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_shader_integer_dot_product] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_shader_maximal_reconvergence] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_shader_non_semantic_info] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_shader_quad_control] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_shader_subgroup_extended_types] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_shader_subgroup_rotate] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_shader_subgroup_uniform_control_flow] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_shader_terminate_invocation] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_shader_untyped_pointers] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_spirv_1_4] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_storage_buffer_storage_class] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_swapchain] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_swapchain_maintenance1] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_swapchain_mutable_format] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_synchronization2] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_timeline_semaphore] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_uniform_buffer_standard_layout] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_variable_pointers] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_vertex_attribute_divisor] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_video_decode_av1] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_video_decode_h264] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_video_decode_h265] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_video_decode_queue] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_video_decode_vp9] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_video_encode_av1] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_video_encode_h264] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_video_encode_h265] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_video_encode_intra_refresh] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_video_encode_quantization_map] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_video_encode_queue] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_video_maintenance1] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_video_queue] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_vulkan_memory_model] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_win32_keyed_mutex] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_workgroup_memory_explicit_layout] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_KHR_zero_initialize_workgroup_memory] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_EXT_4444_formats] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_EXT_attachment_feedback_loop_layout] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_EXT_border_color_swizzle] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_EXT_calibrated_timestamps] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_EXT_color_write_enable] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_EXT_conditional_rendering] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_EXT_conservative_rasterization] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_EXT_custom_border_color] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_EXT_depth_clamp_control] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_EXT_depth_clamp_zero_one] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_EXT_depth_clip_control] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_EXT_depth_clip_enable] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_EXT_depth_range_unrestricted] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_EXT_descriptor_buffer] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_EXT_descriptor_heap] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_EXT_descriptor_indexing] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_EXT_device_address_binding_report] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_EXT_device_fault] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_EXT_device_generated_commands] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_EXT_dynamic_rendering_unused_attachments] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_EXT_extended_dynamic_state] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_EXT_extended_dynamic_state2] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_EXT_extended_dynamic_state3] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_EXT_external_memory_host] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_EXT_fragment_shader_interlock] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_EXT_frame_boundary] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_EXT_full_screen_exclusive] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_EXT_global_priority] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_EXT_global_priority_query] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_EXT_graphics_pipeline_library] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_EXT_hdr_metadata] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_EXT_host_image_copy] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_EXT_host_query_reset] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_EXT_image_2d_view_of_3d] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_EXT_image_robustness] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_EXT_image_sliced_view_of_3d] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_EXT_image_view_min_lod] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_EXT_index_type_uint8] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_EXT_inline_uniform_block] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_EXT_line_rasterization] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_EXT_load_store_op_none] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_EXT_memory_budget] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_EXT_memory_priority] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_EXT_mesh_shader] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_EXT_mutable_descriptor_type] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_EXT_nested_command_buffer] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_EXT_non_seamless_cube_map] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_EXT_pageable_device_local_memory] is a supported extension +186:07:2026 17:56:17.332 TRACE: [VK_EXT_pipeline_creation_cache_control] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_EXT_pipeline_creation_feedback] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_EXT_pipeline_library_group_handles] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_EXT_post_depth_coverage] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_EXT_present_mode_fifo_latest_ready] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_EXT_primitive_topology_list_restart] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_EXT_primitives_generated_query] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_EXT_private_data] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_EXT_provoking_vertex] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_EXT_queue_family_foreign] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_EXT_ray_tracing_invocation_reorder] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_EXT_robustness2] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_EXT_sampler_filter_minmax] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_EXT_sample_locations] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_EXT_scalar_block_layout] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_EXT_separate_stencil_usage] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_EXT_shader_atomic_float] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_EXT_shader_atomic_float2] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_EXT_shader_demote_to_helper_invocation] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_EXT_shader_float8] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_EXT_shader_image_atomic_int64] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_EXT_shader_long_vector] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_EXT_shader_module_identifier] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_EXT_shader_object] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_EXT_shader_replicated_composites] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_EXT_shader_stencil_export] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_EXT_shader_subgroup_ballot] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_EXT_shader_subgroup_vote] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_EXT_shader_uniform_buffer_unsized_array] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_EXT_shader_viewport_index_layer] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_EXT_subgroup_size_control] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_EXT_texel_buffer_alignment] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_EXT_tooling_info] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_EXT_transform_feedback] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_EXT_vertex_attribute_divisor] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_EXT_vertex_input_dynamic_state] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_EXT_ycbcr_image_arrays] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_AMD_anti_lag] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_AMD_buffer_marker] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_AMD_device_coherent_memory] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_AMD_display_native_hdr] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_AMD_draw_indirect_count] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_AMD_gcn_shader] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_AMD_gpa_interface] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_AMD_gpu_shader_half_float] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_AMD_gpu_shader_int16] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_AMD_memory_overallocation_behavior] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_AMD_mixed_attachment_samples] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_AMD_shader_ballot] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_AMD_shader_core_properties] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_AMD_shader_core_properties2] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_AMD_shader_early_and_late_fragment_tests] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_AMD_shader_explicit_vertex_parameter] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_AMD_shader_image_load_store_lod] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_AMD_shader_info] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_AMD_shader_trinary_minmax] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_AMDX_dense_geometry_format] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_GOOGLE_decorate_string] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_GOOGLE_hlsl_functionality1] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_GOOGLE_user_type] is a supported extension +186:07:2026 17:56:17.333 TRACE: [VK_VALVE_mutable_descriptor_type] is a supported extension +186:07:2026 17:56:17.409 DEBUG: Creating Vulkan Surface +186:07:2026 17:56:17.413 DEBUG: Creating Vulkan SwapChain +186:07:2026 17:56:17.473 DEBUG: Creating new Vk Pipeline Cache +186:07:2026 17:56:17.475 DEBUG: Creating Descriptor Allocator +186:07:2026 17:56:17.476 DEBUG: Creating Descriptor pool +186:07:2026 17:56:17.484 DEBUG: Vulkan: Creating A Queue +186:07:2026 17:56:17.486 DEBUG: Vulkan: Creating A Queue +186:07:2026 17:56:17.487 DEBUG: Creating Vulkan Command Pool +186:07:2026 17:56:17.487 DEBUG: Creating Command Buffer +186:07:2026 17:56:17.489 DEBUG: Creating Vulkan Command Pool +186:07:2026 17:56:17.489 DEBUG: Creating Command Buffer +186:07:2026 17:56:17.515 DEBUG: Loading Compiled Shader [resources\EngineResources\shaders\scene_vertex.glsl.spv] +186:07:2026 17:56:17.515 DEBUG: Loading Compiled Shader [resources\EngineResources\shaders\scene_fragment_deferred.glsl.spv] +186:07:2026 17:56:17.519 DEBUG: Creating Pipeline +186:07:2026 17:56:17.522 DEBUG: registered Descriptor sets +186:07:2026 17:56:17.522 DEBUG: created render info +186:07:2026 17:56:17.522 DEBUG: created BlendAttributeStates +186:07:2026 17:56:17.523 DEBUG: created PipelineLayout +186:07:2026 17:56:17.523 DEBUG: created vertexInputState +186:07:2026 17:56:17.524 DEBUG: created PipelineCreateInfo +186:07:2026 17:56:17.525 DEBUG: created GraphicsPipeline +186:07:2026 17:56:17.525 DEBUG: Pipeline Created +186:07:2026 17:56:17.526 DEBUG: Loading Compiled Shader [resources\EngineResources\shaders\scene_vertex.glsl.spv] +186:07:2026 17:56:17.527 DEBUG: Loading Compiled Shader [resources\EngineResources\shaders\scene_opaque_fragment_deferred.glsl.spv] +186:07:2026 17:56:17.527 DEBUG: Creating Pipeline +186:07:2026 17:56:17.527 DEBUG: registered Descriptor sets +186:07:2026 17:56:17.527 DEBUG: created render info +186:07:2026 17:56:17.527 DEBUG: created BlendAttributeStates +186:07:2026 17:56:17.527 DEBUG: created PipelineLayout +186:07:2026 17:56:17.527 DEBUG: created vertexInputState +186:07:2026 17:56:17.527 DEBUG: created PipelineCreateInfo +186:07:2026 17:56:17.527 DEBUG: created GraphicsPipeline +186:07:2026 17:56:17.527 DEBUG: Pipeline Created +186:07:2026 17:56:17.528 DEBUG: Loading Compiled Shader [resources\EngineResources\shaders\scene_vertex.glsl.spv] +186:07:2026 17:56:17.528 DEBUG: Loading Compiled Shader [resources\EngineResources\shaders\scene_translucent_fragment_deferred.glsl.spv] +186:07:2026 17:56:17.528 DEBUG: Creating Pipeline +186:07:2026 17:56:17.528 DEBUG: registered Descriptor sets +186:07:2026 17:56:17.528 DEBUG: created render info +186:07:2026 17:56:17.528 DEBUG: created BlendAttributeStates +186:07:2026 17:56:17.528 DEBUG: created PipelineLayout +186:07:2026 17:56:17.528 DEBUG: created vertexInputState +186:07:2026 17:56:17.528 DEBUG: created PipelineCreateInfo +186:07:2026 17:56:17.528 DEBUG: created GraphicsPipeline +186:07:2026 17:56:17.528 DEBUG: Pipeline Created +186:07:2026 17:56:17.528 DEBUG: Loading Compiled Shader [resources\EngineResources\shaders\skybox_vertex.glsl.spv] +186:07:2026 17:56:17.529 DEBUG: Loading Compiled Shader [resources\EngineResources\shaders\skybox_fragment.glsl.spv] +186:07:2026 17:56:17.529 DEBUG: Creating Pipeline +186:07:2026 17:56:17.529 DEBUG: registered Descriptor sets +186:07:2026 17:56:17.529 DEBUG: created render info +186:07:2026 17:56:17.529 DEBUG: created BlendAttributeStates +186:07:2026 17:56:17.529 DEBUG: created PipelineLayout +186:07:2026 17:56:17.529 DEBUG: created vertexInputState +186:07:2026 17:56:17.529 DEBUG: created PipelineCreateInfo +186:07:2026 17:56:17.529 DEBUG: created GraphicsPipeline +186:07:2026 17:56:17.529 DEBUG: Skybox Pipeline Created Successfully +186:07:2026 17:56:17.529 DEBUG: Deferred Renderer Pipeline -> [1447693036128] +186:07:2026 17:56:17.532 DEBUG: Loading Compiled Shader [resources\EngineResources\shaders\lighting_vertex.glsl.spv] +186:07:2026 17:56:17.533 DEBUG: Loading Compiled Shader [resources\EngineResources\shaders\lighting_frag.glsl.spv] +186:07:2026 17:56:17.535 DEBUG: Creating Pipeline +186:07:2026 17:56:17.535 DEBUG: registered Descriptor sets +186:07:2026 17:56:17.535 DEBUG: created render info +186:07:2026 17:56:17.535 DEBUG: created BlendAttributeStates +186:07:2026 17:56:17.535 DEBUG: created PipelineLayout +186:07:2026 17:56:17.535 DEBUG: created vertexInputState +186:07:2026 17:56:17.535 DEBUG: created PipelineCreateInfo +186:07:2026 17:56:17.535 DEBUG: created GraphicsPipeline +186:07:2026 17:56:17.535 DEBUG: Light Renderer Pipeline -> [1447693244496] +186:07:2026 17:56:17.538 DEBUG: Loading Compiled Shader [resources\EngineResources\shaders\post_process_vtx.glsl.spv] +186:07:2026 17:56:17.539 DEBUG: Loading Compiled Shader [resources\EngineResources\shaders\post_process_frag.glsl.spv] +186:07:2026 17:56:17.539 DEBUG: Creating Pipeline +186:07:2026 17:56:17.539 DEBUG: registered Descriptor sets +186:07:2026 17:56:17.539 DEBUG: created render info +186:07:2026 17:56:17.539 DEBUG: created BlendAttributeStates +186:07:2026 17:56:17.539 DEBUG: created PipelineLayout +186:07:2026 17:56:17.539 DEBUG: created vertexInputState +186:07:2026 17:56:17.539 DEBUG: created PipelineCreateInfo +186:07:2026 17:56:17.540 DEBUG: created GraphicsPipeline +186:07:2026 17:56:17.540 DEBUG: Post Process Renderer Pipeline -> [1447693274304] +186:07:2026 17:56:17.540 DEBUG: Loading Compiled Shader [resources\EngineResources\GuiShaders\gui_vertex.glsl.spv] +186:07:2026 17:56:17.540 DEBUG: Loading Compiled Shader [resources\EngineResources\GuiShaders\gui_frag.glsl.spv] +186:07:2026 17:56:17.542 DEBUG: Creating Pipeline +186:07:2026 17:56:17.542 DEBUG: registered Descriptor sets +186:07:2026 17:56:17.542 DEBUG: created render info +186:07:2026 17:56:17.542 DEBUG: created BlendAttributeStates +186:07:2026 17:56:17.542 DEBUG: created PipelineLayout +186:07:2026 17:56:17.542 DEBUG: created vertexInputState +186:07:2026 17:56:17.542 DEBUG: created PipelineCreateInfo +186:07:2026 17:56:17.542 DEBUG: created GraphicsPipeline +186:07:2026 17:56:17.600 DEBUG: Creating Vulkan Command Pool +186:07:2026 17:56:17.600 DEBUG: Creating Command Buffer +186:07:2026 17:56:17.612 TRACE: Destroyed Command Buffer +186:07:2026 17:56:17.613 DEBUG: Destroying Vulkan Command Pool +186:07:2026 17:56:17.616 DEBUG: GUI Renderer Pipeline -> [1447693292464] +186:07:2026 17:56:17.617 DEBUG: Loading Compiled Shader [resources\EngineResources\shaders\swap_vtx.glsl.spv] +186:07:2026 17:56:17.617 DEBUG: Loading Compiled Shader [resources\EngineResources\shaders\swap_frag.glsl.spv] +186:07:2026 17:56:17.617 DEBUG: Creating Pipeline +186:07:2026 17:56:17.617 DEBUG: registered Descriptor sets +186:07:2026 17:56:17.617 DEBUG: created render info +186:07:2026 17:56:17.617 DEBUG: created BlendAttributeStates +186:07:2026 17:56:17.617 DEBUG: created PipelineLayout +186:07:2026 17:56:17.617 DEBUG: created vertexInputState +186:07:2026 17:56:17.617 DEBUG: created PipelineCreateInfo +186:07:2026 17:56:17.617 DEBUG: created GraphicsPipeline +186:07:2026 17:56:17.617 DEBUG: Swap Chain Renderer Pipeline -> [1447694268672] +186:07:2026 17:56:17.620 DEBUG: Starting Render Thread +186:07:2026 17:56:17.620 DEBUG: Loading 3 Materials +186:07:2026 17:56:17.621 DEBUG: Creating Command Buffer +186:07:2026 17:56:17.622 DEBUG: Material Texture Path -> [] +186:07:2026 17:56:17.623 TRACE: MaterialData[ID=Cube-mat-0, TexturePath=, NormalTexturePath=, MetalRoughnessMap=, DiffuseColour=( 6.000E-1 6.000E-1 6.000E-1 1.000E+0), Roughness=0.0, Metallic=0.0] +186:07:2026 17:56:17.623 DEBUG: Material Texture Path -> [resources\models\cube\cubetexture.png] +186:07:2026 17:56:17.623 DEBUG: Loading Image [resources\models\cube\cubetexture.png] +186:07:2026 17:56:17.624 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=16384 cap=16384]] +186:07:2026 17:56:17.624 TRACE: MaterialData[ID=Cube-mat-1, TexturePath=resources\models\cube\cubetexture.png, NormalTexturePath=, MetalRoughnessMap=, DiffuseColour=( 6.000E-1 6.000E-1 6.000E-1 1.000E+0), Roughness=0.0, Metallic=0.0] +186:07:2026 17:56:17.624 DEBUG: Material Texture Path -> [] +186:07:2026 17:56:17.624 TRACE: MaterialData[ID=Cube-mat-2, TexturePath=, NormalTexturePath=, MetalRoughnessMap=, DiffuseColour=( 6.000E-1 6.000E-1 6.000E-1 1.000E+0), Roughness=0.0, Metallic=0.0] +186:07:2026 17:56:17.627 TRACE: Destroyed Command Buffer +186:07:2026 17:56:17.627 DEBUG: Loaded 3 Materials +186:07:2026 17:56:17.627 DEBUG: Loading Image [resources/EngineResources/SkyBoxTextures/autumn_field_pureskyRight.png] +186:07:2026 17:56:17.664 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=16777216 cap=16777216]] +186:07:2026 17:56:17.672 DEBUG: Loading Image [resources/EngineResources/SkyBoxTextures/autumn_field_pureskyRight.png] +186:07:2026 17:56:17.709 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=16777216 lim=16777216 cap=16777216]] +186:07:2026 17:56:17.710 DEBUG: Loading Image [resources/EngineResources/SkyBoxTextures/autumn_field_pureskyLeft.png] +186:07:2026 17:56:17.748 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=16777216 lim=16777216 cap=16777216]] +186:07:2026 17:56:17.749 DEBUG: Loading Image [resources/EngineResources/SkyBoxTextures/autumn_field_pureskyUp.png] +186:07:2026 17:56:17.799 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=16777216 lim=16777216 cap=16777216]] +186:07:2026 17:56:17.800 DEBUG: Loading Image [resources/EngineResources/SkyBoxTextures/autumn_field_pureskyDown.png] +186:07:2026 17:56:17.832 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=16777216 lim=16777216 cap=16777216]] +186:07:2026 17:56:17.833 DEBUG: Loading Image [resources/EngineResources/SkyBoxTextures/autumn_field_pureskyFront.png] +186:07:2026 17:56:17.869 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=16777216 lim=16777216 cap=16777216]] +186:07:2026 17:56:17.870 DEBUG: Loading Image [resources/EngineResources/SkyBoxTextures/autumn_field_pureskyBack.png] +186:07:2026 17:56:17.910 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=16777216 lim=16777216 cap=16777216]] +186:07:2026 17:56:18.095 DEBUG: Loading Image [resources/EngineResources/Texture/Terrain4JTitleImage.png] +186:07:2026 17:56:18.096 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=198720 cap=198720]] +186:07:2026 17:56:18.096 DEBUG: Loading Image [resources/EngineResources/Texture/Billy.png] +186:07:2026 17:56:18.110 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=7613760 cap=7613760]] +186:07:2026 17:56:18.110 DEBUG: Transitioning Textures +186:07:2026 17:56:18.110 DEBUG: Recording Texture Transition +186:07:2026 17:56:18.110 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.115 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.115 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.120 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.120 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.124 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.124 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.128 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.128 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.132 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.132 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.136 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.136 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.141 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.141 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.145 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.145 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.148 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.148 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.152 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.152 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.156 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.156 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.160 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.160 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.164 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.164 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.169 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.169 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.172 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.172 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.176 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.176 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.181 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.181 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.185 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.185 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.189 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.189 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.193 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.193 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.197 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.197 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.202 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.202 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.205 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.205 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.210 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.210 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.213 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.213 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.217 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.217 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.222 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.222 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.225 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.225 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.240 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.241 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.245 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.245 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.249 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.249 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.254 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.254 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.258 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.258 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.261 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.261 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.265 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.266 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.270 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.270 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.273 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.273 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.277 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.277 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.282 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.282 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.286 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.286 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.290 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.290 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.294 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.294 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.298 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.298 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.303 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.303 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.306 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.306 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.311 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.311 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.314 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.315 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.319 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.319 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.322 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.322 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.326 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.326 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.330 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.330 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.334 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.334 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.338 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.338 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.343 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.343 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.347 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.347 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.350 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.350 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.355 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.355 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.358 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.358 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.362 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.362 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.367 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.367 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.371 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.371 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.375 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.375 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.379 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.379 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.383 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.383 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.387 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.387 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.390 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.390 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.395 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.395 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.399 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.399 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.403 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.403 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.407 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.407 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.411 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.411 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.415 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.415 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.419 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.419 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.422 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.422 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.426 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.426 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.430 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.430 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.435 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.435 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.439 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.439 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.442 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.442 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.446 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.446 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.450 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.450 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.455 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.455 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.458 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.458 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.462 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.462 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.466 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.466 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.470 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.470 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.474 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.474 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.478 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.478 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.482 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.482 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.486 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.486 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.490 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.490 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.494 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.494 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.498 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.498 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.502 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.502 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.506 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.506 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.511 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.511 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.515 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.515 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.519 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.519 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.523 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.523 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.526 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.526 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.530 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.531 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.534 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.534 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.538 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.538 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.543 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.543 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.547 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.547 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.550 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.550 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.555 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.555 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.558 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.558 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.562 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.562 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.566 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.566 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.570 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.570 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.574 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.574 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.592 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.592 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.596 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.596 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.600 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.600 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.605 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.605 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.609 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.609 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.613 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.613 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.617 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.617 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.621 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.621 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.625 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.625 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.629 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.629 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.633 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.633 DEBUG: Loading Image [resources/EngineResources/Texture/NoTexture.png] +186:07:2026 17:56:18.637 DEBUG: Loading Image Data [java.nio.DirectByteBuffer[pos=0 lim=3182656 cap=3182656]] +186:07:2026 17:56:18.637 DEBUG: Creating Command Buffer +186:07:2026 17:56:18.656 TRACE: Destroyed Command Buffer +186:07:2026 17:56:18.672 DEBUG: Recorded Texture Transition +186:07:2026 17:56:18.672 DEBUG: Transitioned Textures +186:07:2026 17:56:18.672 DEBUG: Loading 1 models +186:07:2026 17:56:18.674 DEBUG: Creating Command Buffer +186:07:2026 17:56:18.674 DEBUG: Creating Vertices Transfer Buffer, Mesh Data -> ID=[mesh_0] VertexSize=[1344] +186:07:2026 17:56:18.675 TRACE: Destroyed Command Buffer +186:07:2026 17:56:18.692 DEBUG: Loaded 1 models +186:07:2026 17:56:18.692 DEBUG: Fetching Texture -> [SKYBOX_TEXTURE] +186:07:2026 17:56:18.692 DEBUG: Fetching Texture -> [resources/EngineResources/Texture/Terrain4JTitleImage.png] +186:07:2026 17:56:18.692 DEBUG: Fetching Texture -> [resources/EngineResources/Texture/Billy.png] +186:07:2026 17:56:18.772 INFO: Launched Terrain4J Engine +186:07:2026 17:56:18.772 DEBUG: Primary Thread Started +186:07:2026 17:56:18.772 DEBUG: Render Thread Started +186:07:2026 17:56:18.772 DEBUG: Main Thread Started +186:07:2026 17:56:18.772 DEBUG: Fast Thread Started +186:07:2026 17:56:32.826 DEBUG: Closing Software of name [Terrain4J Game Engine] +186:07:2026 17:56:32.826 DEBUG: Closing Main Thread, Thread: [Thread[#41,Terrain4J Main Engine Thread,5,main]] +186:07:2026 17:56:32.827 DEBUG: Waiting Vulkan Context +186:07:2026 17:56:32.827 DEBUG: destroying Pipeline +186:07:2026 17:56:32.827 DEBUG: destroying Pipeline +186:07:2026 17:56:32.827 DEBUG: destroying Pipeline +186:07:2026 17:56:32.827 DEBUG: Destroying Descriptor Set Layout +186:07:2026 17:56:32.827 DEBUG: Destroying Descriptor Set Layout +186:07:2026 17:56:32.827 DEBUG: Destroying Descriptor Set Layout +186:07:2026 17:56:32.827 DEBUG: Destroying Image View +186:07:2026 17:56:32.827 DEBUG: Destroying Image View +186:07:2026 17:56:32.828 DEBUG: Destroying Image View +186:07:2026 17:56:32.828 DEBUG: Destroying Image View +186:07:2026 17:56:32.830 DEBUG: Destroying Image View +186:07:2026 17:56:32.830 DEBUG: Destroying Descriptor Set Layout +186:07:2026 17:56:32.830 DEBUG: Destroying Descriptor Set Layout +186:07:2026 17:56:32.830 DEBUG: destroying Pipeline +186:07:2026 17:56:32.830 DEBUG: Destroying Descriptor Set Layout +186:07:2026 17:56:32.830 DEBUG: Destroying Image View +186:07:2026 17:56:32.831 DEBUG: Destroying Image View +186:07:2026 17:56:32.831 DEBUG: Destroying Descriptor Set Layout +186:07:2026 17:56:32.831 DEBUG: Destroying Descriptor Set Layout +186:07:2026 17:56:32.831 DEBUG: destroying Pipeline +186:07:2026 17:56:32.831 DEBUG: Destroying Descriptor Set Layout +186:07:2026 17:56:32.831 DEBUG: destroying Pipeline +186:07:2026 17:56:32.832 DEBUG: Destroying Image View +186:07:2026 17:56:32.832 DEBUG: Destroying Descriptor Set Layout +186:07:2026 17:56:32.832 DEBUG: destroying Pipeline +186:07:2026 17:56:32.832 DEBUG: Destroying Image View +186:07:2026 17:56:32.833 DEBUG: Destroying Image View +186:07:2026 17:56:32.833 DEBUG: Destroying Image View +186:07:2026 17:56:32.833 DEBUG: Destroying Image View +186:07:2026 17:56:32.833 DEBUG: Destroying Image View +186:07:2026 17:56:32.833 DEBUG: Destroying Image View +186:07:2026 17:56:32.834 DEBUG: Destroying Image View +186:07:2026 17:56:32.834 DEBUG: Destroying Image View +186:07:2026 17:56:32.834 DEBUG: Destroying Image View +186:07:2026 17:56:32.834 DEBUG: Destroying Image View +186:07:2026 17:56:32.834 DEBUG: Destroying Image View +186:07:2026 17:56:32.834 DEBUG: Destroying Image View +186:07:2026 17:56:32.834 DEBUG: Destroying Image View +186:07:2026 17:56:32.835 DEBUG: Destroying Image View +186:07:2026 17:56:32.835 DEBUG: Destroying Image View +186:07:2026 17:56:32.835 DEBUG: Destroying Image View +186:07:2026 17:56:32.835 DEBUG: Destroying Image View +186:07:2026 17:56:32.835 DEBUG: Closing Fast Thread, Thread: [Thread[#42,Terrain4J Fast Engine Thread,5,main]] +186:07:2026 17:56:32.835 DEBUG: Destroying Image View +186:07:2026 17:56:32.835 DEBUG: Destroying Image View +186:07:2026 17:56:32.835 DEBUG: Destroying Image View +186:07:2026 17:56:32.835 DEBUG: Destroying Image View +186:07:2026 17:56:32.836 DEBUG: Destroying Image View +186:07:2026 17:56:32.836 DEBUG: Destroying Image View +186:07:2026 17:56:32.837 DEBUG: Destroying Image View +186:07:2026 17:56:32.837 DEBUG: Destroying Image View +186:07:2026 17:56:32.837 DEBUG: Destroying Image View +186:07:2026 17:56:32.837 DEBUG: Destroying Image View +186:07:2026 17:56:32.837 DEBUG: Destroying Image View +186:07:2026 17:56:32.837 DEBUG: Destroying Image View +186:07:2026 17:56:32.837 DEBUG: Destroying Image View +186:07:2026 17:56:32.837 DEBUG: Destroying Image View +186:07:2026 17:56:32.837 DEBUG: Destroying Image View +186:07:2026 17:56:32.837 DEBUG: Destroying Image View +186:07:2026 17:56:32.837 DEBUG: Destroying Image View +186:07:2026 17:56:32.838 DEBUG: Destroyed Window +186:07:2026 17:56:32.845 DEBUG: Destroyed Window +186:07:2026 17:56:32.845 DEBUG: Process still running: [[Thread[#37,Notification Thread,9,system], Thread[#18,Signal Dispatcher,9,system], Thread[#38,Common-Cleaner,8,InnocuousThreadGroup], Thread[#16,Reference Handler,10,system], Thread[#65,Terrain4J Render Engine Thread,5,main], Thread[#19,Attach Listener,5,system], Thread[#3,Terrain4J Primary Runtime Thread,5,main], Thread[#17,Finalizer,8,system], Thread[#39,tinylog-WritingThread,1,main]]] +186:07:2026 17:56:32.845 DEBUG: Waiting to close Primary Thread, making sure vulkan has shut down properly first and Engine Threads are closed +Threads Open:[1] Vulkan Layers Open:[4] -186:07:2026 01:19:13.627 DEBUG: Destroying Image View -186:07:2026 01:19:13.627 DEBUG: Destroying Image View -186:07:2026 01:19:13.628 DEBUG: Destroying Image View -186:07:2026 01:19:13.628 DEBUG: Destroying Image View -186:07:2026 01:19:13.628 DEBUG: Destroying Image View -186:07:2026 01:19:13.628 DEBUG: Destroying Image View -186:07:2026 01:19:13.628 DEBUG: Destroying Image View -186:07:2026 01:19:13.628 DEBUG: Destroying Image View -186:07:2026 01:19:13.628 DEBUG: Destroying Image View -186:07:2026 01:19:13.628 DEBUG: Destroying Image View -186:07:2026 01:19:13.628 DEBUG: Destroying Image View -186:07:2026 01:19:13.628 DEBUG: Destroying Image View -186:07:2026 01:19:13.628 DEBUG: Destroying Image View -186:07:2026 01:19:13.629 DEBUG: Destroying Image View -186:07:2026 01:19:13.629 DEBUG: Destroying Image View -186:07:2026 01:19:13.629 DEBUG: Destroying Image View -186:07:2026 01:19:13.629 DEBUG: Destroying Image View -186:07:2026 01:19:13.629 DEBUG: Destroying Image View -186:07:2026 01:19:13.629 DEBUG: Destroying Image View -186:07:2026 01:19:13.629 DEBUG: Destroying Image View -186:07:2026 01:19:13.629 DEBUG: Destroying Image View -186:07:2026 01:19:13.629 DEBUG: Destroying Image View -186:07:2026 01:19:13.629 DEBUG: Destroying Image View -186:07:2026 01:19:13.629 DEBUG: Destroying Image View -186:07:2026 01:19:13.629 DEBUG: Destroying Image View -186:07:2026 01:19:13.630 DEBUG: Destroying Image View -186:07:2026 01:19:13.630 DEBUG: Destroying Image View -186:07:2026 01:19:13.630 DEBUG: Destroying Image View -186:07:2026 01:19:13.630 DEBUG: Destroying Image View -186:07:2026 01:19:13.630 DEBUG: Destroying Image View -186:07:2026 01:19:13.630 DEBUG: Destroying Image View -186:07:2026 01:19:13.630 DEBUG: Destroying Image View -186:07:2026 01:19:13.630 DEBUG: Destroying Image View -186:07:2026 01:19:13.631 DEBUG: Destroying Image View -186:07:2026 01:19:13.631 DEBUG: Destroying Image View -186:07:2026 01:19:13.631 DEBUG: Destroying Image View -186:07:2026 01:19:13.631 DEBUG: Destroying Image View -186:07:2026 01:19:13.631 DEBUG: Destroying Image View -186:07:2026 01:19:13.631 DEBUG: Destroying Image View -186:07:2026 01:19:13.631 DEBUG: Destroying Image View -186:07:2026 01:19:13.631 DEBUG: Destroying Image View -186:07:2026 01:19:13.632 DEBUG: Destroying Image View -186:07:2026 01:19:13.632 DEBUG: Destroying Image View -186:07:2026 01:19:13.632 DEBUG: Destroying Image View -186:07:2026 01:19:13.632 DEBUG: Destroying Image View -186:07:2026 01:19:13.632 DEBUG: Destroying Image View -186:07:2026 01:19:13.632 DEBUG: Destroying Image View -186:07:2026 01:19:13.632 DEBUG: Destroying Image View -186:07:2026 01:19:13.632 DEBUG: Destroying Image View -186:07:2026 01:19:13.633 DEBUG: Destroying Image View -186:07:2026 01:19:13.634 DEBUG: Destroying Image View -186:07:2026 01:19:13.634 DEBUG: Destroying Image View -186:07:2026 01:19:13.634 DEBUG: Destroying Image View -186:07:2026 01:19:13.634 DEBUG: Destroying Image View -186:07:2026 01:19:13.634 DEBUG: Destroying Image View -186:07:2026 01:19:13.634 DEBUG: Destroying Image View -186:07:2026 01:19:13.635 DEBUG: Destroying Image View -186:07:2026 01:19:13.635 DEBUG: Destroying Image View -186:07:2026 01:19:13.635 DEBUG: Destroying Image View -186:07:2026 01:19:13.635 DEBUG: Destroying Image View -186:07:2026 01:19:13.635 DEBUG: Destroying Image View -186:07:2026 01:19:13.635 DEBUG: Destroying Image View -186:07:2026 01:19:13.635 DEBUG: Destroying Image View -186:07:2026 01:19:13.635 DEBUG: Destroying Image View -186:07:2026 01:19:13.636 DEBUG: Destroying Image View -186:07:2026 01:19:13.636 DEBUG: Destroying Image View -186:07:2026 01:19:13.636 DEBUG: Destroying Image View -186:07:2026 01:19:13.636 DEBUG: Destroying Image View -186:07:2026 01:19:13.636 DEBUG: Destroying Image View -186:07:2026 01:19:13.636 DEBUG: Destroying Image View -186:07:2026 01:19:13.636 DEBUG: Destroying Image View -186:07:2026 01:19:13.636 DEBUG: Destroying Image View -186:07:2026 01:19:13.636 DEBUG: Destroying Image View -186:07:2026 01:19:13.637 DEBUG: Destroying Image View -186:07:2026 01:19:13.637 DEBUG: Destroying Image View -186:07:2026 01:19:13.637 DEBUG: Dynamic Renderer Cleaned up -186:07:2026 01:19:13.637 DEBUG: Destroying Vulkan Semaphore -186:07:2026 01:19:13.637 DEBUG: Destroying Vulkan Semaphore -186:07:2026 01:19:13.637 DEBUG: Destroying Vulkan Semaphore -186:07:2026 01:19:13.637 DEBUG: Render Semaphores cleaned up -186:07:2026 01:19:13.637 DEBUG: Destroying Vulkan Semaphore -186:07:2026 01:19:13.637 DEBUG: Destroying Vulkan Semaphore -186:07:2026 01:19:13.637 DEBUG: Present Semaphores cleaned up -186:07:2026 01:19:13.638 DEBUG: Fences cleaned up -186:07:2026 01:19:13.638 TRACE: Destroyed Command Buffer -186:07:2026 01:19:13.638 DEBUG: Destroying Vulkan Command Pool -186:07:2026 01:19:13.638 TRACE: Destroyed Command Buffer -186:07:2026 01:19:13.638 DEBUG: Destroying Vulkan Command Pool -186:07:2026 01:19:13.638 DEBUG: Command pools cleaned up -186:07:2026 01:19:13.660 DEBUG: Destroying Descriptor Allocator -186:07:2026 01:19:13.661 DEBUG: Destroying Descriptor Pool -186:07:2026 01:19:13.661 DEBUG: Destroying Vulkan Swapchain -186:07:2026 01:19:13.661 DEBUG: Destroying Image View -186:07:2026 01:19:13.661 DEBUG: Destroying Image View -186:07:2026 01:19:13.661 DEBUG: Destroying Image View -186:07:2026 01:19:13.665 DEBUG: Cleaning Up Surfaces -186:07:2026 01:19:13.665 DEBUG: Destroying Vulkan Pipeline Cache -186:07:2026 01:19:13.666 DEBUG: Removing Vulkan Device -186:07:2026 01:19:13.814 DEBUG: freeing physical device [AMD Radeon RX 9070 XT] -186:07:2026 01:19:13.814 DEBUG: Closing Vulkan instance -186:07:2026 01:19:13.833 DEBUG: Render Thread Finished ending Vulkan Processes +186:07:2026 17:56:32.855 DEBUG: Destroying Image View +186:07:2026 17:56:32.855 DEBUG: Destroying Image View +186:07:2026 17:56:32.855 DEBUG: Destroying Image View +186:07:2026 17:56:32.855 DEBUG: Destroying Image View +186:07:2026 17:56:32.855 DEBUG: Destroying Image View +186:07:2026 17:56:32.855 DEBUG: Destroying Image View +186:07:2026 17:56:32.855 DEBUG: Destroying Image View +186:07:2026 17:56:32.855 DEBUG: Destroying Image View +186:07:2026 17:56:32.856 DEBUG: Destroying Image View +186:07:2026 17:56:32.856 DEBUG: Destroying Image View +186:07:2026 17:56:32.856 DEBUG: Destroying Image View +186:07:2026 17:56:32.856 DEBUG: Destroying Image View +186:07:2026 17:56:32.856 DEBUG: Destroying Image View +186:07:2026 17:56:32.856 DEBUG: Destroying Image View +186:07:2026 17:56:32.857 DEBUG: Destroying Image View +186:07:2026 17:56:32.857 DEBUG: Destroying Image View +186:07:2026 17:56:32.857 DEBUG: Destroying Image View +186:07:2026 17:56:32.857 DEBUG: Destroying Image View +186:07:2026 17:56:32.857 DEBUG: Destroying Image View +186:07:2026 17:56:32.857 DEBUG: Destroying Image View +186:07:2026 17:56:32.857 DEBUG: Destroying Image View +186:07:2026 17:56:32.858 DEBUG: Destroying Image View +186:07:2026 17:56:32.858 DEBUG: Destroying Image View +186:07:2026 17:56:32.858 DEBUG: Destroying Image View +186:07:2026 17:56:32.858 DEBUG: Destroying Image View +186:07:2026 17:56:32.858 DEBUG: Destroying Image View +186:07:2026 17:56:32.858 DEBUG: Destroying Image View +186:07:2026 17:56:32.858 DEBUG: Destroying Image View +186:07:2026 17:56:32.858 DEBUG: Destroying Image View +186:07:2026 17:56:32.858 DEBUG: Destroying Image View +186:07:2026 17:56:32.858 DEBUG: Destroying Image View +186:07:2026 17:56:32.858 DEBUG: Destroying Image View +186:07:2026 17:56:32.859 DEBUG: Destroying Image View +186:07:2026 17:56:32.859 DEBUG: Destroying Image View +186:07:2026 17:56:32.859 DEBUG: Destroying Image View +186:07:2026 17:56:32.859 DEBUG: Destroying Image View +186:07:2026 17:56:32.859 DEBUG: Destroying Image View +186:07:2026 17:56:32.859 DEBUG: Destroying Image View +186:07:2026 17:56:32.859 DEBUG: Destroying Image View +186:07:2026 17:56:32.859 DEBUG: Destroying Image View +186:07:2026 17:56:32.859 DEBUG: Destroying Image View +186:07:2026 17:56:32.859 DEBUG: Destroying Image View +186:07:2026 17:56:32.860 DEBUG: Destroying Image View +186:07:2026 17:56:32.860 DEBUG: Destroying Image View +186:07:2026 17:56:32.860 DEBUG: Destroying Image View +186:07:2026 17:56:32.860 DEBUG: Destroying Image View +186:07:2026 17:56:32.860 DEBUG: Destroying Image View +186:07:2026 17:56:32.860 DEBUG: Destroying Image View +186:07:2026 17:56:32.860 DEBUG: Destroying Image View +186:07:2026 17:56:32.860 DEBUG: Destroying Image View +186:07:2026 17:56:32.860 DEBUG: Destroying Image View +186:07:2026 17:56:32.860 DEBUG: Destroying Image View +186:07:2026 17:56:32.860 DEBUG: Destroying Image View +186:07:2026 17:56:32.860 DEBUG: Destroying Image View +186:07:2026 17:56:32.861 DEBUG: Destroying Image View +186:07:2026 17:56:32.861 DEBUG: Destroying Image View +186:07:2026 17:56:32.861 DEBUG: Destroying Image View +186:07:2026 17:56:32.861 DEBUG: Destroying Image View +186:07:2026 17:56:32.861 DEBUG: Destroying Image View +186:07:2026 17:56:32.871 DEBUG: Destroying Image View +186:07:2026 17:56:32.871 DEBUG: Destroying Image View +186:07:2026 17:56:32.871 DEBUG: Destroying Image View +186:07:2026 17:56:32.872 DEBUG: Destroying Image View +186:07:2026 17:56:32.872 DEBUG: Destroying Image View +186:07:2026 17:56:32.872 DEBUG: Destroying Image View +186:07:2026 17:56:32.872 DEBUG: Destroying Image View +186:07:2026 17:56:32.872 DEBUG: Destroying Image View +186:07:2026 17:56:32.873 DEBUG: Destroying Image View +186:07:2026 17:56:32.873 DEBUG: Destroying Image View +186:07:2026 17:56:32.874 DEBUG: Destroying Image View +186:07:2026 17:56:32.874 DEBUG: Destroying Image View +186:07:2026 17:56:32.874 DEBUG: Destroying Image View +186:07:2026 17:56:32.874 DEBUG: Destroying Image View +186:07:2026 17:56:32.874 DEBUG: Destroying Image View +186:07:2026 17:56:32.874 DEBUG: Destroying Image View +186:07:2026 17:56:32.874 DEBUG: Destroying Image View +186:07:2026 17:56:32.874 DEBUG: Destroying Image View +186:07:2026 17:56:32.874 DEBUG: Destroying Image View +186:07:2026 17:56:32.874 DEBUG: Destroying Image View +186:07:2026 17:56:32.874 DEBUG: Destroying Image View +186:07:2026 17:56:32.875 DEBUG: Destroying Image View +186:07:2026 17:56:32.875 DEBUG: Destroying Image View +186:07:2026 17:56:32.875 DEBUG: Destroying Image View +186:07:2026 17:56:32.875 DEBUG: Destroying Image View +186:07:2026 17:56:32.875 DEBUG: Destroying Image View +186:07:2026 17:56:32.875 DEBUG: Destroying Image View +186:07:2026 17:56:32.875 DEBUG: Destroying Image View +186:07:2026 17:56:32.876 DEBUG: Destroying Image View +186:07:2026 17:56:32.876 DEBUG: Destroying Image View +186:07:2026 17:56:32.876 DEBUG: Destroying Image View +186:07:2026 17:56:32.876 DEBUG: Destroying Image View +186:07:2026 17:56:32.876 DEBUG: Destroying Image View +186:07:2026 17:56:32.876 DEBUG: Destroying Image View +186:07:2026 17:56:32.876 DEBUG: Destroying Image View +186:07:2026 17:56:32.876 DEBUG: Dynamic Renderer Cleaned up +186:07:2026 17:56:32.877 DEBUG: Destroying Vulkan Semaphore +186:07:2026 17:56:32.877 DEBUG: Destroying Vulkan Semaphore +186:07:2026 17:56:32.877 DEBUG: Destroying Vulkan Semaphore +186:07:2026 17:56:32.877 DEBUG: Render Semaphores cleaned up +186:07:2026 17:56:32.877 DEBUG: Destroying Vulkan Semaphore +186:07:2026 17:56:32.877 DEBUG: Destroying Vulkan Semaphore +186:07:2026 17:56:32.877 DEBUG: Present Semaphores cleaned up +186:07:2026 17:56:32.877 DEBUG: Fences cleaned up +186:07:2026 17:56:32.877 TRACE: Destroyed Command Buffer +186:07:2026 17:56:32.877 DEBUG: Destroying Vulkan Command Pool +186:07:2026 17:56:32.877 TRACE: Destroyed Command Buffer +186:07:2026 17:56:32.877 DEBUG: Destroying Vulkan Command Pool +186:07:2026 17:56:32.877 DEBUG: Command pools cleaned up +186:07:2026 17:56:32.901 DEBUG: Destroying Descriptor Allocator +186:07:2026 17:56:32.901 DEBUG: Destroying Descriptor Pool +186:07:2026 17:56:32.901 DEBUG: Destroying Vulkan Swapchain +186:07:2026 17:56:32.902 DEBUG: Destroying Image View +186:07:2026 17:56:32.902 DEBUG: Destroying Image View +186:07:2026 17:56:32.902 DEBUG: Destroying Image View +186:07:2026 17:56:32.907 DEBUG: Cleaning Up Surfaces +186:07:2026 17:56:32.907 DEBUG: Destroying Vulkan Pipeline Cache +186:07:2026 17:56:32.907 DEBUG: Removing Vulkan Device +186:07:2026 17:56:33.038 DEBUG: freeing physical device [AMD Radeon RX 9070 XT] +186:07:2026 17:56:33.038 DEBUG: Closing Vulkan instance +186:07:2026 17:56:33.075 DEBUG: Render Thread Finished ending Vulkan Processes Vulkan Layers Open:[All processes closed and vulkan instance removed] -186:07:2026 01:19:13.833 DEBUG: Closing Render Thread, Thread: [Thread[#65,Terrain4J Render Engine Thread,5,main]] -186:07:2026 01:19:13.833 DEBUG: Closing Primary Thread, Thread: [Thread[#3,Terrain4J Primary Runtime Thread,5,main]] -186:07:2026 01:19:13.833 INFO: Successful stable Shut Down of Terrain4J in [229.801] MilliSeconds +186:07:2026 17:56:33.075 DEBUG: Closing Render Thread, Thread: [Thread[#65,Terrain4J Render Engine Thread,5,main]] +186:07:2026 17:56:33.075 DEBUG: Closing Primary Thread, Thread: [Thread[#3,Terrain4J Primary Runtime Thread,5,main]] +186:07:2026 17:56:33.075 INFO: Successful stable Shut Down of Terrain4J in [249.427] MilliSeconds diff --git a/resources/models/cube/Cube.bbmodel b/resources/models/cube/Cube.bbmodel new file mode 100644 index 0000000..9e50d88 --- /dev/null +++ b/resources/models/cube/Cube.bbmodel @@ -0,0 +1 @@ +{"meta":{"format_version":"5.0","model_format":"free","box_uv":false},"name":"Cube","model_identifier":"Cube","visible_box":[1,1,0],"variable_placeholders":"","multi_file_ruleset":"","variable_placeholder_buttons":[],"timeline_setups":[],"unhandled_root_fields":{},"resolution":{"width":64,"height":64},"elements":[{"name":"mesh","color":9,"origin":[0,0,0],"rotation":[0,0,0],"shading":"flat","export":true,"visibility":true,"locked":false,"render_order":"default","scope":0,"allow_mirror_modeling":true,"vertices":{"X4Zl":[8,12,8],"fm8y":[8,12,-8],"bSX3":[8,-4,8],"Xtgb":[8,-4,-8],"4rn1":[-8,12,8],"AyH7":[-8,12,-8],"GK77":[-8,-4,8],"hpYP":[-8,-4,-8]},"faces":{"Kjjg2owj":{"uv":{"Xtgb":[16,16],"fm8y":[16,0],"bSX3":[0,16],"X4Zl":[0,0]},"texture":0,"vertices":["fm8y","X4Zl","bSX3","Xtgb"]},"60DkcZPL":{"uv":{"hpYP":[0,33],"GK77":[16,33],"AyH7":[0,17],"4rn1":[16,17]},"texture":0,"vertices":["GK77","4rn1","AyH7","hpYP"]},"COugkOqS":{"uv":{"AyH7":[17,0],"4rn1":[17,16],"fm8y":[33,0],"X4Zl":[33,16]},"texture":0,"vertices":["4rn1","X4Zl","fm8y","AyH7"]},"c96pl5jp":{"uv":{"hpYP":[17,33],"Xtgb":[33,33],"GK77":[17,17],"bSX3":[33,17]},"texture":0,"vertices":["Xtgb","bSX3","GK77","hpYP"]},"3cdbFMrh":{"uv":{"GK77":[0,50],"bSX3":[16,50],"4rn1":[0,34],"X4Zl":[16,34]},"texture":0,"vertices":["bSX3","X4Zl","4rn1","GK77"]},"8PBsoEKa":{"uv":{"hpYP":[50,16],"AyH7":[50,0],"Xtgb":[34,16],"fm8y":[34,0]},"texture":0,"vertices":["AyH7","fm8y","Xtgb","hpYP"]}},"type":"mesh","uuid":"19838e88-9eac-a714-d5f3-280399c0c169"}],"groups":[],"outliner":["19838e88-9eac-a714-d5f3-280399c0c169"],"textures":[{"name":"cubetexture.png","relative_path":"cubetexture.png","folder":"block","namespace":"","id":"0","group":"","scope":0,"width":64,"height":64,"uv_width":64,"uv_height":64,"particle":false,"use_as_default":false,"layers_enabled":true,"sync_to_project":"","file_format":"png","render_mode":"default","render_sides":"auto","wrap_mode":"limited","pbr_channel":"color","fps":7,"frame_time":1,"frame_order_type":"loop","frame_order":"","frame_interpolate":false,"visible":true,"internal":true,"saved":true,"uuid":"69683abb-0cbc-2632-be2c-1aa8a2ddc888","layers":[{"name":"layer","offset":[0,0],"scale":[1,1],"opacity":100,"visible":true,"blend_mode":"default","width":64,"height":64,"data_url":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAHKUlEQVR4AezY24vVVRQH8D2HmiyKdMzLIFlgE6TdsAvdhMKKrtDlxcSXiIjAXoJefOgfEHopKJ96CfNFEyqQQnwQLLOEqKw0KQ3xOl4wyqZgOp8t6/DrgDW/Obv5JTPid9bea6299lrfvX6/c85uvf7Gg6Mb1j2RserVe0djTpqHLeYkHcme2v+2bVqW13dLfsCXDPueHa+MGodsh0jhw0/cmJPm9BBzsjoXYzxorV2/L32+62Q6cOzXvD7medL+Q796zbfp4JGR9iylqn3L1oNZ588NC4bSoZNnDLO0zqQq2edOn5aODv+cZs28Mks+EHHDP+ZsQD+WPPjWQWtg4OJOcQpa/vRViVRwSD7VMZsE+dpMMV/t3ZMUZy5ZEm65ZqAT3xwJgATSWnp7iGtsL7FJupB8qmO2ah7W1kXrpkXT03ffD3eS3LTlSLKR4KQNBb1vyWD2MwY2mxsrJjoACfOuuIQ6d9UH2w7l2OKxMQRB5tbSlchDnLpoKVAxEiQlIghSjEMXfrNnXZKJCBtf0AFkQLwYk+bI8LjpCqdPHx0Q8fnFnux187CmDlorH1mRFGMjxS26bGleTy+pPGn/0QFtkQZn9+cO4WcdnWKcppM1pnvsrrmdkze3jqyCb3SA/cTrJY9q7LGOW+GI9fsXPJzmDs5Oy+94Oq39dH2KpCSPDAmS7Kn9DwltkVudBESQThsJ1i6+/tK/kcGmE6qEWQO95GF9XbQULEnFGb/23psdEgYGpud4A78tSTpA8UhBzjenN2c/DtWWdqpIEFOhWnrn178kJPA1B3ZzJJD2puslD3HqorV597tJgTa3+OUnX0x0Etq6b31aeu0z1Ln1kUCvA5w+P8YvfjiePwEQYR6odgAS7PH8E/PTqufuTt2+YvWaR+xbR7YUoiib7zq5PhdPJ0gUf/zirZkkustmXJ6c/h1L70nhF8XE6SOEL6loxZs/+/htSVds2v5l/q4QnxZsYvWahzh10Vry6P3p6oXX5nZGgkSuu3lRjuNxMNCykmPbuP2tXPip4RMJCezxJvdRaK6wIMVaJNC//f6OpCuMtb5Hha95iTzEqYv8Erxw2rQ0tPjGpHCFCjJjzqz8MtSaCmdnMyYvnzmDW0a8ycnoAhIJty48+x5BguJ1hUVsfJBgDr3mIUZdtP44cyaBhYpSuDEgRMFOxxwJxqRk6UAhpE6oFhR6xbNr/zjxsAUhcgB+483D2rrIHWDRsQNnv9fbPEA/tHAoEyQ5oAsECYpWkA5gM6Yz1uqkTtAB9EFCdcwHesnD+rpoRRGK9lwHItAF/f2Jbvjg4QRICISPU1QMqfjQh1QwO1t0iTl7EFQiD/HqIj8CNgckRICfdu1OJw4f7QARbEgApCCCDhRPRmGKNVY8vTkZX5kRYe5dQIolB+glD7H+Cd221oLF9/XNX3hnhvHiB57qg6UrXuirgu72R5f1Bcz5C/jSyo/6Anc9tK7vqWUbM6rj0JH0Q7et7iNBDLF6zUOcuihyIfLZh+tG9+7cMrp/1ycZxoHN76wZhZjv/HjDKNCBtXWTLulf5ELk9IlT+T0RLzBtDBL1qQIeGXPtDXTm1pJNociFiOS9L/4cGUlI8DwDEhTLzhbvDnN6X8CCCLomUORCRCGSHz50NB3efyB5gTrxIOGKeYNp5uCcjCACGdYggmwKxS5EkNB/UX+uY+T3kfzpgYToiGxo/0HEBe2PVmCHtrqx/0UuRBQB2nnO/Hm5GCToBo8GmxMP0LFlx4b/dL4JDrQvR8d7IaKNIWpBQnc3OHlw8n5R8kUCMoybQpELESesACQEPBKIoNcNTt+YHRFsQNckilyIKAAJYBxQrCJ1g487L0dE+HTwYmT32IR/E7LIhYjEtbKWrpKg0CiyWuihH/flj0vr2MmmUORCxGlqeSeNBCcdRCCBXaF8vAMU6+MwfMybQn4JStJvfL//XXZIxom5+xvLhQj/iKHlzaH6EcgOiPAOAGN+TSL/GvSFRRISUrgxIGQsFyLWgzXdMZxy2NiRUAVdk8gdIAGnRSogYD6WCxF+cK4YXnxICPANICPGTcgiFyJRBOKceCAK8tzTIQKCCDJ8/iv5b3HzI6AAUEAs8CLzZg8ogk0BoKAogLQexhtD7CZQ5EKkqcuMEoQVuRApkUhTMYpciDSVfIl9i12IlEimiRhFLkSaSLzUnsUuREolNNFxilyITHTSJffrfBPs5UKkZEITHavIhchEJ11yv2IXIiWTmshYxS5EJjLpknsVuRApmdBEx8ovQT9ier0QmejES+2Xfw36NSegX3LjuRCx9nxF7gDJn+syo86FiDhNo+7+RS5E6m76f/LPj4B3AHgEIrk6FyKx5nyURS5EzsfCI+fOOyAUk01OETDZTry73qkO6GZkss2nOmCynXh3vVMd0M3IZJtPdcBkO/Hueqc6oJuR823ea75/AQAA//9gp46YAAAABklEQVQDANy7WuoTYMIGAAAAAElFTkSuQmCC"}],"source":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAHKUlEQVR4AezY24vVVRQH8D2HmiyKdMzLIFlgE6TdsAvdhMKKrtDlxcSXiIjAXoJefOgfEHopKJ96CfNFEyqQQnwQLLOEqKw0KQ3xOl4wyqZgOp8t6/DrgDW/Obv5JTPid9bea6299lrfvX6/c85uvf7Gg6Mb1j2RserVe0djTpqHLeYkHcme2v+2bVqW13dLfsCXDPueHa+MGodsh0jhw0/cmJPm9BBzsjoXYzxorV2/L32+62Q6cOzXvD7medL+Q796zbfp4JGR9iylqn3L1oNZ588NC4bSoZNnDLO0zqQq2edOn5aODv+cZs28Mks+EHHDP+ZsQD+WPPjWQWtg4OJOcQpa/vRViVRwSD7VMZsE+dpMMV/t3ZMUZy5ZEm65ZqAT3xwJgATSWnp7iGtsL7FJupB8qmO2ah7W1kXrpkXT03ffD3eS3LTlSLKR4KQNBb1vyWD2MwY2mxsrJjoACfOuuIQ6d9UH2w7l2OKxMQRB5tbSlchDnLpoKVAxEiQlIghSjEMXfrNnXZKJCBtf0AFkQLwYk+bI8LjpCqdPHx0Q8fnFnux187CmDlorH1mRFGMjxS26bGleTy+pPGn/0QFtkQZn9+cO4WcdnWKcppM1pnvsrrmdkze3jqyCb3SA/cTrJY9q7LGOW+GI9fsXPJzmDs5Oy+94Oq39dH2KpCSPDAmS7Kn9DwltkVudBESQThsJ1i6+/tK/kcGmE6qEWQO95GF9XbQULEnFGb/23psdEgYGpud4A78tSTpA8UhBzjenN2c/DtWWdqpIEFOhWnrn178kJPA1B3ZzJJD2puslD3HqorV597tJgTa3+OUnX0x0Etq6b31aeu0z1Ln1kUCvA5w+P8YvfjiePwEQYR6odgAS7PH8E/PTqufuTt2+YvWaR+xbR7YUoiib7zq5PhdPJ0gUf/zirZkkustmXJ6c/h1L70nhF8XE6SOEL6loxZs/+/htSVds2v5l/q4QnxZsYvWahzh10Vry6P3p6oXX5nZGgkSuu3lRjuNxMNCykmPbuP2tXPip4RMJCezxJvdRaK6wIMVaJNC//f6OpCuMtb5Hha95iTzEqYv8Erxw2rQ0tPjGpHCFCjJjzqz8MtSaCmdnMyYvnzmDW0a8ycnoAhIJty48+x5BguJ1hUVsfJBgDr3mIUZdtP44cyaBhYpSuDEgRMFOxxwJxqRk6UAhpE6oFhR6xbNr/zjxsAUhcgB+483D2rrIHWDRsQNnv9fbPEA/tHAoEyQ5oAsECYpWkA5gM6Yz1uqkTtAB9EFCdcwHesnD+rpoRRGK9lwHItAF/f2Jbvjg4QRICISPU1QMqfjQh1QwO1t0iTl7EFQiD/HqIj8CNgckRICfdu1OJw4f7QARbEgApCCCDhRPRmGKNVY8vTkZX5kRYe5dQIolB+glD7H+Cd221oLF9/XNX3hnhvHiB57qg6UrXuirgu72R5f1Bcz5C/jSyo/6Anc9tK7vqWUbM6rj0JH0Q7et7iNBDLF6zUOcuihyIfLZh+tG9+7cMrp/1ycZxoHN76wZhZjv/HjDKNCBtXWTLulf5ELk9IlT+T0RLzBtDBL1qQIeGXPtDXTm1pJNociFiOS9L/4cGUlI8DwDEhTLzhbvDnN6X8CCCLomUORCRCGSHz50NB3efyB5gTrxIOGKeYNp5uCcjCACGdYggmwKxS5EkNB/UX+uY+T3kfzpgYToiGxo/0HEBe2PVmCHtrqx/0UuRBQB2nnO/Hm5GCToBo8GmxMP0LFlx4b/dL4JDrQvR8d7IaKNIWpBQnc3OHlw8n5R8kUCMoybQpELESesACQEPBKIoNcNTt+YHRFsQNckilyIKAAJYBxQrCJ1g487L0dE+HTwYmT32IR/E7LIhYjEtbKWrpKg0CiyWuihH/flj0vr2MmmUORCxGlqeSeNBCcdRCCBXaF8vAMU6+MwfMybQn4JStJvfL//XXZIxom5+xvLhQj/iKHlzaH6EcgOiPAOAGN+TSL/GvSFRRISUrgxIGQsFyLWgzXdMZxy2NiRUAVdk8gdIAGnRSogYD6WCxF+cK4YXnxICPANICPGTcgiFyJRBOKceCAK8tzTIQKCCDJ8/iv5b3HzI6AAUEAs8CLzZg8ogk0BoKAogLQexhtD7CZQ5EKkqcuMEoQVuRApkUhTMYpciDSVfIl9i12IlEimiRhFLkSaSLzUnsUuREolNNFxilyITHTSJffrfBPs5UKkZEITHavIhchEJ11yv2IXIiWTmshYxS5EJjLpknsVuRApmdBEx8ovQT9ier0QmejES+2Xfw36NSegX3LjuRCx9nxF7gDJn+syo86FiDhNo+7+RS5E6m76f/LPj4B3AHgEIrk6FyKx5nyURS5EzsfCI+fOOyAUk01OETDZTry73qkO6GZkss2nOmCynXh3vVMd0M3IZJtPdcBkO/Hueqc6oJuR823ea75/AQAA//9gp46YAAAABklEQVQDANy7WuoTYMIGAAAAAElFTkSuQmCC"},{"name":"VoxelTexture0.png","relative_path":"../../../../../../OneDrive/Terrain4GameEngine/Terrain4JEngine/resources/EngineResources/Texture/VoxelTextures/VoxelTexture0.png","folder":"","namespace":"","id":"1","group":"","scope":0,"width":16,"height":16,"uv_width":16,"uv_height":16,"particle":false,"use_as_default":false,"layers_enabled":false,"sync_to_project":"","file_format":"png","render_mode":"default","render_sides":"auto","wrap_mode":"limited","pbr_channel":"color","fps":7,"frame_time":1,"frame_order_type":"loop","frame_order":"","frame_interpolate":false,"visible":true,"internal":true,"saved":true,"uuid":"e505a55b-7491-9981-c08b-7164584268e8","source":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABg0lEQVR4AVzRsUvCQRjG8eMoa4mQChEhWmpoaOi/bW9oamuKaAwaHB2CqARRMRFpMQvMzwsvSOJzv7vnfe/7vndXn+9uVq/dx1W/9xQyTz1cX60o19372xXxyN76NZuX+XRWPgfD4re9u1vIvNk6KiRuvX/QLMSztreazMaT8rtcBuRnsSgEIllcbDocRyFr/sn5WcCrCXM6mpRxf1Deey+RmJDDTrsctFuhBIHZAxQdgDR2Gryy/F4WHWnbsYAisB6AthqNQuJUDeRcrePOOq0ERDcJUjHFE4vE9VC1Qet5/EH+d6MyqbzX3I88ELDogAOSciQgviOpbi4OJEa8uANHIEZKsiTdeC6XC+R1XKy4YwdAK1rahEjMJIkJHr19xHNbi1c0LasEolKCQMQlynEHNnrOzIkOJJ5eXhQtS6DNJxQnIHdA5vKqdyYL5ma7qmRMHGRTvOjAREVfkJS1iwNJ8VJg1cCwScUUj5ybB0QJ8hWPI4AQCJNcptdJAfFBCBTkDwAA//+BTJWUAAAABklEQVQDADJVQZXvMK6QAAAAAElFTkSuQmCC"},{"name":"VoxelTexture1.png","relative_path":"../../../../../../OneDrive/Terrain4GameEngine/Terrain4JEngine/resources/EngineResources/Texture/VoxelTextures/VoxelTexture1.png","folder":"","namespace":"","id":"2","group":"","scope":0,"width":16,"height":16,"uv_width":16,"uv_height":16,"particle":false,"use_as_default":false,"layers_enabled":false,"sync_to_project":"","file_format":"png","render_mode":"default","render_sides":"auto","wrap_mode":"limited","pbr_channel":"color","fps":7,"frame_time":1,"frame_order_type":"loop","frame_order":"","frame_interpolate":false,"visible":true,"internal":true,"saved":true,"uuid":"80a068ac-d675-b0a0-3eb1-e5be08552de9","source":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAB30lEQVR4AUzRMWuTYRQF4MuLhlYobSKNZlKQFGxAxamDASVFUBelk8U/IDg5OvgHBBcF9Q9Ul6ijS+mQRcHVqJ3sUEJrYyuCFh1qnhfe0MD97r3nnnPu/b6kJ0+vHrx+dTPHg4eXD0ov68us9DJMNk8r3Y342N+LzZ3f4Vd6tYA/evE5Btt/tXF4vtYbRKrVJsdDwPLSqZAJSsY5XJsxwk3nWzPx5etwbPJubTsIkGRCq6+0G5mnFmZMEoKmCBgiMFWbyYVXnz2WjWBm6d71O6EhMGxNdegDTpSb0cMFoxSNeiVfiEeXgILb4plrcbJRj+WFpVh5380mSETM1LJ5jH5MEgGCofrxm2djk1ptZkSLqP1phwuIXcb806/VzEur6y8zgQn2/Vt3A8ast9GNztxtcD6dCdwFtuMlBdCW/l43i2FURfxjspeXwKaq02H7QudS4KX2jcU4PT+Xz2ECPHuhhRteR+EfssTs7YfnWfhzuBtM8kc8OjERzYvnghCRqHpiNn9MZxKam6nl6eNVtEj/9vdD6ICEasGQwJV6JmrZUli+QLGzOZCCSQlAc76ZF1giYCWYJA8AkfcqARNHKpWADQdbIZiUMM+vwEQwAYpv/fXY3fo+DkZwJoIpo/8AAAD//zXmyJsAAAAGSURBVAMA9OoklWqeOYUAAAAASUVORK5CYII="},{"name":"VoxelTexture15.png","relative_path":"../../../../../../OneDrive/Terrain4GameEngine/Terrain4JEngine/resources/EngineResources/Texture/VoxelTextures/VoxelTexture15.png","folder":"","namespace":"","id":"3","group":"","scope":0,"width":16,"height":16,"uv_width":16,"uv_height":16,"particle":false,"use_as_default":false,"layers_enabled":false,"sync_to_project":"","file_format":"png","render_mode":"default","render_sides":"auto","wrap_mode":"limited","pbr_channel":"color","fps":7,"frame_time":1,"frame_order_type":"loop","frame_order":"","frame_interpolate":false,"visible":true,"internal":true,"saved":true,"uuid":"6445f238-e9fa-a73e-8a48-070020674d9a","source":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABi0lEQVR4AVzSPSvGYRQG8Lv/IMkgb5FYsIjFy8JuooxWyUew+BrsVpOFwSdQ8lIiCyaJvGWQZMHv1Hn6P546nXOuc67rvp7/fVeHB8s/uztLP/8zTGxuzTfNr4/XYzdzVf5+E8Oj5fH9668qke9fPqOuZ/O+jtby/HpXeroGI1uqNBe318UQkCT11EhneXj6VkYQEURk3EqTDogMdLfFMqH9w8cQIGJmAJf1uPEXOABmIGQt64mdXL0XrpwODwcaapTVBguzfY2T9f29LVJT2A0HiDkhpHYaEcTJ8fYmMTNO8IhUdUsAIogWWT+7/ChECOuFuZ5IdXrzFjdACJhRd0AEaW1pqGyszsV3yL1woMnTCeplJGT9yuJM4erg6DzeSt5WvAMLrlI2SDd1u9t7x4UrO6z7q3bjHQB90XQhE5ke6zAqnCBzBTCzQ6RSAN0pQC0SR9az70R1zghWSAAOcghTsypzwgE8RbJu3AI1Qgj1QLBsli71dhwQTxkZkAPLamS4Xs4nT0jvW/wCAAD//waBj7MAAAAGSURBVAMADDkzOuVptksAAAAASUVORK5CYII="}]} \ No newline at end of file diff --git a/resources/models/cube/Cube.colmesh b/resources/models/cube/Cube.colmesh new file mode 100644 index 0000000..e69de29 diff --git a/resources/models/cube/Cube.idx b/resources/models/cube/Cube.idx new file mode 100644 index 0000000000000000000000000000000000000000..1cd3c633e3dc8abb647ecb868349b54743b44af1 GIT binary patch literal 144 zcmXZOhY^4<5CcJzGsY(M-zg`fpV`-iP_E+Ff0k|N79D!GcEE@Uvs=4h#fIIjjX02y N-P#iuZai-7`vFOq0hs^* literal 0 HcmV?d00001 diff --git a/resources/models/cube/Cube.json b/resources/models/cube/Cube.json new file mode 100644 index 0000000..e53f296 --- /dev/null +++ b/resources/models/cube/Cube.json @@ -0,0 +1,15 @@ +{ + "ID": "Cube", + "Meshes": [ + { + "ID": "mesh_0", + "MaterialID": "Cube-mat-1", + "OffsetVertex": 0, + "VertexSize": 1344, + "OffsetIndex": 0, + "IndexSize": 144 + } + ], + "VertexPath": "resources/models/cube/Cube.vtx", + "IndexPath": "resources/models/cube/Cube.idx" +} \ No newline at end of file diff --git a/resources/models/cube/Cube.mtl b/resources/models/cube/Cube.mtl new file mode 100644 index 0000000..148dde6 --- /dev/null +++ b/resources/models/cube/Cube.mtl @@ -0,0 +1,4 @@ +# Made in Blockbench 5.1.4 +newmtl m_69683abb-0cbc-2632-be2c-1aa8a2ddc888 +map_Kd cubetexture.png +newmtl none \ No newline at end of file diff --git a/resources/models/cube/Cube.obj b/resources/models/cube/Cube.obj new file mode 100644 index 0000000..8c4bfb9 --- /dev/null +++ b/resources/models/cube/Cube.obj @@ -0,0 +1,49 @@ +# Made in Blockbench 5.1.4 +mtllib Cube.mtl + +o mesh +v 0.5 0.75 0.5 +v 0.5 0.75 -0.5 +v 0.5 -0.25 0.5 +v 0.5 -0.25 -0.5 +v -0.5 0.75 0.5 +v -0.5 0.75 -0.5 +v -0.5 -0.25 0.5 +v -0.5 -0.25 -0.5 +vt 0.25 1 +vt 0 1 +vt 0 0.75 +vt 0.25 0.75 +vt 0.25 0.484375 +vt 0.25 0.734375 +vt 0 0.734375 +vt 0 0.484375 +vt 0.265625 0.75 +vt 0.515625 0.75 +vt 0.515625 1 +vt 0.265625 1 +vt 0.515625 0.484375 +vt 0.515625 0.734375 +vt 0.265625 0.734375 +vt 0.265625 0.484375 +vt 0.25 0.21875 +vt 0.25 0.46875 +vt 0 0.46875 +vt 0 0.21875 +vt 0.78125 1 +vt 0.53125 1 +vt 0.53125 0.75 +vt 0.78125 0.75 +vn 1 0 0 +vn -1 0 0 +vn 0 1 0 +vn 0 -1 0 +vn 0 0 1 +vn 0 0 -1 +usemtl m_69683abb-0cbc-2632-be2c-1aa8a2ddc888 +f 2/1/1 1/2/1 3/3/1 4/4/1 +f 7/5/2 5/6/2 6/7/2 8/8/2 +f 5/9/3 1/10/3 2/11/3 6/12/3 +f 4/13/4 3/14/4 7/15/4 8/16/4 +f 3/17/5 1/18/5 5/19/5 7/20/5 +f 6/21/6 2/22/6 4/23/6 8/24/6 \ No newline at end of file diff --git a/resources/models/cube/Cube.vtx b/resources/models/cube/Cube.vtx new file mode 100644 index 0000000000000000000000000000000000000000..e7900fd723cfd967f56c0538d3797ee00a9daabf GIT binary patch literal 1344 zcmb7?K@I{T3`JSE@Klzi$71QJ8jtiGjK)VhuPs99IBEAH_+IO?u& zd{Z2K?r?VMlW%Drc{CXswPHpW^?t;aFOMceqt?vPC#HP)RC5={iG2OfI4fTsO@>CF znEBGZaPE!$;PaF_G5U<<5*$3X!p-ln%Ef(-ci-s~?pL4m%KWU^)PKCeGv}J$kK9Y{ ze!PR`yW%1~xcNSpIPbI5S4|ItF^lF2VQBm|XTtNlZgAcs#$59|p#81q9Cu2eTb%a^ F_W_6cip>B3 literal 0 HcmV?d00001 diff --git a/resources/models/cube/Cube_mat.json b/resources/models/cube/Cube_mat.json new file mode 100644 index 0000000..1c00b4a --- /dev/null +++ b/resources/models/cube/Cube_mat.json @@ -0,0 +1,44 @@ +[ + { + "ID": "Cube-mat-0", + "TexturePath": "", + "NormalTexturePath": "", + "MetalRoughnessMap": "", + "DiffuseColour": { + "X": 0.6, + "Y": 0.6, + "Z": 0.6, + "W": 1.0 + }, + "Roughness": 0.0, + "Metallic": 0.0 + }, + { + "ID": "Cube-mat-1", + "TexturePath": "resources\\models\\cube\\cubetexture.png", + "NormalTexturePath": "", + "MetalRoughnessMap": "", + "DiffuseColour": { + "X": 0.6, + "Y": 0.6, + "Z": 0.6, + "W": 1.0 + }, + "Roughness": 0.0, + "Metallic": 0.0 + }, + { + "ID": "Cube-mat-2", + "TexturePath": "", + "NormalTexturePath": "", + "MetalRoughnessMap": "", + "DiffuseColour": { + "X": 0.6, + "Y": 0.6, + "Z": 0.6, + "W": 1.0 + }, + "Roughness": 0.0, + "Metallic": 0.0 + } +] \ No newline at end of file diff --git a/resources/models/cube/cubetexture.png b/resources/models/cube/cubetexture.png new file mode 100644 index 0000000000000000000000000000000000000000..707e7c9122ded1597bfe33f7d68923a206a40966 GIT binary patch literal 1908 zcmV-)2aEWLP)hH=pPVzDJY+M3G+o0 zDv&~a5G=EVsH`+84e>f&Fv_N2I-f1;@aupzzd5`4B{Sl8*4}Haz4lt)y?(!Q&ThT_ z#)G39);*E2>eYKkV@{ffE#@R0$)4K(wryIL*LO>Pz?TgBo*l1@8i#C$Na4dz+?bQ* z^bm8hIu~O+XsunpFMYo2WIAx{*StRFdD8wvzk1EL>EMx(_AI5UeaqH^S?A9U3x?96 zlV=RGw9cd|+2>B5mW~epoMz3uGD|)Xal=36Y(PJjJowf@Yhd8wPH_ra{`6IeRB%W> z)iIj{`Pxh|U+vwK6lX435^lL>pcCI534jFBT6%kkYiuvENxG1Hs$;fl9@f@H>!wB1 z(|6wwcaq$+H22_A>@Hn;R=8IsggtuDFCcchv{m4&~V5u`vWe=GM}c z$U~gEXem%J5+o%e2vUqg7k;y6U6P3i8(+`?WI((aljg|qxakU~Paho+@%hD`>~-_7 zrVd&wA6bzUV7)PcNxFY5&myZIK3N_va4bXC0kloTigCrhDwJxt)_Yw~nlW zZ*+kD#Oo!GYV5I&Tj7ZH`xiW%<_^wI%kOwPt^IU;iliiu3<;9#sr?TLZIN4@1VoTd z8wu7fzW&m`k-?@Ds)Shsz2sqiU9=P|NyQnz_THNv5(WmQ=Xe9ZElD~+@kl|=H>Wpe zKMvKFcB)7aQ=wXV=hwd^B=9u{c5@_<_NMD44{_?EwR!iuNr5)E_~j>GOmq_3x^I12 zdhIjRx%H7iuLGPuKgKV9IG#TN5Mdsub^sFW@%$6>)2iq0PTjs@^_oZQTSvAOq9~j1 zI=MaFR~o=5|JcM6SDeQI6wrFwnA+W81j>tz7u2;S&i7?C~b|QE0BP zAjMiF(7*luj-)G$wZ2D%uX%|)#How?61;HQv^2E%#-wnC3NmBPto$<6nhIxUGbS&e zIfGk9yvfPv0ul+gEDQn)c7M8QtS90|sx zWa&U5q)w<76ne$8YyUX$umvG<0Dj}m!`iyY9bnP1182Y2+dM!&v~VaBBsri91PO{( zkPcuorZd*+q)yNQ^g%*(%m;eO!}_{tMG=bjTn8f11^xYrZusEg1V{*kk5g0(srb-` zR4_YRbcs285L6-$@#-Q!0yYOEM1Y@m?M^2SAMF4UY)Am4Ac77QPex&iHC8;mIT>G> z5n=9KK#C;?=p_%a{t4Z-)`G?N_03;+XNK|O2cGJKr7K?OtAg(KN0;>l%=ruW(#nte z0(U*MuJ5U38#Aio(2?{*x2^6YK@72a%|o2JC~_h4*@x>!_wL*>x_{Rv8ODLl@2nYx znD6{}!zj>!wRMv&>0jhR>FG#%c5AbEj0@gU)fd4p-@;GB#g0vXmI zf@})KE<}*fe^Gy~W90Xd{ON&&=!k4+|3SnB?T=Pqhqk)0|3xlD6am_K&ir|~7$oQh zj|Q6)574n?$Ae7pk`>*Fwd%$q`f2};s$e82x) zc1XsFx%(T-g$VzMq2oV}4B{{~Gj#MG_KHxG^APEEgiygEieToO0OM zkx&I)lgJ$)0jEVOAYeY03lV;Bt{7f?NC@x^AS1?2$RZaaQ3T?gcpwV$+|wZff(SBv z{ww)!aq}af08l_I@FMeO4=9370id8LfV3XQ8$;|SP~<|SsmqKKgcZ3EDUnE1F^XJ> zG?jdbeT!X)lt`wD7)35bnn=9Vp2aRiN+mSWaf)1sOmxyE_v?HU?BznFWI_`itH_1O zL?>NxzhW06C6k)SSj8?xCNk-gdlk75DVfkj$I353KVo{l5Si%2OYN6`4f-`FpkH$1 zxe&4Td`0d6$)D>oqt1nhI8CGO{zWcC>Tddf^3RWecK~< Collisions = new ArrayList<>(); public static RigidBody Ground = new RigidBody("FLOOR",ConvexMesh.Box(100,100f,100),0); + public static RigidBody Wall = new RigidBody("WALL",ConvexMesh.Box(100,100f,10),0); + public static RigidBody Wall2 = new RigidBody("WALL2",ConvexMesh.Box(100,100f,10),0); + public static RigidBody Wall3 = new RigidBody("WALL3",ConvexMesh.Box(10,100f,100),0); + public static RigidBody Wall4 = new RigidBody("WALL4",ConvexMesh.Box(10,100f,100),0); static { Ground.Position.set(0,-100f,0); + Wall.Position.set(0,0f,-60f); + Wall2.Position.set(0,0f,60f); + Wall3.Position.set(-60f,0f,0); + Wall4.Position.set(60f,0f,0); } public String RigidBodyID = "NULL"; @@ -49,6 +57,12 @@ public class RigidPhysicsController implements IPhysicsController { newRigidBody.UpdateInertiaWorld(); WorldPhysicsManager.PhysicsObjects.put(ControllerID, this); WorldPhysicsManager.ActiveControllers.add(ControllerID); + if(RigidBodyID != null && RigidBodyRegister.get(RigidBodyID) != null && ActorID != "NULL") { + RigidBody rigidBody = RigidBodyRegister.get(RigidBodyID); + if (Actor.Actors.get(ActorID) != null) { + Actor.Actors.get(ActorID).SetPivotOffset(new Vector3f(0, (rigidBody.shape.TopRightForward.y - rigidBody.shape.BottomLeftBack.y) / 2f, 0)); + } + } return this; } @@ -56,6 +70,11 @@ public class RigidPhysicsController implements IPhysicsController { RigidBodyID = rigidBody.GetID(); WorldPhysicsManager.PhysicsObjects.put(ControllerID, this); WorldPhysicsManager.ActiveControllers.add(ControllerID); + if( rigidBody != null && ActorID != "NULL") { + if (Actor.Actors.get(ActorID) != null) { + Actor.Actors.get(ActorID).SetPivotOffset(new Vector3f(0, (rigidBody.shape.TopRightForward.y - rigidBody.shape.BottomLeftBack.y) / 2f, 0)); + } + } return this; } @@ -77,7 +96,7 @@ public class RigidPhysicsController implements IPhysicsController { @Override public void PhysicsTick(float DeltaTime, float TargetFrameRate) { DeltaTime/=10f; - if(DeltaTime >0.1f) DeltaTime = 0.1f; + // if(DeltaTime >0.1f) DeltaTime = 0.1f; if(RigidBodyID != null && RigidBodyRegister.get(RigidBodyID) != null && ActorID != "NULL") { RigidBody rigidBody = RigidBodyRegister.get(RigidBodyID); rigidBody.Integrate(DeltaTime, new Vector3f(0,-1.8f,0)); @@ -91,7 +110,6 @@ public class RigidPhysicsController implements IPhysicsController { } } if(Actor.Actors.get(ActorID) != null) { - Actor.Actors.get(ActorID).SetPivotOffset(new Vector3f(0,(rigidBody.shape.TopRightForward.y - rigidBody.shape.BottomLeftBack.y)/2f,0)); Actor.Actors.get(ActorID).SetPosition(new Vector3f(rigidBody.Position)); Actor.Actors.get(ActorID).SetRotation(rigidBody.Rotation); } diff --git a/src/main/java/net/halbear/Terrain4J/EngineCore/Logic/Physics/RigidBody/SeparatingAxisTheoremTester.java b/src/main/java/net/halbear/Terrain4J/EngineCore/Logic/Physics/RigidBody/SeparatingAxisTheoremTester.java index 74969a2..9c50aa6 100644 --- a/src/main/java/net/halbear/Terrain4J/EngineCore/Logic/Physics/RigidBody/SeparatingAxisTheoremTester.java +++ b/src/main/java/net/halbear/Terrain4J/EngineCore/Logic/Physics/RigidBody/SeparatingAxisTheoremTester.java @@ -36,12 +36,12 @@ public class SeparatingAxisTheoremTester { public final List Contacts = new ArrayList<>(); } //as much as i'd like to multithread the fuck out of this, im putting it as synchronised so it doesn't get messy, and so memory management is smoother, i want to minimize the amount of Vectors creating during loops - public synchronized static CollisionResult TestCollision(ConvexMesh Mesh1, ConvexMesh Mesh2){ + public static CollisionResult TestCollision(ConvexMesh Mesh1, ConvexMesh Mesh2){ float BestOverlap = Float.MAX_VALUE; Vector3f BestAxis = null; ConvexMesh.Face BestFace =null; ConvexMesh BestFaceOwner = null; - + if(Mesh1 == null || Mesh2 == null) return null; for(ConvexMesh.Face face : Mesh1.Faces){ Vector3f Axis = Mesh1.WorldFaceNormal(face); Float Overlap = AxisOverlap(Mesh1,Mesh2,Axis); @@ -147,14 +147,14 @@ public class SeparatingAxisTheoremTester { return result; } - private synchronized static Float AxisOverlap(ConvexMesh mesh1, ConvexMesh mesh2, Vector3f axis) { + private static Float AxisOverlap(ConvexMesh mesh1, ConvexMesh mesh2, Vector3f axis) { float[] Range1 = ProjectOntoAxis(mesh1, axis); float[] Range2 = ProjectOntoAxis(mesh2, axis); float Overlap = Math.min(Range1[1],Range2[1]) - Math.max(Range1[0],Range2[0]); return (Overlap < 0) ? null : Overlap; } - private synchronized static float[] ProjectOntoAxis(ConvexMesh mesh, Vector3f axis){ + private static float[] ProjectOntoAxis(ConvexMesh mesh, Vector3f axis){ float minimum = Float.MAX_VALUE, maximum = -Float.MAX_VALUE; for(int i = 0; i < mesh.LocalVertices.size(); i++){ float distance = mesh.WorldVertex(i).dot(axis); @@ -164,14 +164,14 @@ public class SeparatingAxisTheoremTester { return new float[]{minimum,maximum}; } - private synchronized static Vector3f MeshCenter(ConvexMesh mesh){ + private static Vector3f MeshCenter(ConvexMesh mesh){ Vector3f Center = new Vector3f(); for(int i = 0; i < mesh.LocalVertices.size(); i++) Center.add(mesh.WorldVertex(i)); Center.div(mesh.LocalVertices.size()); return Center; } - private synchronized static ConvexMesh.Face FindIncidentFace(ConvexMesh mesh, Vector3f ReferenceNormal){ + private static ConvexMesh.Face FindIncidentFace(ConvexMesh mesh, Vector3f ReferenceNormal){ ConvexMesh.Face Best = null; float BestDot = Float.MAX_VALUE; for(ConvexMesh.Face face : mesh.Faces){ @@ -184,7 +184,7 @@ public class SeparatingAxisTheoremTester { return Best; } - private synchronized static List ClipPolygonAgainstFace(List Incident, List ReferencePoly, Vector3f ReferenceNormal){ + private static List ClipPolygonAgainstFace(List Incident, List ReferencePoly, Vector3f ReferenceNormal){ List Output = new ArrayList<>(Incident); int Count = ReferencePoly.size(); for(int i = 0; i < Count; i++){ @@ -215,7 +215,7 @@ public class SeparatingAxisTheoremTester { return Output; } - private synchronized static Vector3f IntersectEdge(Vector3f Vertex1, Vector3f Vertex2, Vector3f Normal, float Offset) { + private static Vector3f IntersectEdge(Vector3f Vertex1, Vector3f Vertex2, Vector3f Normal, float Offset) { Vector3f Distance = new Vector3f(Vertex2).sub(Vertex1); float Denominator = Normal.dot(Distance); float t = (Math.abs(Denominator) < T4Math.Math3D.epsilon) ? 0 : (Offset - Normal.dot(Vertex1)) / Denominator; @@ -223,7 +223,7 @@ public class SeparatingAxisTheoremTester { } - private synchronized static Vector3f[] ClosestPointsSegment2(Vector3f p1, Vector3f q1, Vector3f p2, Vector3f q2) { + private static Vector3f[] ClosestPointsSegment2(Vector3f p1, Vector3f q1, Vector3f p2, Vector3f q2) { Vector3f d1 = new Vector3f(q1).sub(p1); Vector3f d2 = new Vector3f(q2).sub(p2); Vector3f r = new Vector3f(p1).sub(p2); diff --git a/src/main/java/net/halbear/Terrain4J/EngineCore/Logic/Physics/WorldPhysicsManager.java b/src/main/java/net/halbear/Terrain4J/EngineCore/Logic/Physics/WorldPhysicsManager.java index f1bb413..80a69d7 100644 --- a/src/main/java/net/halbear/Terrain4J/EngineCore/Logic/Physics/WorldPhysicsManager.java +++ b/src/main/java/net/halbear/Terrain4J/EngineCore/Logic/Physics/WorldPhysicsManager.java @@ -1,6 +1,7 @@ package net.halbear.Terrain4J.EngineCore.Logic.Physics; import net.halbear.Terrain4J.EngineCore.Logic.EngineConfig; +import net.halbear.Terrain4J.EngineCore.Threads.PhysicsThread; import java.util.ArrayList; import java.util.HashMap; @@ -21,30 +22,40 @@ public class WorldPhysicsManager { public static float FixedTimeStep = 1f / 60f; public static int MaxSubStepsPerFrame = 8; private static float Accumulator = 0f; + private static boolean SingleThread = false; + private static List physicsThreads = new ArrayList<>(); public static void SteppedPhysicsTick(float DeltaTime, float TargetFrameTime){ + int ThreadsNeeded = (int)Math.floor(ActiveControllers.size()/100f); + SingleThread = ThreadsNeeded <= 1; if(EngineConfig.getInstance().IsEngineThrottled()) return; DeltaTime *= EngineConfig.getInstance().PhysicsSpeed(); - - Accumulator += DeltaTime; - float maxAccumulated = FixedTimeStep * MaxSubStepsPerFrame; - if (Accumulator > maxAccumulated) Accumulator = maxAccumulated; - - int stepsRun = 0; - - while (Accumulator >= FixedTimeStep && stepsRun < MaxSubStepsPerFrame) { - PhysicsTick++; - for (int i = 0; i < ActiveControllers.size(); i++) { - if (PhysicsObjects.get(ActiveControllers.get(i)) != null) { - PhysicsObjects.get(ActiveControllers.get(i)).PhysicsTick(FixedTimeStep, TargetFrameTime); - } + /* if(!SingleThread && ThreadsNeeded > physicsThreads.size()) { + while(ThreadsNeeded > physicsThreads.size()) { + int Index = physicsThreads.size(); + physicsThreads.add(new PhysicsThread("PhysThread"+Index, Index, ThreadsNeeded).StartThread()); } - Accumulator -= FixedTimeStep; - stepsRun++; - } - for (int i = 0; i < ActiveControllers.size(); i++) { - PhysicsObjects.get(ActiveControllers.get(i)).Collisions().clear(); - } + } else if(SingleThread){*/ + Accumulator += DeltaTime; + float maxAccumulated = FixedTimeStep * MaxSubStepsPerFrame; + if (Accumulator > maxAccumulated) Accumulator = maxAccumulated; + + int stepsRun = 0; + + while (Accumulator >= FixedTimeStep && stepsRun < MaxSubStepsPerFrame) { + PhysicsTick++; + for (int i = 0; i < ActiveControllers.size(); i++) { + if (PhysicsObjects.get(ActiveControllers.get(i)) != null) { + PhysicsObjects.get(ActiveControllers.get(i)).PhysicsTick(FixedTimeStep, TargetFrameTime); + } + } + Accumulator -= FixedTimeStep; + stepsRun++; + } + for (int i = 0; i < ActiveControllers.size(); i++) { + PhysicsObjects.get(ActiveControllers.get(i)).Collisions().clear(); + } + // } } public static void PhysicsTick(float DeltaTime, float TargetFrameTime){ diff --git a/src/main/java/net/halbear/Terrain4J/EngineCore/Main/GameCore.java b/src/main/java/net/halbear/Terrain4J/EngineCore/Main/GameCore.java index b09d9d3..0583abd 100644 --- a/src/main/java/net/halbear/Terrain4J/EngineCore/Main/GameCore.java +++ b/src/main/java/net/halbear/Terrain4J/EngineCore/Main/GameCore.java @@ -17,6 +17,8 @@ import net.halbear.Terrain4J.EngineCore.Logic.GameLogic; import net.halbear.Terrain4J.EngineCore.Logic.InitData; import net.halbear.Terrain4J.EngineCore.Logic.Physics.LegacyPhysicsController; import net.halbear.Terrain4J.EngineCore.Logic.Physics.RigidBody.ConvexMesh; +import net.halbear.Terrain4J.EngineCore.Logic.Physics.RigidBody.RigidBody; +import net.halbear.Terrain4J.EngineCore.Logic.Physics.RigidBody.RigidPhysicsController; import net.halbear.Terrain4J.EngineCore.Logic.Physics.WorldPhysicsManager; import net.halbear.Terrain4J.EngineCore.Logic.Rendering.ModelLoader; import net.halbear.Terrain4J.EngineCore.Main.Scene.*; @@ -76,8 +78,8 @@ public class GameCore implements GameLogic { public InitData Initialise(EngineInstance engineInstance) { IScene scene = engineInstance.scene(); List models = new ArrayList<>(); - MelonaData = ModelLoader.LoadModel("resources/models/melona/melona.json"); - List MelonaDataMat = ModelLoader.LoadMaterials("resources/models/melona/melona_mat.json"); + MelonaData = ModelLoader.LoadModel("resources/models/cube/Cube.json"); + List MelonaDataMat = ModelLoader.LoadMaterials("resources/models/cube/Cube_mat.json"); var Melona = new Actor("Melona", MelonaData.ID(), new Vector3f(0,0f,-5f)).SetRotation(0,(float)Math.toRadians(180),0); Melona.CreatePhysicsController(LegacyPhysicsController.CollisionType.Sensor); /* Melona.GetPhysicsController() @@ -166,7 +168,9 @@ public class GameCore implements GameLogic { SpawnPosition.add(SpawnDirection); var Melona = new Actor("MelonaSpawned" + scene.GetActors().size(), MelonaData.ID(), new Vector3f(SpawnPosition)); - Melona.CreatePhysicsController( ConvexMesh.Box(0.75f,1,0.5f),20); + Melona.CreatePhysicsController( ConvexMesh.Box(0.5f,0.5f,0.5f),20); + RigidPhysicsController physicsController = (RigidPhysicsController) Melona.GetPhysicsController(); + RigidBody.RigidBodyRegister.get(physicsController.RigidBodyID).LinearVelocity.set(0,0,-20f -(40f * (float)Math.random())); scene.AddActor(Melona); } @@ -245,7 +249,7 @@ public class GameCore implements GameLogic { float MovementDist = (float)(FrameDiffNanoSeconds / 1000000L) * MOVEMENT_SPEED; Camera camera = scene.GetCamera(); if(input.keyPressed(GLFW_KEY_ENTER)) { - SpawnNewActor(engineInstance, new Vector3f( (float)(2 * Math.random()),20 + (float)(10 * Math.random()), (float)(2 * Math.random())),new Vector3f(-1f + (float)(2 * Math.random()),-1f + (float)(2 * Math.random()),-1f + (float)(2 * Math.random())),new Vector3f((float)Math.random(),(float)Math.random(),(float)Math.random())); + SpawnNewActor(engineInstance, new Vector3f( (float)(5 * Math.random()),20 + (float)(10 * Math.random()), (float)(5 * Math.random())),new Vector3f(-1f + (float)(2 * Math.random()),-1f + (float)(2 * Math.random()),-1f + (float)(2 * Math.random())),new Vector3f((float)Math.random(),(float)Math.random(),(float)Math.random())); } if(input.keyPressed(GLFW_KEY_1)) { Gimbal.universalType = Gimbal.GimbalType.Move; diff --git a/src/main/java/net/halbear/Terrain4J/EngineCore/Threads/PhysicsThread.java b/src/main/java/net/halbear/Terrain4J/EngineCore/Threads/PhysicsThread.java new file mode 100644 index 0000000..301acc4 --- /dev/null +++ b/src/main/java/net/halbear/Terrain4J/EngineCore/Threads/PhysicsThread.java @@ -0,0 +1,79 @@ +package net.halbear.Terrain4J.EngineCore.Threads; + +import net.halbear.Terrain4J.EngineCore.Logic.EngineConfig; +import net.halbear.Terrain4J.EngineCore.Logic.EngineInstance; +import net.halbear.Terrain4J.EngineCore.Logic.GameLogic; +import net.halbear.Terrain4J.EngineCore.Logic.Physics.WorldPhysicsManager; +import net.halbear.Terrain4J.EngineCore.Main.PrimaryRuntime; +import org.tinylog.Logger; + +import static net.halbear.Terrain4J.EngineCore.Logic.Physics.WorldPhysicsManager.ActiveControllers; +import static net.halbear.Terrain4J.EngineCore.Logic.Physics.WorldPhysicsManager.PhysicsObjects; + +public class PhysicsThread implements Runnable{ + public static boolean running = true; + public final Thread EngineThread; + public static float FixedTimeStep = 1f / 60f; + public static int PhysicsTick = 0; + public static int MaxSubStepsPerFrame = 8; + public int Frames = 0; + public int TickFrames = 0; + private static float Accumulator = 0f; + public String ThreadName; + public int Index; + public int Total; + + public Thread FetchThread(){ + return EngineThread; + } + + public PhysicsThread StartThread(){ + EngineThread.start(); + return this; + } + + public PhysicsThread(String ThreadName, int Index, int TotalCount){ + this.ThreadName = ThreadName; + Logger.debug("Starting {} Thread",ThreadName); + EngineThread = new Thread(this); + EngineThread.setName("Terrain4J "+ThreadName+" Engine Thread"); + this.Index = Index; + this.Total = TotalCount; + } + + @Override + public void run() { + long InitialTime = System.nanoTime(); + long updateTime = InitialTime; + double[] FrameTimes = new double[]{0,0,0,0}; + while(FastTickThread.running && (Index/Total) * ActiveControllers.size() < ActiveControllers.size()){ + long now = System.nanoTime(); + TickFrames++; + long nsTimeDiff = now - updateTime; + updateTime = now; + float PhysicsFramerate = 24f; + float PhysicsFrameTime = 1000f/PhysicsFramerate; + float DeltaTime = (float)nsTimeDiff/(PhysicsFrameTime*1000000f); + SteppedPhysicsTickMultiThreaded(DeltaTime, 60,Index,Total); + } + } + + public static void SteppedPhysicsTickMultiThreaded(float DeltaTime, float TargetFrameTime, int Index, int Total){ + Accumulator += DeltaTime; + float maxAccumulated = FixedTimeStep * MaxSubStepsPerFrame; + if (Accumulator > maxAccumulated) Accumulator = maxAccumulated; + + int stepsRun = 0; + + while (Accumulator >= FixedTimeStep && stepsRun < MaxSubStepsPerFrame) { + PhysicsTick++; + for (int i = (Index/Total) * ActiveControllers.size(); i < Math.min((Index + 1/Total) * ActiveControllers.size(),ActiveControllers.size()); i++) { + if (PhysicsObjects.get(ActiveControllers.get(i)) != null) { + PhysicsObjects.get(ActiveControllers.get(i)).PhysicsTick(FixedTimeStep, TargetFrameTime); + } + } + Accumulator -= FixedTimeStep; + stepsRun++; + } + } +}