43 lines
1.4 KiB
C++
43 lines
1.4 KiB
C++
#include "HydraDirectionalLightActor.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 "../ecs/components/HydraLightComponent.h"
|
|
#include "../ecs/components/HydraDirectionalShadowSourceComponent.h"
|
|
|
|
#include "../buffer/HydraLightBufferManager.h"
|
|
#include "../buffer/HydraLightBuffer.h"
|
|
|
|
|
|
|
|
|
|
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.light_type = static_cast<uint32_t>(HYDRA_LIGHT_TYPE::HYDRA_LIGHT_DIRECTIONAL);
|
|
light_comp.entity_id = GetID();
|
|
light_comp.shadow_caster =1;
|
|
|
|
ecs->AddComponent<HydraLightComponent>(GetID(), light_comp);
|
|
|
|
HydraPositionComponent position_component = {};
|
|
ecs->AddComponent<HydraPositionComponent>(GetID(), position_component);
|
|
|
|
HydraDirectionalShadowSourceComponent shadow_component = {};
|
|
ecs->AddComponent<HydraDirectionalShadowSourceComponent>(GetID(), shadow_component);
|
|
}
|
|
|
|
void HydraDirectionalLightActor::Destroy()
|
|
{
|
|
|
|
}
|