【问题标题】:Android - tutorials for OpenGL ES 2.0 using the NDK?Android - 使用 NDK 的 OpenGL ES 2.0 教程?
【发布时间】:2012-01-24 13:36:58
【问题描述】:

我希望在 Android 上学习 OpenGL ES 2.0,我发现的教程几乎都是使用 SDK with Java。但是我想使用本机代码,所以我想通过 NDK 来实现。 我发现的唯一教程/示例是 NDK 本身中的示例内容。

在哪里可以找到一些NDK OpenGL ES 2.0 教程? 如果没有好的教程,是否可以使用 Java OpenGL 教程来学习如何在 NDK 中使用它?例如,这些方法是否从 java 1:1 映射到 native?

【问题讨论】:

  • 好问题。可惜没有答案。
  • 我现在也处于同样的情况。找到了吗?

标签: android opengl-es android-ndk


【解决方案1】:

我创建了一个示例,说明如何将用 Java 完成的 UI 与执行所有 OpenGL 渲染的本机 NDK 代码结合起来。可以不使用 GLSurfaceView 和 JNI 调用来渲染每个帧,就像在 NDK 示例中所做的那样。

查看代码https://github.com/tsaarni/android-native-egl-example

【讨论】:

  • 伟大的工作,我已经测试了样本,非常有用,谢谢,但是,在相同的设备上存在问题,当我将 screenOrientation 设置为横向时,似乎 opengl 没有渲染......,跨度>
  • 谢谢!您可以在项目页面上发布问题单并附加 logcat 日志文件吗?不幸的是,我没有太多设备可以测试...
  • @tsaarni,你确定你的项目使用OpenGL ES 2.0吗?
  • @CAMOBAP 不,我想它只调用 OpenGL ES 1.x 函数,不依赖于 GLES 2.0。但是,它需要 Android API 级别 9 和 Android NDK r5 或更高版本。
  • 我也在寻找 OpenGL ES 2.0 依赖项,但您的 build.gradle 显示您使用的是 1.x 版本。 github.com/tsaarni/android-native-egl-example/blob/master/…
【解决方案2】:

检查this link。它涉及 NDK 和 OpenGL 问题,以及其他几个与游戏引擎编程等相关的问题。我觉得它非常有趣且很有帮助。

【讨论】:

    【解决方案3】:

    Google 在 GitHub 上有一个示例项目,该项目演示了如何使用在 Java 中创建的 SurfaceViewTeapots sample 从本机代码设置 EGL 上下文。特别是,请查看 ndk_helper 中的“更多茶壶”应用程序和代码以创建上下文。

    如果您想在没有任何 Java 代码的情况下工作,那么此示例应该可以帮助您入门:native activity

    编辑:此外,此链接提供了 Java Surface 之间关系的更高级别概述,它是本机对应物和 E​​GL:EGLSurfaces and OpenGL ES

    【讨论】:

      猜你喜欢
      • 2011-04-26
      • 2016-08-26
      • 2011-09-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多