समस्या
मैंने अभी जीएलयूटी का उपयोग करके ओपनजीएल के साथ काम करना शुरू कर दिया है। नीचे दिया गया कोड दो वायरफ्रेम क्यूब्स और एक क्षेत्र को संकलित करता है और प्रदर्शित करता है। समस्या यह है कि जब मैं खिड़की को खींचने या आकार बदलने का प्रयास करता हूं तो यह मेरे माउस का पालन करने से पहले एक उल्लेखनीय देरी को प्रेरित करता है।ओपनजीएल ग्लूट विंडो बहुत धीमी है, क्यों?
यह समस्या अपने साथी के कंप्यूटर, एक ही कोड पर नहीं होती है।
मैं विंडोज 7 कंप्यूटर पर विजुअल स्टूडियो 2012 सी ++ एक्सप्रेस के साथ काम कर रहा हूं। मैं एक अनुभवी प्रोग्रामर नहीं हूं।
कोड
// OpenGLHandin1.cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
#include <GL/glut.h>
void initView(int argc, char * argv[]){
//init here
glutInit(&argc, argv);
//Simple buffer
glutInitDisplayMode(GLUT_SINGLE | GLUT_RGBA);
glutInitWindowPosition(100,100);
glutInitWindowSize(800,400);
glutCreateWindow("Handin 2");
}
void draw(){
glClearColor(0,0,0,1);
glClear(GL_COLOR_BUFFER_BIT);
//Background color
glPushMatrix();
glLoadIdentity();
glTranslatef(0.6, 0, 0);
glColor3f(0.8,0,0);
glutWireCube(1.1); //Draw the cube
glPopMatrix();
glPushMatrix();
glLoadIdentity();
glTranslatef(-0.5, 0, -0.2);
glColor3f(0,0.8,0);
glutWireCube(1.1); //Draw the cube
glPopMatrix();
glPushMatrix();
glLoadIdentity();
glTranslatef(0, 1.2, 0);
glRotatef(90, 1, 0, 0);
glColor3f(1,1,1);
glutWireSphere(0.6, 20, 20); //Draw the sphere
glPopMatrix();
//draw here
//glutSwapBuffers();
glutPostRedisplay();
glFlush();
}
void reshape (int w, int h){
glViewport(0,0,w ,h);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
gluPerspective(45, (float)w/(float)h, 1.5, 10);
gluLookAt(1.5, 2.5, 4,
0, 0.6, 0,
0, 1, 0); //Orient the camera
glRotatef(5, 0, 0, 1);
glMatrixMode(GL_MODELVIEW);
}
int main(int argc, char * argv[])
{
initView(argc,argv);
glutDisplayFunc(draw);
glutReshapeFunc(reshape);
glutMainLoop();
}
बस एक अनुमान है, लेकिन शायद आपके 'ड्रा' फ़ंक्शन –
में 'नींद (1) 'जोड़ने का प्रयास करें जो वास्तव में काम करता है! क्या आप इस काम के लिए तकनीकी कारण जानते हैं और मुझे अपने साथी छात्रों की आवश्यकता क्यों है? – aPerfectMisterMan