MCPcopy Create free account
hub / github.com/DescentDevelopers/Descent3 / UpdateView

Function UpdateView

editor/rad_hemicube.cpp:437–474  ·  view source on GitHub ↗

Update hemicube view transformation matrix

Source from the content-addressed store, hash-verified

435
436// Update hemicube view transformation matrix
437void UpdateView(int face_id) {
438 vector nu, nv, nn; // View space co-ordinates
439
440 switch (face_id) // Exchange co-ordinates
441 {
442 case TOP_FACE:
443 nu = rad_Hemicube.head_matrix.rvec;
444 nv = rad_Hemicube.head_matrix.uvec;
445 nn = rad_Hemicube.head_matrix.fvec;
446 break;
447 case FRONT_FACE:
448 nu = rad_Hemicube.head_matrix.rvec;
449 nv = rad_Hemicube.head_matrix.fvec;
450 nn = rad_Hemicube.head_matrix.uvec * -1;
451 break;
452 case RIGHT_FACE:
453 nu = rad_Hemicube.head_matrix.uvec;
454 nv = rad_Hemicube.head_matrix.fvec;
455 nn = rad_Hemicube.head_matrix.rvec;
456 break;
457 case BACK_FACE:
458 nu = rad_Hemicube.head_matrix.rvec * -1;
459 nv = rad_Hemicube.head_matrix.fvec;
460 nn = (rad_Hemicube.head_matrix.uvec);
461 break;
462 case LEFT_FACE:
463 nu = (rad_Hemicube.head_matrix.uvec * -1);
464 nv = rad_Hemicube.head_matrix.fvec;
465 nn = (rad_Hemicube.head_matrix.rvec * -1);
466 break;
467 default:
468 Int3();
469 break;
470 }
471
472 // Build new view transformation matrix
473 BuildTransform(&nu, &nv, &nn);
474}
475
476void DrawRadiosityPoly(int nv, g3Point **pointlist, int id) {
477 int i;

Callers 3

OnTimerMethod · 0.85
OnTimerMethod · 0.85

Calls 1

BuildTransformFunction · 0.85

Tested by

no test coverage detected