Android OpenGL ES 未光栅化 - 矩阵乘法已切换

2024-02-19

我刚买了一台新的 SGS3 (I9300 -NOT LTE)并希望继续开发 OpenGL ES (2) 应用程序。 不幸的是,当我编译它时,我什么也没看到。

我收到以下 LogCat 错误消息:

D/libEGL(6890): loaded /system/lib/egl/libEGL_mali.so
D/libEGL(6890): loaded /system/lib/egl/libGLESv1_CM_mali.so
D/libEGL(6890): loaded /system/lib/egl/libGLESv2_mali.so
E/(6890): Device driver API match
E/(6890): Device driver API version: 23
E/(6890): User space API version: 23 
E/(6890): mali: REVISION=Linux-r3p2-01rel3 BUILD_DATE=Wed Oct  9 21:05:57 KST 2013** 
D/OpenGLRenderer(6890): Enabling debug mode 0

我还安装了一个自定义 rom (cyanogenmod 11 - snapshot M4),但我遇到了同样的问题。

当我启动应用程序时,我看到空白屏幕,没有任何顶点光栅化。到目前为止,清晰的颜色可以正常工作,因此 OpenGL 的基本功能可以正常工作。

可以肯定的是我尝试过来自 Google Developers 页面的基本教程与 GLES 1 和 GLES 2 一起使用。两者都不起作用!以下是截图:

http://developer.android.com/training/graphics/opengl/index.html http://developer.android.com/training/graphics/opengl/index.html

该项目本身在我的旧设备上运行良好银河S1(也在 Cyanogenmod 上)但在我的 SGS3 上除了空白屏幕外没有显示任何其他内容。

是否有可能马里-400 MP4图形驱动程序/系统对 GL 命令的解释不同吗?是否有与以下方式不同的调用方式蜂鸟我的 SGS1 的 GPU?

有人知道该怎么做吗?这是我手机的问题还是eclipse的问题?或者这是正常的——只是我缺乏理解?我该如何解决这个问题?

------- 编辑:找到解决方案 -------

好吧,我发现了错误。谷歌文档显示了顶点着色器中矩阵乘法的“错误”:

uniform mat4 uMVPMatrix;
attribute vec4 vPosition;
void main() {
   gl_Position = uMVPMatrix * vPosition;
}

对于我的旧 Galaxy S1 来说,这似乎不是问题,但不知何故,S3(或 Mali GPU)对此很挑剔。我将乘法顺序更改为:

uniform mat4 uMVPMatrix;
attribute vec4 vPosition;
void main() {
   gl_Position = vPosition * uMVPMatrix;
}

它可以工作(也在 S1 上)。仍然不确定为什么 S1 在两个版本上都能正常工作,但这解决了问题。

感谢您的帮助!


我突然想起来,你检查过投影设置吗?这些形状可能正在绘制,只是不在您期望的位置。

另外,检查着色器加载步骤的返回值。如果存在编译问题,您将获得着色器程序的无效句柄。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Android OpenGL ES 未光栅化 - 矩阵乘法已切换 的相关文章

随机推荐

  • EnterCriticalSection 死锁

    多线程日志记录应用程序出现死锁情况 小背景 我的主应用程序有 4 6 个线程正在运行 主线程负责监视我正在做的各种事情的运行状况 更新 GUI 等 然后我有一个传输线程和一个接收线程 发送和接收线程与物理硬件通信 我有时需要调试发送和接收线
  • 如何使用向量通过指针引用递归结构

    我有结构 我们称它们为 sn 看起来像 struct sn string name vector
  • 无法确定包装器版本

    我创建了一个反应本机应用程序 只需执行以下操作 react native init app 我已经按照这个教程进行操作 Facebook 入门 我使用 Linux https facebook github io react native
  • 如何使用 SciPy 插值 3D 数据时提高性能

    我有代表大气的 3D 数据 现在我想将此数据插值到一个公共 Z 坐标 我的意思应该从函数的文档中清楚地看出 下面的代码工作正常 但我想知道是否有办法提高性能 def interpLevel grid value data interp li
  • Angular Firestore:使用 where 子句的集合查询的正确语法是什么?

    我有查询 Firestore 并返回 Observable 类型的工作代码ImageUploadWId 我想退货Promise反而 这是因为 我的数据不经常变化 我正在根据传入的数据执行删除 SnapshotChanges 返回操作数组 第
  • 在 Bootstrap 4 中显示/隐藏 div,同时调整传单地图的高度

    我正在构建一个 Web 应用程序 屏幕上有 3 个组件 导航栏 置顶 主容器地图容器 主要的 75 聊天窗口 主窗口的 25 我想要做的是隐藏聊天页脚 然后让地图容器占据所有主容器 但如果用户想查看聊天窗口 他单击一个按钮 地图就会缩小到窗
  • 始终获得“None”的打印值

    好吧 这是我的代码 我得到了我想要的结果 但我不断得到它下面的 无 值 如何消除 无 值 n input What day of the week are you leaving r input How many days will you
  • 从 CLI 查询 InfluxDB 时显示本地时区的时间

    我使用 UTC 将点存储在 InfluxDB 中 但是从命令行 https docs influxdata com influxdb v1 6 tools shell influx precision rfc3339 我想在所有查询中以本地
  • LendingClub.com API 在二级市场购买票据时发生内部服务器错误

    我正在尝试购买 Lending Club 二级市场的票据 但一直收到 内部服务器错误 我也多次向Lending Club寻求支持 但他们毫无头绪 我也尝试关注这篇文章 但没有运气LendingClub com 在二级市场购买票据时出现 AP
  • 实体框架通用存储库错误

    我正在尝试为我的实体框架存储库创建一个非常通用的泛型存储库 它具有基本的 CRUD 语句并使用接口 我的头先撞到了砖墙 然后被撞倒了 这是我的代码 使用实体框架模型在控制台应用程序中编写 并带有一个名为 Hurl 的表 只是试图通过对象的
  • Python:Urllib.urlopen 非数字端口

    对于以下代码 theurl https s email protected cdn cgi l email protection nic update hostname s myip s wildcard NOCHG mx NOCHG ba
  • 更改已编译类中的字符串常量

    我需要更改已部署的Java程序中的字符串常量 即编译后的值 class 文件 它可以重新启动 但不容易重新编译 尽管如果这个问题没有答案 这是一个不方便的选择 这可能吗 更新 我刚刚用十六进制编辑器查看了该文件 看起来我可以轻松更改那里的字
  • Spring MVC - REST 服务中的 bean 列表上的 @Valid

    在 Spring MVC REST 服务 json 中 我有一个像这样的控制器方法 RequestMapping method RequestMethod POST value doesntmatter ResponseBody publi
  • 如何使用 GTK 将图像添加到按钮

    我试图将图像添加到带有标签的按钮 但图像不显示 损坏的图像也不显示 stop button gtk button new with label stop image gtk image new from file home cendit E
  • 配置 Serilog 文件接收器以在每次应用程序运行时使用一个日志文件

    我想配置 Serilog 为每次应用程序运行创建一个日志文件 文件名应基于当前日期 时间 1st run log 20180413 1020 txt 2nd run log 20180413 1033 txt 我没有找到如何在任何文件接收器
  • 如何获取设备的总 RAM 大小?

    我想获得设备的完整 RAM 大小 memoryInfo getTotalPss 返回 0 中没有获取总 RAM 大小的函数ActivityManager MemoryInfo http developer android com refer
  • 用C#实现代码模板

    当我需要代码模板时 我可以使用Python 如下所示 templateString s s s print templateString a b c 如何使用 C 实现等效功能 I tried using System class DoFi
  • asp.net mvc 4 应用程序的入口点是什么?

    我正在学习 MVC 4 应用程序 但对 mvc 平台还是个新手 如果我正在学习一个新的 java 应用程序 我会从 main 方法开始阅读代码 然后从那里开始 ASP NET MVC 应用程序的模拟是什么 我从以下 URL 启动该应用程序
  • 如何让PagerAdapter加载所有页面

    我知道默认情况下PagerAdapter仅加载当前页 下一页和上一页 有什么办法可以改变它 这样它就会加载每个页面吗 谢谢 如果你有N页面 您可以使用setOffscreenPageLimit N 1 http developer andr
  • Android OpenGL ES 未光栅化 - 矩阵乘法已切换

    我刚买了一台新的 SGS3 I9300 NOT LTE 并希望继续开发 OpenGL ES 2 应用程序 不幸的是 当我编译它时 我什么也没看到 我收到以下 LogCat 错误消息 D libEGL 6890 loaded system l