setLookAtM无法正常工作或丢失

时间:2014-04-19 09:36:03

标签: java android matrix opengl-es-2.0

我正在使用一个简单的教程来使用OpenGL ES2.0进行绘制,我正在设置自己的转换矩阵。但是,函数Matrix.setLookAtM()不起作用。 Eclipse给了我

方法setLookAtM(float [],float,float,float,float,float,float,float,float,float,float)未定义Matrix类型。

但这是正确的,因为我甚至复制粘贴它 Android Matrix docs. 导入了错误的Matrix类吗?谷歌没有出现结果。我在哪里或如何解决?我的代码是:

import javax.microedition.khronos.egl.EGLConfig;
import javax.microedition.khronos.opengles.GL10;

import android.graphics.Matrix;
import android.opengl.GLES20;
import android.opengl.GLSurfaceView.Renderer;

public class GLRenderer implements Renderer {

    private float[] modelViewMatrix = new float[16];

    GLRenderer(){
    }

    public void onSurfaceCreated( GL10 gl, EGLConfig config ) {
        GLES20.glClearColor( 0.0f, 0.3f, 1.0f, 1.0f );

        Matrix.setLookAtM( modelViewMatrix, 0.0f, 0.0f, 0.5f, 0.0f, 0.0f, 0.0f, 1.5f, 0.0f, 1.0f, 0.0f );
    }

    public void onSurfaceChanged( GL10 gl, int width, int height ) {
        //...
    }

    public void onDrawFrame( GL10 gl ) {
            //...
    }

}

1 个答案:

答案 0 :(得分:0)

修正了它。它导入了错误的类。 当心 Eclipse自动导入!

错误的自动导入类:

import android.graphics.Matrix;

正确的课程:

import android.opengl.Matrix;