Unconfigured Ad Widget

تقليص

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

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

اول قسم من لعبتي الجديده على xna من نوع fps

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

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

    اترك تعليق:


  • kimoz
    رد
    اخي جينيرال صراحه لم استطع تنفيذ الكود الذي اعطيتني اياه وهذه هو الكود الذي استخدمه بلحركه
    كود:
                if (input.state.IsKeyDown(Keys.S))
                {
    
                    ModelPosition.Z += 25 * (float)gameTime.ElapsedGameTime.TotalSeconds;
                    camera.position.Z += 25 * (float)gameTime.ElapsedGameTime.TotalSeconds;
                   
                }
    اظن انك كنت تظنه اعقد من ذلك

    اترك تعليق:


  • ahmedemasr
    رد
    ممتاز اخى بالتوفيق ان شاء الله
    اكساء السلاح ممتاز واحترافى جدا بس ياريت تهتم بالتفاصيل شوية عشان الالعاب الخفيفة بطلت خلاص

    اترك تعليق:


  • kimoz
    رد
    بلنسبه للكود الذي أعطيتني اياه اخ جينيرال
    فأنا احاول تطبيقه حالياً...وسأضع النتيجه في اقرب وقت وكل الشكر لك

    اترك تعليق:


  • kimoz
    رد
    شكراً لك اخي عمر على المساعده وأنا اقدر لك ذلك

    اترك تعليق:


  • omarzonex
    رد
    أحسنت يا جنرال

    هذا هو الكود الصحيح


    ولكن يوجد كود للحركة يمين يسار او للأمام وهو كالتالي :
    float moveSpeed = 0.0f;
    this.moveDirection = new Vector3(-1.0f, 0, 0); // Left Move
    moveVelocity = this.moveDirection * moveSpeed;
    ///////////////////////////////
    this.moveDirection = new Vector3(1.0f, 0, 0); // Right Move
    moveVelocity = this.moveDirection * moveSpeed;
    ///////////////////////////
    moveVelocity = this.moveDirection = Vector3.Zero; // Stop Move
    ////////////////////////////
    this.moveDirection = new Vector3(0, 0, 1.0f); // Forward Move

    moveVelocity = this.moveDirection * moveSpeed;

    /////////////////////

    أما بالنسبة للرجوع للخلف اتركها لك لتحلها بنفسك

    لكي اختبر ذكائك هل تحلها ام لا

    فهي بسيطة جدا جداً

    قم بحلها وسوف اكافئك فعلياً
    ....... هيا يا بطل

    اترك تعليق:


  • general1
    رد
    المشاركة الأصلية بواسطة kimoz مشاهدة المشاركة
    شكراً لك اخ جينيرال
    بلنسبه للدوران للأعلى والأسفل سهل جداً ولكن المشكله
    عند ضغط ال w يتجه اللاعب بتجاه الكاميرا وبسبب هذا
    إذا كان الاعب ينظر للأسفل وضغط w فسوف يتحرك بأتجاه الأسفل أو إذا كان ينظر للأعلى وضغط w فسوف يتجه للأعلى !!
    وهذا ما احاول اصلاحه الآن بلنسبه للكود الذي اعطيتني ياه فسوف أطبقه وأضع النتيجه ...
    وكل الشكر لك

    طب شوف بالنسبة للحركة فوق و تحت إنت طبقها بالماوس عادي

    و بالنسبة لأنوا يتحرك لفوق و تحت فالحل مشابه لهذا :

    اعتقد انك تفعل مثل ذلك :

    position += vector3(0,0,1) * playerMatrix.forward

    حسنا يمكنك ان تتحايل على هذا بحركة مثل هذه :

    vector3 newPosition ;
    newPosition = position + vector3(0,0,1) * playerMatrix.forward;

    position = newPosition.x;
    position = newPosition.z;

    و بكدة هيتحرك اللاعب على الX و الZ اكسيز فقط و لن يطير ارجو ان تكون الفقرة وضحت لك

    اترك تعليق:


  • oms
    رد
    هل من صور جديدة ترينا إياها ؟

    اترك تعليق:


  • kimoz
    رد
    شكراً لك اخ جينيرال
    بلنسبه للدوران للأعلى والأسفل سهل جداً ولكن المشكله
    عند ضغط ال w يتجه اللاعب بتجاه الكاميرا وبسبب هذا
    إذا كان الاعب ينظر للأسفل وضغط w فسوف يتحرك بأتجاه الأسفل أو إذا كان ينظر للأعلى وضغط w فسوف يتجه للأعلى !!
    وهذا ما احاول اصلاحه الآن بلنسبه للكود الذي اعطيتني ياه فسوف أطبقه وأضع النتيجه ...
    وكل الشكر لك

    اترك تعليق:


  • general1
    رد
    هائل , حاول ان تجعل الحركة ايضا بالماوس لفوق و تحت يعني على الY Axis

    بالنسبة لقفزة اللاعب حاول الإستفادة من هذا الكود :
    كود:
    vector3 velocity = new Vector3();
    const float gravity= 9 .14;
    void Update()
    {
    player.position.y += velocity.y* timeDelta;
    
    velocity.y -= gravity * timeDelta;
    
    if (space pressed)
    {
    velocity.y = 50;
    }
    }
    طبعا هذه الأرقام غير صحيحة أظبطها حتى تصل الى نتيجة مرضية
    المشكلة هنا إنه يجب ان تتحقق ما بين التصادم فوق تحت اللاعب فإذا تصادم مع الأرض يتوقف , لو لم يكن هناك لديك نظام تصادم حتى الآن يمكنك ان تضع جملة مثل :
    كود:
    if (player.position.y <= 30)
    {
    velocity.y = 0;
    }
    باعتبار ان الأرض مكانها على الY axis يساوى 30

    اترك تعليق:


  • kimoz
    رد
    أول تحديث
    الدوران اصبح بلماوس
    تم تغير السلاح لسلاح اجمل ومساحته اصغر
    تم وضع هدف (ليس منه فائده للآن)

    اترك تعليق:


  • سنـدبـاد
    رد
    عمل جميل اخي

    تحتاج برفع الكامره قليلا

    واضافة الحركة بالماوس ( دوران الكامره مع المجسم )ـ

    القفزة خفيفة سرعها اكثر (كان الجاذبيه اقل من الواقع )ـ

    حاول اضافة امر تسريع بضغط زر الشيفت والجري

    وفقك الله اخي

    اترك تعليق:


  • kimoz
    رد
    شكراً لك اخ ايوب على التشجيع والصوره
    ولكن هذه الوضعيه صعبه لأنها تحتاج أن تكون البندقيه ذات تفاصيل كثيره ودقه عاليه في القسم الأعلى
    وأنا لست ماهر بلتصميم للأسف

    اترك تعليق:


  • ayoubsoft
    رد
    حقأ لقد قمت بعمل رائع أشجعك لكنني احب ان اشير الى وضعية السلاح .. حاول تستعين بهده الصورة في دلك :



    بالتوفيق

    اترك تعليق:


  • kimoz
    رد
    المشاركة الأصلية بواسطة general1 مشاهدة المشاركة
    حسنا جميل جدا ان تصل الى هذا المستوى الآن

    ربما قابلتك أهم المشاكل التي قابلتني عند عمل مثل هذه الأمثلة , ألا و هي :

    كيفية التحكم بالكاميرا مع الماوس

    و ايضا كيفية القفز السلس مثل الذي يوجد في الألعاب

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

    اترك تعليق:

يعمل...
X