java - reales - Programación de Jogl Shader
manual android studio avanzado (4)
Acabo de comenzar la programación Shader (GLSL) y creé algunas con RenderMonkey. Ahora quiero usar este Shaders en mi código java. ¿Hay algún ejemplo simple de cómo lo hago?
La nueva versión de Jogl se agrega como una carga / compilación del sombreador de utilidad y ajuste uniforme / obtención de llamadas. Eche un vistazo a la API para la selección de métodos.
Yo no tengo ninguno, pero si tengo un problema en este sentido, a menudo he encontrado el mejor lugar para la programación en 3D y el asesoramiento de Java ha terminado en JavaGaming.org . No he estado allí por un tiempo, pero fue siempre una comunidad útil y conocedora.
He encontrado un ejemplo muy simple
int v = gl.glCreateShader(GL.GL_VERTEX_SHADER);
int f = gl.glCreateShader(GL.GL_FRAGMENT_SHADER);
BufferedReader brv = new BufferedReader(new FileReader("vertexshader.glsl"));
String vsrc = "";
String line;
while ((line=brv.readLine()) != null) {
vsrc += line + "/n";
}
gl.glShaderSource(v, 1, vsrc, (int[])null);
gl.glCompileShader(v);
BufferedReader brf = new BufferedReader(new FileReader("fragmentshader.glsl"));
String fsrc = "";
String line;
while ((line=brf.readLine()) != null) {
fsrc += line + "/n";
}
gl.glShaderSource(f, 1, fsrc, (int[])null);
gl.glCompileShader(f);
int shaderprogram = gl.glCreateProgram();
gl.glAttachShader(shaderprogram, v);
gl.glAttachShader(shaderprogram, f);
gl.glLinkProgram(shaderprogram);
gl.glValidateProgram(shaderprogram);
gl.glUseProgram(shaderprogram);