示例#1
0
  private void loadShaders() {
    if (phenixLineProgram != null && postProgram != null) {
      return;
    }

    try {
      ShaderManager shaderManager = ShaderManager.getSingletonObject();
      Shader vertex =
          shaderManager.createVertexShader(
              ResourceHelper.loadRawString(openResource(R.raw.phenix_line_vertex)));
      Shader fragment =
          shaderManager.createFragmentShader(
              ResourceHelper.loadRawString(openResource(R.raw.phenix_line_fragment)));
      phenixLineProgram = shaderManager.createShaderProgram(vertex, fragment);

      vertex =
          shaderManager.createVertexShader(
              ResourceHelper.loadRawString(openResource(R.raw.post_blur_vertex)));
      fragment =
          shaderManager.createFragmentShader(
              ResourceHelper.loadRawString(openResource(R.raw.post_blur_fragment)));
      postProgram = shaderManager.createShaderProgram(vertex, fragment);
    } catch (Exception ex) {
      Log.e(TAG, "Unable to load shaders from resources " + ex.toString());
    }
  }