¿La variable con la que está rellenando valores determina la precisión con la que está trabajando, a la derecha del signo de igual?En OpenGL ES 2.0/GLSL, ¿dónde necesita especificadores de precisión?
Por ejemplo, ¿hay alguna diferencia, de sentido, al especificador de precisión aquí:
gl_FragColor = lowp vec4(1);
He aquí otro ejemplo:
lowp float floaty = 1. * 2.;
floaty = lowp 1. * lowp 2.;
Y si se toma algunos flotadores, y crear un vector o matriz de ellos, ¿ese vector o matriz tomará la precisión de los valores con los que lo rellena, o esos valores se transformarán en otro nivel de precisión?
creo que la optimización de esto sería mejor responder a la pregunta:
dot(gl_LightSource[0].position.xyz, gl_NormalMatrix * gl_Normal)
quiero decir, ¿Tiene que ir tan lejos, si quieres que lo más rápido posible, o es parte de ella inútil?
lowp dot(lowp gl_LightSource[0].position.xyz, lowp gl_NormalMatrix * lowp gl_Normal)
Sé que puede definir la precisión predeterminada para float, y que supuestamente se usa para vectores y matrices posteriormente. Supongamos por el propósito de la educación, que habíamos definido previamente esta:
precision highp float;
"Además, dado que la precisión de gl_FragColor ya está definida en función de la profundidad del objetivo de renderizado" ¿cuál es su fuente para esta afirmación? No veo ninguna información sobre esto en la especificación. – eodabash