void allegro_gl_MATRIX_to_GLfloat | ( | MATRIX * | m, | |
GLfloat | gl[16] | |||
) |
Converts an Allegro fixed-point matrix to an array of floats suitable for OpenGL's matrix operations.
Example:
MATRIX m = identity_matrix; GLfloat gl_m[16]; get_vector_rotation_matrix(&m, itofix(1), 0, itofix(1), ftofix(43.83)); allegro_gl_MATRIX_to_GLfloat(&m, &gl_m); glLoadMatrixf(&gl_m);
void allegro_gl_MATRIX_to_GLdouble | ( | MATRIX * | m, | |
GLdouble | gl[16] | |||
) |
Converts an Allegro fixed-point matrix to an array of doubles suitable for OpenGL's matrix operations.
void allegro_gl_MATRIX_f_to_GLfloat | ( | MATRIX_f * | m, | |
GLfloat | gl[16] | |||
) |
Converts an Allegro floating-point matrix to an array of floats suitable for OpenGL's matrix operations.
void allegro_gl_MATRIX_f_to_GLdouble | ( | MATRIX_f * | m, | |
GLdouble | gl[16] | |||
) |
Converts an Allegro floating-point matrix to an array of doubles suitable for OpenGL's matrix operations.
void allegro_gl_GLfloat_to_MATRIX | ( | GLfloat | gl[16], | |
MATRIX * | m | |||
) |
Converts an OpenGL floating-point matrix issued from the matrix stack to an Allegro fixed-point matrix.
void allegro_gl_GLdouble_to_MATRIX | ( | GLdouble | gl[16], | |
MATRIX * | m | |||
) |
Converts an OpenGL double precision floating-point matrix issued from the matrix stack to an Allegro fixed-point matrix.
void allegro_gl_GLfloat_to_MATRIX_f | ( | GLfloat | gl[16], | |
MATRIX_f * | m | |||
) |
Converts an OpenGL floating-point matrix issued from the matrix stack to an Allegro floating-point matrix.
void allegro_gl_GLdouble_to_MATRIX_f | ( | GLdouble | gl[16], | |
MATRIX_f * | m | |||
) |
Converts an OpenGL double precision floating-point matrix issued from the matrix stack to an Allegro single-precision floating-point matrix.
void allegro_gl_apply_quat | ( | QUAT * | q | ) |
Multiplies the Quaternion to the current transformation matrix, by converting it to a call to glRotatef().
Example:
QUAT q = identity_quat; get_vector_rotation_quat(&q, itofix(1), 0, itofix(1), ftofix(43.83)); glLoadIdentity(); allegro_gl_apply_quat(&q);
q | The Quaternion to apply. |
Definition at line 222 of file math.c.
References __allegro_gl_valid_context, and RAD_2_DEG.
void allegro_gl_quat_to_glrotatef | ( | QUAT * | q, | |
float * | angle, | |||
float * | x, | |||
float * | y, | |||
float * | z | |||
) |
Converts a quaternion to a vector/angle, which can be used with glRotate*().
Values are returned in the parameters.
Example:
QUAT q = identity_quat; float x, y, z, angle; allegro_gl_quat_to_glrotatef(&q, &angle, &x, &y, &z); glRotatef(angle, x, y, z);
q | The Quaternion to convert. | |
angle | The angle of rotation, in degrees. | |
x | The rotation vector's x-axis component. | |
y | The rotation vector's y-axis component. | |
z | The rotation vector's z-axis component. |
Definition at line 258 of file math.c.
References RAD_2_DEG.
void allegro_gl_quat_to_glrotated | ( | QUAT * | q, | |
double * | angle, | |||
double * | x, | |||
double * | y, | |||
double * | z | |||
) |
Converts a quaternion to a vector/angle, which can be used with glRotate*().
Values are returned in the parameters. See allegro_gl_quat_to_rotatef() for an example.
q | The Quaternion to convert. | |
angle | The angle of rotation, in degrees. | |
x | The rotation vector's x-axis component. | |
y | The rotation vector's y-axis component. | |
z | The rotation vector's z-axis component. |
Definition at line 290 of file math.c.
References RAD_2_DEG.