首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >同样的游戏在OGL ESv2中不能在OGL3上运行

同样的游戏在OGL ESv2中不能在OGL3上运行
EN

Stack Overflow用户
提问于 2011-06-22 03:59:09
回答 1查看 202关注 0票数 3

我已经编码了一个引擎,它能够与OpenGL ESv2或OpenGL 3核心配置文件应用程序接口绘图。但是最近svn 3的部分坏了,我记不起我修改了什么,我也不能查看OpenGL提交日志,因为我把它托管在bountysource上,它现在已经关闭了,我把它带到了Google (但有坏掉的OGL3端口)。

使用OpenGL ESv2一切正常,但使用OpenGL 3一切都是水平拉伸和镜像。两者甚至使用相同的矩阵和顶点。

请不要混淆。OpenGL ESv2和OpenGL 3渲染器使用不同的方法来渲染它。

OpenGL ESv2使用VBO。OpenGL 3使用VAO和VBO。

我的引擎是开源的,所以你可以在这里查看:Source Code

这些应该是重要的部分:Sprite ClassBase Window ClassGL3 Window ClassGL ESv2 Window Class

着色器:

GLv2:fragvert

GL3:fragvert

下面是一些示例图片:

如果有人能给我这个问题的解决方案,也许我会给它一点奖励,我会非常非常高兴和感激的。

编辑:通过一个480x800的窗口,gldebugger显示这个矩阵:

modviewmat

{1,-0,0,0}

{0,1,0,0}

{0,0,1,0}

{5,770,0,1}

项目

{2,0,0,0}

{0,2,0,0}

{0,0,-1,0}

{-1,-1,-0,1}

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-06-23 08:08:20

我太dumb..it了,因为我有两节课。1个基类和1个从基类派生的平台特定实现。所有变量都是在基类和其他类中创建的。

所以,我在基类和另一个类中都有矩阵的句柄。

OpenGL句柄在基类中初始化。在gl3类中也有句柄,但它们没有初始化,因为它是基类的工作。

tl;dr伪代码:

基类:

gl3class: glhandle项目矩阵

基类::init():(基类).promatrix.init

gl3class::update():(gl3class).projmatrix.update

:/

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6431262

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档