الشبكة العربية لمطوري الألعاب

مفصول عمر سمير  مشاركة 1

السلام عليكم


أخي وسام  العزيز


قمت مؤخراً  بإنتاج  طائرة  رائعة  وحركات انسيابية  فيزيائية  رائعة 
الدوران كأنها حركات حقيقية  كما تشاهدها في الأفلام الأجنبية  تماماً

قمت بتصميم هذا المشروع  لتجربة ثانية  للغة الرائعة XNA

استغرقت مني اسبوع  لأنتاج حركة فيزيائية تشابه الواقع

وبالتصميم والأرادة  بفضل الله تعالى  انجزت  حركات للطائرة  على بعد
شاهق  من البنايات  محلقاً في الجو  ولكن  عندما أضفت غيوم  حصلت لي مشكلة
في البرمجة   و لا أعرف  أحلها  تركتها جانباً  وتطورت أشياء أخرى في نفس
المشروع  وهي أضافة  صواريخ للطائرة 

تعطي  منظراً  رائعاً   على  حسب دراستي وخبرتي في البرمجة 

 وعما  قريب سوف  أكمل  مشواري   حتى  أصل الى هدفي المنشود

وسميت المشروع  بأسم  الصاروخ النووي


وهذا هو  أملي المنشود

وان شاء الله تعالى  ان يوفقنا جميعاً في أكمال ما بدأناه  و تبقى أسماً محفوراً على  أنجاز تاريخي عربي على مستوى العالم أجمع

سمو  باسم الله  على بركة الله نستعين

[IMG]http://www.bof3d.com/u/files/3636/OSF.part01.rar[/IMG]

[IMG]http://www.bof3d.com/u/files/3636/OSF.part02.rar[/IMG]

[IMG]http://www.bof3d.com/u/files/3636/OSF.part03.rar[/IMG]

[IMG]http://www.bof3d.com/u/files/3636/OSF.part04.rar[/IMG]

[IMG]http://www.bof3d.com/u/files/3636/OSF.part05.rar[/IMG]

OSF متخصص محترف

خبير مدير وسام البهنسي مشاركة 2

حبذا لو تذكر تحكمات اللعب يا عمر كي نستطيع تجريب اللعبة بالشكل المطلوب  😨



في 03 مارس 2009 08:17 ص، عقد عمر حاجبيه بتفكير وقال:

عندما أضفت غيوم  حصلت لي مشكلة
في البرمجة   و لا أعرف  أحلها

اذكر المشكلة علك تجد لها حلاً معنا 😒  ...

وسام البهنسي
مبرمج في إنفيديا وإنفريمز

مفصول عمر سمير  مشاركة 3

السلام عليكم

انني اسف على السهو  في الموضوع
عموماً  هذه البرمجة  توضح لك فكرة  اضافة ضباب  او  صور متتابعة  عبارة عن غيوم ثلاثية الأبعاد


public class Fog : IFog
    {
        private Color color = Color.DarkRed ;
        private float start = 750;
        private float end = 29000;
        private bool enabled = true;

        public Color Color
        {
            get { return color; }
            set { color = value; }
        }
        public float Start
        {
            get { return start; }
            set { start = value; }
        }
        public float End
        {
            get { return end; }
            set { end = value; }
        }
        public bool Enabled
        {
            get { return enabled; }
            set { enabled = value; }
        }


    }

وهنا اضفت متغير تعريف الضباب  في الملف games1.cs

   Fog fog;
   IFog ifog;




 protected override void LoadContent()
 {  
.
.
.
.

Effect ppEffect = Content.Load("postprocessing");
   postProcessor = new PostProcessor(device, ppEffect);
   IFog fog = new Fog();
.
.
.
}

واضفت ايضاً  الكود  التالي 


     public IFog Fog
        {
            get { return fog; }
        }

واضفت  كود  لأظهاره على الشاشة



protected override void Draw(GameTime gameTime)
        {
DrawFog();
}

وهنا  تكمن المشكلة  في رسم الضباب  DrawFog
هل لأنه الكود  ناقص  او ماشابه

ارجو  منكم  الأستفادة  من هذا الموضوع

المشروع  الكامل لقد ارسلته  سابقاً  ارجو منكم  التأكد   والتمعن  جيداً   في الأكواد 
يجب  اساساً  ان تكون  الطائرة  تطير  بين الضباب  او الغيوم  لكي  يظهر المنظر حقيقي وواقعي 
المشروع  ليس كاملاً  وانما  هذه تجربة  كيف تكون الحركة الطائرة بين  الضباب او الغيوم  
وبعد  ان استمع لأرائكم  وافكاركم  سوف  أكمل  المشروع  اللعبة  كاملاً  بأذن الله  تعالى

OSF متخصص محترف

خبير  أحمد عبد الغني مشاركة 4

أما في 07/ربيع الأول/1430 08:26 م، فقد تنهد وسام البهنسي بارتياح وهو يرد:

حبذا لو تذكر تحكمات اللعب يا عمر كي نستطيع تجريب اللعبة بالشكل المطلوب  

فعلا. اكتشفت فقط الأسهم كتحكمات لكن هل هناك غيرها؟ 😪


في 08/ربيع الأول/1430 03:08 ص، غمغم عمر باستغراب قائلاً:

وهنا اضفت متغير تعريف الضباب  في الملف 

   Fog fog;
   IFog ifog;

لكن هذه الطريقة غير سليمة. فقط السطر الأول هو ما يهم. أما المتغير في السطر الثاني فغير مستخدم في الكود. 😖

اللهم انصر أهلنا في فلسطين وآجرنا أن نكون عوناً لهم

خبير مشرف مؤيد مارديني مشاركة 5

جميع الـProperties الموجودة في هذا الكود لا تقوم بأكثر من واجهة لمتغيرات Private، لماذا لا تستفيد من ميزة الـAuto-implemented properties إذاً؟، سيوفر هذا بعض الكتابة ويزيد وضوح الكود و سهولة تعديله بدرجة كبيرة☺


public Color Color
{
        get { return color; }
        set { color = value; }
}

ملاحظة أخرى هي استخدام اسم يعود لنوع Type هو Color كاسم Property، ليس هذا مستحسناً كما تعلم.

Moayad Mardini,
MSDN Forums Moderator

مفصول عمر سمير  مشاركة 6

شكر أ  لكم  جميعاً 

افكاركم بناءة  ومثمرة  ولكن  لدي فكرة 

هل صناعة الفن البرمجي له  مركزه  للغة XNA 
 
الصاروخ  هو عنوان  المشروع 

لقد قمت بأضافة عدة انواع من الصواريخ  بعضها يظهر وبعضها لا

لأن الصاروخ هو لب المشروع 

هل تأثير كرت الشاشة  له عوامل سلبية  في الأكساء   او في البرمجة  نفسها 

قمت بصناعة الصاروخ على MAX  و LIGHT WAVE   مع الأكساء 

وعندما أضفتها في المشروع لم يظهر  سوى تقطيع مشوه  من الصاروخ عندما ينطلق من الطائرة الحربية  لكن بدون لهب 

ارجو  منكم  الرد المناسب لذلك

OSF متخصص محترف