בעיה ב- OpenGL ב- C++ - תכנות - HWzone פורומים
עבור לתוכן
  • צור חשבון

בעיה ב- OpenGL ב- C++


פיני1805

Recommended Posts

שלום,

אני מנסה לצייר גליל ב- OpenGL ומשום מה הוא מראה לי מסך ריק במקום את הגליל.

מצ"ב קוד. אודה אם תוכלו להגיד לי מה הבעיה .

תודה

#include<glut.h>
float angle=0.;
GLUquadric *IDquadric;
void display()
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glLoadIdentity();
glPushMatrix();// הכנסה למחסנית
glTranslatef(0.,-1.5,0.);// קביעת המיקום של הספרה על פני החלון
glColor3d(0,1,1);// קביעת צבע הספרה לכחול
gluCylinder(IDquadric,2.0f,2.0f,1.0f,25,32);
glPopMatrix();//הוצאה מהמחסנית
glutSwapBuffers();
glFlush();
}
void idle()
{
angle+=0.2;
if(angle>360.) angle-=360.;
glutPostRedisplay();
}
void myinit()
{
glClearColor(1.0,1.0,1.0,1.0);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glOrtho(-6.,6.,-6.,6.,-6.,6.);
glMatrixMode(GL_MODELVIEW);
IDquadric=gluNewQuadric(); // Create A Pointer To The Quadric Object ( NEW )
gluQuadricNormals(IDquadric, GLU_SMOOTH);
}
void main(int argc,char** argv)
{
glutInit(&argc,argv);
glutInitDisplayMode(GLUT_DOUBLE | GLUT_DEPTH | GLUT_RGB);
glutInitWindowSize(400,400);
glutInitWindowPosition(10,10);
glutCreateWindow("3d objects");
glutDisplayFunc(display);
glutIdleFunc(idle);
glEnable(GL_DEPTH_TEST);
myinit();
glutMainLoop();
}

קישור לתוכן
שתף באתרים אחרים

OpenGL הוא קצת כאב ראש כי יש מליון פרמטרים שכולם צריכים להיות נכונים או לפחות מתאימים. כל אחד שתשכח יכול לגרום לשלל עצום של בעיות שהדיווח עליהן בעייתי. לא קנפגת shading ו-lighting, לדוגמא.

כדי לראות שזכרת לקנפג כל מה שצריך, עדיף שתוריד דוגמא פועלת מ-nehe או מקום אחר, ואז תשווה פעולה פעולה.

אם כל הקינפוגים נראים לך נכונים, אז אחד הדברים שאפשר לבדוק זה את מצב השגיאה של opengl - אחרי כל פעולה תבדוק סטטוס השגיאה.

קישור לתוכן
שתף באתרים אחרים

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

×
  • צור חדש...