Performance - OpenGL

  1. H.Stony

    H.Stony Thread StarterMacUser Mitglied

    Mitglied seit:
    27.03.2004
    Beiträge:
    553
    Zustimmungen:
    0
    Code:
    #ifdef _WIN32
    	#include <windows.h>
    	#include <gl\gl.h>
    	#include <gl\glut.h>
    #endif
    
    #ifndef _WIN32
    	#include <glut/glut.h>
    #endif
    
    #include <stdlib.h>
    #include <iostream.h>
    
    void init(void) 
    {
       glClearColor (0.0, 0.0, 0.0, 0.0);
       glShadeModel (GL_SMOOTH);
       glEnable(GL_LIGHTING);
       glEnable(GL_LIGHT0);
       glEnable(GL_DEPTH_TEST);						
       glDepthFunc(GL_LEQUAL);	
    }
    
    GLfloat spin=0.0;
    
    void display(void)
    {
       glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);	
       glColor3f (1.0, 1.0, 1.0);
       glLoadIdentity ();             /* clear the matrix */
               /* viewing transformation  */
       gluLookAt (0.0, 0.0, 5.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0);
       glScalef (1.0, 2.0, 1.0);      /* modeling transformation */ 
       spin+=0.2;
       if(spin>=360) spin=0;
       glRotatef(spin,1.0,1.0,1.0);
       glutSolidCube (1.0);
       glFlush();
       glutSwapBuffers();
    }
    
    void reshape (int w, int h)
    {
       glViewport (0, 0, (GLsizei) w, (GLsizei) h); 
       glMatrixMode (GL_PROJECTION);
       glLoadIdentity ();
       glFrustum (-1.0, 1.0, -1.0, 1.0, 1.5, 20.0);
       glMatrixMode (GL_MODELVIEW);
    }
    
    void keyboard(unsigned char key, int x, int y)
    {
       switch (key) {
          case 27:
             exit(0);
             break;
       }
    }
    
    void animation(void)
    {
       glutPostRedisplay();
    }
    
    int main(int argc, char** argv)
    {
       glutInit(&argc, argv);
       glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB | GLUT_DEPTH);	
       glutInitWindowSize (500, 500); 
       glutInitWindowPosition (100, 100);
       glutCreateWindow (argv[0]);
       init();
       glutDisplayFunc(display); 
       glutReshapeFunc(reshape);
       glutIdleFunc(animation);
       glutKeyboardFunc(keyboard);
       glutMainLoop();
       return 0;
    }
    
    dieser code ist aus einem tutorial aus meinem opengl buchh (ein bisschen modifiziert) die animatin läuft auf mac gewaltig gut...jedoch auch windows total langsam... obwohl der pc um einiges schneller ist...kapier das einfach nicht.....falls jemand einen fehler sieht bitte melden...

    PS.: auf mac opengl entwickleln -> unmöglich weil da funktioniert immer alles sofort ;-)
     
    H.Stony, 06.12.2004
  2. Maulwurfn

    MaulwurfnMacUser Mitglied

    Mitglied seit:
    06.06.2004
    Beiträge:
    14.050
    Zustimmungen:
    834
    kann man das irgendwo mal testen? würde mir das gerne mal anschauen!

    was stellt denn das dar? welche grafikkarten haben die beiden rechner?

    gruß
    mick
     
    Maulwurfn, 06.12.2004
  3. oneOeight

    oneOeightMacUser Mitglied

    Mitglied seit:
    23.11.2004
    Beiträge:
    48.162
    Zustimmungen:
    3.886
    auf den mac wird der opengl kram mit hilfe der grafikkarte hardware beschleunigt. welches opengl hast du denn da auf windows? wird das auch von der grafikkarte unterstützt? (du könntest jetzt natürlich auch behaupten M$ macht opengl absichtlich langsam auf windows, damit die leute directx benutzen ;))
     
    oneOeight, 06.12.2004
  4. Lace

    LaceMacUser Mitglied

    Mitglied seit:
    05.06.2003
    Beiträge:
    1.573
    Zustimmungen:
    13
    Aus welchem Buch stammt denn der Sourcecode ?
     
    Lace, 06.12.2004
  5. H.Stony

    H.Stony Thread StarterMacUser Mitglied

    Mitglied seit:
    27.03.2004
    Beiträge:
    553
    Zustimmungen:
    0
    opengl programming guide...ich hab das mit der animation aber selber hinzugefügt....ok ein bisschen unsauber...aber das kann nicht das problem sein
    hardware problem schließe ich aus! pc geforce 4TI mac: ibook G3
    PC schafft ca. 100 fps wobei ibook 800 macht oder so!! prozessor ist am win zu 7% ausgelastet....eher ein treiberproblem oder eben ein problem in meinem code...ich glaub die glu funktion schränkt so ein weil ich hab schon andere programme auf win portiert und die sind super gelaufen

    das problem ist: ich hab dieses shema für mein spiel verwendet und das läuft unter windows mies...dann hab ich meine code vereinfacht und hier gepostet....kein opengl programmier?
     
    H.Stony, 06.12.2004
  6. xiron

    xironunregistriert

    Mitglied seit:
    23.11.2003
    Beiträge:
    176
    Zustimmungen:
    0
    Kann mir jemand sagen wie ich diesen Code in Xcode kompiliere?! Irgendwie habe ich keinen Plan wie ich diese GLUT libarys richtig include?!
     
    xiron, 06.12.2004
  7. -Nuke-

    -Nuke-MacUser Mitglied

    Mitglied seit:
    13.09.2003
    Beiträge:
    2.135
    Zustimmungen:
    15
    Also erst mal reicht bei

    glFlush();
    glutSwapBuffers();

    nur das glutSwapBuffers(). Das glFlush brauchst du dann nicht mehr machen.

    Aber ansonsten... OK. Der Code ist sehr, naja... überfüllt. Viel unnützes Zeug drinnen , aber sollte eigentlich laufen. Läuft denn unter Windows anderes OpenGL-Zeugs gut? Welcher Compiler?

    Achja. Ich würde kein Spiel mit GLUT programmieren... Da hast du zu viel Arbeit. SDL ist da leichter.
     
    -Nuke-, 06.12.2004
  8. H.Stony

    H.Stony Thread StarterMacUser Mitglied

    Mitglied seit:
    27.03.2004
    Beiträge:
    553
    Zustimmungen:
    0
    am einfachsten-> c++ tool machen -> add existing framework -> glut und opengl framework inkludieren -> sollte gehen....
    aber das nützt eh nichts...auf mac gehts ja super....windows memmt da nur irgendwo :-((((((((((((((((((((((((((
     
    H.Stony, 06.12.2004
  9. H.Stony

    H.Stony Thread StarterMacUser Mitglied

    Mitglied seit:
    27.03.2004
    Beiträge:
    553
    Zustimmungen:
    0
    wieso zuviel arbeit...und hab noch nie was von sdl gehört...

    anderes zeug läuft..wenn ich nur glOrtho verwende läuft alles...kapier es einfach nicht.....
     
    H.Stony, 06.12.2004
  10. H.Stony

    H.Stony Thread StarterMacUser Mitglied

    Mitglied seit:
    27.03.2004
    Beiträge:
    553
    Zustimmungen:
    0
    also bis jetzt bin ich von glut begeistert...was ist an sdl besser?
     
    H.Stony, 06.12.2004
Die Seite wird geladen...
Ähnliche Themen - Performance OpenGL
  1. Dylans Ghost
    Antworten:
    2
    Aufrufe:
    251
    Dylans Ghost
    06.11.2015
  2. dhohmann
    Antworten:
    3
    Aufrufe:
    1.353
    Vater Gans
    20.09.2009
  3. tobiii
    Antworten:
    24
    Aufrufe:
    1.337
  4. Heat Vision
    Antworten:
    10
    Aufrufe:
    1.815
    Heat Vision
    22.11.2006
  5. mdtrinker
    Antworten:
    4
    Aufrufe:
    530