موضوع: احتاج مساعدة

ردود: 4 | زيارات: 1782
  1. #1

    احتاج مساعدة

    سلام عليكم اريد تصميم شخصية شبيهة بالشخصيات الكارتونية في لغة ++visual c
    هل ممكن استخدام opengl او directx 3d ايهما افضل و اسهل يعني هل يمكن تصميم الشخصية ببرنامج اخر و ربطه مع ++vc لتحريك الشخصية اي واحد عندو معلومة لا يبخل علينا وشكرا


  2. #2
    عضو نشيط
    تاريخ التسجيل
    Jan 2011
    المنطقة
    سوريا
    العمر
    21
    ردود
    561
    اخي الكريم ال DirectX لا يعتبر برنامج للتصميم ثلاثي الابعاد ففي النهاية هو مكتبة دوال وواجهات برمجية، وهو يتيح لك انشاء مجسمات عن طريق تعريف كل نقطة في كل جسم وكتابة خصائص كل نقطة، ومن ثم ربط النقاط ببعضها البعض، ولتكوين كائن معدق بآلاف النقاط فإنك ستحتاج الى تعريف هذه النقاط كلها برمجياً في ال C++.
    الآن حل هذه المشكلة هو استخدام احد برامج التصميم ثلاثي الابعاد التي تمكنك من انشاء المجسم بشكل مرئي مع تكوين برمجي مخفي عنك، وبعد الانتهاء من ذلك التصميم تقوم انت بتصديره بصيغة ملف ثلاثي الابعاد ويفضل OBJ (معظم برامج التصميم ثلاثي الابعاد تدعمها.
    سبب افضلية OBJ انها صيغة واضحة وهي عبارة فقط عن ملف نصي يمكن فتحه بأي برنامج، ويتم في العادة ذكر جميع النقاط اولاً، احداثيات التكستشرات، ال Normal الخاص بكل نقطة. طبعاً لهذه الصيغة معايير محددة يجب عليك ان تراجعها على الانترنت كي تعرف تمثيل كل سطر فيها.
    بعد ذلك عليك ان تقوم بعمل برنامج لقراءة هذه الملفات النصية وتحليلها سطر سطر حيث كل سطر يمثل شيء، ومن ثم تحلل الاسطر الى المعلومات التي فيها، وتستخدم هذه المعلومات في بناء المجسمات في ال DirectX وهذا ما يفعله اي محرك العاب او ما شابه.
    طبعاً انا بسطت الموضوع لك بشكل كبير، ولكنني وضعتك على خارطة الطريق الآن عليك ان تتوسع في كل قسم لوحده ويفضل الاستعانة بالمصادر الاجنبية والكتب التي تتحدث عن ال DirectX فموضوع استيراد المجسمات هو امر اساسي في دورة او كتاب.

    موضوع تحريك الشخصيات موضوع معقد وليس بالسهل، ولا يمكن الاجابة عليه بموضوع في منتدى، هذا الموضوع يأخذ فصول في كتب برمجة الرسوميات، لأن الشخصيات تتكون من بنى شجرية تمثل العظام الموجودة فيها، واتصال هذه العظام ببعضها، وتحركها بالنسبة لبعضه البعض، يعني الموضوع ضخم واقترح عليك ان تبحث عن كتاب لتعليم ال DirectX يكون تفصيلي ومحاولة الحصول على نتائج بسرعة ومن خلال عدة مقالات لن ينفع.

    بالنسبة ل OpenGL او DirectX فالموضوع ليس بالامر الصعب، OpenGL متعددة المنصات اما DirectX فهو خاص بويندوز (وXBox ولكن يوجد اختلافات)، لذا فإن تحديد المنصات الي تريد استهدافها هو امر اساسي مئة في المئة، وفي حال اخترت ويندوز فالافضلية ل DirectX فالجميع اصبح يعرف ويدرك بأن DirectX يلقى دعماً اكبر وميزات اقوى ويسبق OpenGL في عدد من الامور.
    عليك أن تفعل الأشياء التي تعتقد أنه ليس باستطاعتك ان تفعلها

  3. #3
    شكرا للمعلومات و م
    اهي البرامج التي تساعدني على تصميم ثلاثي الابعاد ثم استخدامها في ++vc بطريقة سهلة

  4. #4
    عضو نشيط
    تاريخ التسجيل
    Jan 2011
    المنطقة
    سوريا
    العمر
    21
    ردود
    561
    كما قلت لك اخي الكريم عليك ببنرامج يصدر بصيغة معينة تستطيع قراءتها والصيغة الافضل هي OBJ لأن الصيغة نصية ومعروفة بشكل جيد مع توصيف رسمي لها، اما صيغ اخرى مثل FBX فلا يوجد توصيفات رسمية لها.
    المهم معظم البرامج تدعم هذه الصيغ مثل Blender او Maya او 3ds Max ولكن انصحك بال Blender لأنه مجاني ومفتوح المصدر وبقوة ال 3Ds Max وال Maya، اما البرنامجين الآخرين فهما مكلفان جداً او ستضطر الى الى محاولة الحصول على نسخة برخص تعليمية ولعل الخيار الاسوء هو استخدام نسخ مقرصنة.
    يمكنك ومن اجل التجربة السريعة ان تبحث على ملفات ثلاثية لشخصيات كرتونية او حقيقية وتجربها بنفسك، وفي اغلب المواقع ستجد الصيغة OBJ، ومن ثم تقوم بقرائتها داخل البرنامج الخاص بك باستخدام C++ وDirectX.
    انصحك بالبدء بعمل نماذج بسيطة برمجية داخل C++ لتفهم بالضبط ما هي المعلومات التي يجب ان تقرأها من ملف OBJ. راجع هذا الموقع وستجد عليه دروس مميزة جداً عن ال DirectX.
    عليك أن تفعل الأشياء التي تعتقد أنه ليس باستطاعتك ان تفعلها

Bookmarks

قوانين الموضوعات

  • لا يمكنك اضافة موضوع جديد
  • لا يمكنك اضافة ردود
  • لا يمكنك اضافة مرفقات
  • لا يمكنك تعديل مشاركاتك
  •  
  • كود BB مفعّل
  • رموز الحالة مفعّل
  • كود [IMG] مفعّل
  • [VIDEO] code is مفعّل
  • كود HTML معطل