بتـــــاريخ : 3/1/2011 3:52:52 AM
الفــــــــئة
  • الحـــــــــــاسب
  • التعليقات المشاهدات التقييمات
    0 2342 0


    برنامجك الأول : Opengl + Glut باستخدام CodeBlocks و Visual Cpp .

    الناقل : elmasry | العمر :42 | الكاتب الأصلى : الشمري | المصدر : www.arabteam2000-forum.com

    كلمات مفتاحية  :

    السلام عليكم .


    الهدف :
    * انشاء تطبيقك الأول باستخدام OpenGL و GLUT مع CodeBlocks , أو Visual Cpp .

    * الشرح سيكون تحت نظام الويندوز .

    المتطلبات :

    * فهم للسي بلس .. + عمل تطبيقات سابقة باستخدام Visual Cpp أو CodeBlocks ( انظر الى قسم السي اذا كنت لا تعرف ) .

    * معلومات عامة حول OpenGL و المكتبة GLUT ( سيتم اضافة موضوع حول ذلك مستقبلا ان شاء الله . )


    الملفات المطلوبة :

    * اذا كنت تريد العمل مع CodeBlocks ( والذي يأتي معه في الغالب المترجم MinGW .. فقم بتحميل البرنامج من هذا الموقع :
    http://www.codeblock...nloads/binaries
    وصلة مباشرة :
    http://downloads.sourceforge.net/codeblock...mingw-setup.exe

    ملاحظة : قم بتحميل الملف الذي يأيتي معه المترجم MinGW .. أي الملف الذي حجمه كبير ( 18 ميقا تقريبا ) .

    * اذا كنت تريد العمل مع Visual Cpp 2005 أو Visual Cpp 2008 أو حتى 2003 >> فيجب أن تملك نسخة منه ( راجع موقع microsoft ).. (علما بأنه تم التجريب على professional و ليس express .. )

    * يجب تحميل هذه الملفات :

    http://www.xmission....t-3.7.6-bin.zip


    التثبيت :

    1- OpenGL تأتي تلقائيا مع أي مترجم .

    2- لتثبيت المكتبة GLUT .. يجب اخبار المترجم بموقعها .. ويوجد عدة طرق .. منها :

    ---- اذا كنت تعمل على CodeBlocks :

    * انسخ الملف glut32.dll الى مجرد النظام C:Windows/system32 .
    * انسخ الملف glut.h الى مجلد المكتبات .. ستجده هنا :

    C:\Program Files\CodeBlocks\MinGW\include\GL


    طبعا حسب المكان الذي ثبت فيه المترجم ... ممكن يكون على القرص D ,,

    * انسخ الملف glut32.lib الى هذا المكان :

    C:\Program Files\CodeBlocks\MinGW\lib




    ---- اذا كنت تعمل على Visual Cpp 2008 :

    * انسخ الملف glut32.dll الى مجرد النظام C:Windows/system32 .
    * انسخ الملف glut.h الى مجلد المكتبات .. ستجده هنا :

    C:\Program Files\Microsoft SDKs\Windows\v6.0A\Include\gl


    طبعا حسب المكان الذي ثبت فيه المترجم ... ممكن يكون على القرص D ,,

    * انسخ الملف glut32.lib الى هذا المكان :

    C:\Program Files\Microsoft SDKs\Windows\v6.0A\Lib



    ---- اذا كنت تعمل على Visual Cpp 2005 :

    * انسخ الملف glut32.dll الى مجرد النظام C:Windows/system32 .
    * انسخ الملف glut.h الى مجلد المكتبات .. ستجده هنا :

    C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\Include\gl


    طبعا حسب المكان الذي ثبت فيه المترجم ... ممكن يكون على القرص D ,,

    * انسخ الملف glut32.lib الى هذا المكان :

    C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\Lib



    برنامجك الأول :

    ---اذا كنت تعمل على Visual Cpp 2008 أو 2005 أو حتى 2003 :

    * طبق الخطوات التالية .. بعد تشغيل البرنامج :

    ارفق صورة : monthly_08_2008/post-42837-1217792247.jpg
    Resized to 95% (was 683 x 471) - Click image to enlargeارفق صورة : monthly_08_2008/post-42837-1217792253.jpg

    Resized to 95% (was 683 x 447) - Click image to enlargeارفق صورة : monthly_08_2008/post-42837-1217792259.jpg

    ارفق صورة : monthly_08_2008/post-42837-1217792272.jpg







    ---اذا كنت تعمل على CodeBlocks :

    * طبق الخطوات التالية :

    ارفق صورة : monthly_08_2008/post-42837-1217792351.jpg
    ارفق صورة : monthly_08_2008/post-42837-1217792358.jpg
    ارفق صورة : monthly_08_2008/post-42837-1217792363.jpg
    ارفق صورة : monthly_08_2008/post-42837-1217792371.jpg
    Resized to 96% (was 681 x 521) - Click image to enlargeارفق صورة : monthly_08_2008/post-42837-1217792381.jpg



    بالنسبة لهذه النافذة .. قم باضافة مكتبة بالضغط على add .. ثم اضف المكتبات التالية :

    opengl32
    glu32
    winmm
    gdi32

    ُم اضف المكتبة glut32.lib .. والتي ستجدها في المكان الذي وضعتها فيه قبل قليل .. ( انظر التثبيت ) .. انظر الى الصورة .. لتجد مثال على ذلك .

    وأخيرا :

    ارفق صورة : monthly_08_2008/post-42837-1217792387.jpg

    ملاحظة :

    هذا هو الكود المستخدم في المثال .. اذا كنت متعاجز أن تكتبه :) :

    انسخ الكود
     
    #include
    #include
    #include
    void display(void) {
      glClear(GL_COLOR_BUFFER_BIT);
      glLoadIdentity();
      glRectf(-0.5,-0.5,0.5,0.5);
      glutSwapBuffers();
    }
     
    void idle(void) {
       glutPostRedisplay();
    }
    int main(int argc,char **argv) {
       glutInit(&argc,argv);
       glutInitWindowSize(512,512);
       glutInitDisplayMode(GLUT_RGB|GLUT_DOUBLE);
       glutCreateWindow("OpenGL GLUT ");
       glutDisplayFunc(display);
       glutIdleFunc(idle);
       glutMainLoop();
     
      return 0;
    }
     
     
     
     

    كلمات مفتاحية  :

    تعليقات الزوار ()