موضوع: Direct[X] Input

ردود: 14 | زيارات: 706
  1. #1
    عضو فعال
    صور رمزية Ferrari 35
    تاريخ التسجيل
    Aug 2006
    المنطقة
    الكويت
    العمر
    28
    ردود
    185

    Direct[X] Input

    الموضوع : لدي سورس كود Directx Input Vb.net

    اود ربط الفاره مع الكيبورد ولم افهم ماهو المطلوب لعمل ذالك

    وهذا السورس كود مع العلم الي بالاحمر هو الخطاء ويوجد بالمرفقه صوره بها الخطأ

    ----

    Imports Microsoft.DirectX
    Imports Microsoft.DirectX.DirectInput

    Module Direct_Input
    Private devkey As Device = Nothing
    Private devmouse As Device = Nothing

    Friend cameraz As Single = 1600
    Friend camerax As Single = 0
    Friend cameray As Single = 500

    Friend targetz As Single = 1599
    Friend targetx As Single = 0
    Friend targety As Single = 500

    Friend Sub InitializeInput()
    devkey = New Device(SystemGuid.Keyboard) ' إنشاء أداةَ لوحةِ المفاتيح
    devkey.Acquire()
    UpdateKey()
    devmouse = New Device(SystemGuid.Mouse)
    devmouse.Acquire()
    UpdateMouse()
    End Sub


    Private Sub UpdateKey()
    ' لمعرفة اي مفتاح مضغوط
    Dim PressedKeys As String = "Using GetPressedKeys(): " + vbCr + vbLf
    Dim k As Key
    For Each k In devkey.GetPressedKeys
    Next k

    Select Case k
    Case Key.Escape
    End
    Case Key.DownArrow
    cameraz += 5
    targetz += 5
    Case Key.UpArrow
    cameraz -= 5
    targetz -= 5

    Case Key.LeftArrow
    camerax += 5
    targetx += 5
    Case Key.RightArrow
    camerax += 5
    targetx += 5
    End Select
    End Sub

    Private Sub UpdateMouse()
    Dim MouseMove As String = "Using GetMouseMove(): " + vbCr + vbLf
    Dim m As Mouse
    For Each m In devmouse.CurrentMouseState
    Next m

    Select Case m
    Case Mouse.YAxis
    cameray += 5
    targety += 5
    Case Mouse.YAxis
    cameray -= 5
    targety -= 5

    Case Mouse.XAxis
    camerax += 5
    targetx += 5
    Case Mouse.XAxis
    camerax -= 5
    targetx -= 5
    End Select


    End Sub

    End Module

    ارجو التعديل على السورس كود رجاءأً او المساعده فأنا لا افقه البرمجة كثيراً
    .......................................
    my Age: 24
    my name: azoz
    my nationlty: kuwaiti
    my country :KuwaiT
    ........................................


  2. #2
    عضو متميز
    صور رمزية The MAS
    تاريخ التسجيل
    Apr 2009
    المنطقة
    Amman, Jordan, Jordan
    العمر
    24
    ردود
    2,132
    السلام عليكم ,,,
    أخي أنا لست خبير دايركت إكس ..ولكن دام خبرتك قليلة في البرمجة فلا أنصحك على الإطلاق بإستخدام الدايركت إكس لأنه صعب قليلاً حتى على المتمرسين في البرمجة...و إذا بدك تصمم ألعاب و بالبرمجة هناك عدة خيارات منها Unity3D أو XNA فلاهما يستخدم البرمجة و يعتمد عليها و أسهل من الدايركت إكس أسهل بكثير

    <<Nobody>> سابقاً

  3. #3
    عضو فعال
    صور رمزية Ferrari 35
    تاريخ التسجيل
    Aug 2006
    المنطقة
    الكويت
    العمر
    28
    ردود
    185
    انا اعمل محرك العاب حالياً لكن وجدت صعوبه بحل هذا الخطأ
    .......................................
    my Age: 24
    my name: azoz
    my nationlty: kuwaiti
    my country :KuwaiT
    ........................................

  4. #4
    عضو متميز
    صور رمزية omarzonex
    تاريخ التسجيل
    Jan 2009
    المنطقة
    نبض قلبي- فلسطين
    ردود
    6,684
    السلام عليكم أخي الكريم
    هل لك خلفية مسبقة على برمجة OOP في لغة فيجوال بيسك
    هل لك خبرة كافية كتابة كافة انواع الشيدر مع التعديل في التغييرات الذي تحصل عند تصميم مجسم ما بعدة نواتج حسابية للتطبيق هيكلية الهندسة النانوتكنولوجي Nanotechnology في المعادلات بأنواعها المختلفة


  5. #5
    عضو نشيط
    صور رمزية Virtools
    تاريخ التسجيل
    Jul 2008
    المنطقة
    الإمارات العربية المتحدة
    العمر
    27
    ردود
    702
    انا ما قدرت اقرأ الخطأ...

    لكني اصنحك بتعلم المحركات وليس صناعتها...

    مع احترامي للجميع صناعة المحركات يعتبر شيء غبي جدا جدا في هذا الزمان

    فأغلب الالعااب التي تراها في البليستيشن والاكس بوكس

    هي مصممه عن طريق هذه المحركات
    Back to Game Developing

  6. #6
    مشرف منبر Games Design
    صور رمزية general1
    تاريخ التسجيل
    Jun 2007
    ردود
    1,066
    الخطأ هو انك تحاول استخدام التعبير Foreach مع devmouse.CurrentMouseState و هي ليست مصفوفة فهي متغير عادي و يمكنا تعديل الكود حتى نتفقد قيمتها مباشرة هكذا :

    اولا قم بألغاء المتغير M تماما و حول قطعة الكود الاخيرة هكذا:


    كود:
    Private Sub UpdateMouse()
    Dim MouseMove As String = "Using GetMouseMove(): " + vbCr + vbLf
    
    Select Case devmouse.CurrentMouseState
    Case Mouse.YAxis
    cameray += 5
    targety += 5
    Case Mouse.YAxis
    cameray -= 5
    targety -= 5
    
    Case Mouse.XAxis
    camerax += 5
    targetx += 5
    Case Mouse.XAxis
    camerax -= 5
    targetx -= 5
    End Select
    
    
    End Sub
    تحقق لو هناك اي مشكلة

    الله يوفقك...
    Egypt


    I Love Direct-X

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

  7. #7
    عضو نشيط
    صور رمزية Virtools
    تاريخ التسجيل
    Jul 2008
    المنطقة
    الإمارات العربية المتحدة
    العمر
    27
    ردود
    702
    اقتباس الموضوع الأصلي كتب بواسطة omarzonex معاينة الرد
    السلام عليكم أخي الكريم
    هل لك خلفية مسبقة على برمجة oop في لغة فيجوال بيسك
    هل لك خبرة كافية كتابة كافة انواع الشيدر مع التعديل في التغييرات الذي تحصل عند تصميم مجسم ما بعدة نواتج حسابية للتطبيق هيكلية الهندسة النانوتكنولوجي nanotechnology في المعادلات بأنواعها المختلفة
    الحين النانوتكنولوجي... شو دخله في التصميم؟؟

    هي عبارة عن آلات صغيرة جدا... لتقووم بعمل وظيفة ما
    Back to Game Developing

  8. #8
    عضو فعال
    صور رمزية Ferrari 35
    تاريخ التسجيل
    Aug 2006
    المنطقة
    الكويت
    العمر
    28
    ردود
    185
    تمل حل الدالة لكن الخطأ باللون الاحمر

    Private Sub UpdateMouse()
    Dim MouseMove As String = "Using GetMouseMove(): " + vbCr + vbLf

    Select Case devmouse.CurrentMouseState
    Case Mouse.YAxis
    cameray += 5
    targety += 5
    Case Mouse.YAxis
    cameray -= 5
    targety -= 5

    Case Mouse.XAxis
    camerax += 5
    targetx += 5
    Case Mouse.XAxis
    camerax -= 5
    targetx -= 5
    End Select


    End Sub

    انظر للمرفقه للتوضيح

    مال الحل...؟
    ----
    .......................................
    my Age: 24
    my name: azoz
    my nationlty: kuwaiti
    my country :KuwaiT
    ........................................

  9. #9
    مشرف منبر Games Design
    صور رمزية general1
    تاريخ التسجيل
    Jun 2007
    ردود
    1,066
    حسنا لقد جربت هذا الكود على السى شارب و يعمل جيدا :

    كود:
    Private Sub UpdateMouse()
    Dim MouseMove As String = "Using GetMouseMove(): " + vbCr + vbLf
    
                cameray += devmouse.CurrentMouseState.Y;
                targety += devmouse.CurrentMouseState.Y;
    
                camerax  += devmouse.CurrentMouseState.X;
                targetx += devmouse.CurrentMouseState.X;
    
    End Sub
    و اي مشكلة بالانتظار
    Egypt


    I Love Direct-X

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

  10. #10
    عضو فعال
    صور رمزية Ferrari 35
    تاريخ التسجيل
    Aug 2006
    المنطقة
    الكويت
    العمر
    28
    ردود
    185
    الخطأ باللون الاحمر ..

    Private Sub UpdateMouse()
    Dim MouseMove As String = "Using GetMouseMove(): " + vbCr + vbLf

    cameray += devmouse.CurrentMouseState.Y;
    targety += devmouse.CurrentMouseState.Y;

    camerax += devmouse.CurrentMouseState.X;
    targetx += devmouse.CurrentMouseState.X;

    End Sub

    اعتقد بأنك نسيت اضافة الاحداثيات

    هل يوجد كود اخر لحل المشكله
    .......................................
    my Age: 24
    my name: azoz
    my nationlty: kuwaiti
    my country :KuwaiT
    ........................................

  11. #11
    عضو فعال
    صور رمزية Ferrari 35
    تاريخ التسجيل
    Aug 2006
    المنطقة
    الكويت
    العمر
    28
    ردود
    185
    هياااااااااااا تيحااا مصر عمل السورس كوود اخيراً مشكور يا اخ قمت بحذف ; وعمل ولكن اريده ان يتحرك بضغط زر مثال عند الضغط على زر الايسر للماوس والحركه يتحرك على محور اليمين او اليسار على درجه = 5
    .......................................
    my Age: 24
    my name: azoz
    my nationlty: kuwaiti
    my country :KuwaiT
    ........................................

  12. #12
    عضو فعال
    صور رمزية Ferrari 35
    تاريخ التسجيل
    Aug 2006
    المنطقة
    الكويت
    العمر
    28
    ردود
    185
    Imports Microsoft.DirectX
    Imports Microsoft.DirectX.DirectInput

    Module Direct_Input
    Private devkey As Device = Nothing
    Private devmouse As Device = Nothing

    Friend cameraz As Single = 1600
    Friend camerax As Single = 0
    Friend cameray As Single = 500

    Friend targetz As Single = 1599
    Friend targetx As Single = 0
    Friend targety As Single = 500

    Friend Sub InitializeInput()
    devkey = New Device(SystemGuid.Keyboard) ' إنشاء أداةَ لوحةِ المفاتيح
    devkey.Acquire()
    UpdateKey()
    devmouse = New Device(SystemGuid.Mouse)
    devmouse.Acquire()
    UpdateMouse()
    End Sub


    Private Sub UpdateKey()
    ' لمعرفة اي مفتاح مضغوط
    Dim PressedKeys As String = "Using GetPressedKeys(): " + vbCr + vbLf
    Dim k As Key
    For Each k In devkey.GetPressedKeys
    Next k

    Select Case k
    Case Key.Escape
    End
    Case Key.DownArrow
    cameraz += 5
    targetz += 5
    Case Key.UpArrow
    cameraz -= 5
    targetz -= 5

    Case Key.LeftArrow
    camerax += 5
    targetx += 5
    Case Key.RightArrow
    camerax -= 5
    targetx -= 5
    End Select
    End Sub

    Private Sub UpdateMouse()
    Dim MouseMove As String = "Using GetMouseMove(): " + vbCr + vbLf

    cameray += devmouse.CurrentMouseState.Y
    targety += devmouse.CurrentMouseState.Y


    camerax += devmouse.CurrentMouseState.X
    targetx += devmouse.CurrentMouseState.X


    End Sub

    End Module
    .......................................
    my Age: 24
    my name: azoz
    my nationlty: kuwaiti
    my country :KuwaiT
    ........................................

  13. #13
    عضو متميز
    صور رمزية The MAS
    تاريخ التسجيل
    Apr 2009
    المنطقة
    Amman, Jordan, Jordan
    العمر
    24
    ردود
    2,132
    أخي تفضل هذا الموقع لشرح الدايركت إكس
    http://www.directxtutorial.com/
    أعتقد مو كل الدروس مجانية في منها مقابل نقود ...لكن إنته خذ المجانية

    <<Nobody>> سابقاً

  14. #14
    مشرف منبر Games Design
    صور رمزية general1
    تاريخ التسجيل
    Jun 2007
    ردود
    1,066
    و هذه دورة مع الVisual basic :

    http://www.euclideanspace.com/softwa...tion/index.htm

    و سيكون اسهل بالنسبة لك ان تتعلم لغة الفيجوال بيسك اولا و هي لغة سهلة

    بالتوفيق
    Egypt


    I Love Direct-X

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

Bookmarks

قوانين الموضوعات

  • لا يمكنك اضافة موضوع جديد
  • لا يمكنك اضافة ردود
  • لا يمكنك اضافة مرفقات
  • لا يمكنك تعديل مشاركاتك
  •  
  • كود BB مفعّل
  • رموز الحالة مفعّل
  • كود [IMG] مفعّل
  • [VIDEO] code is مفعّل
  • كود HTML معطل