使用绘制纹理旋转精灵时出现问题(OpenGl ES Android)

发布于 2024-09-24 15:45:15 字数 209 浏览 7 评论 0原文

我正在尝试使用绘制纹理旋转精灵,但没有任何反应。我使用以下代码:

gl.glRotatef(90, 0, 0, 1.0f); gl.glBindTexture(GL10.GL_TEXTURE_2D,TextureID); (GL11Ext) gl).glDrawTexfOES(x, y, z, 宽度, 高度);

纹理被绘制到屏幕上,但没有旋转......有人吗? :)

I´m trying to rotate a sprite using drawtexture but nothing happens. I´m using the following code:

gl.glRotatef(90, 0, 0, 1.0f);
gl.glBindTexture(GL10.GL_TEXTURE_2D, TextureID);
(GL11Ext) gl).glDrawTexfOES(x, y, z, width, height);

The texture is drawn to the screen but it is not rotated... Anyone? :)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

来世叙缘 2024-10-01 15:45:15

来自 OES_draw_texture 扩展

Xs 和 Ys 直接在窗口(视口)坐标中给出。

因此传入的坐标不会被模型视图和投影矩阵转换,这就是 glRotatef 改变的。简而言之,这个扩展不支持旋转精灵。

如果您想要这些,最简单的方法是绘制标准旋转四边形。

From the OES_draw_texture extension:

Xs and Ys are given directly in window (viewport) coordinates.

So the passed in coordinates are not transformed by the modelview and projection matrices, which is what glRotatef changes. In short, this extension does not support rotated sprites.

If you want those, the simplest is to draw standard rotated quads instead.

叫嚣ゝ 2024-10-01 15:45:15

在测试了相当多的不同方法后,我发现答案一直就在我面前......我使用 SpriteMethodTest 示例作为我的代码库,但我忽略了那里的 VBO 扩展部分,它基本上有所有需要的功能。

SpriteMethodTest:http://code.google。 com/p/apps-for-android/source/browse/trunk/#trunk/SpriteMethodTest

After testing quite a bit og different ways to do this, I found the answer was right in front of me the whole time... I was using the SpriteMethodTest example as my codebase, but I ignored the VBO extension part there, wich basically has all the needed functionality.

SpriteMethodTest: http://code.google.com/p/apps-for-android/source/browse/trunk/#trunk/SpriteMethodTest

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文