Unconfigured Ad Widget

تقليص

إعـــــــلان

تقليص
لا يوجد إعلان حتى الآن.

BlackBattleV1.0

تقليص
X
 
  • تصفية - فلترة
  • الوقت
  • عرض
إلغاء تحديد الكل
مشاركات جديدة

  • BlackBattleV1.0

    السلام عليكم ورحمة الله وبركاته
    بعد غياب طويل عن هذا المنتدى الكريم أعود إليكم اليوم بهذا الموضوع الذي أرجو أن ينال رضاكم
    في هذا الموضوع أحببت أن أشارككم تجربتي المتواضعة في مجال برمجة الألعاب راجيا أن تجدوا فيها الفائدة وأن أجد منكم النقد والرأي البنائين
    منذ حوالي الشهر أنهيت انا وعدد من زملائي مشروع لعبة أسميناها BlackBattleV1.0 وسوف اتكلم عن هذا المشروع وأقسامه .



    [ Project OutLines ]
    1. المشروع مقدم في : جامعة دمشق - كلية الهندسة المعلوماتية - السنة الثالثة
    2. هدف المشروع :
      تصميم وبرمجة لعبة موزعة ثلاثية الأبعاد (Multi player 3D Game) على شبكة حواسب محلية (Local Network)
      تحوي اللعبة على فريقين ويتكون كل فريق من عدد من اللاعبين يتم تحديدهم في بداية اللعبة وتتم المواجهة بين الفرقين باستخدام مجموعة من الأسلحة الفردية والجماعية
      كالبنادق والدبابات.
    3. زمن التنفيذ : حوالي الثلاثة أشهر.
    4. أدوات المشروع :
      - لغة البرمجة Java باستخدام بيئة التطوير Eclipse .
      - المكتبة البيانية : OpenGL .
      - برامج أخرى : 3ds max 2009 & PhotoShop CS3.
    [ملاحظة هامة]


    المشروع من بابه لمحرابه من نتاج أعضاء الفريق ، ولم يتم إستخدام أي محركات بيانية او فيزيائية أو رياضية جاهزة .

    [أقسام الشروع]

    [ Black Engine ]



    يشكل القاعدة البيانية والرياضية الأساسية التي يرتكز عليها المشروع، حيث يتألف هذا المحرك من القسمين التاليين :

    • Graphics Core :
    • وهو القسم المتخصص بتنفيذ الوظائف البيانية، حيث يشكل واجهة تخاطب مع مكتبة الـ(jogl) وتوابعها المختلفة، بما يتيح لنا التحكم بالخصائص البصرية للمشهد بشكل سهل ومنظم، بالإضافة إلى تسريع عمليات الرسم من خلال استخدام خوارزميات القص والتحكم في تفاصيل المشهد.
    • Math Core :ويضم صفوفا خاصة بتمثيل المكونات الرياضية المستخدمة في المشروع من نقاط وأشعة ومصفوفات .
    [ MapEditor ]


    التطبيق عبارة عن برنامج تصميم وتحرير خرائط (Map Editor)، يستخدم لتصميم وبناء خرائط قابلة للإستخدام في لعبة BlackBattle.


    وقد تم بناء هذا البرنامج باستخدام محرك BlackEngine.

    حيث يمكن البرنامج المستخدم من بناء خرائط جديدة أو التعديل على خرائط محفوظة سلفا، ثم حفظ الخريطة في ملف خاص من النوع (.Map) أو ضمن ملف من النوع (.XML).

    [ NetWork Unit ]

    وهو القسم المسؤول عن عمليات الربط وإرسال واستقبال الرسائل والأحداث بين اللاعبين المشتركين باللعبة .

    [ Physics Unit ]

    وهو القسم المسؤول عن الحسابات الفيزيائية المرتبطة باللعبة من قذائف وانفجارات وكشف التصادمات بين مكونات اللعبة وغيرها من الظواهر الفيزيائية.

    [ Game Manager ]

    وهو القسم المسؤول عن الربط بين كافة الأقسام السابقة ، حيث ينظم عمليات الإنتقال بين حالات اللعبة .

    [ DataBase Unit ]

    وهو القسم المسؤول عن عمليات حفظ واسترجاع البيانات من قاعدة المعطيات .

    [ Environment Unit ]

    وهو القسم المسؤول عن تمثل مكونات البيئة برمجيا مثل : الأبنية والأشجار والجنود والدبابات ...الخ.

    [مشاهد من اللعبة]









    [ Credits ]


    I Love Nvidia Cg


  • #2
    وعليكم السلام ورحمة الله وبركاته . ما شاء الله ... يعتبر أضخم مشروع دخل قسمنا منذ بداية نشوءه ..
    لي يعض الأسئلة :
    1- عندما قلت أن المشروع كامل تم وضعه من قبل الفريق .. هل قصدت أن Black Engine هو محرك جديد قمتم ببرمجته بإستخدام ال Open-GL فيه ؟ أم أنكم بنيتم Level Editor من خلاله !
    2 - بالنسبة لحفظ الخرائط المنتجة من المحرك السابق ، هل يتم تخزين قيم عددية مما يعني أن الملف لا يتجاوز ال 5 ميجا .. أم أنكم قمتم بإرفاق ميديا من صور وصوت داخل الملف ؟
    3 - Physics Unit ، ماهي المصادر التي كانت مرجع لكم في بناءه ؟
    4 - بالنسبة للظلال الموجودة باللعبة ، كيف قمتم بصنعها ؟
    5 - قلت ببداية البرنامج أنك لم تستخدم أي شيء جاهز .. فهل هذا الكلام ينطبق على الموديلات للجنود والمباني والدبابات !

    بالنهاية عمل موفق وأحييك أنت وفريقك بهذا الإنجاز الرائع .

    تعليق


    • #3
      أنا لي بعض الأسئلة
      لماذا إستخدمتم Java ؟ و لم تستخدموا C++ ؟
      ما سبب إختيار OpenGL رغم أن DirectX أقوى ؟
      أما بقية الأسئلة سألها OMS بدل عني

      <<Nobody>> سابقاً

      تعليق


      • #4
        طبعا في مشروع زى ده مقدرش اقول غير رائع جدا جدا جدا

        هذا كما قال الاخ اسامة اكبر مشروع دخل القسم و افضلهم لي سؤال واحد

        زمن التنفيذ ثلاث شهور هل تقصد ان حتي انه تم انجاز المشروع في ثلاث شهور اراه زمن قياسي جدا جدا

        و بقية الاسئلة سألها الاخ اسامة و الاخ محمد و ارجو الاجابة

        و احب اهنيكم بهذا العمل الاكثر من رائع
        Egypt


        I Love Direct-X

        سبحان الله و بحمده سبحان الله العظيم
        اللهم صلي وسلم و بارك علي سيدنا محمد

        تعليق


        • #5
          مشكور أخي oms على التشجيع والحمد لله أن المشروع أعجبك

          الأجوبة على أسئلتك :

          1- نعم الـ BlackEngine هو محرك جديد قمنا بإنشاءه مباشرة فوق مكتبة الـ OpenGL ، فهو يقدم واجهة تخاطب مع هذه المكتبة ، مثل xna مثلا طبعا مع فارق القدرات "الشاسع" لأن المدة قصيرة جداوخبرتنا وعددنا محدود

          2- الخرائط تحوي فقط على قيم عددية لتحيد مواقع وقياسات مكونات الخريطة وبعض القيم الأخرى،وليس من المعقول أن نخزن الميديا فيها

          3-عدد من المراجع :
          مثل :Morgan Kaufmann Game Physics Engine Development Mar 2007
          بالإضافة لما ندرسه في الجامعة في بعض المقررات

          4- بالنسبة للظلال توجد طريقتين :
          الأولى : باستخدام الإسقاط الرياضي للمجسمات على المستوي(ات) المشكلة للأرض ،هذا بالنسبة للأجسام المتحركة (أو المتغيرة الظل)
          الثانية : باستخدام الـ Shadow Maps وهي صور للخريطة مع ظلال مكوناتها ،وذلك للأجسام غير المتحركة كالـ Terrain بسبب كون ظلها ثابت ولا داعي لحسابه في كل فريم.

          5- فيما يخص الجانب البرمجي فلايوجد أي شيء جاهز كله من صنعنا
          أم الصور والإكساءات فقسم منها من صنعنا وقسم آخر صور وإكساءات جاهزة عدلنا عليها بما يتوافق مع المشروع
          وأخيرا المجسامات كلها من صنعنا (مباني أشجار أسلحة دبابات واجهات نباتات....الخ ) إلا الجندي (MD2 Model) فهو جاهز
          والأهم هو أن أغلب التصاميم تمت ضمن الـOpenGL لتسريع الرسم وتخفيف الذاكرة المستخدمة.

          بتمنى تكون الإجابات واضحة .

          وبدي ضيف شيء أخير.......هالمشروع مدته متل ماقلت 3 أشهر........يعني ولا شي عمليا وهو قابل للتطوير بشكل كبير

          ولذلك نحنا بدنا نطور هالمشروع وبدأنا بالهشي.....................مثلا :

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

          هاد المشهد باستخدام Nvidia Cg Shader

          I Love Nvidia Cg

          تعليق


          • #6
            شكرا أخي <<Nobody>> وأخي general1

            1- ليش Java وOpenGL ؟
            ماهو هون التحدي الكبير ، يعني برأيكن إذا قدرنا (بحمد الله) نعمل هالمشروع بأداتين متل الـ Java والـOpenGL ، فكيف بأداتين متل الـ C++ والـDirext3D
            وعلى فكرة صورة الـTerrainShader باستخدام الـC++ ، لأننا بدأنا نحول الـBlackEngine للـC++ ، وفي خطة لاستخدام الـDirect3D ، وعلى كل حال كلها أدوات متل بعضها من حيث المفاهيم والفوارق بينها بأغلب الأحيات Syntax و Code

            2- وبالنسبة للمدة : نعم وأقل من 3 أشهر (ولا تنسى أنو في مواد تانية واختبارات ومشاريع تانية) ، وهي مدة المشروع لأنو مخصص للفصل الدراسي الثاني ولحق إذا بتلحق
            بس الحمد لله قدرنا نلحق بأعجوبة (بالرغم أنو ماقدرنا نعمل كل شيء كنا مفكرين نساويه )
            I Love Nvidia Cg

            تعليق


            • #7
              الصارحة عندما رأيت رد واحد فقط صابتني سكتة قلبة
              المهم إنته حكيت تحدي ليش تحدي ؟
              و كمان هل هي فقط شبكات أم فيها لعب عادي؟

              أنو أسهل ذكائ إصطناعي أم ؟ شبكات ؟

              و فعلاً إنتو شباب رهيبين

              <<Nobody>> سابقاً

              تعليق


              • #8
                المشاركة الأصلية بواسطة <<Nobody>> مشاهدة المشاركة
                الصارحة عندما رأيت رد واحد فقط صابتني سكتة قلبة
                المهم إنته حكيت تحدي ليش تحدي ؟
                و كمان هل هي فقط شبكات أم فيها لعب عادي؟

                أنو أسهل ذكائ إصطناعي أم ؟ شبكات ؟

                و فعلاً إنتو شباب رهيبين
                تحدي............لأنو حتى تأثبت مقدرتك لازم تكون قادر على التعامل مع اسوأ الظروف......مثلا Java غير مناسبة كثيرا للألعاب بسبب البطئ وعدم التحكم الكامل بالذاكرة (يعني إذا ماانتبهت لاستخدامك للذاكرة ببساطة المشروع رح يفشل عند اول عقبة ويلي بيشتغلوا Java بيعرفوا هالشي على عكس الـC++)
                وحتى تحصل على درجات عالية لازم تأثبت مقدرتك الحمد لله حصلنا على 92\100 بهالمشروع.

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

                وبالعكس نحنا شباب عاديين جدا........ويلي عملناه ممكن يعمله أي حدا عندو شوية صبر و شوية طوح
                وهاد السبب الرئيسي لفتحي لهالموضوع.........نحنا منقدر .
                I Love Nvidia Cg

                تعليق


                • #9
                  بصراحة هذا المشروع صاعقة بالمنتدى .... الله يوفقكم وان شاء الله تكملون المشروع لان وصلتم مرحلة متقدمة ...
                  عندي سؤالين ..
                  كم شخص اشترك بالعمل ؟؟
                  لماذا بدأتم من الصفر يعني لماذا لم تستخدموا احد محركات الالعاب الجاهزة ؟؟
                  انا اعرف انه تحدي بالنسبة للجميع ولكن صدقوني هناك ناس قبلكم بدأت من الصفر فلذلك نحن يجب ان نكمل عملهم لنصل الى نتائج رائعة ... هذا رأيي ولكن انا بصراحة مذهول بهذا العمل الرائع ... وفقكم الله ...
                  ان شاء الله هذا المشروع يعطي دفعة لجميع العرب في مجال صناعة الالعاب ...
                  بالتوفيق ...


                  ***** مدخلك الى عالم 3D Game Studio (اسئلة,نقاش,تعلم) *****
                  ***** المشي والتحريك Walks and Animation *****

                  تعليق


                  • #10
                    ما شاء الله المشروع رائع و فقكم الله
                    ................................
                    إذا أردت أن تعصي الله
                    فاختبئ في مكان لا يراك الله فيه ..


                    إذا أردت أن تعصي الله ..
                    فلا تعصه فوق أرضه ..


                    إذا أردت أن تعصي الله ..
                    فلا تأكل من رزقه ..

                    تعليق


                    • #11
                      جميل بارك الله فيكم

                      أتمنالكم المزيد من التقدم والتطور
                      اللهم اغفر لي ولوالـدي وللمسلمين والمسلمات والمؤمنين والمؤمنات الأحيـاء منهم والأموات ..
                      اللهم آمين .. اللهم آمين .. اللهم آمين
                      ..

                      تعليق


                      • #12
                        ماشاء الله ممتاز راااااااااااائع الله يزيدكم ويوفقكم
                        حلمى ان اكون مصمم العاب و3دى ناجح

                        ادعووووووووووووولى

                        عضو في نادي محبي البطاطا

                        تعليق


                        • #13
                          مشكورين أخوتي : basharsj , A.H.M , boo too , nacasho

                          1- عدد أعضاء الفريق : 5 وذكرت أسماءهم بالـCredits
                          2- ليش بدأنا من الصفر : لأنو مالقينا أي دراسة أو مقالة أو حتى كلمتين بالعربي (مع احترامي للجميع) ممكن نتخذهن قاعدة متينة بحيث نبني عليها مشروعنا ، وإذا غلطان ياريت حدا يصححلي
                          يعني وقت بدأنا بحث عن دراسات ومراجع حول الأولعاب ماوجدنا أي شيء (برجع بقول شيء جدي - أكاديمي - منظم...) باللغة العربية للأسف .
                          I Love Nvidia Cg

                          تعليق


                          • #14
                            كلامك صحيح اخي Black Rose بشان سآل 2
                            و ان شاء الله يكون عملكم فاتحة خير
                            ................................
                            إذا أردت أن تعصي الله
                            فاختبئ في مكان لا يراك الله فيه ..


                            إذا أردت أن تعصي الله ..
                            فلا تعصه فوق أرضه ..


                            إذا أردت أن تعصي الله ..
                            فلا تأكل من رزقه ..

                            تعليق


                            • #15
                              ماشاء الله

                              تعليق

                              يعمل...
                              X