2012-05-06 24 views
8

tengo esto:GLSL pow function?

float xExponential = pow(xPingPong, 5); 

Y no está funcionando, afirmando:

ERROR: 0:53: No matching overload for call to function 'pow'

¿Estoy Haciendo algo mal? Desarrollando para iOS con OpenGL ES 2.0.

Respuesta

29

¿Puedes probar esto?

float xExponential = pow(xPingPong, 5.0); 
+0

Parece extraño, pero funciona, gracias. – Geri

+10

La razón es que 5 es un número entero y 5.0 es un flotante (y la función pow no está definida para pow (float, int). No hay encasillado automático en GLSL, pero puede forzar el tipo correcto mediante float xExponential = pow (xPingPong, float (5)); no es que tenga sentido en este ejemplo. – Mortennobel

+3

@Geri Se considera educado aceptar una respuesta si eso le ayudó a resolver su problema. Pulse la marca de verificación al lado de la respuesta de Mennan si le ayudó. –