X-Git-Url: http://de.git.xonotic.org/?a=blobdiff_plain;f=gl_backend.c;h=730ce44b3afc676af660e1ee58767442b3fcfd21;hb=92def3b2379304cebaf9b77d957f71af5c79cad8;hp=56518855485b052fbd0b88d64e2ae7911ae77624;hpb=cbab7e9c0c8031f6dd459b786ed2be326b632660;p=xonotic%2Fdarkplaces.git diff --git a/gl_backend.c b/gl_backend.c index 56518855..730ce44b 100644 --- a/gl_backend.c +++ b/gl_backend.c @@ -229,14 +229,17 @@ void GL_SetupView_Orientation_Identity (void) memset(&backend_modelmatrix, 0, sizeof(backend_modelmatrix)); } -void GL_SetupView_Orientation_FromEntity (vec3_t origin, vec3_t angles) +void GL_SetupView_Orientation_FromEntity(matrix4x4_t *matrix) { - Matrix4x4_CreateRotate(&backend_viewmatrix, -90, 1, 0, 0); - Matrix4x4_ConcatRotate(&backend_viewmatrix, 90, 0, 0, 1); - Matrix4x4_ConcatRotate(&backend_viewmatrix, -angles[2], 1, 0, 0); - Matrix4x4_ConcatRotate(&backend_viewmatrix, -angles[0], 0, 1, 0); - Matrix4x4_ConcatRotate(&backend_viewmatrix, -angles[1], 0, 0, 1); - Matrix4x4_ConcatTranslate(&backend_viewmatrix, -origin[0], -origin[1], -origin[2]); + matrix4x4_t tempmatrix, basematrix; + Matrix4x4_Invert_Simple(&tempmatrix, matrix); + Matrix4x4_CreateRotate(&basematrix, -90, 1, 0, 0); + Matrix4x4_ConcatRotate(&basematrix, 90, 0, 0, 1); + Matrix4x4_Concat(&backend_viewmatrix, &basematrix, &tempmatrix); + //Matrix4x4_ConcatRotate(&backend_viewmatrix, -angles[2], 1, 0, 0); + //Matrix4x4_ConcatRotate(&backend_viewmatrix, -angles[0], 0, 1, 0); + //Matrix4x4_ConcatRotate(&backend_viewmatrix, -angles[1], 0, 0, 1); + //Matrix4x4_ConcatTranslate(&backend_viewmatrix, -origin[0], -origin[1], -origin[2]); memset(&backend_modelmatrix, 0, sizeof(backend_modelmatrix)); } @@ -936,7 +939,7 @@ void R_Mesh_State_Texture(const rmeshstate_t *m) { GL_ActiveTexture(i); unit->combinergb = combinergb; - if (gl_combine.integer) + if (gl_combine.integer) { qglTexEnvi(GL_TEXTURE_ENV, GL_COMBINE_RGB_ARB, unit->combinergb);CHECKGLERROR }