Матрицы проекции и вида для точечных источников
This commit is contained in:
@@ -18,6 +18,7 @@ struct LightData
|
||||
alignas(16) glm::vec3 color; // Цвет
|
||||
alignas(16) glm::vec3 attenuation; // Радиус действия источника, линейный и квадратичный коэф. угасания
|
||||
alignas(16) glm::vec4 direction_angle; // Направление и половинный угол освещенности
|
||||
alignas(16) glm::mat4 vp[6]; // Матрицы проекции и трансформации в пространство источника
|
||||
};
|
||||
|
||||
// Источник света
|
||||
@@ -58,6 +59,7 @@ class Light : public Node
|
||||
void toData(); // Преобразует информацию об источнике в структуру LightData
|
||||
|
||||
virtual void recalcMatrices(); // Метод пересчета матрицы трансформации по необходимости, должен сбрасывать флаг changed
|
||||
void recalcVP(); // Пересчитывает по необходимости матрицу вида-проекции
|
||||
|
||||
static GLuint count; // количество используемых источников (должно быть <= MAX_LIGHTS)
|
||||
static LightData data[MAX_LIGHTS]; // Массив данных по источникам света
|
||||
|
||||
Reference in New Issue
Block a user