本文整理汇总了C++中GLFrustum::setPerspective方法的典型用法代码示例。如果您正苦于以下问题:C++ GLFrustum::setPerspective方法的具体用法?C++ GLFrustum::setPerspective怎么用?C++ GLFrustum::setPerspective使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类GLFrustum
的用法示例。
在下文中一共展示了GLFrustum::setPerspective方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: ChangeSize
/**
* Window has changed size, or has just been created. In either case, we need to use the window
* dimensions to set the viewport and the projection matrix.
*/
void ChangeSize(int w, int h)
{
glViewport(0, 0, w, h);
transformPipeline.setMatrixStacks(modelViewMatrix, projectionMatrix);
viewFrustum.setPerspective(35.0f, float(w) / float(h), 1.0f, 100.0f);
projectionMatrix.setMatrix(viewFrustum.GetProjectionMatrix());
modelViewMatrix.identity();
}
示例2: ChangeSize
/**
* Window has changed size, or has just been created. In either case, we need to use the window
* dimensions to set the viewport and the projection matrix.
*/
void ChangeSize(int w, int h)
{
// Prevent a divide by zero
if ( h == 0 ) {
h = 1;
}
// Set viewport to window dimensions
glViewport(0, 0, w, h);
GLfloat fAspect = (GLfloat)w/(GLfloat)h;
// Produce the perspective projection
viewFrustum.setPerspective(80.0f, fAspect, 1.0f, 120.0f);
projectionMatrix.setMatrix(viewFrustum.GetProjectionMatrix());
transformPipeline.setMatrixStacks(modelViewMatrix, projectionMatrix);
}
示例3: ChangeSize
/**
* Window has changed size, or has just been created. In either case, we need to use the window
* dimensions to set the viewport and the projection matrix.
*/
void ChangeSize(int w, int h)
{
glViewport(0, 0, w, h);
transformPipeline.setMatrixStacks(modelViewMatrix, projectionMatrix);
viewFrustum.setPerspective(35.0f, float(w) / float(h), 1.0f, 100.0f);
projectionMatrix.setMatrix(viewFrustum.GetProjectionMatrix());
modelViewMatrix.identity();
GenerateOrtho2DMat(w, h);
screenWidth = w;
screenHeight = h;
// resize texture
glBindTexture(GL_TEXTURE_2D_MULTISAMPLE, depthTextureName);
glTexImage2DMultisample(GL_TEXTURE_2D_MULTISAMPLE, 8, GL_DEPTH_COMPONENT24, w, h, GL_FALSE);
glBindTexture(GL_TEXTURE_2D_MULTISAMPLE, msTexture[0]);
glTexImage2DMultisample(GL_TEXTURE_2D_MULTISAMPLE, 8, GL_RGBA8, w, h, GL_FALSE);
}