سؤال

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

سؤالي هو: في مكاننا ستبدأ في تعلم OpenGL (ربما عبر خطأ) أم هل هناك احتمال أفضل اليوم؟ ماذا عن Direct3D؟ أي كتب قد تقترح؟ طلبنا زوجين، وتحديدا

  • ديف شيكرينر دليل برمجة OpenGL
  • بداية لوقا Benstead's OpenGL Game Programming
هل كانت مفيدة؟

المحلول

النظر في استخدام محرك 3D مفتوح المصدر مثل ogre3d أو Irrlicht.. وبعد بهذه الطريقة يمكنك التركيز على صنع لعبة: المحتوى، اللعب.

يحدد كلا المحركات طبقة تجريد يمكنها تعيين ل Direct3D أو OpenGL تراجع.

تحرير: في البداية لم ألاحظ أنك ذكرت جافا، على أي حال دعم كل من المحركات ترتيب Java.

نصائح أخرى

إذا قررت تعلم برمجة الرسومات المنخفضة المستوى بدلا من استخدام محرك ثلاثي الأبعاد أعلى مثل Ogre3D أو Irrlicht، أوصي بدءا من OpenGL ES 2.x، وهو مجموعة فرعية من OpenGL.

OpenGL ES 2.x هي مجموعة فرعية مبسطة من OpenGL للأنظمة المضمنة مع أجهزة قابلة للبرمجة مثل الهواتف. على سبيل المثال، في OpenGL قد يكون هناك طرق متعددة لإنجاز المهام، ولكن في Open GL ES 2.x، هناك طريقة واحدة فقط. لأن هناك اختيار أقل في OpenGL ES 2.x، فهناك أقل بكثير لتعلمه إتقان OpenGL ES 2.x. دليل برمجة OpenGL ES 2.0 هو 480 صفحة، ودليل برمجة OpenGL، الطبعة السابعة هي 936 صفحة.

علاوة على ذلك، فإن استخدام OpenGL ES 2.x سوف يمنحك جمهورا أوسع للأجهزة لعملك. نظرا لأنها مجموعة فرعية من OpenGL، ستعمل Code Code المكتوبة ل OpenGL ES 2.x على نظام OpenGL الكامل مع تعديل قليل أو معدوم. يمكن أن تعمل رسومات لعبتك على مجموعة من الأجهزة المستهدفة من أجهزة الكمبيوتر المكتبية إلى الهواتف الذكية.

يمكنك اختيار محرك 3D مفتوح المصدر مثل ogre3d.

ولكن إذا كنت ترغب حقا في كتابة محرك الرسومات لوحدك (مثيرة للاهتمام)، فابدأ من خلال تعلم الجبر الخطي. ليس الاشياء المتقدمة تماما، ولكن يجب أن تكون مرتاحا جدا مع التعبير عن نفسك في متجهات الترجمة، ومصفوف الدوران وما شابه ذلك.

إذا كنت معتادا بالفعل على هذه المفاهيم، فاختر إما Direct3D أو OpenGL - وهذا يعتمد أكثر على النظام الأساسي المتاح. إذا كنت ترغب في الكود في بيئة Mircosoft، فاختر Direct3D، كل شيء آخر، اختر OpenGL.

يعتمد اختيار المكتبات الإضافية على لغة البرمجة. من المحتمل أن تكون بدائل أفضل من وفرة SDL (ج) أو كيو تي (C ++).

حسنا، إذا لم تقم ببرمجة رسومات ثلاثية الأبعاد مطلقا من قبل، فانتقل إلى البساطة وتعلم - أنت تذهب. كان هناك أن تكون مجموعة من برامج تعليمية لطيفة حقا من قبل Nehe (النيون الهيليوم) ل OpenGL، والتي كانت الطريق الذي أخذته.

لقد وجدت OpenGL أسهل في البدء مع منحنى التعلم ليس حادا جدا. يمكنك الحصول على نتائج سريعة تساعد كثيرا مع الإحباط الأولي / الدافع. طن من المساعدة وما إلى ذلك. فكر في اعتماد OGRE3D إذا كنت ترغب حقا في رؤية اللعبة انتهت: O) (إخلاء المسئولية: أعرف أن هناك أيضا محركات أخرى ولكن OGRE مستقرة وثابتة وتأتي مع وثائق جيدة)

إذا كنت ترغب في الإقامة، فلن يقوم DirectX المستقل من النظام الأساسي بعدم القيام به لأنه يقتصر على منصات Microsoft Windows

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top