3 #include "renderers/batching/renderable.h"
9 SHADOW_METHOD_STENCIL_DEPTH_FAIL,
10 SHADOW_METHOD_STENCIL_EXCLUSIVE_OR
19 SHADOW_RECEIVE_ALWAYS,
25 first(v1), second(v2) {
32 const smlt::Vec3& operator[](std::size_t i)
const {
38 throw std::out_of_range(
"Invalid edge index");
64 const std::vector<SilhouetteEdge>& edge_list();
67 void recalculate_silhouette();
68 void calculate_directional_silhouette();
69 void calculate_point_silhouette();
70 void calculate_spot_silhouette();
72 std::vector<SilhouetteEdge> edge_list_;
78 LightType light_type_;
95 void update(uint64_t frame_id,
const std::vector<Light>& lights,
const std::vector<RenderablePtr>& renderables);