corta:GLSL funciones reutilizables/compartidas, constantes compartidas (OpenGL ES 2.0)?
¿Puedo definir una función que cada shader puede usar? O tengo que definirlo por shader?
La historia completa:
Quiero crear numerosos shaders destinados a colorear los fragmentos de entrada con rampas gradiente predefinidos (algo como esto - http://www.thinkboxsoftware.com/storage/krakatoa-support-images/krakatoa15_kcm_densitybyage_gradientrampmap.png).
quiero definir una rampa de gradiente constante para cada shader (una matriz de muestras de color vec4, donde el valor alfa mantiene la posición de gradiente, ver Pos en la imagen anterior)
y necesito una función que puede devolver una muestra de color de la rampa de gradiente dada para una determinada posición de coordenadas de textura.
Así las rampas tienen que ser definido una vez por shader, y la función debe haber definido todos a la vez que cada shader puede utilizar con seguridad.
Tengo los algoritmos, la pregunta es para compartiendo funciones, y defino las constantes en GLSL.
¿Esto es posible? O tengo que copiar la función en cada sombreador? ¿Hay alguna opción de precompilación al menos?
Whoa, suena bien, lo intentaré. – Geri