Domanda

Questa ritorna spesso NAN ( "non un numero") a seconda di ingresso:

#define PI 3.1415f

GLfloat sineEaseIn(GLfloat ratio) {
 return 1.0f-cosf(ratio * (PI / 2.0f));
}

Ho provato a fare PI alcune cifre piccole per vedere se che avrebbe aiutato. Niente da fare. Poi ho pensato che potrebbe essere una mancata corrispondenza tipo di dati, ma float e GLfloat sembra essere equivalente:

gl.h

typedef float           GLfloat;

math.h

extern float  cosf( float );

E 'questo un problema di casting?

È stato utile?

Soluzione

ho il sospetto che una delle seguenti è a piedi:

  • il tuo valore di input per ratio non può essere quello che ci si aspetta che sia, e ratio sé è forse NaN
  • l'cosf che si sta chiamando non è quella in math.h

In caso contrario, non sembra essere qualcosa di sbagliato con la vostra espressione.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top