OpenGL分屏代码.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
OpenGL分屏代码

图具体如下: // FBOM.cpp : 定义控制台应用程序的入口点。 // #include stdafx.h #include GLTools.h #include GLMatrixStack.h #include GLGeometryTransform.h #include GLFrustum.h #include GLShaderManager.h #include GLFrame.h #include GLBatch.h #include GLTriangleBatch.h #include iostream //本程序的目标是在shader里画图并读入到FBO中。然后在进行展示,分三屏。 using namespace std; #ifdef __APPLE__ #include glut/glut.h #else #define FREEGLUT_STATIC #include gl/glut.h #endif //各种int #include StopWatch.h GLfloat vWhite[]={1.0,1.0,1.0,1.0}; GLfloat vRed[]={1.0,0.0,0.0,1.0}; GLfloat vGreen[]={0.0,1.0,0.0,1.0}; GLfloat vBlue[]={0.0,0.0,1.0,1.0}; GLfloat vLightPos[]={3.0,3.0,3.0,1.0}; GLfloat vAmbient[]={0.02,0.02,0.02,1.0}; GLfloat vDiffuse[]={0.3,0.3,0.3,1.0}; GLfloat vSpecular[]={0.3,0.3,0.3,1.0}; //程序的标志位 GLuint screenWidth; GLuint screenHeight; GLboolean uFBO=GL_FALSE; //初始化窗口组件 GLMatrixStack modelViewMatrix; GLMatrixStack projectionMatrix; GLGeometryTransform transformPipline; GLFrustum viewFrustum; GLFrame viewFrame; GLShaderManager shaderManager; //创建shader GLuint fboShader; GLuint locMVP; GLuint locMV; GLuint locNormal; GLuint locLight; GLuint locDiffuse; GLuint locAmbient; GLuint locSpecular; GLuint locTexture; GLuint locLumicurve; GLuint RfboShader; GLuint RlocMVP; GLuint RlocMV; GLuint RlocNormal; GLuint RlocLight; GLuint RlocDiffuse; GLuint RlocAmbient; GLuint RlocSpecular; GLuint RlocTexture; GLuint RlocLumicurve; //创建FBO一系列 GLuint FBObj[1]; GLuint colorBObj[3]; GLuint depthBObj[1]; GLuint texBObj[3]; GLuint texBOTexture[1]; GLint lum=2; static const GLenum drawWindow[]={GL_BACK_LEFT}; static const GLenum drawBuff[]={GL_COLOR_ATTACHMENT0,GL_COLOR_ATTACHMENT1,GL_COLOR_ATTACHMENT2}; //创建所画的图形 GLBatch floorBatch; GLTriangleBatch sphereBatch; GLuint floorTex; GLuint ballTex; float* LoadDATAFile(const char* szFile,int* count) { GLint lineCount=0; FILE* fp; float* data=0;// fp=fopen(szFile,r); if (fp!=NULL) { char szFloat[1024]; while (fgets(szFloat,sizeof szFloat,fp)) { lineCount++; } rewind(fp); data

文档评论(0)

xcs88858 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档