1
以下のように、新しいプロジェクトを開始するときにcodeblocksによって提供されるデフォルトのテンプレートを使用していても、プロジェクトでコードブロックを使用してGLFWでデプステストを行うことはできません。GLFW/OpenGLデプステストが動作しないようです
私は何か間違ったことをしているに違いないが、私はそれを見つけることができなかったことを知っているので、どんな助けもありがたいです。 GLFW2 documentation(強調鉱山)から
#include <GL/glfw.h>
int main()
{
int width, height;
int frame = 0;
bool running = true;
glfwInit();
if(!glfwOpenWindow(512, 512, 0, 0, 0, 0, 0, 0, GLFW_WINDOW))
{
glfwTerminate();
return 0;
}
glfwSetWindowTitle("GLFW Application");
glEnable(GL_DEPTH_TEST);
while(running)
{
frame++;
glfwGetWindowSize(&width, &height);
height = height > 0 ? height : 1;
glViewport(0, 0, width, height);
glClearColor(0.0f, 0.0f, 0.0f, 0.0f);
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
gluPerspective(65.0f, (GLfloat)width/(GLfloat)height, 1.0f, 100.0f);
// Draw some rotating garbage
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
gluLookAt(0.0f, -10.0f, 0.0f,
0.0f, 0.0f, 0.0f,
0.0f, 0.0f, 1.0f);
//glTranslatef(1.0f, 1.0f, 0.0f);
glRotatef(frame, 0.25f, 1.0f, 0.75f);
glBegin(GL_TRIANGLES);
glColor3f(0.1f, 0.0f, 0.0f);
glVertex3f(0.0f, 3.0f, -4.0f);
glColor3f(0.0f, 1.0f, 0.0f);
glVertex3f(3.0f, -2.0f, -4.0f);
glColor3f(0.0f, 0.0f, 1.0f);
glVertex3f(-3.0f, -2.0f, -4.0f);
glEnd();
glBegin(GL_TRIANGLES);
glColor3f(0.0f, 0.1f, 0.0f);
glVertex3f(0.0f, 3.0f, -3.0f);
glColor3f(0.0f, 0.0f, 1.0f);
glVertex3f(3.0f, -2.0f, -2.0f);
glColor3f(1.0f, 0.0f, 0.0f);
glVertex3f(-3.0f, -2.0f, 2.0f);
glEnd();
glfwSwapBuffers();
// exit if ESC was pressed or window was closed
running = !glfwGetKey(GLFW_KEY_ESC) && glfwGetWindowParam(GLFW_OPENED);
}
glfwTerminate();
return 0;
}
ありがとうございます、使用する深さビットの推奨数は何ですか? 16または24? – Whaill
@Whaill:[GLFW3 docs](http://www.glfw.org/docs/latest/window_guide.html)では、 'GLFW_DEPTH_BITS'のデフォルトは' 24'であり、私にとっては妥当であると言います。 – genpfault