簡體   English   中英

JOGL紋理不起作用

[英]JOGL texture not working

我正在嘗試填充木材的圓環紋理,但只留下一種顏色:

img http://dl.dropbox.com/u/70996029/Screenshots/Screenshot-2012-04-12_01.28.44.png

圖像為128x128 png。 我究竟做錯了什么?

public void init(GLAutoDrawable drawable) {
        gl = drawable.getGL().getGL2();

        gl.glEnable(GL2.GL_DEPTH_TEST);
        gl.glDepthFunc(GL2.GL_LESS);

        gl.glEnable(GL2.GL_LIGHTING);
        gl.glEnable(GL2.GL_LIGHT0);

        gl.glMatrixMode(GL2.GL_PROJECTION);
        gl.glOrtho(-17.0, 17.0, -17.0, 17.0, -17.0, 17.0);
        gl.glMatrixMode(GL2.GL_MODELVIEW);
    }
public void display(GLAutoDrawable drawable)
    {
        gl.glClear(GL2.GL_COLOR_BUFFER_BIT | GL2.GL_DEPTH_BUFFER_BIT);
        float mat_diffuse[] = { 0.5f, 0.5f, 0.8f, 1.0f };
        gl.glMaterialfv(GL2.GL_FRONT, GL2.GL_DIFFUSE, mat_diffuse, 0);
        glut.glutSolidTorus(2, 5, 80, 80);

        gl.glRotatef(90, 1, 0, 0);
        gl.glTranslatef(5, 0, 0);

        Texture texture = null;

        try {
            texture = TextureIO.newTexture(new File("D:\\Program Files\\eclipse\\projects\\rotation OGL\\src\\wood.png"), true);
            texture.setTexParameterf(gl, GL2.GL_TEXTURE_MIN_FILTER, GL2.GL_LINEAR);
            texture.setTexParameterf(gl, GL2.GL_TEXTURE_MAG_FILTER, GL2.GL_LINEAR);
        } catch (Exception e) {
            e.printStackTrace();
        }
        gl.glEnable(GL2.GL_TEXTURE_2D);

        texture.bind(gl);
        texture.enable(gl);

        glut.glutSolidTorus(2, 5, 80, 80);

        texture.disable(gl);
    }

嘗試為幾何體生成一些紋理坐標

glutSolidTorus()不會為您生成任何內容。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM