diff --git a/HydraClient/source/HydraGame.cpp b/HydraClient/source/HydraGame.cpp index 5fa126e..e69d5c1 100644 --- a/HydraClient/source/HydraGame.cpp +++ b/HydraClient/source/HydraGame.cpp @@ -14,14 +14,14 @@ bool HydraGame::Initialise() GetEngine()->ActorManager()->SetOrientation(m_sun_light_id, -0.5f, -0.2f, 0.0f); - m_other_light_id = GetEngine()->ActorManager()->CreateActor(); - GetEngine()->ActorManager()->InitialiseActor(m_other_light_id); - GetEngine()->ActorManager()->SetPosition(m_other_light_id, glm::dvec3(0.0f, 1.0f, 5.0f)); + // m_other_light_id = GetEngine()->ActorManager()->CreateActor(); + // GetEngine()->ActorManager()->InitialiseActor(m_other_light_id); + // GetEngine()->ActorManager()->SetPosition(m_other_light_id, glm::dvec3(0.0f, 2.0f, 0.0f)); - m_spot_light_id = GetEngine()->ActorManager()->CreateActor(); - GetEngine()->ActorManager()->InitialiseActor(m_spot_light_id); - GetEngine()->ActorManager()->SetOrientation(m_spot_light_id, -0.5f, -0.2f, 0.0f); - GetEngine()->ActorManager()->SetPosition(m_spot_light_id, glm::dvec3(0.0f, 4.0f, 5.0f)); + // m_spot_light_id = GetEngine()->ActorManager()->CreateActor(); + // GetEngine()->ActorManager()->InitialiseActor(m_spot_light_id); + // GetEngine()->ActorManager()->SetOrientation(m_spot_light_id, -0.5f, -0.2f, 0.0f); + // GetEngine()->ActorManager()->SetPosition(m_spot_light_id, glm::dvec3(0.0f, 4.0f, 5.0f)); // //1.570796327f diff --git a/HydraEngine/source/HydraDefines.h b/HydraEngine/source/HydraDefines.h index 36ca6b2..282bedf 100644 --- a/HydraEngine/source/HydraDefines.h +++ b/HydraEngine/source/HydraDefines.h @@ -44,8 +44,10 @@ const uint32_t MAX_LIGHTS = 500; const uint32_t MAX_DIRECTIONAL_SHADOWS = 10; const uint32_t MAX_SPOT_SHADOWS = 10; const uint32_t MAX_POINT_SHADOWS = 10; -const uint32_t SHADOW_MAP_SIZE = 1024; - +//const uint32_t SHADOW_MAP_SIZE = 1024; +const uint32_t DIRECTIONAL_SHADOW_MAP_SIZE = 4096; +const uint32_t SPOT_SHADOW_MAP_SIZE = 1024; +const uint32_t POINT_SHADOW_MAP_SIZE = 1024; enum class HYDRA_RENDERABLE_TYPE { diff --git a/HydraEngine/source/ShaderFiles/deferred_output_shader.frag b/HydraEngine/source/ShaderFiles/deferred_output_shader.frag index d068302..f31cc8c 100644 --- a/HydraEngine/source/ShaderFiles/deferred_output_shader.frag +++ b/HydraEngine/source/ShaderFiles/deferred_output_shader.frag @@ -327,12 +327,26 @@ float SampleCascadeShadow(vec4 frag_clip_space, sampler2DArray sampler_shadow_ma float shadow_map_depth = texture(sampler_shadow_map, vec3(frag_light_space.xy, shadow_trans_idx)).r; // calculate bias (based on depth map resolution and slope) - - float bias = max(0.0005 * (1.0 - dot(normal, light_dir)), 0.00005); + float mapped_distance = (shadow_trans_idx*2); + float bias = 0.0f;//max(0.0001 * (1.0 - dot(normal, light_dir)), 0.00001); // check whether current frag pos is in shadow // float shadow = currentDepth - bias > closestDepth ? 1.0 : 0.0; // PCF - //bias = 0; + if(shadow_trans_idx < 3) + { + bias = 0.00001; + } + else if(shadow_trans_idx == 3) + { + bias = 0.0001;// + (0.000001 * mapped_distance); + } + else + { + bias = 0.0005; + } + + + float shadow = 0.0; vec2 texel_size = 1.0 / textureSize(sampler_shadow_map, 0).xy; if((frag_light_space.x >= 0.0)&&(frag_light_space.y >= 0.0) @@ -343,7 +357,7 @@ float SampleCascadeShadow(vec4 frag_clip_space, sampler2DArray sampler_shadow_ma for(int y = -1; y <= 1; ++y) { shadow_map_depth = texture(sampler_shadow_map, vec3(frag_light_space.xy + vec2(x, y) * texel_size, shadow_trans_idx)).r; - shadow += frag_light_space.z - bias > shadow_map_depth ? 1.0 : 0.0; + shadow += (frag_light_space.z - bias) > shadow_map_depth ? 1.0 : 0.0; } } shadow /= 9.0; @@ -414,14 +428,39 @@ vec3 CalculateDirectionalShadow(vec4 world_pos, uint shadow_idx, vec3 normal, ve if(ignore_shadow == 1) { + vec4 translated_pixel = directional_shadows[shadow_idx].light_space_proj[shadow_trans_idx] * directional_shadows[shadow_idx].light_space_view[shadow_trans_idx] * world_pos; uvec2 shadow_handle = textures[directional_shadows[shadow_idx].shadow_texture_id]; shadow = 1.0 - SampleCascadeShadow(translated_pixel, sampler2DArray(shadow_handle), shadow_trans_idx, normal, light_dir); } - return vec3(shadow); + if(shadow_trans_idx == 0) + { + return vec3(1,0,0); + } + if(shadow_trans_idx == 1) + { + return vec3(0,1,0); + } + if(shadow_trans_idx == 2) + { + return vec3(0,0,1); + } + if(shadow_trans_idx == 3) + { + return vec3(1,1,0); + } + if(shadow_trans_idx == 4) + { + return vec3(1,0,1); + } + if(shadow_trans_idx == 5) + { + return vec3(0,1,1); + } + } float CalculateSpotShadow(vec4 world_pos, uint shadow_idx, vec3 normal, vec3 light_dir, vec3 viewer_pos) { @@ -460,7 +499,7 @@ float SampleCubemapShadow(vec3 frag_to_light, float far_plane, float view_distan for(int i = 0; i < samples; ++i) { - //float closest_depth = texture(sampler_shadow_map, frag_to_light).r; + float closest_depth = texture(sampler_shadow_map, frag_to_light + sample_offset_directions[i] * disk_radius).r; closest_depth *= far_plane; // undo mapping [0;1] if(frag_depth - bias > closest_depth) @@ -468,15 +507,7 @@ float SampleCubemapShadow(vec3 frag_to_light, float far_plane, float view_distan } shadow /= float(samples); return shadow; - // float frag_depth = length(frag_to_light); - - // closest_depth = closest_depth * far_plane; - - // float bias = 0.05f; - // float shadow = (frag_depth - bias) > closest_depth ? 1.0 : 0.0; - - // return shadow; } float CalculatePointShadow(vec3 world_pos, uint shadow_idx, float view_distance, vec3 light_position) @@ -515,15 +546,17 @@ void main() mat4 model = model_matrix[lights[i].entity_id]; mat3 rot_mat = GetRotationOnlyMatrix(model); vec3 light_direction = normalize(rot_mat * vec3(0,0,1)); - + vec3 light_pos = model[3].xyz; if(lights[i].light_type == HYDRA_LIGHT_DIRECTIONAL) { Lo += DirectionalShading(normal, diffuse.xyz, rough, metal, lights[i].intensity, light_direction, light_pos, world_pos, ubo_per_frame.viewer_pos); + Lo *= lights[i].diffuse.xyz; if(lights[i].shadow_caster == 1) { vec3 shadow = CalculateDirectionalShadow(vec4(world_pos, 1.0), lights[i].shadow_map_id, normal, light_direction, ubo_per_frame.viewer_pos); Lo = Lo * shadow; + } } else if(lights[i].light_type == HYDRA_LIGHT_POINT) @@ -575,7 +608,7 @@ void main() lights[i].quadratic, world_pos, ubo_per_frame.viewer_pos, - shadow); + shadow) * lights[i].diffuse.xyz; } diff --git a/HydraEngine/source/actor/HydraDirectionalLightActor.cpp b/HydraEngine/source/actor/HydraDirectionalLightActor.cpp index c7f34d5..a7515e0 100644 --- a/HydraEngine/source/actor/HydraDirectionalLightActor.cpp +++ b/HydraEngine/source/actor/HydraDirectionalLightActor.cpp @@ -21,8 +21,8 @@ void HydraDirectionalLightActor::InitialiseComponents() HydraLightComponent light_comp = {}; HydraECS *ecs = GetEngine()->ECS(); - light_comp.diffuse = glm::vec4(1,1,1,1); - light_comp.intensity = 10000.0f; + light_comp.diffuse = glm::vec4(1.0,0.8,0.6,1); + light_comp.intensity = 100000.0f; light_comp.light_type = static_cast(HYDRA_LIGHT_TYPE::HYDRA_LIGHT_DIRECTIONAL); light_comp.entity_id = GetID(); light_comp.shadow_caster =1; diff --git a/HydraEngine/source/actor/HydraPlaneActor.cpp b/HydraEngine/source/actor/HydraPlaneActor.cpp index 853fde4..1391686 100644 --- a/HydraEngine/source/actor/HydraPlaneActor.cpp +++ b/HydraEngine/source/actor/HydraPlaneActor.cpp @@ -165,7 +165,7 @@ void HydraPlaneActor::_CreateMaterial() { HydraEngine *engine = GetEngine(); - std::string filename = std::string(texture_base) + std::string("/DesignArea/DesignArea_Albedo.png"); + std::string filename = std::string(texture_base) + std::string("/DesignArea/DesignArea_Albedo_white.png"); HydraID tex_id = engine->TextureBufferManager()->LoadTexture(filename); diff --git a/HydraEngine/source/actor/HydraSpotLightActor.cpp b/HydraEngine/source/actor/HydraSpotLightActor.cpp index 2e572d4..9b587af 100644 --- a/HydraEngine/source/actor/HydraSpotLightActor.cpp +++ b/HydraEngine/source/actor/HydraSpotLightActor.cpp @@ -21,7 +21,7 @@ void HydraSpotLightActor::InitialiseComponents() HydraLightComponent light_comp = {}; HydraECS *ecs = GetEngine()->ECS(); - light_comp.diffuse = glm::vec4(1,1,1,1); + light_comp.diffuse = glm::vec4(1.0f,1.0f,1.0f,1); light_comp.intensity = 10000.0f; light_comp.light_type = static_cast(HYDRA_LIGHT_TYPE::HYDRA_LIGHT_SPOT); light_comp.cutoff = glm::cos(glm::radians(10.0f)); diff --git a/HydraEngine/source/actor/HydraTestLightActor.cpp b/HydraEngine/source/actor/HydraTestLightActor.cpp new file mode 100644 index 0000000..f109ff1 --- /dev/null +++ b/HydraEngine/source/actor/HydraTestLightActor.cpp @@ -0,0 +1,191 @@ +#include "HydraTestLightActor.h" +#include "../engine/HydraEngine.h" +#include "../actor/HydraActorManager.h" +#include "../task/HydraTask.h" +#include "../ecs/HydraECS.h" +#include "../ecs/components/HydraPositionComponent.h" +#include "../ecs/components/HydraMeshComponent.h" +#include "../ecs/components/HydraRenderableComponent.h" +#include "../ecs/components/HydraMaterialComponent.h" +#include "../buffer/HydraMaterialBufferManager.h" +#include "../buffer/HydraTextureBufferManager.h" +#include "../buffer/HydraMaterialBuffer.h" +#include "../mesh/HydraMeshManager.h" +#include "../mesh/HydraMesh.h" + +void HydraTestLightActor::InitialiseComponents() +{ + // HydraECS* ecs = GetEngine()->ECS(); + // HydraID entity_id = ecs->CreateEntity(); + _CreatePosition(); + // _CreatePhysics(); + + _CreateMaterial(); + _CreateMesh(); + _CreateRenderableComponent(); +} + +void HydraTestLightActor::DeferredInitialiseComponents() +{ +} + +void HydraTestLightActor::_CreatePosition() +{ + HydraECS *ecs = GetEngine()->ECS(); + HydraPositionComponent position_component; + ecs->AddComponent(GetID(), position_component); +} + +void HydraTestLightActor::_CreateMesh() +{ + HydraMeshManager *mesh_manager = GetEngine()->MeshManager(); + HydraID mesh_id = mesh_manager->CreateMesh(); + HydraMesh *mesh = mesh_manager->GetMesh(mesh_id); + + HydraMaterialComponent mat_comp = GetEngine()->ECS()->GetComponent(GetID()); + + mesh->vertexes.resize(24); + mesh->indexes.resize(36); + + float scale_x = 1.0f; + float scale_y = 1.0f; + float scale_z = 1.0f; + + float min_x = -0.5f * scale_x; + float min_y = -0.5f * scale_y; + float min_z = -0.5f * scale_z; + + float max_x = 0.5f * scale_x; + float max_y = 0.5f * scale_y; + float max_z = 0.5f * scale_z; + + float min_u = 1; + float min_v = 1; + + float max_u = 0; + float max_v = 0; + + // 1---2 5---6 + //| / | | / | + // 0---3 4---7 + + HydraID actor_id = GetID(); + mesh->vertexes[0] = {min_x, min_y, min_z, min_u, min_v, actor_id, mat_comp.material_id, 0}; + mesh->vertexes[1] = {min_x, max_y, min_z, min_u, max_v, actor_id, mat_comp.material_id, 0}; + mesh->vertexes[2] = {max_x, max_y, min_z, max_u, max_v, actor_id, mat_comp.material_id, 0}; + mesh->vertexes[3] = {max_x, min_y, min_z, max_u, min_v, actor_id, mat_comp.material_id, 0}; + + // Face 0 + mesh->indexes[0] = 0; + mesh->indexes[1] = 1; + mesh->indexes[2] = 2; + + mesh->indexes[3] = 0; + mesh->indexes[4] = 2; + mesh->indexes[5] = 3; + + mesh->vertexes[4] = {max_x, min_y, min_z, min_u, min_v, actor_id, mat_comp.material_id, 0}; + mesh->vertexes[5] = {max_x, max_y, min_z, min_u, max_v, actor_id, mat_comp.material_id, 0}; + mesh->vertexes[6] = {max_x, max_y, max_z, max_u, max_v, actor_id, mat_comp.material_id, 0}; + mesh->vertexes[7] = {max_x, min_y, max_z, max_u, min_v, actor_id, mat_comp.material_id, 0}; + + mesh->indexes[6] = 4; + mesh->indexes[7] = 5; + mesh->indexes[8] = 6; + + mesh->indexes[9] = 4; + mesh->indexes[10] = 6; + mesh->indexes[11] = 7; + + // Back Face + mesh->vertexes[8] = {max_x, min_y, max_z, min_u, min_v, actor_id, mat_comp.material_id, 0}; + mesh->vertexes[9] = {max_x, max_y, max_z, min_u, max_v, actor_id, mat_comp.material_id, 0}; + mesh->vertexes[10] = {min_x, max_y, max_z, max_u, max_v, actor_id, mat_comp.material_id, 0}; + mesh->vertexes[11] = {min_x, min_y, max_z, max_u, min_v, actor_id, mat_comp.material_id, 0}; + + mesh->indexes[12] = 8; + mesh->indexes[13] = 9; + mesh->indexes[14] = 10; + + mesh->indexes[15] = 8; + mesh->indexes[16] = 10; + mesh->indexes[17] = 11; + + mesh->vertexes[12] = {min_x, min_y, max_z, min_u, min_v, actor_id, mat_comp.material_id, 0}; + mesh->vertexes[13] = {min_x, max_y, max_z, min_u, max_v, actor_id, mat_comp.material_id, 0}; + mesh->vertexes[14] = {min_x, max_y, min_z, max_u, max_v, actor_id, mat_comp.material_id, 0}; + mesh->vertexes[15] = {min_x, min_y, min_z, max_u, min_v, actor_id, mat_comp.material_id, 0}; + + mesh->indexes[18] = 12; + mesh->indexes[19] = 13; + mesh->indexes[20] = 14; + + mesh->indexes[21] = 12; + mesh->indexes[22] = 14; + mesh->indexes[23] = 15; + + mesh->vertexes[16] = {min_x, max_y, min_z, min_u, min_v, actor_id, mat_comp.material_id, 0}; + mesh->vertexes[17] = {min_x, max_y, max_z, min_u, max_v, actor_id, mat_comp.material_id, 0}; + mesh->vertexes[18] = {max_x, max_y, max_z, max_u, max_v, actor_id, mat_comp.material_id, 0}; + mesh->vertexes[19] = {max_x, max_y, min_z, max_u, min_v, actor_id, mat_comp.material_id, 0}; + + mesh->indexes[24] = 16; + mesh->indexes[25] = 17; + mesh->indexes[26] = 18; + + mesh->indexes[27] = 16; + mesh->indexes[28] = 18; + mesh->indexes[29] = 19; + + mesh->vertexes[20] = {min_x, min_y, min_z, min_u, min_v, actor_id, mat_comp.material_id, 0}; + mesh->vertexes[21] = {max_x, min_y, min_z, min_u, max_v, actor_id, mat_comp.material_id, 0}; + mesh->vertexes[22] = {max_x, min_y, max_z, max_u, max_v, actor_id, mat_comp.material_id, 0}; + mesh->vertexes[23] = {min_x, min_y, max_z, max_u, min_v, actor_id, mat_comp.material_id, 0}; + + mesh->indexes[30] = 20; + mesh->indexes[31] = 21; + mesh->indexes[32] = 22; + + mesh->indexes[33] = 20; + mesh->indexes[34] = 22; + mesh->indexes[35] = 23; + + mesh_manager->CalculateNormals(mesh->mesh_id); + + HydraECS *ecs = GetEngine()->ECS(); + HydraMeshComponent mesh_comp; + + mesh_comp.mesh_id = mesh_id; + mesh_comp.mesh_state = HYDRA_STATE::Waiting; + + ecs->AddComponent(GetID(), mesh_comp); +} + +void HydraTestLightActor::_CreateMaterial() +{ + + HydraEngine *engine = GetEngine(); + std::string filename = std::string(texture_base) + std::string("/DesignArea/DesignArea_Albedo.png"); + + HydraID tex_id = engine->TextureBufferManager()->LoadTexture(filename); + + HydraMaterialBuffer material = {}; + + material.diffuse_texture_id = tex_id; + material.diffuse_colour = glm::vec4(1, 1, 1, 1); + material.metalic_rough = glm::vec4(0, 0.5, 0.3, 1); + HydraID mat_id = engine->MaterialBufferManager()->CreateMaterial(material); + + HydraMaterialComponent mat_comp = {}; + mat_comp.material_id = mat_id; + engine->ECS()->AddComponent(GetID(), mat_comp); +} + + +void HydraTestLightActor::_CreateRenderableComponent() +{ + HydraRenderableComponent render_comp; + HydraECS *ecs = GetEngine()->ECS(); + render_comp.renderable_types.set((uint32_t)HYDRA_RENDERABLE_TYPE::HYDRA_COLOUR, true); + ecs->AddComponent(GetID(), render_comp); +} diff --git a/HydraEngine/source/actor/HydraTestLightActor.h b/HydraEngine/source/actor/HydraTestLightActor.h new file mode 100644 index 0000000..97a2ab1 --- /dev/null +++ b/HydraEngine/source/actor/HydraTestLightActor.h @@ -0,0 +1,28 @@ +#ifndef HYDRALIGHTTESTACTOR +#define HYDRALIGHTTESTACTOR + + + +#include "HydraActor.h" + +class CLASS_DEFINE HydraTestLightActor : public HydraActor +{ + private: + double m_scale = 1.0; + double m_widthscale = 1.0f; + HydraID m_material_component = INVALID_HYDRA_ID; + HydraID m_position_component = INVALID_HYDRA_ID; + HydraID m_mesh_component = INVALID_HYDRA_ID; + protected: + void _CreatePosition(); + void _CreateMesh(); + void _CreateMaterial(); + void _CreateRenderableComponent(); + public: + virtual void InitialiseComponents(); + virtual void DeferredInitialiseComponents(); + virtual void Destroy(){} + +}; + +#endif /* HYDRALIGHTTESTACTOR */ diff --git a/HydraEngine/source/buffer/HydraTextureBufferManager.cpp b/HydraEngine/source/buffer/HydraTextureBufferManager.cpp index 03872e3..b49b6b6 100644 --- a/HydraEngine/source/buffer/HydraTextureBufferManager.cpp +++ b/HydraEngine/source/buffer/HydraTextureBufferManager.cpp @@ -150,7 +150,7 @@ HydraID HydraTextureBufferManager::CreateCubemapTexture(std::string texture_name for(uint32_t i = 0; i < 6; i++) { - glTexImage2D(GL_TEXTURE_CUBE_MAP_POSITIVE_X + i, 0, internal_format, SHADOW_MAP_SIZE, SHADOW_MAP_SIZE, 0, GL_DEPTH_COMPONENT, GL_FLOAT, NULL); + glTexImage2D(GL_TEXTURE_CUBE_MAP_POSITIVE_X + i, 0, internal_format, POINT_SHADOW_MAP_SIZE, POINT_SHADOW_MAP_SIZE, 0, GL_DEPTH_COMPONENT, GL_FLOAT, NULL); } diff --git a/HydraEngine/source/ecs/systems/HydraDirectionalShadowSourceSystem.cpp b/HydraEngine/source/ecs/systems/HydraDirectionalShadowSourceSystem.cpp index 13b430c..9deb3fb 100644 --- a/HydraEngine/source/ecs/systems/HydraDirectionalShadowSourceSystem.cpp +++ b/HydraEngine/source/ecs/systems/HydraDirectionalShadowSourceSystem.cpp @@ -18,6 +18,8 @@ #include "../../task/renderer/HydraCreateCascadeShadowFrameBuffer.hpp" #include "../../task/renderer/HydraCreateShadowFrameBuffer.hpp" #include "../../actor/HydraActorManager.h" +#include "../../actor/HydraTestCubeActor.h" + void HydraDirectionalShadowSourceSystem::Initialise() { @@ -41,6 +43,9 @@ void HydraDirectionalShadowSourceSystem::InitialiseComponent(HydraID entity_id) shadow_comp.shadow_id = shadow_id; _InitialiseShadowMap(entity_id); + // m_shadow_actor_id = GetEngine()->ActorManager()->CreateActor(); + // GetEngine()->ActorManager()->InitialiseActor(m_shadow_actor_id); + // GetEngine()->ActorManager()->SetPosition(m_shadow_actor_id, glm::dvec3(0, 0, 0)); } void HydraDirectionalShadowSourceSystem::UpdateSystem(float delta_t_seconds) @@ -58,39 +63,43 @@ void HydraDirectionalShadowSourceSystem::_UpdateShadowMap(HydraID entity_id) HydraPositionComponent pos_comp = ecs->GetComponent(entity_id); HydraDirectionalShadowSourceComponent &shad_comp = ecs->GetComponent(entity_id); - float view_size = 4.0f; - float view_near = 0.1f; - float view_far = 4.0f; + float view_size = 4.0f; + float shadow_distance = 4.0f; + float max_shadow_range = 100000.0f; glm::mat4 light_rot = glm::eulerAngleXYZ(pos_comp.orientation.x, pos_comp.orientation.y, pos_comp.orientation.z); glm::vec3 light_dir = glm::normalize(glm::vec3(light_rot * glm::vec4(0.0f, 0.0f, -1.0f, 0.0f))); glm::vec3 camera_pos = GetEngine()->Camera()->GetPosition(); - + + glm::vec3 light_pos = (camera_pos - (light_dir * 1000.0f)); + glm::vec3 target_pos = light_pos + light_dir; + glm::vec3 up_vector = glm::vec3(0.0f, 1.0f, 0.0f); + + if (glm::abs(glm::dot(light_dir, up_vector)) > 0.99f) + { + up_vector = glm::vec3(1.0f, 0.0f, 0.0f); // Prevent gimbal lock + } + glm::mat4 view = glm::lookAt(light_pos, target_pos, up_vector); + for (uint32_t i = 0; i < 6; i++) { - glm::vec3 light_pos = camera_pos;//- (light_dir * 2.0f); - glm::vec3 target_pos = light_pos + light_dir; - glm::vec3 up_vector = glm::vec3(0.0f, 1.0f, 0.0f); + float view_near = 0.1f;//max_shadow_range - shadow_distance; + float view_far = 2000.0f;// max_shadow_range + shadow_distance; - if (glm::abs(glm::dot(light_dir, up_vector)) > 0.99f) - { - up_vector = glm::vec3(1.0f, 0.0f, 0.0f); // Prevent gimbal lock - } - - glm::mat4 view = glm::lookAt(light_pos, target_pos, up_vector); glm::mat4 proj = glm::ortho(-view_size, view_size, -view_size, view_size, view_near, view_far); - // Save data to component - shad_comp.far_plane[i] = view_far; - shad_comp.near_plane[i] = view_near; + shad_comp.far_plane[i] = shadow_distance; + shad_comp.near_plane[i] = 0; shad_comp.light_space_proj[i] = proj; shad_comp.light_space_view[i] = view; // Scale bounds exponentially for the next cascade tier view_size *= 3.0f; - view_far *= 3.0f; + shadow_distance *= 3.0f; } + // GetEngine()->ActorManager()->SetPosition(m_shadow_actor_id, light_pos); + // GetEngine()->ActorManager()->SetOrientation(m_shadow_actor_id, pos_comp.orientation.x, pos_comp.orientation.y, pos_comp.orientation.z); GetEngine()->ShadowBufferManager()->UpdateDirectionalShadow(shad_comp.shadow_id, shad_comp); } diff --git a/HydraEngine/source/ecs/systems/HydraDirectionalShadowSourceSystem.h b/HydraEngine/source/ecs/systems/HydraDirectionalShadowSourceSystem.h index 9725d65..7dbeb0b 100644 --- a/HydraEngine/source/ecs/systems/HydraDirectionalShadowSourceSystem.h +++ b/HydraEngine/source/ecs/systems/HydraDirectionalShadowSourceSystem.h @@ -18,6 +18,7 @@ class HydraDirectionalShadowSourceSystem : public HydraSystem private: void _UpdateShadowMap(HydraID entity_id); void _InitialiseShadowMap(HydraID entity_id); + HydraID m_shadow_actor_id = INVALID_HYDRA_ID; std::mutex m_mutex; }; diff --git a/HydraEngine/source/ecs/systems/HydraMeshSystem.cpp b/HydraEngine/source/ecs/systems/HydraMeshSystem.cpp index d0c663b..8170f1b 100644 --- a/HydraEngine/source/ecs/systems/HydraMeshSystem.cpp +++ b/HydraEngine/source/ecs/systems/HydraMeshSystem.cpp @@ -40,5 +40,5 @@ void HydraMeshSystem::InitialiseComponent(HydraID entity_id) HydraUpdateVertexBufferTask *vertex_update_task = static_cast(task_scheduler->GetTask(update_buffer_task_id)); vertex_update_task->Intialise(mesh_comp.vertex_buffer_id, &mesh->vertexes[0], &mesh->indexes[0]); task_scheduler->WaitForTask(update_buffer_task_id); - + mesh_comp.mesh_state = HYDRA_STATE::Ready; } diff --git a/HydraEngine/source/ecs/systems/HydraPointShadowSourceSystem.cpp b/HydraEngine/source/ecs/systems/HydraPointShadowSourceSystem.cpp index 0e0b83a..d8ee7f3 100644 --- a/HydraEngine/source/ecs/systems/HydraPointShadowSourceSystem.cpp +++ b/HydraEngine/source/ecs/systems/HydraPointShadowSourceSystem.cpp @@ -63,8 +63,8 @@ void HydraPointShadowSourceSystem::_UpdateShadowMap(HydraID entity_id) glm::vec3 camera_pos = GetEngine()->Camera()->GetPosition(); - float aspect = (float)SHADOW_MAP_SIZE/(float)SHADOW_MAP_SIZE; - float width = SHADOW_MAP_SIZE; + float aspect = (float)POINT_SHADOW_MAP_SIZE/(float)POINT_SHADOW_MAP_SIZE; + float width = POINT_SHADOW_MAP_SIZE; float fov = glm::radians(90.0f); glm::mat4 shadow_proj = glm::perspectiveFovLH(fov, width, width, view_near, view_far); diff --git a/HydraEngine/source/pipeline/HydraRenderStage.cpp b/HydraEngine/source/pipeline/HydraRenderStage.cpp index 293b433..683d8a5 100644 --- a/HydraEngine/source/pipeline/HydraRenderStage.cpp +++ b/HydraEngine/source/pipeline/HydraRenderStage.cpp @@ -115,12 +115,14 @@ void HydraRenderStage::Render(std::set& entities, uint32_t framebuffer_ if((render_comp.renderable_types & signature) == signature) { HydraMeshComponent mesh_comp = ecs->GetComponent(entity_id); - - HydraVertexBuffer& vertex_buffer = vert_buffer_mananger->GetVertexBuffer(mesh_comp.vertex_buffer_id); + if(mesh_comp.mesh_state == HYDRA_STATE::Ready) + { + HydraVertexBuffer& vertex_buffer = vert_buffer_mananger->GetVertexBuffer(mesh_comp.vertex_buffer_id); - glBindVertexArray(vertex_buffer.vao); - glDrawElements(GL_TRIANGLES, vertex_buffer.triangle_count, GL_UNSIGNED_INT, (void*)0 ); - glBindVertexArray(0); + glBindVertexArray(vertex_buffer.vao); + glDrawElements(GL_TRIANGLES, vertex_buffer.triangle_count, GL_UNSIGNED_INT, (void*)0 ); + glBindVertexArray(0); + } } } glBindFramebuffer(GL_FRAMEBUFFER, 0); diff --git a/HydraEngine/source/pipeline/HydraShadowPipeline.cpp b/HydraEngine/source/pipeline/HydraShadowPipeline.cpp index a3c1400..401f157 100644 --- a/HydraEngine/source/pipeline/HydraShadowPipeline.cpp +++ b/HydraEngine/source/pipeline/HydraShadowPipeline.cpp @@ -34,7 +34,7 @@ void HydraShadowPipeline::Shutdown() void HydraShadowPipeline::Render() { - glViewport(0, 0, SHADOW_MAP_SIZE, SHADOW_MAP_SIZE); + glEnable(GL_DEPTH_TEST); // Depth testing must be active glDepthMask(GL_TRUE); // Depth buffer must be writable @@ -51,7 +51,7 @@ void HydraShadowPipeline::_RenderPointShadowMaps() HydraECS *ecs = GetEngine()->ECS(); std::shared_ptr render_system = ecs->GetSystem(); std::shared_ptr shadow_system = ecs->GetSystem(); - + glViewport(0, 0, POINT_SHADOW_MAP_SIZE, POINT_SHADOW_MAP_SIZE); for (HydraID entity_id : shadow_system->Entities) { HydraPointShadowSourceComponent shad_comp = GetEngine()->ECS()->GetComponent(entity_id); @@ -74,7 +74,7 @@ void HydraShadowPipeline::_RenderDirectionalShadowMaps() HydraECS *ecs = GetEngine()->ECS(); std::shared_ptr render_system = ecs->GetSystem(); std::shared_ptr shadow_system = ecs->GetSystem(); - + glViewport(0, 0, DIRECTIONAL_SHADOW_MAP_SIZE, DIRECTIONAL_SHADOW_MAP_SIZE); for (HydraID entity_id : shadow_system->Entities) { HydraDirectionalShadowSourceComponent shad_comp = GetEngine()->ECS()->GetComponent(entity_id); @@ -95,7 +95,7 @@ void HydraShadowPipeline::_RenderSpotShadowMaps() HydraECS *ecs = GetEngine()->ECS(); std::shared_ptr render_system = ecs->GetSystem(); std::shared_ptr shadow_system = ecs->GetSystem(); - + glViewport(0, 0, SPOT_SHADOW_MAP_SIZE, SPOT_SHADOW_MAP_SIZE); for (HydraID entity_id : shadow_system->Entities) { HydraSpotShadowSourceComponent shad_comp = GetEngine()->ECS()->GetComponent(entity_id); diff --git a/HydraEngine/source/task/renderer/HydraCreateCascadeShadowFrameBuffer.hpp b/HydraEngine/source/task/renderer/HydraCreateCascadeShadowFrameBuffer.hpp index 869da33..403d003 100644 --- a/HydraEngine/source/task/renderer/HydraCreateCascadeShadowFrameBuffer.hpp +++ b/HydraEngine/source/task/renderer/HydraCreateCascadeShadowFrameBuffer.hpp @@ -25,7 +25,7 @@ public: HydraRenderSettings render_settings = engine->RenderSettings(); *m_texture_id = tex_buffer_manager->CreateTextureArray("shadow_FB", - SHADOW_MAP_SIZE, SHADOW_MAP_SIZE, + DIRECTIONAL_SHADOW_MAP_SIZE, DIRECTIONAL_SHADOW_MAP_SIZE, GL_RGBA8, GL_NEAREST, GL_NEAREST, @@ -34,7 +34,7 @@ public: HydraTextureBuffer texture = tex_buffer_manager->GetTexture(*m_texture_id); *m_depth_texture_id = tex_buffer_manager->CreateTextureArray("shadow_depth_buffer", - SHADOW_MAP_SIZE, SHADOW_MAP_SIZE, + DIRECTIONAL_SHADOW_MAP_SIZE, DIRECTIONAL_SHADOW_MAP_SIZE, GL_DEPTH_COMPONENT32F, GL_NEAREST, GL_NEAREST, diff --git a/HydraEngine/source/task/renderer/HydraCreateCubemapShadowFrameBuffer.hpp b/HydraEngine/source/task/renderer/HydraCreateCubemapShadowFrameBuffer.hpp index 30b3396..c72952f 100644 --- a/HydraEngine/source/task/renderer/HydraCreateCubemapShadowFrameBuffer.hpp +++ b/HydraEngine/source/task/renderer/HydraCreateCubemapShadowFrameBuffer.hpp @@ -27,7 +27,7 @@ public: HydraTextureBuffer texture = tex_buffer_manager->GetTexture(*m_texture_id); *m_depth_texture_id = tex_buffer_manager->CreateCubemapTexture("shadow_depth_buffer", - SHADOW_MAP_SIZE, SHADOW_MAP_SIZE, + POINT_SHADOW_MAP_SIZE, POINT_SHADOW_MAP_SIZE, GL_DEPTH_COMPONENT32F, GL_NEAREST, GL_NEAREST); diff --git a/HydraEngine/source/task/renderer/HydraCreateShadowFrameBuffer.hpp b/HydraEngine/source/task/renderer/HydraCreateShadowFrameBuffer.hpp index e4103bc..6785ab6 100644 --- a/HydraEngine/source/task/renderer/HydraCreateShadowFrameBuffer.hpp +++ b/HydraEngine/source/task/renderer/HydraCreateShadowFrameBuffer.hpp @@ -35,7 +35,7 @@ public: // HydraTextureBuffer texture = tex_buffer_manager->GetTexture(*m_texture_id); *m_depth_texture_id = tex_buffer_manager->CreateTexture("shadow_depth_buffer", - SHADOW_MAP_SIZE, SHADOW_MAP_SIZE, + SPOT_SHADOW_MAP_SIZE, SPOT_SHADOW_MAP_SIZE, GL_DEPTH_COMPONENT32F, GL_NEAREST, GL_NEAREST, diff --git a/Media/Textures/DesignArea/DesignArea_Albedo_white.png b/Media/Textures/DesignArea/DesignArea_Albedo_white.png new file mode 100644 index 0000000..30f34a0 Binary files /dev/null and b/Media/Textures/DesignArea/DesignArea_Albedo_white.png differ diff --git a/build/.cmake/api/v1/reply/codemodel-v2-5bd18c6e9c2d6656f777.json b/build/.cmake/api/v1/reply/codemodel-v2-b51b65a9e1b2b40062f3.json similarity index 93% rename from build/.cmake/api/v1/reply/codemodel-v2-5bd18c6e9c2d6656f777.json rename to build/.cmake/api/v1/reply/codemodel-v2-b51b65a9e1b2b40062f3.json index d540010..b07ccf2 100644 --- a/build/.cmake/api/v1/reply/codemodel-v2-5bd18c6e9c2d6656f777.json +++ b/build/.cmake/api/v1/reply/codemodel-v2-b51b65a9e1b2b40062f3.json @@ -161,28 +161,28 @@ { "directoryIndex" : 0, "id" : "ALL_BUILD::@6890427a1f51a3e7e1df", - "jsonFile" : "target-ALL_BUILD-Debug-1b3c50ca02e96d15a11f.json", + "jsonFile" : "target-ALL_BUILD-Debug-b312317e09460fad670b.json", "name" : "ALL_BUILD", "projectIndex" : 0 }, { "directoryIndex" : 1, "id" : "ALL_BUILD::@fafd37b19aacd4c483ed", - "jsonFile" : "target-ALL_BUILD-Debug-21126e6f26f8151b82a1.json", + "jsonFile" : "target-ALL_BUILD-Debug-30097c8e6651db3aff43.json", "name" : "ALL_BUILD", "projectIndex" : 1 }, { "directoryIndex" : 0, "id" : "HydraClient::@6890427a1f51a3e7e1df", - "jsonFile" : "target-HydraClient-Debug-ccca9689ebe6b19fe65a.json", + "jsonFile" : "target-HydraClient-Debug-78ce361b98c7c89e9629.json", "name" : "HydraClient", "projectIndex" : 0 }, { "directoryIndex" : 1, "id" : "HydraEngine::@fafd37b19aacd4c483ed", - "jsonFile" : "target-HydraEngine-Debug-83a9a5954d1e93fe25f7.json", + "jsonFile" : "target-HydraEngine-Debug-ef5f850986821f3b6f03.json", "name" : "HydraEngine", "projectIndex" : 1 }, @@ -355,28 +355,28 @@ { "directoryIndex" : 0, "id" : "ALL_BUILD::@6890427a1f51a3e7e1df", - "jsonFile" : "target-ALL_BUILD-Release-1b3c50ca02e96d15a11f.json", + "jsonFile" : "target-ALL_BUILD-Release-b312317e09460fad670b.json", "name" : "ALL_BUILD", "projectIndex" : 0 }, { "directoryIndex" : 1, "id" : "ALL_BUILD::@fafd37b19aacd4c483ed", - "jsonFile" : "target-ALL_BUILD-Release-21126e6f26f8151b82a1.json", + "jsonFile" : "target-ALL_BUILD-Release-30097c8e6651db3aff43.json", "name" : "ALL_BUILD", "projectIndex" : 1 }, { "directoryIndex" : 0, "id" : "HydraClient::@6890427a1f51a3e7e1df", - "jsonFile" : "target-HydraClient-Release-f300bf694420197200c5.json", + "jsonFile" : "target-HydraClient-Release-5f750d1feb1d099be72b.json", "name" : "HydraClient", "projectIndex" : 0 }, { "directoryIndex" : 1, "id" : "HydraEngine::@fafd37b19aacd4c483ed", - "jsonFile" : "target-HydraEngine-Release-fd732da53ad87180e5c2.json", + "jsonFile" : "target-HydraEngine-Release-b6b86a0ceaecf84fa1f5.json", "name" : "HydraEngine", "projectIndex" : 1 }, @@ -549,28 +549,28 @@ { "directoryIndex" : 0, "id" : "ALL_BUILD::@6890427a1f51a3e7e1df", - "jsonFile" : "target-ALL_BUILD-MinSizeRel-1b3c50ca02e96d15a11f.json", + "jsonFile" : "target-ALL_BUILD-MinSizeRel-b312317e09460fad670b.json", "name" : "ALL_BUILD", "projectIndex" : 0 }, { "directoryIndex" : 1, "id" : "ALL_BUILD::@fafd37b19aacd4c483ed", - "jsonFile" : "target-ALL_BUILD-MinSizeRel-21126e6f26f8151b82a1.json", + "jsonFile" : "target-ALL_BUILD-MinSizeRel-30097c8e6651db3aff43.json", "name" : "ALL_BUILD", "projectIndex" : 1 }, { "directoryIndex" : 0, "id" : "HydraClient::@6890427a1f51a3e7e1df", - "jsonFile" : "target-HydraClient-MinSizeRel-707588ed524688a0f034.json", + "jsonFile" : "target-HydraClient-MinSizeRel-0b1754e9511a8dea2861.json", "name" : "HydraClient", "projectIndex" : 0 }, { "directoryIndex" : 1, "id" : "HydraEngine::@fafd37b19aacd4c483ed", - "jsonFile" : "target-HydraEngine-MinSizeRel-c9a2609fa141f4bef8ca.json", + "jsonFile" : "target-HydraEngine-MinSizeRel-585ede66b397f0d9fbdf.json", "name" : "HydraEngine", "projectIndex" : 1 }, @@ -743,28 +743,28 @@ { "directoryIndex" : 0, "id" : "ALL_BUILD::@6890427a1f51a3e7e1df", - "jsonFile" : "target-ALL_BUILD-RelWithDebInfo-1b3c50ca02e96d15a11f.json", + "jsonFile" : "target-ALL_BUILD-RelWithDebInfo-b312317e09460fad670b.json", "name" : "ALL_BUILD", "projectIndex" : 0 }, { "directoryIndex" : 1, "id" : "ALL_BUILD::@fafd37b19aacd4c483ed", - "jsonFile" : "target-ALL_BUILD-RelWithDebInfo-21126e6f26f8151b82a1.json", + "jsonFile" : "target-ALL_BUILD-RelWithDebInfo-30097c8e6651db3aff43.json", "name" : "ALL_BUILD", "projectIndex" : 1 }, { "directoryIndex" : 0, "id" : "HydraClient::@6890427a1f51a3e7e1df", - "jsonFile" : "target-HydraClient-RelWithDebInfo-a4b1a5ac731bdcc03733.json", + "jsonFile" : "target-HydraClient-RelWithDebInfo-19110864938462bdea5b.json", "name" : "HydraClient", "projectIndex" : 0 }, { "directoryIndex" : 1, "id" : "HydraEngine::@fafd37b19aacd4c483ed", - "jsonFile" : "target-HydraEngine-RelWithDebInfo-297d246892e18b3f6177.json", + "jsonFile" : "target-HydraEngine-RelWithDebInfo-78d0f79bf6771d67bc77.json", "name" : "HydraEngine", "projectIndex" : 1 }, diff --git a/build/.cmake/api/v1/reply/index-2026-08-16T11-41-24-0196.json b/build/.cmake/api/v1/reply/index-2026-08-17T09-21-44-0183.json similarity index 94% rename from build/.cmake/api/v1/reply/index-2026-08-16T11-41-24-0196.json rename to build/.cmake/api/v1/reply/index-2026-08-17T09-21-44-0183.json index c582bb4..e044db9 100644 --- a/build/.cmake/api/v1/reply/index-2026-08-16T11-41-24-0196.json +++ b/build/.cmake/api/v1/reply/index-2026-08-17T09-21-44-0183.json @@ -27,7 +27,7 @@ "objects" : [ { - "jsonFile" : "codemodel-v2-5bd18c6e9c2d6656f777.json", + "jsonFile" : "codemodel-v2-b51b65a9e1b2b40062f3.json", "kind" : "codemodel", "version" : { @@ -100,7 +100,7 @@ } }, { - "jsonFile" : "codemodel-v2-5bd18c6e9c2d6656f777.json", + "jsonFile" : "codemodel-v2-b51b65a9e1b2b40062f3.json", "kind" : "codemodel", "version" : { diff --git a/build/.cmake/api/v1/reply/target-ALL_BUILD-RelWithDebInfo-21126e6f26f8151b82a1.json b/build/.cmake/api/v1/reply/target-ALL_BUILD-Debug-30097c8e6651db3aff43.json similarity index 100% rename from build/.cmake/api/v1/reply/target-ALL_BUILD-RelWithDebInfo-21126e6f26f8151b82a1.json rename to build/.cmake/api/v1/reply/target-ALL_BUILD-Debug-30097c8e6651db3aff43.json index 3293cbc..9fd930e 100644 --- a/build/.cmake/api/v1/reply/target-ALL_BUILD-RelWithDebInfo-21126e6f26f8151b82a1.json +++ b/build/.cmake/api/v1/reply/target-ALL_BUILD-Debug-30097c8e6651db3aff43.json @@ -22,10 +22,10 @@ "dependencies" : [ { - "id" : "ZERO_CHECK::@6890427a1f51a3e7e1df" + "id" : "HydraEngine::@fafd37b19aacd4c483ed" }, { - "id" : "HydraEngine::@fafd37b19aacd4c483ed" + "id" : "ZERO_CHECK::@6890427a1f51a3e7e1df" } ], "folder" : diff --git a/build/.cmake/api/v1/reply/target-ALL_BUILD-MinSizeRel-1b3c50ca02e96d15a11f.json b/build/.cmake/api/v1/reply/target-ALL_BUILD-Debug-b312317e09460fad670b.json similarity index 100% rename from build/.cmake/api/v1/reply/target-ALL_BUILD-MinSizeRel-1b3c50ca02e96d15a11f.json rename to build/.cmake/api/v1/reply/target-ALL_BUILD-Debug-b312317e09460fad670b.json index a1685bc..0994bad 100644 --- a/build/.cmake/api/v1/reply/target-ALL_BUILD-MinSizeRel-1b3c50ca02e96d15a11f.json +++ b/build/.cmake/api/v1/reply/target-ALL_BUILD-Debug-b312317e09460fad670b.json @@ -21,14 +21,14 @@ }, "dependencies" : [ + { + "id" : "HydraEngine::@fafd37b19aacd4c483ed" + }, { "id" : "ZERO_CHECK::@6890427a1f51a3e7e1df" }, { "id" : "HydraClient::@6890427a1f51a3e7e1df" - }, - { - "id" : "HydraEngine::@fafd37b19aacd4c483ed" } ], "folder" : @@ -41,10 +41,10 @@ "orderDependencies" : [ { - "id" : "HydraClient::@6890427a1f51a3e7e1df" + "id" : "HydraEngine::@fafd37b19aacd4c483ed" }, { - "id" : "HydraEngine::@fafd37b19aacd4c483ed" + "id" : "HydraClient::@6890427a1f51a3e7e1df" } ], "paths" : diff --git a/build/.cmake/api/v1/reply/target-ALL_BUILD-MinSizeRel-21126e6f26f8151b82a1.json b/build/.cmake/api/v1/reply/target-ALL_BUILD-MinSizeRel-30097c8e6651db3aff43.json similarity index 100% rename from build/.cmake/api/v1/reply/target-ALL_BUILD-MinSizeRel-21126e6f26f8151b82a1.json rename to build/.cmake/api/v1/reply/target-ALL_BUILD-MinSizeRel-30097c8e6651db3aff43.json index 3293cbc..9fd930e 100644 --- a/build/.cmake/api/v1/reply/target-ALL_BUILD-MinSizeRel-21126e6f26f8151b82a1.json +++ b/build/.cmake/api/v1/reply/target-ALL_BUILD-MinSizeRel-30097c8e6651db3aff43.json @@ -22,10 +22,10 @@ "dependencies" : [ { - "id" : "ZERO_CHECK::@6890427a1f51a3e7e1df" + "id" : "HydraEngine::@fafd37b19aacd4c483ed" }, { - "id" : "HydraEngine::@fafd37b19aacd4c483ed" + "id" : "ZERO_CHECK::@6890427a1f51a3e7e1df" } ], "folder" : diff --git a/build/.cmake/api/v1/reply/target-ALL_BUILD-RelWithDebInfo-1b3c50ca02e96d15a11f.json b/build/.cmake/api/v1/reply/target-ALL_BUILD-MinSizeRel-b312317e09460fad670b.json similarity index 100% rename from build/.cmake/api/v1/reply/target-ALL_BUILD-RelWithDebInfo-1b3c50ca02e96d15a11f.json rename to build/.cmake/api/v1/reply/target-ALL_BUILD-MinSizeRel-b312317e09460fad670b.json index a1685bc..0994bad 100644 --- a/build/.cmake/api/v1/reply/target-ALL_BUILD-RelWithDebInfo-1b3c50ca02e96d15a11f.json +++ b/build/.cmake/api/v1/reply/target-ALL_BUILD-MinSizeRel-b312317e09460fad670b.json @@ -21,14 +21,14 @@ }, "dependencies" : [ + { + "id" : "HydraEngine::@fafd37b19aacd4c483ed" + }, { "id" : "ZERO_CHECK::@6890427a1f51a3e7e1df" }, { "id" : "HydraClient::@6890427a1f51a3e7e1df" - }, - { - "id" : "HydraEngine::@fafd37b19aacd4c483ed" } ], "folder" : @@ -41,10 +41,10 @@ "orderDependencies" : [ { - "id" : "HydraClient::@6890427a1f51a3e7e1df" + "id" : "HydraEngine::@fafd37b19aacd4c483ed" }, { - "id" : "HydraEngine::@fafd37b19aacd4c483ed" + "id" : "HydraClient::@6890427a1f51a3e7e1df" } ], "paths" : diff --git a/build/.cmake/api/v1/reply/target-ALL_BUILD-Release-21126e6f26f8151b82a1.json b/build/.cmake/api/v1/reply/target-ALL_BUILD-RelWithDebInfo-30097c8e6651db3aff43.json similarity index 100% rename from build/.cmake/api/v1/reply/target-ALL_BUILD-Release-21126e6f26f8151b82a1.json rename to build/.cmake/api/v1/reply/target-ALL_BUILD-RelWithDebInfo-30097c8e6651db3aff43.json index 3293cbc..9fd930e 100644 --- a/build/.cmake/api/v1/reply/target-ALL_BUILD-Release-21126e6f26f8151b82a1.json +++ b/build/.cmake/api/v1/reply/target-ALL_BUILD-RelWithDebInfo-30097c8e6651db3aff43.json @@ -22,10 +22,10 @@ "dependencies" : [ { - "id" : "ZERO_CHECK::@6890427a1f51a3e7e1df" + "id" : "HydraEngine::@fafd37b19aacd4c483ed" }, { - "id" : "HydraEngine::@fafd37b19aacd4c483ed" + "id" : "ZERO_CHECK::@6890427a1f51a3e7e1df" } ], "folder" : diff --git a/build/.cmake/api/v1/reply/target-ALL_BUILD-Debug-1b3c50ca02e96d15a11f.json b/build/.cmake/api/v1/reply/target-ALL_BUILD-RelWithDebInfo-b312317e09460fad670b.json similarity index 100% rename from build/.cmake/api/v1/reply/target-ALL_BUILD-Debug-1b3c50ca02e96d15a11f.json rename to build/.cmake/api/v1/reply/target-ALL_BUILD-RelWithDebInfo-b312317e09460fad670b.json index a1685bc..0994bad 100644 --- a/build/.cmake/api/v1/reply/target-ALL_BUILD-Debug-1b3c50ca02e96d15a11f.json +++ b/build/.cmake/api/v1/reply/target-ALL_BUILD-RelWithDebInfo-b312317e09460fad670b.json @@ -21,14 +21,14 @@ }, "dependencies" : [ + { + "id" : "HydraEngine::@fafd37b19aacd4c483ed" + }, { "id" : "ZERO_CHECK::@6890427a1f51a3e7e1df" }, { "id" : "HydraClient::@6890427a1f51a3e7e1df" - }, - { - "id" : "HydraEngine::@fafd37b19aacd4c483ed" } ], "folder" : @@ -41,10 +41,10 @@ "orderDependencies" : [ { - "id" : "HydraClient::@6890427a1f51a3e7e1df" + "id" : "HydraEngine::@fafd37b19aacd4c483ed" }, { - "id" : "HydraEngine::@fafd37b19aacd4c483ed" + "id" : "HydraClient::@6890427a1f51a3e7e1df" } ], "paths" : diff --git a/build/.cmake/api/v1/reply/target-ALL_BUILD-Debug-21126e6f26f8151b82a1.json b/build/.cmake/api/v1/reply/target-ALL_BUILD-Release-30097c8e6651db3aff43.json similarity index 100% rename from build/.cmake/api/v1/reply/target-ALL_BUILD-Debug-21126e6f26f8151b82a1.json rename to build/.cmake/api/v1/reply/target-ALL_BUILD-Release-30097c8e6651db3aff43.json index 3293cbc..9fd930e 100644 --- a/build/.cmake/api/v1/reply/target-ALL_BUILD-Debug-21126e6f26f8151b82a1.json +++ b/build/.cmake/api/v1/reply/target-ALL_BUILD-Release-30097c8e6651db3aff43.json @@ -22,10 +22,10 @@ "dependencies" : [ { - "id" : "ZERO_CHECK::@6890427a1f51a3e7e1df" + "id" : "HydraEngine::@fafd37b19aacd4c483ed" }, { - "id" : "HydraEngine::@fafd37b19aacd4c483ed" + "id" : "ZERO_CHECK::@6890427a1f51a3e7e1df" } ], "folder" : diff --git a/build/.cmake/api/v1/reply/target-ALL_BUILD-Release-1b3c50ca02e96d15a11f.json b/build/.cmake/api/v1/reply/target-ALL_BUILD-Release-b312317e09460fad670b.json similarity index 100% rename from build/.cmake/api/v1/reply/target-ALL_BUILD-Release-1b3c50ca02e96d15a11f.json rename to build/.cmake/api/v1/reply/target-ALL_BUILD-Release-b312317e09460fad670b.json index a1685bc..0994bad 100644 --- a/build/.cmake/api/v1/reply/target-ALL_BUILD-Release-1b3c50ca02e96d15a11f.json +++ b/build/.cmake/api/v1/reply/target-ALL_BUILD-Release-b312317e09460fad670b.json @@ -21,14 +21,14 @@ }, "dependencies" : [ + { + "id" : "HydraEngine::@fafd37b19aacd4c483ed" + }, { "id" : "ZERO_CHECK::@6890427a1f51a3e7e1df" }, { "id" : "HydraClient::@6890427a1f51a3e7e1df" - }, - { - "id" : "HydraEngine::@fafd37b19aacd4c483ed" } ], "folder" : @@ -41,10 +41,10 @@ "orderDependencies" : [ { - "id" : "HydraClient::@6890427a1f51a3e7e1df" + "id" : "HydraEngine::@fafd37b19aacd4c483ed" }, { - "id" : "HydraEngine::@fafd37b19aacd4c483ed" + "id" : "HydraClient::@6890427a1f51a3e7e1df" } ], "paths" : diff --git a/build/.cmake/api/v1/reply/target-HydraClient-Debug-ccca9689ebe6b19fe65a.json b/build/.cmake/api/v1/reply/target-HydraClient-Debug-78ce361b98c7c89e9629.json similarity index 100% rename from build/.cmake/api/v1/reply/target-HydraClient-Debug-ccca9689ebe6b19fe65a.json rename to build/.cmake/api/v1/reply/target-HydraClient-Debug-78ce361b98c7c89e9629.json index c7b1ff5..47646bd 100644 --- a/build/.cmake/api/v1/reply/target-HydraClient-Debug-ccca9689ebe6b19fe65a.json +++ b/build/.cmake/api/v1/reply/target-HydraClient-Debug-78ce361b98c7c89e9629.json @@ -106,12 +106,12 @@ ], "dependencies" : [ - { - "id" : "ZERO_CHECK::@6890427a1f51a3e7e1df" - }, { "backtrace" : 2, "id" : "HydraEngine::@fafd37b19aacd4c483ed" + }, + { + "id" : "ZERO_CHECK::@6890427a1f51a3e7e1df" } ], "id" : "HydraClient::@6890427a1f51a3e7e1df", diff --git a/build/.cmake/api/v1/reply/target-HydraClient-MinSizeRel-707588ed524688a0f034.json b/build/.cmake/api/v1/reply/target-HydraClient-MinSizeRel-0b1754e9511a8dea2861.json similarity index 100% rename from build/.cmake/api/v1/reply/target-HydraClient-MinSizeRel-707588ed524688a0f034.json rename to build/.cmake/api/v1/reply/target-HydraClient-MinSizeRel-0b1754e9511a8dea2861.json index 9381a96..14caed4 100644 --- a/build/.cmake/api/v1/reply/target-HydraClient-MinSizeRel-707588ed524688a0f034.json +++ b/build/.cmake/api/v1/reply/target-HydraClient-MinSizeRel-0b1754e9511a8dea2861.json @@ -106,12 +106,12 @@ ], "dependencies" : [ - { - "id" : "ZERO_CHECK::@6890427a1f51a3e7e1df" - }, { "backtrace" : 2, "id" : "HydraEngine::@fafd37b19aacd4c483ed" + }, + { + "id" : "ZERO_CHECK::@6890427a1f51a3e7e1df" } ], "id" : "HydraClient::@6890427a1f51a3e7e1df", diff --git a/build/.cmake/api/v1/reply/target-HydraClient-RelWithDebInfo-a4b1a5ac731bdcc03733.json b/build/.cmake/api/v1/reply/target-HydraClient-RelWithDebInfo-19110864938462bdea5b.json similarity index 100% rename from build/.cmake/api/v1/reply/target-HydraClient-RelWithDebInfo-a4b1a5ac731bdcc03733.json rename to build/.cmake/api/v1/reply/target-HydraClient-RelWithDebInfo-19110864938462bdea5b.json index 0e5cae5..b28d9b3 100644 --- a/build/.cmake/api/v1/reply/target-HydraClient-RelWithDebInfo-a4b1a5ac731bdcc03733.json +++ b/build/.cmake/api/v1/reply/target-HydraClient-RelWithDebInfo-19110864938462bdea5b.json @@ -106,12 +106,12 @@ ], "dependencies" : [ - { - "id" : "ZERO_CHECK::@6890427a1f51a3e7e1df" - }, { "backtrace" : 2, "id" : "HydraEngine::@fafd37b19aacd4c483ed" + }, + { + "id" : "ZERO_CHECK::@6890427a1f51a3e7e1df" } ], "id" : "HydraClient::@6890427a1f51a3e7e1df", diff --git a/build/.cmake/api/v1/reply/target-HydraClient-Release-f300bf694420197200c5.json b/build/.cmake/api/v1/reply/target-HydraClient-Release-5f750d1feb1d099be72b.json similarity index 100% rename from build/.cmake/api/v1/reply/target-HydraClient-Release-f300bf694420197200c5.json rename to build/.cmake/api/v1/reply/target-HydraClient-Release-5f750d1feb1d099be72b.json index 331eab5..f63d5ce 100644 --- a/build/.cmake/api/v1/reply/target-HydraClient-Release-f300bf694420197200c5.json +++ b/build/.cmake/api/v1/reply/target-HydraClient-Release-5f750d1feb1d099be72b.json @@ -106,12 +106,12 @@ ], "dependencies" : [ - { - "id" : "ZERO_CHECK::@6890427a1f51a3e7e1df" - }, { "backtrace" : 2, "id" : "HydraEngine::@fafd37b19aacd4c483ed" + }, + { + "id" : "ZERO_CHECK::@6890427a1f51a3e7e1df" } ], "id" : "HydraClient::@6890427a1f51a3e7e1df", diff --git a/build/.cmake/api/v1/reply/target-HydraEngine-Debug-83a9a5954d1e93fe25f7.json b/build/.cmake/api/v1/reply/target-HydraEngine-Debug-ef5f850986821f3b6f03.json similarity index 98% rename from build/.cmake/api/v1/reply/target-HydraEngine-Debug-83a9a5954d1e93fe25f7.json rename to build/.cmake/api/v1/reply/target-HydraEngine-Debug-ef5f850986821f3b6f03.json index 35ae5cd..273767e 100644 --- a/build/.cmake/api/v1/reply/target-HydraEngine-Debug-83a9a5954d1e93fe25f7.json +++ b/build/.cmake/api/v1/reply/target-HydraEngine-Debug-ef5f850986821f3b6f03.json @@ -202,17 +202,17 @@ 21, 23, 25, - 28, - 31, - 34, - 37, + 27, + 30, + 33, + 36, 39, - 43, + 41, 45, - 49, - 53, + 47, + 51, 55, - 67, + 57, 69, 71, 73, @@ -225,8 +225,8 @@ 87, 89, 91, - 94, - 97, + 93, + 96, 99, 101, 103, @@ -236,7 +236,8 @@ 111, 113, 115, - 119 + 117, + 121 ] } ], @@ -326,17 +327,17 @@ 21, 23, 25, - 28, - 31, - 34, - 37, + 27, + 30, + 33, + 36, 39, - 43, + 41, 45, - 49, - 53, + 47, + 51, 55, - 67, + 57, 69, 71, 73, @@ -349,8 +350,8 @@ 87, 89, 91, - 94, - 97, + 93, + 96, 99, 101, 103, @@ -360,7 +361,8 @@ 111, 113, 115, - 119 + 117, + 121 ] }, { @@ -382,27 +384,26 @@ 22, 24, 26, - 27, + 28, 29, - 30, + 31, 32, - 33, + 34, 35, - 36, + 37, 38, 40, - 41, 42, + 43, 44, 46, - 47, 48, + 49, 50, - 51, 52, + 53, 54, 56, - 57, 58, 59, 60, @@ -412,6 +413,7 @@ 64, 65, 66, + 67, 68, 70, 72, @@ -425,9 +427,9 @@ 88, 90, 92, - 93, + 94, 95, - 96, + 97, 98, 100, 102, @@ -438,9 +440,10 @@ 112, 114, 116, - 117, 118, - 120 + 119, + 120, + 122 ] } ], @@ -582,6 +585,17 @@ "path" : "HydraEngine/source/actor/HydraTestCubeActor.h", "sourceGroupIndex" : 1 }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "HydraEngine/source/actor/HydraTestLightActor.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "path" : "HydraEngine/source/actor/HydraTestLightActor.h", + "sourceGroupIndex" : 1 + }, { "backtrace" : 1, "compileGroupIndex" : 0, diff --git a/build/.cmake/api/v1/reply/target-HydraEngine-MinSizeRel-c9a2609fa141f4bef8ca.json b/build/.cmake/api/v1/reply/target-HydraEngine-MinSizeRel-585ede66b397f0d9fbdf.json similarity index 98% rename from build/.cmake/api/v1/reply/target-HydraEngine-MinSizeRel-c9a2609fa141f4bef8ca.json rename to build/.cmake/api/v1/reply/target-HydraEngine-MinSizeRel-585ede66b397f0d9fbdf.json index 2d1d285..47d0914 100644 --- a/build/.cmake/api/v1/reply/target-HydraEngine-MinSizeRel-c9a2609fa141f4bef8ca.json +++ b/build/.cmake/api/v1/reply/target-HydraEngine-MinSizeRel-585ede66b397f0d9fbdf.json @@ -202,17 +202,17 @@ 21, 23, 25, - 28, - 31, - 34, - 37, + 27, + 30, + 33, + 36, 39, - 43, + 41, 45, - 49, - 53, + 47, + 51, 55, - 67, + 57, 69, 71, 73, @@ -225,8 +225,8 @@ 87, 89, 91, - 94, - 97, + 93, + 96, 99, 101, 103, @@ -236,7 +236,8 @@ 111, 113, 115, - 119 + 117, + 121 ] } ], @@ -326,17 +327,17 @@ 21, 23, 25, - 28, - 31, - 34, - 37, + 27, + 30, + 33, + 36, 39, - 43, + 41, 45, - 49, - 53, + 47, + 51, 55, - 67, + 57, 69, 71, 73, @@ -349,8 +350,8 @@ 87, 89, 91, - 94, - 97, + 93, + 96, 99, 101, 103, @@ -360,7 +361,8 @@ 111, 113, 115, - 119 + 117, + 121 ] }, { @@ -382,27 +384,26 @@ 22, 24, 26, - 27, + 28, 29, - 30, + 31, 32, - 33, + 34, 35, - 36, + 37, 38, 40, - 41, 42, + 43, 44, 46, - 47, 48, + 49, 50, - 51, 52, + 53, 54, 56, - 57, 58, 59, 60, @@ -412,6 +413,7 @@ 64, 65, 66, + 67, 68, 70, 72, @@ -425,9 +427,9 @@ 88, 90, 92, - 93, + 94, 95, - 96, + 97, 98, 100, 102, @@ -438,9 +440,10 @@ 112, 114, 116, - 117, 118, - 120 + 119, + 120, + 122 ] } ], @@ -582,6 +585,17 @@ "path" : "HydraEngine/source/actor/HydraTestCubeActor.h", "sourceGroupIndex" : 1 }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "HydraEngine/source/actor/HydraTestLightActor.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "path" : "HydraEngine/source/actor/HydraTestLightActor.h", + "sourceGroupIndex" : 1 + }, { "backtrace" : 1, "compileGroupIndex" : 0, diff --git a/build/.cmake/api/v1/reply/target-HydraEngine-RelWithDebInfo-297d246892e18b3f6177.json b/build/.cmake/api/v1/reply/target-HydraEngine-RelWithDebInfo-78d0f79bf6771d67bc77.json similarity index 98% rename from build/.cmake/api/v1/reply/target-HydraEngine-RelWithDebInfo-297d246892e18b3f6177.json rename to build/.cmake/api/v1/reply/target-HydraEngine-RelWithDebInfo-78d0f79bf6771d67bc77.json index e5eef44..097d711 100644 --- a/build/.cmake/api/v1/reply/target-HydraEngine-RelWithDebInfo-297d246892e18b3f6177.json +++ b/build/.cmake/api/v1/reply/target-HydraEngine-RelWithDebInfo-78d0f79bf6771d67bc77.json @@ -202,17 +202,17 @@ 21, 23, 25, - 28, - 31, - 34, - 37, + 27, + 30, + 33, + 36, 39, - 43, + 41, 45, - 49, - 53, + 47, + 51, 55, - 67, + 57, 69, 71, 73, @@ -225,8 +225,8 @@ 87, 89, 91, - 94, - 97, + 93, + 96, 99, 101, 103, @@ -236,7 +236,8 @@ 111, 113, 115, - 119 + 117, + 121 ] } ], @@ -326,17 +327,17 @@ 21, 23, 25, - 28, - 31, - 34, - 37, + 27, + 30, + 33, + 36, 39, - 43, + 41, 45, - 49, - 53, + 47, + 51, 55, - 67, + 57, 69, 71, 73, @@ -349,8 +350,8 @@ 87, 89, 91, - 94, - 97, + 93, + 96, 99, 101, 103, @@ -360,7 +361,8 @@ 111, 113, 115, - 119 + 117, + 121 ] }, { @@ -382,27 +384,26 @@ 22, 24, 26, - 27, + 28, 29, - 30, + 31, 32, - 33, + 34, 35, - 36, + 37, 38, 40, - 41, 42, + 43, 44, 46, - 47, 48, + 49, 50, - 51, 52, + 53, 54, 56, - 57, 58, 59, 60, @@ -412,6 +413,7 @@ 64, 65, 66, + 67, 68, 70, 72, @@ -425,9 +427,9 @@ 88, 90, 92, - 93, + 94, 95, - 96, + 97, 98, 100, 102, @@ -438,9 +440,10 @@ 112, 114, 116, - 117, 118, - 120 + 119, + 120, + 122 ] } ], @@ -582,6 +585,17 @@ "path" : "HydraEngine/source/actor/HydraTestCubeActor.h", "sourceGroupIndex" : 1 }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "HydraEngine/source/actor/HydraTestLightActor.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "path" : "HydraEngine/source/actor/HydraTestLightActor.h", + "sourceGroupIndex" : 1 + }, { "backtrace" : 1, "compileGroupIndex" : 0, diff --git a/build/.cmake/api/v1/reply/target-HydraEngine-Release-fd732da53ad87180e5c2.json b/build/.cmake/api/v1/reply/target-HydraEngine-Release-b6b86a0ceaecf84fa1f5.json similarity index 98% rename from build/.cmake/api/v1/reply/target-HydraEngine-Release-fd732da53ad87180e5c2.json rename to build/.cmake/api/v1/reply/target-HydraEngine-Release-b6b86a0ceaecf84fa1f5.json index c33451a..2764237 100644 --- a/build/.cmake/api/v1/reply/target-HydraEngine-Release-fd732da53ad87180e5c2.json +++ b/build/.cmake/api/v1/reply/target-HydraEngine-Release-b6b86a0ceaecf84fa1f5.json @@ -202,17 +202,17 @@ 21, 23, 25, - 28, - 31, - 34, - 37, + 27, + 30, + 33, + 36, 39, - 43, + 41, 45, - 49, - 53, + 47, + 51, 55, - 67, + 57, 69, 71, 73, @@ -225,8 +225,8 @@ 87, 89, 91, - 94, - 97, + 93, + 96, 99, 101, 103, @@ -236,7 +236,8 @@ 111, 113, 115, - 119 + 117, + 121 ] } ], @@ -326,17 +327,17 @@ 21, 23, 25, - 28, - 31, - 34, - 37, + 27, + 30, + 33, + 36, 39, - 43, + 41, 45, - 49, - 53, + 47, + 51, 55, - 67, + 57, 69, 71, 73, @@ -349,8 +350,8 @@ 87, 89, 91, - 94, - 97, + 93, + 96, 99, 101, 103, @@ -360,7 +361,8 @@ 111, 113, 115, - 119 + 117, + 121 ] }, { @@ -382,27 +384,26 @@ 22, 24, 26, - 27, + 28, 29, - 30, + 31, 32, - 33, + 34, 35, - 36, + 37, 38, 40, - 41, 42, + 43, 44, 46, - 47, 48, + 49, 50, - 51, 52, + 53, 54, 56, - 57, 58, 59, 60, @@ -412,6 +413,7 @@ 64, 65, 66, + 67, 68, 70, 72, @@ -425,9 +427,9 @@ 88, 90, 92, - 93, + 94, 95, - 96, + 97, 98, 100, 102, @@ -438,9 +440,10 @@ 112, 114, 116, - 117, 118, - 120 + 119, + 120, + 122 ] } ], @@ -582,6 +585,17 @@ "path" : "HydraEngine/source/actor/HydraTestCubeActor.h", "sourceGroupIndex" : 1 }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "HydraEngine/source/actor/HydraTestLightActor.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "path" : "HydraEngine/source/actor/HydraTestLightActor.h", + "sourceGroupIndex" : 1 + }, { "backtrace" : 1, "compileGroupIndex" : 0, diff --git a/build/Debug/HydraClient.pdb b/build/Debug/HydraClient.pdb index f38cfd4..7757182 100644 Binary files a/build/Debug/HydraClient.pdb and b/build/Debug/HydraClient.pdb differ diff --git a/build/HydraClient.dir/Debug/HydraClient.ilk b/build/HydraClient.dir/Debug/HydraClient.ilk index cc5a74f..ed7520c 100644 Binary files a/build/HydraClient.dir/Debug/HydraClient.ilk and b/build/HydraClient.dir/Debug/HydraClient.ilk differ diff --git a/build/HydraClient.dir/Debug/vc143.pdb b/build/HydraClient.dir/Debug/vc143.pdb index 488ce1c..c6bd730 100644 Binary files a/build/HydraClient.dir/Debug/vc143.pdb and b/build/HydraClient.dir/Debug/vc143.pdb differ diff --git a/build/HydraEngine/Debug/HydraEngine.exp b/build/HydraEngine/Debug/HydraEngine.exp index 16cdf37..a91926a 100644 Binary files a/build/HydraEngine/Debug/HydraEngine.exp and b/build/HydraEngine/Debug/HydraEngine.exp differ diff --git a/build/HydraEngine/Debug/HydraEngine.pdb b/build/HydraEngine/Debug/HydraEngine.pdb index 82619e4..d61a270 100644 Binary files a/build/HydraEngine/Debug/HydraEngine.pdb and b/build/HydraEngine/Debug/HydraEngine.pdb differ diff --git a/build/HydraEngine/HydraEngine.dir/Debug/HydraEngine.ilk b/build/HydraEngine/HydraEngine.dir/Debug/HydraEngine.ilk index 0cbb6cc..58cac7a 100644 Binary files a/build/HydraEngine/HydraEngine.dir/Debug/HydraEngine.ilk and b/build/HydraEngine/HydraEngine.dir/Debug/HydraEngine.ilk differ diff --git a/build/HydraEngine/HydraEngine.dir/Debug/HydraEngine.tlog/CL.command.1.tlog b/build/HydraEngine/HydraEngine.dir/Debug/HydraEngine.tlog/CL.command.1.tlog index e94cd11..b29531a 100644 Binary files a/build/HydraEngine/HydraEngine.dir/Debug/HydraEngine.tlog/CL.command.1.tlog and b/build/HydraEngine/HydraEngine.dir/Debug/HydraEngine.tlog/CL.command.1.tlog differ diff --git a/build/HydraEngine/HydraEngine.dir/Debug/HydraEngine.tlog/CL.read.1.tlog b/build/HydraEngine/HydraEngine.dir/Debug/HydraEngine.tlog/CL.read.1.tlog index 639f544..e8c1f55 100644 Binary files a/build/HydraEngine/HydraEngine.dir/Debug/HydraEngine.tlog/CL.read.1.tlog and b/build/HydraEngine/HydraEngine.dir/Debug/HydraEngine.tlog/CL.read.1.tlog differ diff --git a/build/HydraEngine/HydraEngine.dir/Debug/HydraEngine.tlog/CL.write.1.tlog b/build/HydraEngine/HydraEngine.dir/Debug/HydraEngine.tlog/CL.write.1.tlog index c732b4b..120b225 100644 Binary files a/build/HydraEngine/HydraEngine.dir/Debug/HydraEngine.tlog/CL.write.1.tlog and b/build/HydraEngine/HydraEngine.dir/Debug/HydraEngine.tlog/CL.write.1.tlog differ diff --git a/build/HydraEngine/HydraEngine.dir/Debug/HydraEngine.tlog/Cl.items.tlog b/build/HydraEngine/HydraEngine.dir/Debug/HydraEngine.tlog/Cl.items.tlog index 13bf381..bd7932c 100644 --- a/build/HydraEngine/HydraEngine.dir/Debug/HydraEngine.tlog/Cl.items.tlog +++ b/build/HydraEngine/HydraEngine.dir/Debug/HydraEngine.tlog/Cl.items.tlog @@ -9,6 +9,7 @@ C:\Code\HydraV3\HydraEngine\source\actor\HydraPlayerActor.cpp;C:\Code\HydraV3\bu C:\Code\HydraV3\HydraEngine\source\actor\HydraPointLightActor.cpp;C:\Code\HydraV3\build\HydraEngine\HydraEngine.dir\Debug\HydraPointLightActor.obj C:\Code\HydraV3\HydraEngine\source\actor\HydraSpotLightActor.cpp;C:\Code\HydraV3\build\HydraEngine\HydraEngine.dir\Debug\HydraSpotLightActor.obj C:\Code\HydraV3\HydraEngine\source\actor\HydraTestCubeActor.cpp;C:\Code\HydraV3\build\HydraEngine\HydraEngine.dir\Debug\HydraTestCubeActor.obj +C:\Code\HydraV3\HydraEngine\source\actor\HydraTestLightActor.cpp;C:\Code\HydraV3\build\HydraEngine\HydraEngine.dir\Debug\HydraTestLightActor.obj C:\Code\HydraV3\HydraEngine\source\actor\HydraTextureDebugActor.cpp;C:\Code\HydraV3\build\HydraEngine\HydraEngine.dir\Debug\HydraTextureDebugActor.obj C:\Code\HydraV3\HydraEngine\source\buffer\HydraBufferManager.cpp;C:\Code\HydraV3\build\HydraEngine\HydraEngine.dir\Debug\HydraBufferManager.obj C:\Code\HydraV3\HydraEngine\source\buffer\HydraLightBufferManager.cpp;C:\Code\HydraV3\build\HydraEngine\HydraEngine.dir\Debug\HydraLightBufferManager.obj diff --git a/build/HydraEngine/HydraEngine.dir/Debug/HydraEngine.tlog/link.command.1.tlog b/build/HydraEngine/HydraEngine.dir/Debug/HydraEngine.tlog/link.command.1.tlog index 28c9b3a..d93f506 100644 Binary files a/build/HydraEngine/HydraEngine.dir/Debug/HydraEngine.tlog/link.command.1.tlog and b/build/HydraEngine/HydraEngine.dir/Debug/HydraEngine.tlog/link.command.1.tlog differ diff --git a/build/HydraEngine/HydraEngine.dir/Debug/HydraEngine.tlog/link.read.1.tlog b/build/HydraEngine/HydraEngine.dir/Debug/HydraEngine.tlog/link.read.1.tlog index e2a7b6c..1d80899 100644 Binary files a/build/HydraEngine/HydraEngine.dir/Debug/HydraEngine.tlog/link.read.1.tlog and b/build/HydraEngine/HydraEngine.dir/Debug/HydraEngine.tlog/link.read.1.tlog differ diff --git a/build/HydraEngine/HydraEngine.dir/Debug/HydraEngine.tlog/link.secondary.1.tlog b/build/HydraEngine/HydraEngine.dir/Debug/HydraEngine.tlog/link.secondary.1.tlog index 470b436..2d29158 100644 --- a/build/HydraEngine/HydraEngine.dir/Debug/HydraEngine.tlog/link.secondary.1.tlog +++ b/build/HydraEngine/HydraEngine.dir/Debug/HydraEngine.tlog/link.secondary.1.tlog @@ -1,4 +1,4 @@ -^C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\CMAKECXXCOMPILERID.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRAACTOR.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRAACTORMANAGER.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRABUFFERMANAGER.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRACAMERA.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRADEFERREDPIPELINE.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRADIRECTIONALLIGHTACTOR.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRADIRECTIONALSHADOWSOURCESYSTEM.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRAECS.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRAENGINE.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRAFORWARDPIPELINE.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRAGAMEPROXY.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRAGLTFACTOR.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRAGLTFLOADER.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRAINPUTMANAGER.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRALIGHTBUFFERMANAGER.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRALIGHTSYSTEM.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRAMATERIALBUFFERMANAGER.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRAMATERIALSYSTEM.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRAMESHMANAGER.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRAMESHSYSTEM.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRAOBJECT.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRAOUTPUTACTOR.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRAPIPELINE.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRAPLANEACTOR.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRAPLAYERACTOR.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRAPOINTLIGHTACTOR.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRAPOINTSHADOWSOURCESYSTEM.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRARENDERER.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRARENDERSTAGE.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRARENDERSYSTEM.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRASHADOWBUFFERMANAGER.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRASHADOWPIPELINE.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRASPOTLIGHTACTOR.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRASPOTSHADOWSOURCESYSTEM.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRASYSTEM.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRASYSTEMMANAGER.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRATASK.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRATASKBARRIER.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRATASKSCHEDULER.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRATESTCUBEACTOR.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRATEXTUREBUFFERMANAGER.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRATEXTUREDEBUGACTOR.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRATHREAD.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRATRANSFORMSYSTEM.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRAVERTEXBUFFERMANAGER.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRAWINDOWMANAGER.OBJ +^C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\CMAKECXXCOMPILERID.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRAACTOR.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRAACTORMANAGER.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRABUFFERMANAGER.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRACAMERA.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRADEFERREDPIPELINE.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRADIRECTIONALLIGHTACTOR.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRADIRECTIONALSHADOWSOURCESYSTEM.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRAECS.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRAENGINE.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRAFORWARDPIPELINE.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRAGAMEPROXY.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRAGLTFACTOR.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRAGLTFLOADER.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRAINPUTMANAGER.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRALIGHTBUFFERMANAGER.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRALIGHTSYSTEM.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRAMATERIALBUFFERMANAGER.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRAMATERIALSYSTEM.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRAMESHMANAGER.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRAMESHSYSTEM.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRAOBJECT.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRAOUTPUTACTOR.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRAPIPELINE.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRAPLANEACTOR.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRAPLAYERACTOR.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRAPOINTLIGHTACTOR.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRAPOINTSHADOWSOURCESYSTEM.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRARENDERER.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRARENDERSTAGE.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRARENDERSYSTEM.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRASHADOWBUFFERMANAGER.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRASHADOWPIPELINE.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRASPOTLIGHTACTOR.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRASPOTSHADOWSOURCESYSTEM.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRASYSTEM.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRASYSTEMMANAGER.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRATASK.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRATASKBARRIER.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRATASKSCHEDULER.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRATESTCUBEACTOR.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRATESTLIGHTACTOR.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRATEXTUREBUFFERMANAGER.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRATEXTUREDEBUGACTOR.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRATHREAD.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRATRANSFORMSYSTEM.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRAVERTEXBUFFERMANAGER.OBJ|C:\CODE\HYDRAV3\BUILD\HYDRAENGINE\HYDRAENGINE.DIR\DEBUG\HYDRAWINDOWMANAGER.OBJ C:\Code\HydraV3\build\HydraEngine\Debug\HydraEngine.lib C:\Code\HydraV3\build\HydraEngine\Debug\HydraEngine.EXP C:\Code\HydraV3\build\HydraEngine\HydraEngine.dir\Debug\HydraEngine.ilk diff --git a/build/HydraEngine/HydraEngine.dir/Debug/HydraEngine.tlog/link.write.1.tlog b/build/HydraEngine/HydraEngine.dir/Debug/HydraEngine.tlog/link.write.1.tlog index d82dd7e..cddea41 100644 Binary files a/build/HydraEngine/HydraEngine.dir/Debug/HydraEngine.tlog/link.write.1.tlog and b/build/HydraEngine/HydraEngine.dir/Debug/HydraEngine.tlog/link.write.1.tlog differ diff --git a/build/HydraEngine/HydraEngine.dir/Debug/vc143.pdb b/build/HydraEngine/HydraEngine.dir/Debug/vc143.pdb index 6553215..f1a020c 100644 Binary files a/build/HydraEngine/HydraEngine.dir/Debug/vc143.pdb and b/build/HydraEngine/HydraEngine.dir/Debug/vc143.pdb differ diff --git a/build/HydraEngine/HydraEngine.vcxproj b/build/HydraEngine/HydraEngine.vcxproj index c903cb7..a271b18 100644 --- a/build/HydraEngine/HydraEngine.vcxproj +++ b/build/HydraEngine/HydraEngine.vcxproj @@ -450,6 +450,8 @@ if %errorlevel% neq 0 goto :VCEnd + + diff --git a/build/HydraEngine/HydraEngine.vcxproj.filters b/build/HydraEngine/HydraEngine.vcxproj.filters index 3a0c7c0..68d8044 100644 --- a/build/HydraEngine/HydraEngine.vcxproj.filters +++ b/build/HydraEngine/HydraEngine.vcxproj.filters @@ -34,6 +34,9 @@ Source Files + + Source Files + Source Files @@ -186,6 +189,9 @@ Header Files + + Header Files + Header Files diff --git a/build/linkerrors.txt b/build/linkerrors.txt index 9580a6c..3361470 100644 --- a/build/linkerrors.txt +++ b/build/linkerrors.txt @@ -1,11 +1,8 @@ ================================================================================ Linker Errors -Generated: 2026-08-15T14:34:09.799Z -Total Errors: 2 +Generated: 2026-08-17T09:12:08.024Z +Total Errors: 1 ================================================================================ -[LNK2019] (MSVC) -unresolved external symbol "public: unsigned int __cdecl HydraTextureBufferManager::CreateCubemapTexture(class std::basic_string,class std::allocator >,unsigned int,unsigned int,unsigned int,unsigned int,unsigned int)" (?CreateCubemapTexture@HydraTextureBufferManager@@QEAAIV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IIIII@Z) referenced in function "public: virtual void __cdecl HydraCreateCubemapShadowFrameBuffer::Process(void)" (?Process@HydraCreateCubemapShadowFrameBuffer@@UEAAXXZ) [C:\Code\HydraV3\build\HydraEngine\HydraEngine.vcxproj] - -[LNK1120] (MSVC) -1 unresolved externals [C:\Code\HydraV3\build\HydraEngine\HydraEngine.vcxproj] +[LNK1201] (MSVC) +error writing to program database 'C:\Code\HydraV3\build\HydraEngine\Debug\HydraEngine.pdb'; check for insufficient disk space, invalid path, or insufficient privilege [C:\Code\HydraV3\build\HydraEngine\HydraEngine.vcxproj]