В моей программе OpenGL я хочу сделать все в памяти. Я не хочу отображать данные в окне / экране. Поэтому я создал Frame Buffer. Следующее, что я хочу сделать, - визуализировать 3d модель для этого буфера кадров.
Я загрузил библиотеку Assimp для загрузки моделей. Я просто не уверен, как с этим работать. Похоже, он ожидает, что вы нарисуете все прямо в окне?
Все, что я хочу сейчас сделать, это загрузить и нарисовать эту модель в моем буфере кадров. Это в основном все.
Какие-либо советы / советы о том, как это легко сделать? Также приветствуются советы для другой библиотеки (которая может лучше соответствовать моим потребностям).
Мой код, в котором я хочу нарисовать мой буфер кадров:
glBindFramebufferEXT(GL_FRAMEBUFFER_EXT, fbo); // Bind our frame buffer for rendering
glPushAttrib(GL_VIEWPORT_BIT | GL_ENABLE_BIT); // Push our glEnable and glViewport states
glViewport(0, 0, window_width, window_height); // Set the size of the frame buffer view port
glClearColor (0.0f, 1.0f, 0.0f, 1.0f); // Set the clear colour
glClear (GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); // Clear the depth and colour buffers
glLoadIdentity(); // Reset the modelview matrix
// RENDER 3D MODEL HERE....
// TEAPOT AS EXAMPLE
glTranslatef(0.0f, 0.0f, -5.0f); // Translate back 5 units
glRotatef(rotation_degree, 1.0f, 1.0f, 0.0f); // Rotate according to our rotation_degree value
//glFrontFace(GL_CW);
glutSolidTeapot(1.0f); // Render a teapot
//glFrontFace(GL_CCW);
int r = glGetError();
int s = glCheckFramebufferStatus(GL_FRAMEBUFFER);
glPopAttrib(); // Restore our glEnable and glViewport states
glBindFramebufferEXT(GL_FRAMEBUFFER_EXT, 0); // Unbind our texture