]> de.git.xonotic.org Git - xonotic/netradiant.git/blobdiff - contrib/camera/renderer.cpp
reformat code! now the code is only ugly on the *inside*
[xonotic/netradiant.git] / contrib / camera / renderer.cpp
index ac270836ad7c4d72ea1060e0e73f3c13a69d3b51..f372ca67fd5884199a8336045d42ac9c2d5c0dfc 100644 (file)
 
 #include "camera.h"
 
-CRenderer::CRenderer() {
+CRenderer::CRenderer()
+{
 
-       refCount = 1;
+    refCount = 1;
 
-       m_bHooked = FALSE;
+    m_bHooked = FALSE;
 
-       Register();
-       Initialize();
+    Register();
+    Initialize();
 }
 
-CRenderer::~CRenderer() {
-       if ( m_bHooked ) {
-               UnRegister();
-       }
+CRenderer::~CRenderer()
+{
+    if (m_bHooked) {
+        UnRegister();
+    }
 }
 
-void CRenderer::Register() {
-       g_QglTable.m_pfnHookGL2DWindow( this );
-       g_QglTable.m_pfnHookGL3DWindow( this );
-       m_bHooked = TRUE;
+void CRenderer::Register()
+{
+    g_QglTable.m_pfnHookGL2DWindow(this);
+    g_QglTable.m_pfnHookGL3DWindow(this);
+    m_bHooked = TRUE;
 }
 
-void CRenderer::UnRegister() {
-       if ( g_QglTable.m_nSize ) {
-               g_QglTable.m_pfnUnHookGL2DWindow( this );
-               g_QglTable.m_pfnUnHookGL3DWindow( this );
-       }
-       m_bHooked = FALSE;
+void CRenderer::UnRegister()
+{
+    if (g_QglTable.m_nSize) {
+        g_QglTable.m_pfnUnHookGL2DWindow(this);
+        g_QglTable.m_pfnUnHookGL3DWindow(this);
+    }
+    m_bHooked = FALSE;
 }
 
-void CRenderer::Initialize() {
+void CRenderer::Initialize()
+{
 
 }
 
-void CRenderer::Draw2D( VIEWTYPE vt ) {
-
-       g_QglTable.m_pfn_qglPushAttrib( GL_ALL_ATTRIB_BITS );
-       g_QglTable.m_pfn_qglPushMatrix();
-
-       switch ( vt )
-       {
-       case XY:
-               break;
-       case XZ:
-               g_QglTable.m_pfn_qglRotatef( 270.0f, 1.0f, 0.0f, 0.0f );
-               break;
-       case YZ:
-               g_QglTable.m_pfn_qglRotatef( 270.0f, 1.0f, 0.0f, 0.0f );
-               g_QglTable.m_pfn_qglRotatef( 270.0f, 0.0f, 0.0f, 1.0f );
-               break;
-       }
-
-       CCamera *cam = firstCam;
-       while ( cam ) {
-               cam->GetCam()->draw( ( ( Listener && cam == g_pCurrentEditCam ) ? true : false ) );
-               cam = cam->GetNext();
-       }
-
-       g_QglTable.m_pfn_qglPopMatrix();
-       g_QglTable.m_pfn_qglPopAttrib();
+void CRenderer::Draw2D(VIEWTYPE vt)
+{
+
+    g_QglTable.m_pfn_qglPushAttrib(GL_ALL_ATTRIB_BITS);
+    g_QglTable.m_pfn_qglPushMatrix();
+
+    switch (vt) {
+        case XY:
+            break;
+        case XZ:
+            g_QglTable.m_pfn_qglRotatef(270.0f, 1.0f, 0.0f, 0.0f);
+            break;
+        case YZ:
+            g_QglTable.m_pfn_qglRotatef(270.0f, 1.0f, 0.0f, 0.0f);
+            g_QglTable.m_pfn_qglRotatef(270.0f, 0.0f, 0.0f, 1.0f);
+            break;
+    }
+
+    CCamera *cam = firstCam;
+    while (cam) {
+        cam->GetCam()->draw(((Listener && cam == g_pCurrentEditCam) ? true : false));
+        cam = cam->GetNext();
+    }
+
+    g_QglTable.m_pfn_qglPopMatrix();
+    g_QglTable.m_pfn_qglPopAttrib();
 }
 
-void CRenderer::Draw3D() {
-       // FIXME: really need a mainloop callback from the editor core
-       static long start;
-       static float cycle;
-       static long msecs;
-       static long current;
-
-       if ( g_iPreviewRunning ) {
-               if ( g_iPreviewRunning == 1 ) {
-                       start = Q_QGetTickCount();
-                       GetCurrentCam()->GetCam()->startCamera( start );
-                       cycle = GetCurrentCam()->GetCam()->getTotalTime();
-                       msecs = (long)( cycle * 1000 );
-                       current = start;
-                       g_iPreviewRunning = 2;
-               }
-
-               if ( current < start + msecs ) {
-                       float fov;
-                       vec3_t origin = {0.0f, 0.0f, 0.0f}, dir = {0.0f, 0.0f, 0.0f}, angles;
-
-                       GetCurrentCam()->GetCam()->getCameraInfo( current, &origin[0], &dir[0], &fov );
-                       VectorSet( angles, asin( dir[2] ) * 180 / 3.14159, atan2( dir[1], dir[0] ) * 180 / 3.14159, 0 );
-                       g_CameraTable.m_pfnSetCamera( origin, angles );
-                       current = Q_QGetTickCount();
-               }
-               else {
-                       g_iPreviewRunning = 0;
-                       GetCurrentCam()->GetCam()->setRunning( false );
-                       g_FuncTable.m_pfnSysUpdateWindows( W_XY_OVERLAY | W_CAMERA );
-               }
-       }
-
-       g_QglTable.m_pfn_qglPushAttrib( GL_ALL_ATTRIB_BITS );
-
-       CCamera *cam = firstCam;
-       while ( cam ) {
-               cam->GetCam()->draw( ( ( Listener && cam == g_pCurrentEditCam ) ? true : false ) );
-               cam = cam->GetNext();
-       }
-
-       if ( g_iPreviewRunning ) {
-               int x, y, width, height, i;
-               float degInRad;
-
-               g_CameraTable.m_pfnGetCamWindowExtents( &x, &y, &width, &height );
-
-               // setup orthographic projection mode
-               g_QglTable.m_pfn_qglMatrixMode( GL_PROJECTION );
-               g_QglTable.m_pfn_qglLoadIdentity();
-               g_QglTable.m_pfn_qglDisable( GL_DEPTH_TEST );
-               g_QglTable.m_pfn_qglOrtho( 0, (float)width, 0, (float)height, -100, 100 );
-               g_QglTable.m_pfn_qglMatrixMode( GL_MODELVIEW );
-
-               g_QglTable.m_pfn_qglLoadIdentity();
-               g_QglTable.m_pfn_qglColor3f( 1.f, 1.f, 1.f );
-               g_QglTable.m_pfn_qglBegin( GL_LINE_LOOP );
-               g_QglTable.m_pfn_qglVertex2f( 10, 10 );
-               g_QglTable.m_pfn_qglVertex2f( 40, 10 );
-               g_QglTable.m_pfn_qglVertex2f( 40, 25 );
-               g_QglTable.m_pfn_qglVertex2f( 10, 25 );
-               g_QglTable.m_pfn_qglEnd();
-
-               g_QglTable.m_pfn_qglBegin( GL_LINE_LOOP );
-               for ( i = 0; i < 360; i += 60 ) {
-                       degInRad = i * ( 3.14159265358979323846 / 180.f );
-                       g_QglTable.m_pfn_qglVertex2f( 18 + cos( degInRad ) * 5, 18 + sin( degInRad ) * 5 );
-               }
-               g_QglTable.m_pfn_qglEnd();
-
-               degInRad = ( 360 - ( ( current - start ) % 360 ) ) * ( 3.14159265358979323846 / 180.f );
-               g_QglTable.m_pfn_qglBegin( GL_LINES );
-               g_QglTable.m_pfn_qglVertex2f( 18, 18 );
-               g_QglTable.m_pfn_qglVertex2f( 18 + cos( degInRad ) * 5, 18 + sin( degInRad ) * 5 );
-               g_QglTable.m_pfn_qglVertex2f( 32, 18 );
-               g_QglTable.m_pfn_qglVertex2f( 32 + cos( degInRad ) * 5, 18 + sin( degInRad ) * 5 );
-               g_QglTable.m_pfn_qglEnd();
-
-               g_QglTable.m_pfn_qglBegin( GL_LINE_LOOP );
-               for ( i = 0; i < 360; i += 60 ) {
-                       degInRad = i * ( 3.14159265358979323846 / 180.f );
-                       g_QglTable.m_pfn_qglVertex2f( 32 + cos( degInRad ) * 5, 18 + sin( degInRad ) * 5 );
-               }
-               g_QglTable.m_pfn_qglEnd();
-
-               g_QglTable.m_pfn_qglBegin( GL_LINES );
-               g_QglTable.m_pfn_qglVertex2f( 40, 22 );
-               g_QglTable.m_pfn_qglVertex2f( 52, 31 );
-               g_QglTable.m_pfn_qglVertex2f( 40, 13 );
-               g_QglTable.m_pfn_qglVertex2f( 52, 4 );
-               g_QglTable.m_pfn_qglEnd();
-       }
-
-       g_QglTable.m_pfn_qglPopAttrib();
+void CRenderer::Draw3D()
+{
+    // FIXME: really need a mainloop callback from the editor core
+    static long start;
+    static float cycle;
+    static long msecs;
+    static long current;
+
+    if (g_iPreviewRunning) {
+        if (g_iPreviewRunning == 1) {
+            start = Q_QGetTickCount();
+            GetCurrentCam()->GetCam()->startCamera(start);
+            cycle = GetCurrentCam()->GetCam()->getTotalTime();
+            msecs = (long) (cycle * 1000);
+            current = start;
+            g_iPreviewRunning = 2;
+        }
+
+        if (current < start + msecs) {
+            float fov;
+            vec3_t origin = {0.0f, 0.0f, 0.0f}, dir = {0.0f, 0.0f, 0.0f}, angles;
+
+            GetCurrentCam()->GetCam()->getCameraInfo(current, &origin[0], &dir[0], &fov);
+            VectorSet(angles, asin(dir[2]) * 180 / 3.14159, atan2(dir[1], dir[0]) * 180 / 3.14159, 0);
+            g_CameraTable.m_pfnSetCamera(origin, angles);
+            current = Q_QGetTickCount();
+        } else {
+            g_iPreviewRunning = 0;
+            GetCurrentCam()->GetCam()->setRunning(false);
+            g_FuncTable.m_pfnSysUpdateWindows(W_XY_OVERLAY | W_CAMERA);
+        }
+    }
+
+    g_QglTable.m_pfn_qglPushAttrib(GL_ALL_ATTRIB_BITS);
+
+    CCamera *cam = firstCam;
+    while (cam) {
+        cam->GetCam()->draw(((Listener && cam == g_pCurrentEditCam) ? true : false));
+        cam = cam->GetNext();
+    }
+
+    if (g_iPreviewRunning) {
+        int x, y, width, height, i;
+        float degInRad;
+
+        g_CameraTable.m_pfnGetCamWindowExtents(&x, &y, &width, &height);
+
+        // setup orthographic projection mode
+        g_QglTable.m_pfn_qglMatrixMode(GL_PROJECTION);
+        g_QglTable.m_pfn_qglLoadIdentity();
+        g_QglTable.m_pfn_qglDisable(GL_DEPTH_TEST);
+        g_QglTable.m_pfn_qglOrtho(0, (float) width, 0, (float) height, -100, 100);
+        g_QglTable.m_pfn_qglMatrixMode(GL_MODELVIEW);
+
+        g_QglTable.m_pfn_qglLoadIdentity();
+        g_QglTable.m_pfn_qglColor3f(1.f, 1.f, 1.f);
+        g_QglTable.m_pfn_qglBegin(GL_LINE_LOOP);
+        g_QglTable.m_pfn_qglVertex2f(10, 10);
+        g_QglTable.m_pfn_qglVertex2f(40, 10);
+        g_QglTable.m_pfn_qglVertex2f(40, 25);
+        g_QglTable.m_pfn_qglVertex2f(10, 25);
+        g_QglTable.m_pfn_qglEnd();
+
+        g_QglTable.m_pfn_qglBegin(GL_LINE_LOOP);
+        for (i = 0; i < 360; i += 60) {
+            degInRad = i * (3.14159265358979323846 / 180.f);
+            g_QglTable.m_pfn_qglVertex2f(18 + cos(degInRad) * 5, 18 + sin(degInRad) * 5);
+        }
+        g_QglTable.m_pfn_qglEnd();
+
+        degInRad = (360 - ((current - start) % 360)) * (3.14159265358979323846 / 180.f);
+        g_QglTable.m_pfn_qglBegin(GL_LINES);
+        g_QglTable.m_pfn_qglVertex2f(18, 18);
+        g_QglTable.m_pfn_qglVertex2f(18 + cos(degInRad) * 5, 18 + sin(degInRad) * 5);
+        g_QglTable.m_pfn_qglVertex2f(32, 18);
+        g_QglTable.m_pfn_qglVertex2f(32 + cos(degInRad) * 5, 18 + sin(degInRad) * 5);
+        g_QglTable.m_pfn_qglEnd();
+
+        g_QglTable.m_pfn_qglBegin(GL_LINE_LOOP);
+        for (i = 0; i < 360; i += 60) {
+            degInRad = i * (3.14159265358979323846 / 180.f);
+            g_QglTable.m_pfn_qglVertex2f(32 + cos(degInRad) * 5, 18 + sin(degInRad) * 5);
+        }
+        g_QglTable.m_pfn_qglEnd();
+
+        g_QglTable.m_pfn_qglBegin(GL_LINES);
+        g_QglTable.m_pfn_qglVertex2f(40, 22);
+        g_QglTable.m_pfn_qglVertex2f(52, 31);
+        g_QglTable.m_pfn_qglVertex2f(40, 13);
+        g_QglTable.m_pfn_qglVertex2f(52, 4);
+        g_QglTable.m_pfn_qglEnd();
+    }
+
+    g_QglTable.m_pfn_qglPopAttrib();
 }