当前位置: 首页>>代码示例>>Java>>正文


Java GLES20.glGenerateMipmap方法代码示例

本文整理汇总了Java中android.opengl.GLES20.glGenerateMipmap方法的典型用法代码示例。如果您正苦于以下问题:Java GLES20.glGenerateMipmap方法的具体用法?Java GLES20.glGenerateMipmap怎么用?Java GLES20.glGenerateMipmap使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在android.opengl.GLES20的用法示例。


在下文中一共展示了GLES20.glGenerateMipmap方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: loadTexture

import android.opengl.GLES20; //导入方法依赖的package包/类
public static int loadTexture(Context context, @DrawableRes int resId) {
    int[] textureObjectIds = new int[1];
    GLES20.glGenTextures(1, textureObjectIds, 0);
    if (textureObjectIds[0] == 0) {
        Log.e(TAG, "Could not generate a new OpenGL texture object.");
        return 0;
    }

    BitmapFactory.Options options = new BitmapFactory.Options();
    options.inScaled = false;
    Bitmap bitmap = BitmapFactory.decodeResource(context.getResources(), resId, options);
    if (bitmap == null) {
        Log.e(TAG, "Resource ID " + resId + " could not be decoded.");
        GLES20.glDeleteTextures(1, textureObjectIds, 0);
        return 0;
    }

    // bind
    GLES20.glBindTexture(GLES20.GL_TEXTURE_2D, textureObjectIds[0]);
    GLES20.glTexParameteri(GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_MIN_FILTER,
            GLES20.GL_LINEAR_MIPMAP_LINEAR);
    GLES20.glTexParameteri(GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_MAG_FILTER,
            GLES20.GL_LINEAR);
    GLUtils.texImage2D(GLES20.GL_TEXTURE_2D, 0, bitmap, 0);
    bitmap.recycle();

    GLES20.glGenerateMipmap(GLES20.GL_TEXTURE_2D);
    // unbind
    GLES20.glBindTexture(GLES20.GL_TEXTURE_2D, 0);

    return textureObjectIds[0];
}
 
开发者ID:Piasy,项目名称:OpenGLESTutorial-Android,代码行数:33,代码来源:Utils.java

示例2: texture

import android.opengl.GLES20; //导入方法依赖的package包/类
public int texture() {
    if (texture != 0) {
        return texture;
    }

    if (bitmap.isRecycled()) {
        return 0;
    }

    int[] textures = new int[1];
    GLES20.glGenTextures(1, textures, 0);
    texture = textures[0];

    GLES20.glBindTexture(GLES20.GL_TEXTURE_2D, texture);

    boolean mipMappable = isPOT(bitmap.getWidth()) && isPOT(bitmap.getHeight());
    GLES20.glTexParameteri(GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_WRAP_S, GLES20.GL_CLAMP_TO_EDGE);
    GLES20.glTexParameteri(GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_WRAP_T, GLES20.GL_CLAMP_TO_EDGE);
    GLES20.glTexParameteri(GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_MAG_FILTER, GLES20.GL_LINEAR);
    GLES20.glTexParameteri(GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_MIN_FILTER, mipMappable ? GLES20.GL_LINEAR_MIPMAP_LINEAR : GLES20.GL_LINEAR);

    GLUtils.texImage2D(GLES20.GL_TEXTURE_2D, 0, bitmap, 0);

    if (mipMappable) {
        GLES20.glGenerateMipmap(GLES20.GL_TEXTURE_2D);
    }

    Utils.HasGLError();

    return texture;
}
 
开发者ID:pooyafaroka,项目名称:PlusGram,代码行数:32,代码来源:Texture.java

示例3: createOnGlThread

import android.opengl.GLES20; //导入方法依赖的package包/类
/**
 * Allocates and initializes OpenGL resources needed by the plane renderer.  Must be
 * called on the OpenGL thread, typically in
 * {@link GLSurfaceView.Renderer#onSurfaceCreated(GL10, EGLConfig)}.
 *
 * @param context Needed to access shader source and texture PNG.
 * @param gridDistanceTextureName  Name of the PNG file containing the grid texture.
 */
public void createOnGlThread(Context context, String gridDistanceTextureName)
        throws IOException {
    int vertexShader = ShaderUtil.loadGLShader(TAG, context,
            GLES20.GL_VERTEX_SHADER, R.raw.plane_vertex);
    int passthroughShader = ShaderUtil.loadGLShader(TAG, context,
            GLES20.GL_FRAGMENT_SHADER, R.raw.plane_fragment);

    mPlaneProgram = GLES20.glCreateProgram();
    GLES20.glAttachShader(mPlaneProgram, vertexShader);
    GLES20.glAttachShader(mPlaneProgram, passthroughShader);
    GLES20.glLinkProgram(mPlaneProgram);
    GLES20.glUseProgram(mPlaneProgram);

    ShaderUtil.checkGLError(TAG, "Program creation");

    // Read the texture.
    Bitmap textureBitmap = BitmapFactory.decodeStream(
        context.getAssets().open(gridDistanceTextureName));

    GLES20.glActiveTexture(GLES20.GL_TEXTURE0);
    GLES20.glGenTextures(mTextures.length, mTextures, 0);
    GLES20.glBindTexture(GLES20.GL_TEXTURE_2D, mTextures[0]);

    GLES20.glTexParameteri(GLES20.GL_TEXTURE_2D,
        GLES20.GL_TEXTURE_MIN_FILTER, GLES20.GL_LINEAR_MIPMAP_LINEAR);
    GLES20.glTexParameteri(GLES20.GL_TEXTURE_2D,
        GLES20.GL_TEXTURE_MAG_FILTER, GLES20.GL_LINEAR);
    GLUtils.texImage2D(GLES20.GL_TEXTURE_2D, 0, textureBitmap, 0);
    GLES20.glGenerateMipmap(GLES20.GL_TEXTURE_2D);
    GLES20.glBindTexture(GLES20.GL_TEXTURE_2D, 0);

    ShaderUtil.checkGLError(TAG, "Texture loading");

    mPlaneXZPositionAlphaAttribute = GLES20.glGetAttribLocation(mPlaneProgram,
        "a_XZPositionAlpha");

    mPlaneModelUniform = GLES20.glGetUniformLocation(mPlaneProgram, "u_Model");
    mPlaneModelViewProjectionUniform =
        GLES20.glGetUniformLocation(mPlaneProgram, "u_ModelViewProjection");
    mTextureUniform = GLES20.glGetUniformLocation(mPlaneProgram, "u_Texture");
    mLineColorUniform = GLES20.glGetUniformLocation(mPlaneProgram, "u_lineColor");
    mDotColorUniform = GLES20.glGetUniformLocation(mPlaneProgram, "u_dotColor");
    mGridControlUniform = GLES20.glGetUniformLocation(mPlaneProgram, "u_gridControl");
    mPlaneUvMatrixUniform = GLES20.glGetUniformLocation(mPlaneProgram, "u_PlaneUvMatrix");

    ShaderUtil.checkGLError(TAG, "Program parameters");
}
 
开发者ID:googlevr,项目名称:poly-sample-android,代码行数:56,代码来源:PlaneRenderer.java

示例4: onSurfaceCreated

import android.opengl.GLES20; //导入方法依赖的package包/类
@Override
public void onSurfaceCreated(GL10 gl, EGLConfig config) {
    // Set the background clear color to black
    GLES20.glClearColor(0.0f, 0f, 0f, 0f);

    // Use culling to remove back faces
    GLES20.glEnable(GLES20.GL_CULL_FACE);

    // Enable depth testing
    GLES20.glEnable(GLES20.GL_DEPTH_TEST);

    // Position the eye in front of the origin.
    final float eyeX = 0.0f;
    final float eyeY = 0.0f;
    final float eyeZ = -0.5f;

    // We are looking toward the distance
    final float lookX = 0.0f;
    final float lookY = 0.0f;
    final float lookZ = -5.0f;

    // Set our up vector. This is where our head would be pointing were we holding the camera.
    final float upX = 0.0f;
    final float upY = 1.0f;
    final float upZ = 0.0f;

    // Set the view matrix. This matrix can be said to represent the camera position.
    // NOTE: In OpenGL 1, a ModelView matrix is used, which is a combination of a model and
    // view matrix. In OpenGL 2, we can keep track of these matrices separately if we choose.
    Matrix.setLookAtM(mViewMatrix, 0, eyeX, eyeY, eyeZ, lookX, lookY, lookZ, upX, upY, upZ);

    final String vertexShader = RawResourceReader.readTextFileFromRawResource(mActivity, R.raw.per_pixel_vertex_shader_tex_and_light);
    final String fragmentShader = RawResourceReader.readTextFileFromRawResource(mActivity, R.raw.per_pixel_fragment_shader_tex_and_light);

    final int vertexShaderHandle = Utils.compileShader(GLES20.GL_VERTEX_SHADER, vertexShader);
    final int fragmentShaderHandle = Utils.compileShader(GLES20.GL_FRAGMENT_SHADER, fragmentShader);

    mProgramHandle = Utils.createAndLinkProgram(vertexShaderHandle, fragmentShaderHandle,
            new String[]{"a_Position", "a_Normal", "a_TexCoordinate"});

    // Define a simple shader program for our point.
    final String pointVertexShader = RawResourceReader.readTextFileFromRawResource(mActivity, R.raw.point_vertex_shader);
    final String pointFragmentShader = RawResourceReader.readTextFileFromRawResource(mActivity, R.raw.point_fragment_shader);

    final int pointVertexShaderHandle = Utils.compileShader(GLES20.GL_VERTEX_SHADER, pointVertexShader);
    final int pointFragmentShaderHandle = Utils.compileShader(GLES20.GL_FRAGMENT_SHADER, pointFragmentShader);
    mPointProgramHandle = Utils.createAndLinkProgram(pointVertexShaderHandle, pointFragmentShaderHandle,
            new String[]{"a_Position"});

    // Load the texture
    mBrickDataHandle = Utils.loadTexture(mActivity, R.drawable.stone_wall_public_domain);
    GLES20.glGenerateMipmap(GLES20.GL_TEXTURE_2D);

    mGrassDataHandle = Utils.loadTexture(mActivity, R.drawable.noisy_grass_public_domain);
    GLES20.glGenerateMipmap(GLES20.GL_TEXTURE_2D);

    if (mQueuedMinFilter != 0) {
        setMinFilter(mQueuedMinFilter);
    }

    if (mQueuedMagFilter != 0) {
        setMagFilter(mQueuedMagFilter);
    }

    // Initialize the accumulated rotation matrix
    Matrix.setIdentityM(mAccumulatedRotation, 0);
}
 
开发者ID:biezhihua,项目名称:Android_OpenGL_Demo,代码行数:68,代码来源:LessonSixRenderer.java

示例5: onSurfaceCreated

import android.opengl.GLES20; //导入方法依赖的package包/类
@Override
public void onSurfaceCreated(GL10 glUnused, EGLConfig config) {
    mLastRequestedCubeFactor = mActualCubeFactor = 3;
    generateCubes(mActualCubeFactor, false, false);

    // Set the background clear color to black.
    GLES20.glClearColor(0.0f, 0.0f, 0.0f, 0.0f);

    // Use culling to remove back faces.
    GLES20.glEnable(GLES20.GL_CULL_FACE);

    // Enable depth testing
    GLES20.glEnable(GLES20.GL_DEPTH_TEST);

    // Position the eye in front of the origin.
    final float eyeX = 0.0f;
    final float eyeY = 0.0f;
    final float eyeZ = -0.5f;

    // We are looking toward the distance
    final float lookX = 0.0f;
    final float lookY = 0.0f;
    final float lookZ = -5.0f;

    // Set our up vector. This is where our head would be pointing were we holding the camera.
    final float upX = 0.0f;
    final float upY = 1.0f;
    final float upZ = 0.0f;

    // Set the view matrix. This matrix can be said to represent the camera position.
    // NOTE: In OpenGL 1, a ModelView matrix is used, which is a combination of a model and
    // view matrix. In OpenGL 2, we can keep track of these matrices separately if we choose.
    Matrix.setLookAtM(mViewMatrix, 0, eyeX, eyeY, eyeZ, lookX, lookY, lookZ, upX, upY, upZ);

    final String vertexShader = RawResourceReader.readTextFileFromRawResource(mLessonSevenActivity, R.raw.lesson_seven_vertex_shader);
    final String fragmentShader = RawResourceReader.readTextFileFromRawResource(mLessonSevenActivity, R.raw.lesson_seven_fragment_shader);

    final int vertexShaderHandle = Utils.compileShader(GLES20.GL_VERTEX_SHADER, vertexShader);
    final int fragmentShaderHandle = Utils.compileShader(GLES20.GL_FRAGMENT_SHADER, fragmentShader);

    mProgramHandle = Utils.createAndLinkProgram(vertexShaderHandle, fragmentShaderHandle,
            new String[]{"a_Position", "a_Normal", "a_TexCoordinate"});

    // Load the texture
    mAndroidDataHandle = Utils.loadTexture(mLessonSevenActivity, R.drawable.usb_android);
    GLES20.glGenerateMipmap(GLES20.GL_TEXTURE_2D);

    GLES20.glBindTexture(GLES20.GL_TEXTURE_2D, mAndroidDataHandle);
    GLES20.glTexParameteri(GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_MAG_FILTER, GLES20.GL_LINEAR);

    GLES20.glBindTexture(GLES20.GL_TEXTURE_2D, mAndroidDataHandle);
    GLES20.glTexParameteri(GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_MIN_FILTER, GLES20.GL_LINEAR_MIPMAP_LINEAR);

    // Initialize the accumulated rotation matrix
    Matrix.setIdentityM(mAccumulatedRotation, 0);
}
 
开发者ID:biezhihua,项目名称:Android_OpenGL_Demo,代码行数:57,代码来源:LessonSevenRenderer.java

示例6: onSurfaceCreated

import android.opengl.GLES20; //导入方法依赖的package包/类
@Override
public void onSurfaceCreated(GL10 glUnused, EGLConfig config) 
{
	// Set the background clear color to black.
	GLES20.glClearColor(0.0f, 0.0f, 0.0f, 0.0f);
	
	// Use culling to remove back faces.
	GLES20.glEnable(GLES20.GL_CULL_FACE);
	
	// Enable depth testing
	GLES20.glEnable(GLES20.GL_DEPTH_TEST);
	
	// The below glEnable() call is a holdover from OpenGL ES 1, and is not needed in OpenGL ES 2.
	// Enable texture mapping
	// GLES20.glEnable(GLES20.GL_TEXTURE_2D);
		
	// Position the eye in front of the origin.
	final float eyeX = 0.0f;
	final float eyeY = 0.0f;
	final float eyeZ = -0.5f;

	// We are looking toward the distance
	final float lookX = 0.0f;
	final float lookY = 0.0f;
	final float lookZ = -5.0f;

	// Set our up vector. This is where our head would be pointing were we holding the camera.
	final float upX = 0.0f;
	final float upY = 1.0f;
	final float upZ = 0.0f;

	// Set the view matrix. This matrix can be said to represent the camera position.
	// NOTE: In OpenGL 1, a ModelView matrix is used, which is a combination of a model and
	// view matrix. In OpenGL 2, we can keep track of these matrices separately if we choose.
	Matrix.setLookAtM(mViewMatrix, 0, eyeX, eyeY, eyeZ, lookX, lookY, lookZ, upX, upY, upZ);		

	final String vertexShader = RawResourceReader.readTextFileFromRawResource(mActivityContext, R.raw.per_pixel_vertex_shader_tex_and_light);   		
		final String fragmentShader = RawResourceReader.readTextFileFromRawResource(mActivityContext, R.raw.per_pixel_fragment_shader_tex_and_light);			
	
	final int vertexShaderHandle = ShaderHelper.compileShader(GLES20.GL_VERTEX_SHADER, vertexShader);		
	final int fragmentShaderHandle = ShaderHelper.compileShader(GLES20.GL_FRAGMENT_SHADER, fragmentShader);		
	
	mProgramHandle = ShaderHelper.createAndLinkProgram(vertexShaderHandle, fragmentShaderHandle, 
			new String[] {"a_Position",  "a_Normal", "a_TexCoordinate"});								                                							       
       
       // Define a simple shader program for our point.
       final String pointVertexShader = RawResourceReader.readTextFileFromRawResource(mActivityContext, R.raw.point_vertex_shader);        	       
       final String pointFragmentShader = RawResourceReader.readTextFileFromRawResource(mActivityContext, R.raw.point_fragment_shader);
       
       final int pointVertexShaderHandle = ShaderHelper.compileShader(GLES20.GL_VERTEX_SHADER, pointVertexShader);
       final int pointFragmentShaderHandle = ShaderHelper.compileShader(GLES20.GL_FRAGMENT_SHADER, pointFragmentShader);
       mPointProgramHandle = ShaderHelper.createAndLinkProgram(pointVertexShaderHandle, pointFragmentShaderHandle, 
       		new String[] {"a_Position"}); 
       
       // Load the texture
       mBrickDataHandle = TextureHelper.loadTexture(mActivityContext, R.drawable.stone_wall_public_domain);        
       GLES20.glGenerateMipmap(GLES20.GL_TEXTURE_2D);
       
       mGrassDataHandle = TextureHelper.loadTexture(mActivityContext, R.drawable.noisy_grass_public_domain);
       GLES20.glGenerateMipmap(GLES20.GL_TEXTURE_2D);
       
       if (mQueuedMinFilter != 0)
       {
       	setMinFilter(mQueuedMinFilter);
       }
       
       if (mQueuedMagFilter != 0)
       {
       	setMagFilter(mQueuedMagFilter);
       }
       
       // Initialize the accumulated rotation matrix
       Matrix.setIdentityM(mAccumulatedRotation, 0);
}
 
开发者ID:biezhihua,项目名称:Android_OpenGL_Demo,代码行数:75,代码来源:LessonSixRenderer.java

示例7: onSurfaceCreated

import android.opengl.GLES20; //导入方法依赖的package包/类
@Override
public void onSurfaceCreated(GL10 glUnused, EGLConfig config) 
{		
	mLastRequestedCubeFactor = mActualCubeFactor = 3;
	generateCubes(mActualCubeFactor, false, false);			
	
	// Set the background clear color to black.
	GLES20.glClearColor(0.0f, 0.0f, 0.0f, 0.0f);
	
	// Use culling to remove back faces.
	GLES20.glEnable(GLES20.GL_CULL_FACE);
	
	// Enable depth testing
	GLES20.glEnable(GLES20.GL_DEPTH_TEST);						
	
	// Position the eye in front of the origin.
	final float eyeX = 0.0f;
	final float eyeY = 0.0f;
	final float eyeZ = -0.5f;

	// We are looking toward the distance
	final float lookX = 0.0f;
	final float lookY = 0.0f;
	final float lookZ = -5.0f;

	// Set our up vector. This is where our head would be pointing were we holding the camera.
	final float upX = 0.0f;
	final float upY = 1.0f;
	final float upZ = 0.0f;

	// Set the view matrix. This matrix can be said to represent the camera position.
	// NOTE: In OpenGL 1, a ModelView matrix is used, which is a combination of a model and
	// view matrix. In OpenGL 2, we can keep track of these matrices separately if we choose.
	Matrix.setLookAtM(mViewMatrix, 0, eyeX, eyeY, eyeZ, lookX, lookY, lookZ, upX, upY, upZ);		

	final String vertexShader = RawResourceReader.readTextFileFromRawResource(mLessonSevenActivity, R.raw.lesson_seven_vertex_shader);   		
		final String fragmentShader = RawResourceReader.readTextFileFromRawResource(mLessonSevenActivity, R.raw.lesson_seven_fragment_shader);
				
	final int vertexShaderHandle = ShaderHelper.compileShader(GLES20.GL_VERTEX_SHADER, vertexShader);		
	final int fragmentShaderHandle = ShaderHelper.compileShader(GLES20.GL_FRAGMENT_SHADER, fragmentShader);		
	
	mProgramHandle = ShaderHelper.createAndLinkProgram(vertexShaderHandle, fragmentShaderHandle, 
			new String[] {"a_Position",  "a_Normal", "a_TexCoordinate"});		            
       
	// Load the texture
	mAndroidDataHandle = TextureHelper.loadTexture(mLessonSevenActivity, R.drawable.usb_android);		
	GLES20.glGenerateMipmap(GLES20.GL_TEXTURE_2D);			
	
	GLES20.glBindTexture(GLES20.GL_TEXTURE_2D, mAndroidDataHandle);		
	GLES20.glTexParameteri(GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_MAG_FILTER, GLES20.GL_LINEAR);		
	
	GLES20.glBindTexture(GLES20.GL_TEXTURE_2D, mAndroidDataHandle);		
	GLES20.glTexParameteri(GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_MIN_FILTER, GLES20.GL_LINEAR_MIPMAP_LINEAR);		
       
       // Initialize the accumulated rotation matrix
       Matrix.setIdentityM(mAccumulatedRotation, 0);        
}
 
开发者ID:biezhihua,项目名称:Android_OpenGL_Demo,代码行数:58,代码来源:LessonSevenRenderer.java

示例8: createOnGlThread

import android.opengl.GLES20; //导入方法依赖的package包/类
/**
 * Allocates and initializes OpenGL resources needed by the plane renderer.  Must be
 * called on the OpenGL thread, typically in
 * {@link GLSurfaceView.Renderer#onSurfaceCreated(GL10, EGLConfig)}.
 *
 * @param context                 Needed to access shader source and texture PNG.
 * @param gridDistanceTextureName Name of the PNG file containing the grid texture.
 */
public void createOnGlThread(Context context, String gridDistanceTextureName)
        throws IOException {
    int vertexShader = ShaderUtil.loadGLShader(TAG, context,
            GLES20.GL_VERTEX_SHADER, R.raw.plane_vertex);
    int passthroughShader = ShaderUtil.loadGLShader(TAG, context,
            GLES20.GL_FRAGMENT_SHADER, R.raw.plane_fragment);

    mPlaneProgram = GLES20.glCreateProgram();
    GLES20.glAttachShader(mPlaneProgram, vertexShader);
    GLES20.glAttachShader(mPlaneProgram, passthroughShader);
    GLES20.glLinkProgram(mPlaneProgram);
    GLES20.glUseProgram(mPlaneProgram);

    ShaderUtil.checkGLError(TAG, "Program creation");

    // Read the texture.
    Bitmap textureBitmap = BitmapFactory.decodeStream(
            context.getAssets().open(gridDistanceTextureName));

    GLES20.glActiveTexture(GLES20.GL_TEXTURE0);
    GLES20.glGenTextures(mTextures.length, mTextures, 0);
    GLES20.glBindTexture(GLES20.GL_TEXTURE_2D, mTextures[0]);

    GLES20.glTexParameteri(GLES20.GL_TEXTURE_2D,
            GLES20.GL_TEXTURE_MIN_FILTER, GLES20.GL_LINEAR_MIPMAP_LINEAR);
    GLES20.glTexParameteri(GLES20.GL_TEXTURE_2D,
            GLES20.GL_TEXTURE_MAG_FILTER, GLES20.GL_LINEAR);
    GLUtils.texImage2D(GLES20.GL_TEXTURE_2D, 0, textureBitmap, 0);
    GLES20.glGenerateMipmap(GLES20.GL_TEXTURE_2D);
    GLES20.glBindTexture(GLES20.GL_TEXTURE_2D, 0);

    ShaderUtil.checkGLError(TAG, "Texture loading");

    mPlaneXZPositionAlphaAttribute = GLES20.glGetAttribLocation(mPlaneProgram,
            "a_XZPositionAlpha");

    mPlaneModelUniform = GLES20.glGetUniformLocation(mPlaneProgram, "u_Model");
    mPlaneModelViewProjectionUniform =
            GLES20.glGetUniformLocation(mPlaneProgram, "u_ModelViewProjection");
    mTextureUniform = GLES20.glGetUniformLocation(mPlaneProgram, "u_Texture");
    mLineColorUniform = GLES20.glGetUniformLocation(mPlaneProgram, "u_lineColor");
    mDotColorUniform = GLES20.glGetUniformLocation(mPlaneProgram, "u_dotColor");
    mGridControlUniform = GLES20.glGetUniformLocation(mPlaneProgram, "u_gridControl");
    mPlaneUvMatrixUniform = GLES20.glGetUniformLocation(mPlaneProgram, "u_PlaneUvMatrix");

    ShaderUtil.checkGLError(TAG, "Program parameters");
}
 
开发者ID:nimbl3,项目名称:nimbl3-arcore,代码行数:56,代码来源:PlaneRenderer.java


注:本文中的android.opengl.GLES20.glGenerateMipmap方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。