اذهب إلى المحتوى

السؤال

نشر (معدل)

السلام عليكم عندي سؤال 

انا جديد في اليونتي و البرمجة 

فعندما اكتب كود لتحريك الشخصية باستعمال الفيجوال ستوديو لا يعمل على الشخصية (مكعب)

رغم ان الكود صحيح و عندما اضغط على ازرار الكيبورد لا يعمل اتمنى ان تساعدوني 

16787270560526185501419188233644.jpg

تم التعديل في بواسطة Mustafa Suleiman
تعديل عنوان السؤال

Recommended Posts

  • 0
نشر

من الصعب تحديد سبب المشكلة بدون رؤية الكود أرجو مشاركة الكود الخاص بك والذي به المشكلة.

 

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

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

1- قم بفتح الفيجوال ستوديو وإنشاء مشروع جديد.

2- قم بإنشاء كائن الشخصية (GameObject) الذي تريد تحريكه. يمكنك القيام بذلك عن طريق النقر بزر الماوس الأيمن على الهيكلية (Hierarchy) واختيار "Create Empty" ثم إعطائه اسمًا مناسبًا.

3- ثم، يمكنك إضافة مكون الحركة (Movement Component) إلى الشخصية التي أنشأتها. للقيام بذلك، قم بالنقر بزر الماوس الأيمن على كائن الشخصية، واختر "Add Component"، ثم ابحث عن مكون الحركة (Movement Component) واضغط على إضافة (Add).

4- الآن، يمكنك كتابة الكود اللازم لتحريك الشخصية. هناك العديد من الأساليب المختلفة التي يمكن استخدامها لتحريك الشخصية، وسنقدم لك مثالًا بسيطًا:

using UnityEngine;

public class MoveObject : MonoBehaviour {
    public float speed = 5.0f; // سرعة الحركة

    // يتم استدعاء هذا الدالة في كل إطار للعبة
    void Update() {
        // حصول على محور الحركة الرأسي والأفقي
        float horizontalInput = Input.GetAxis("Horizontal");
        float verticalInput = Input.GetAxis("Vertical");

        // إنشاء Vector3 جديد لتحديد الاتجاه الذي يجب تحريك الشخصية عليه
        Vector3 movementDirection = new Vector3(horizontalInput, 0, verticalInput);

        // تحريك الشخصية باتجاه المحور المحدد وبسرعة تعادل السرعة التي تم تحديدها
        transform.position += movementDirection * speed * Time.deltaTime;
    }
}

5- بعد الانتهاء من كتابة الكود، يمكن حفظه وتشغيل اللعبة للتحقق من تحريك الشخصية بشكل صحيح.

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

  • 0
نشر (معدل)

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

16787316911901215572507317992444.jpg

16787317722784185486682261506016.jpg

تم التعديل في بواسطة Im Drox
  • 0
نشر
بتاريخ 59 دقائق مضت قال Im Drox:

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

أرجو مشاركة الكود الذي تعتقد أن به مشكلة من خلال الضغط على علامة <> في محرر النص هنا.

ربما السبب  المشكلة  في اتصال الكود بالشخصية (المكعب) في اللعبة. يمكنك التأكد من أن الكود مرتبط بالشخصية بشكل صحيح، عن طريق التحقق من الأشياء التالية:

1- تأكد من أن المكعب المراد تحريكه لديه مكون "Rigidbody" مرتبط به في Unity، لأنه يسمح للشخصية بالتفاعل مع قوى الفيزياء في العالم الافتراضي.

2- تأكد من أن مكون "Collider" مرتبط بالشخصية، لأنه يمكنه التفاعل مع العناصر الأخرى في اللعبة.

3- تأكد من أن كود الحركة المذكور في السؤال مضاف إلى كائن يمثل الشخصية (المكعب) في Unity.

4- تأكد من أن الحركة المراد تطبيقها على الشخصية تم تحديدها بشكل صحيح في الكود، بحيث تتناسب مع اتجاه الحركة المراد تطبيقها.

5- تأكد من أن أي شروط أخرى قد تؤثر على الحركة (مثل تعليق أو إيقاف تشغيل الحركة) تم حلها.

وإذا لم يعمل ذلك، فيمكنك مراجعة مستندات Unity.

وأيضًا يمكنك مشاهدة المقال التالي:

 

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...