السلام عليكم : ----- الدالة التي تبدأ بـglu ... او gl لها مدلول معين :: مثلا glEnable توجد في الملف الرأسي gl.h auxWireSphere توجد في الملف الرأسي glaux.h gluProject توجد في الملف الرأسي glu.h الان سنعرف انواع المتغيرات المستخدمة في opengl
unsigned int GLenum ui unsigned char GLboolean ub unsigned int GLbitfield ui signed char GLbyte b short GLshort s int GLint i int GLsizei i unsigned char GLubyte ub unsigned short GLushort us unsigned int GLuint ui float GLfloat f float GLclampf f double GLdouble d double GLclampd d void GLvoid [/b]
اعتذر عن سوء التنسيق الامر واضح .. اذا رأيت متغير من نوع GLenum فهو نفسه unsigned int اذا رأيت متغير من نوع GLfloat فهو نفسه float مثال flaot x=9.5; نفس الصيغة التالية : GLfloat x=9.5; ----- وهذا موجود حتى في دوال الويندوز مثلا unsigned int مماثل لـ UINT يعني UINT A=15; مماثل لـ unsigned int A=15; والعمود الاخير هو الصيغة المختصرة لنوع المتغير مثلا GLfloat f >>> glVertex3f (1.0,1.0); يعني حرف f ان هذه الدالة تطلب متغير من نوع GLfloat وهكذا مع باقي الدوال والمتغيرات .. --- - في opengl الدوال لها عدة صيغ مثلا لنأخذ الدالة glVertex لها عدة صيغ ... مثلا glVertex2d, glVertex2f, glVertex2i, glVertex2s ... والدوال السابقة تعني 1- انها تطلب بارمترين فقط ولذلك ترى الرقم 2 2- تطلب نوع من انواع المتغيرات .. مثلا حرف f للدلالة على ان البارمترات من نوع GLfloat ...
glVertex3d, glVertex3f, glVertex3i, glVertex3s, glVertex4d, glVertex4f, glVertex4i, glVertex4s, glVertex2dv, glVertex2fv, glVertex2iv, glVertex2sv, glVertex3dv, glVertex3fv, glVertex3iv, glVertex3sv, glVertex4dv, glVertex4fv, glVertex4iv, glVertex4sv
وش رايك ؟؟ ؟ لا تخاف هي مجرد دالة واحدة تعطيك حرية اكبر باختيار نوع بارمتراتها .. حاليا استخدم واحدة وهي glVertex3f وستكفيك ان شاء الله تعالى لان العمل واحد .. واكرر لاتخاف ..من تلك الصيغ فلن تتعامل معها ..كلها لكن لاحظ ايضا : الدالة التي تنتهي بالحرف v .. هذا يعني انها ستستقبل مصفوفة من ثلاث عناصر .. او عنصرين او اربع عناصر .. ستعرفها لاحقا ..باذن الله . خلصنا