【问题标题】:Cube with multiple texture具有多重纹理的立方体
【发布时间】:2013-08-08 12:20:46
【问题描述】:

我有一个单一纹理的立方体 -

public class TextureDemo implements GLEventListener, KeyListener {    
    private Texture texture;    
}
public void init(GLAutoDrawable gLDrawable) {
    String filename="Picture1.jpg"; // the FileName to open
    texture=TextureIO.newTexture(new File( filename ),true);
}

public void display(GLAutoDrawable gLDrawable) {
    texture.bind();
    gl.glBegin(GL.GL_QUADS);
    // Front Face
    gl.glTexCoord2f(0.0f, 0.0f);
    gl.glVertex3f(-1.0f, -1.0f, 1.0f);
    gl.glTexCoord2f(2f, 0.0f);
    gl.glVertex3f(1.0f, -1.0f, 1.0f);
    gl.glTexCoord2f(2f, 1.0f);
    gl.glVertex3f(1.0f, 1.0f, 1.0f);
    gl.glTexCoord2f(0.0f, 1.0f);
    gl.glVertex3f(-1.0f, 1.0f, 1.0f);
    // Back Face
    ...

}

我尝试在上面的立方体上设置多个纹理,意思是在“正面”之后,替换为另一个纹理,这将对另一个立方体的面生效。

我怎么能做到这一点?

【问题讨论】:

    标签: java opengl textures jogl


    【解决方案1】:

    你绑定了一个新的纹理。这告诉 GL,我们将要绘制的任何内容都将使用该纹理。

    因此,为不同的 JPG 文件创建新纹理,然后绑定它,然后绘制一些顶点。

    【讨论】:

    • 我试过没有成功。你能提供代码部分吗?
    • @URL87:glBindTexture 不在 glBegin/glEnd 块内工作。 (无论如何,您都不应该使用 glBegin/glEnd。使用顶点数组)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-24
    • 1970-01-01
    • 2014-05-06
    相关资源
    最近更新 更多