Дополнение для плоской поверхности
This commit is contained in:
parent
a2a4097a20
commit
0703da0f1f
25
src/main.cpp
25
src/main.cpp
|
@ -356,13 +356,35 @@ int main(void)
|
||||||
rectangle.material.ka = {0.05, 0.05, 0.05};
|
rectangle.material.ka = {0.05, 0.05, 0.05};
|
||||||
rectangle.material.kd = {1, 1, 1};
|
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;
|
ShaderProgram bulbShader;
|
||||||
// Загрузка и компиляция шейдеров
|
// Загрузка и компиляция шейдеров
|
||||||
bulbShader.load(GL_VERTEX_SHADER, "shaders/bulb.vert");
|
bulbShader.load(GL_VERTEX_SHADER, "shaders/bulb.vert");
|
||||||
bulbShader.load(GL_FRAGMENT_SHADER, "shaders/bulb.frag");
|
bulbShader.load(GL_FRAGMENT_SHADER, "shaders/bulb.frag");
|
||||||
bulbShader.link();
|
bulbShader.link();
|
||||||
|
|
||||||
// Вершины для скайбокса
|
// Вершины для скайбокса
|
||||||
glm::vec3 skybox_verticies[] = {
|
glm::vec3 skybox_verticies[] = {
|
||||||
{-1.0f, 1.0f, -1.0f},
|
{-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},
|
||||||
{ 1.0f, -1.0f, 1.0f}
|
{ 1.0f, -1.0f, 1.0f}
|
||||||
};
|
};
|
||||||
|
|
||||||
// Модель скайбокса
|
// Модель скайбокса
|
||||||
Model skybox;
|
Model skybox;
|
||||||
skybox.load_verteces(skybox_verticies, sizeof(skybox_verticies)/sizeof(glm::vec3));
|
skybox.load_verteces(skybox_verticies, sizeof(skybox_verticies)/sizeof(glm::vec3));
|
||||||
|
|
Loading…
Reference in New Issue