Witam mam taki progrma jak poniżej i chciałbym aby outline był rysowany tak jak na poniższym rysunku cyzli żeby zawsze był widoczny na każdje krawędzi. Teraz nie widać go na przynajmnej jednej. Próbowałem wszystkich obcji z depth buffer i nic to nie dało dalej outline nie wyśiwietla się tak jak chce. Dlaczego tak jest?
U mnie wygląda to tak:
while (!glfwWindowShouldClose(window))
{
float currentFrame = glfwGetTime();
deltaTime = currentFrame - lastFrame;
lastFrame = currentFrame;
processInput(window);
glClearColor(0.2f, 0.3f, 0.3f, 1.0f);
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT | GL_STENCIL_BUFFER_BIT);
projection = glm::perspective(glm::radians(camera.Zoom), (float)SCR_WIDTH / (float)SCR_HEIGHT, 0.1f, 100.0f);
view = camera.GetViewMatrix();
glStencilFunc(GL_ALWAYS, 1, 0xFF);
glStencilMask(0xFF);
glm::vec3 pos(0.0f, 0.0f, -4.0f);
cube1.draw();
glStencilFunc(GL_NOTEQUAL, 1, 0xFF);
glStencilMask(0x00);
glDisable(GL_DEPTH_TEST);
specialShader.use();
cube1.scale(1.1f);
cube1.resetModelMatrix(true);
specialShader.setMat4("model", cube1.model);
specialShader.setMat4("view", view);
specialShader.setMat4("projection", projection);
cube1.drawWihtoutShader();
glStencilMask(0xFF);
glEnable(GL_DEPTH_TEST);
glfwSwapBuffers(window);
glfwPollEvents();
}