예제 #1
0
void AmjuGLOpenGLES2::LookAt(float eyeX, float eyeY, float eyeZ, float x, float y, float z, float upX, float upY, float upZ)
{
	AMJU_CALL_STACK;
	
  s_eyePos = AmjuGL::Vec3(eyeX, eyeY, eyeZ);
  
  // Expect current matrix mode to be mview
  s_matrices[AmjuGL::AMJU_MODELVIEW_MATRIX] = GLKMatrix4Multiply(
    s_matrices[AmjuGL::AMJU_MODELVIEW_MATRIX],
    GLKMatrix4MakeLookAt(eyeX, eyeY, eyeZ, x, y, z, upX, upY, upZ));
}
예제 #2
0
void RenderSystem::render(VertexBuffer *vertexBuffer)
{
    glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
    
    glUseProgram(vertexBuffer->getShader()->getProgramHandle());
    
    glLoadIdentity();
    GLKMatrix4MakeLookAt(3.0f, 2.0f, -5.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f);
    
    glUniform4f((vertexBuffer->getShader())->get_uColor(), 1.0, 0.0, 0.0, 1.0);
                
    vertexBuffer->configureVertexAttributes();
    vertexBuffer->renderVertexBuffer();
    
    glfwSwapBuffers(_window);
    glfwPollEvents();
}
예제 #3
0
파일: Camera.cpp 프로젝트: chunkyguy/EWOGL
void Camera::update_view()
{
  viewMatrix_ = GLKMatrix4MakeLookAt(position_.x, position_.y, position_.z,
                                     focus_.x, focus_.y, focus_.z,
                                     up_.x, up_.y, up_.z);
}