【问题标题】:Billboarding in LWJGLLWJGL 中的广告牌
【发布时间】:2013-05-02 21:07:50
【问题描述】:

我正在制作一个包含 3d 和 2d 项目的“2.5D”游戏。我已经创建了 3d 世界,现在正在研究 2d 项目。我到处寻找广告牌教程,但它们似乎都不起作用(因为我是菜鸟,可能搞砸了)。我只需要知道如何设置 glTranslate 和 glRotate 以便下一个渲染序列渲染一个垂直于相机平面的对象,换句话说,就像 2d 但在 3d 世界中。

这是我正在使用的:

GL11.glPushMatrix();
GL11.glTranslatef(0, 0, 0);
GL11.glRotatef(360.0f - Player.camera.vector.x, 0, -1.0f, 0); 
GL11.glRotatef(Player.camera.vector.z, -1.0f, 0, 0);
renderDroppedItems();

提前致谢!

【问题讨论】:

  • 如果你是菜鸟,你应该先学习OpenGL。在OpenGL中做广告牌有很多方法,比如点精灵。而且网上教程很多。​​你说你看过哪些教程?在这里您应该提出具体问题。您不希望这里有人为您编写整个解决方案吗?是吗?这是一个很好的教程,例如:lighthouse3d.com/opengl/billboarding/index.php?billCheat

标签: opengl 3d 2d lwjgl


【解决方案1】:

你的代码有错误:

GL11.glRotatef(360.0f - Player.camera.vector.x, 0, -1.0f, 0); 

应该是:

GL11.glRotatef(360.0f - Player.camera.vector.x, -1.0f, 0, 0); 

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-01-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多