R_DrawSkyBox
()
| 622 | * R_DrawSkyBox |
| 623 | */ |
| 624 | void R_DrawSkyBox() |
| 625 | { |
| 626 | int i; |
| 627 | |
| 628 | if (skyrotate != 0) |
| 629 | { // check for no sky at all |
| 630 | for (i=0 ; i<6 ; i++) |
| 631 | if (skymins[0][i] < skymaxs[0][i] |
| 632 | && skymins[1][i] < skymaxs[1][i]) |
| 633 | break; |
| 634 | if (i == 6) |
| 635 | return; // nothing visible |
| 636 | } |
| 637 | |
| 638 | gl.glPushMatrix (); |
| 639 | gl.glTranslatef (r_origin[0], r_origin[1], r_origin[2]); |
| 640 | gl.glRotatef (r_newrefdef.time * skyrotate, skyaxis[0], skyaxis[1], skyaxis[2]); |
| 641 | |
| 642 | for (i=0 ; i<6 ; i++) |
| 643 | { |
| 644 | if (skyrotate != 0) |
| 645 | { // hack, forces full sky to draw when rotating |
| 646 | skymins[0][i] = -1; |
| 647 | skymins[1][i] = -1; |
| 648 | skymaxs[0][i] = 1; |
| 649 | skymaxs[1][i] = 1; |
| 650 | } |
| 651 | |
| 652 | if (skymins[0][i] >= skymaxs[0][i] |
| 653 | || skymins[1][i] >= skymaxs[1][i]) |
| 654 | continue; |
| 655 | |
| 656 | GL_Bind(sky_images[skytexorder[i]].texnum); |
| 657 | |
| 658 | gl.glBegin(GL_QUADS); |
| 659 | MakeSkyVec(skymins[0][i], skymins[1][i], i); |
| 660 | MakeSkyVec(skymins[0][i], skymaxs[1][i], i); |
| 661 | MakeSkyVec(skymaxs[0][i], skymaxs[1][i], i); |
| 662 | MakeSkyVec(skymaxs[0][i], skymins[1][i], i); |
| 663 | gl.glEnd (); |
| 664 | } |
| 665 | gl.glPopMatrix (); |
| 666 | } |
| 667 | |
| 668 | // 3dstudio environment map names |
| 669 | String[] suf = {"rt", "bk", "lf", "ft", "up", "dn"}; |
nothing calls this directly
no test coverage detected