#pragma once #include "bsp.h" struct EdgeData { int edgeIndex = 0; const edge_t* edge = nullptr; std::vector faces; bool isSharpEdge = false; }; unsigned char sample_lightmap(const world_t* world, const face_t* face, const BoundBox& bounds, const Vec3& point); void export_lightmap(const world_t* world, const face_t* face, const BoundBox& bounds, int faceIdx); std::unordered_map analyze_edges(const world_t* world); unsigned char compute_faceVertex_light(const world_t* world, const face_t* face, unsigned short vertexIndex, const std::unordered_map faceBounds, const std::unordered_map& edgeData);