Дополнение для плоской поверхности

This commit is contained in:
parent a2a4097a20
commit 0703da0f1f
1 changed files with 24 additions and 1 deletions

View File

@ -356,13 +356,35 @@ int main(void)
rectangle.material.ka = {0.05, 0.05, 0.05};
rectangle.material.kd = {1, 1, 1};
// Текстуры для прямоугольника
Texture rectangle_diffuse(TEX_DIFFUSE, "../resources/textures/rekovalev_diffusemap.png");
rectangle.set_texture(rectangle_diffuse);
Texture rectangle_normal(TEX_NORMAL, "../resources/textures/rekovalev_normalmap.png");
rectangle.set_texture(rectangle_normal);
Texture rectangle_heights(TEX_HEIGHTS, "../resources/textures/rekovalev_bumpmap.png");
rectangle.set_texture(rectangle_heights);
// Текстурные координаты
glm::vec2 rectangle_texCoord[] = { { 1.0f, 0.0f }
, { 1.0f, 1.0f }
, { 0.0f, 1.0f }
, { 0.0f, 0.0f }
};
rectangle.load_texCoords(rectangle_texCoord, sizeof(rectangle_texCoord)/sizeof(glm::vec2));
// Касательные и бикасательные векторы
glm::vec3 rectangle_tangent[4], rectangle_bitangent[4];
calc_tb(rectangle_indices, 6, rectangle_verticies, rectangle_texCoord, rectangle_tangent, rectangle_bitangent);
rectangle.load_tangent(rectangle_tangent, 4);
rectangle.load_bitangent(rectangle_bitangent, 4);
// Шейдер для рисования отладочных лампочек
ShaderProgram bulbShader;
// Загрузка и компиляция шейдеров
bulbShader.load(GL_VERTEX_SHADER, "shaders/bulb.vert");
bulbShader.load(GL_FRAGMENT_SHADER, "shaders/bulb.frag");
bulbShader.link();
// Вершины для скайбокса
glm::vec3 skybox_verticies[] = {
{-1.0f, 1.0f, -1.0f},
@ -407,6 +429,7 @@ int main(void)
{-1.0f, -1.0f, 1.0f},
{ 1.0f, -1.0f, 1.0f}
};
// Модель скайбокса
Model skybox;
skybox.load_verteces(skybox_verticies, sizeof(skybox_verticies)/sizeof(glm::vec3));