OPENGL ומטריצות
פורום בניית משחקי מחשב עדיין סגור, סורי
אני מנסה לתכנת סימולטור טיסה... היו לי קשים רבים עם תיאור וקטור המהירות של המטוס, ניסיתי להשתמש בתיאור שלו עם גודל וYAW PITCH ROLL, מה שהסתבר כרעיון גרוע. לכן עברתי לתיאור של מערכת הקואורדינטות המקומית של המטוס בעזרת מטריצה. עד לכאן הכל עובד נפלא, אפילו ציירתי את מערכת הצירים ואני רואה שהיא מגיבה בדיוק כמו שאני רוצה. עכשיו הייתי רוצה להשתמש במטריצה הנ"ל בתור מטריצת הMODELVIEW בOPENGL כדי שהמטוס יצויר כמו שצריך, אבל כשאני מנסה לעשות את זה המטוס מצויר בזויות לא קשורות. אה, ולא שכחתי להוסיף את W, ולא שכחתי שבOPENGL הוא מצפה לעבוד בטורים ולא שורות. קצת קוד:
פורום בניית משחקי מחשב עדיין סגור, סורי
/*Drawing the plane's local coordinate System*/ glLoadIdentity(); glBegin(GL_LINES); // X Axis glVertex3f(0,0,0); glVertex3f(theMatrix[0],theMatrix[4],theMatrix[8]); //Y Axis glVertex3f(0,0,0); glVertex3f(theMatrix[1],theMatrix[5],theMatrix[9]); //Z Axis glVertex3f(0,0,0); glVertex3f(theMatrix[2],theMatrix[6],theMatrix[10]); glEnd();//So far all's well glPushMatrix(); glTranslatef(0,0,-6);//Zoom Out A little bit glMultMatrixf(theMatrix);//Rotate by the Plane's Orientation Matrix DrawPlane();// the plane is visible, but with angles that have no relation to local coord System glPopMatrix();
תודה