如何在 OpenGL 中使用 libpng 来玩 2D 游戏?

发布于 2024-09-29 03:40:30 字数 427 浏览 0 评论 0原文

我从 OpenGL 开始,我想制作一个非常简单的飞机游戏。现在我有一个从上方看到的飞机的 PNG,我想将其绘制在屏幕上。目前我只知道如何绘制旋转的三角形:

float angle = 0.0f;
void renderScene(void) {
  glClear(GL_COLOR_BUFFER_BIT);
  glPushMatrix();
  glRotatef(angle, 0.0f, 0.0f, 1.0f);
  glBegin(GL_TRIANGLES);
  glVertex2f(-0.5,-0.5);
  glVertex2f(0.5,0.0);
  glVertex2f(0.0,0.5);
  glEnd();
  glPopMatrix();
  glutSwapBuffers();
  angle += 0.1;
}

有人可以帮助我吗?谢谢。

I am beginning with OpenGL, and I want to make a very simple game with airplanes. Now I have a PNG of an airplane seen from above, and I want to draw this on the screen. Currently I only know how to draw triangles that rotate:

float angle = 0.0f;
void renderScene(void) {
  glClear(GL_COLOR_BUFFER_BIT);
  glPushMatrix();
  glRotatef(angle, 0.0f, 0.0f, 1.0f);
  glBegin(GL_TRIANGLES);
  glVertex2f(-0.5,-0.5);
  glVertex2f(0.5,0.0);
  glVertex2f(0.0,0.5);
  glEnd();
  glPopMatrix();
  glutSwapBuffers();
  angle += 0.1;
}

Can anyone help me? Thanks.

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

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

发布评论

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

评论(2

没有心的人 2024-10-06 03:40:31

您可能需要考虑使用 DevIL,而不是直接使用 libpng。它是专门针对您似乎想要做的工作而设计的,因此它通常会使其更容易完成(下个月,当有人决定您应该显示 JPEG 或 TIFF 而不是 PNG 时,它会处理这个问题,而无需任何重大重写)。

Instead of using libpng directly, you might want to consider using DevIL. It's intended specifically for the kind of job you seem to be trying to do so it'll generally make it quite a bit easier to do (and next month, when somebody decides you should display a JPEG or maybe a TIFF instead of a PNG, it'll handle that without any major rewrite either).

腻橙味 2024-10-06 03:40:30

这是你的秘密: http://nehe.gamedev.net/

顺便说一句,你最终会绘制一个四边形(或三角形带)并将纹理应用到多边形上,没有那么复杂。但是通过查看教程并了解 OpenGL 的工作原理以精确的方式开始,会更好。

这本书会比 Nehe 更好(因为它是专门为 OpenGL ES 量身定制的):http://opengles-book.com/< /a>

This is your stash of secrets: http://nehe.gamedev.net/

By the way you will end up drawing a quad (or a triangle strip) and applying the texture onto the polygon, nothing so complicated.. but start in a precise way by looking at tutorials and understanding how OpenGL works, it would be better.

This book will be better than Nehe (since it's tailored exactly for OpenGL ES): http://opengles-book.com/

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