Пример #1
0
 // 自定义初始化着色器initShader方法
 public void initShader(MySurfaceView mv) {
   // 加载顶点着色器的脚本内容
   mVertexShader = ShaderUtil.loadFromAssetsFile("vertex_tex.sh", mv.getResources());
   // 加载片元着色器的脚本内容
   mFragmentShader = ShaderUtil.loadFromAssetsFile("frag_tex.sh", mv.getResources());
   // 基于顶点着色器与片元着色器创建程序
   mProgram = createProgram(mVertexShader, mFragmentShader);
   // 获取程序中顶点位置属性引用id
   maPositionHandle = GLES20.glGetAttribLocation(mProgram, "aPosition");
   // 获取程序中顶点纹理坐标属性引用id
   maTexCoorHandle = GLES20.glGetAttribLocation(mProgram, "aTexCoor");
   // 获取程序中总变换矩阵引用id
   muMVPMatrixHandle = GLES20.glGetUniformLocation(mProgram, "uMVPMatrix");
 }