Unconfigured Ad Widget

تقليص

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

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

Direct[X] Input

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

  • 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
    السلام عليكم ,,,
    أخي أنا لست خبير دايركت إكس ..ولكن دام خبرتك قليلة في البرمجة فلا أنصحك على الإطلاق بإستخدام الدايركت إكس لأنه صعب قليلاً حتى على المتمرسين في البرمجة...و إذا بدك تصمم ألعاب و بالبرمجة هناك عدة خيارات منها Unity3D أو XNA فلاهما يستخدم البرمجة و يعتمد عليها و أسهل من الدايركت إكس أسهل بكثير

    <<Nobody>> سابقاً

    تعليق


    • #3
      انا اعمل محرك العاب حالياً لكن وجدت صعوبه بحل هذا الخطأ
      .......................................
      my Age: 24
      my name: azoz
      my nationlty: kuwaiti
      my country :KuwaiT
      ........................................

      تعليق


      • #4
        السلام عليكم أخي الكريم
        هل لك خلفية مسبقة على برمجة OOP في لغة فيجوال بيسك
        هل لك خبرة كافية كتابة كافة انواع الشيدر مع التعديل في التغييرات الذي تحصل عند تصميم مجسم ما بعدة نواتج حسابية للتطبيق هيكلية الهندسة النانوتكنولوجي Nanotechnology في المعادلات بأنواعها المختلفة

        تعليق


        • #5
          انا ما قدرت اقرأ الخطأ...

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

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

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

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

          تعليق


          • #6
            الخطأ هو انك تحاول استخدام التعبير 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
              المشاركة الأصلية بواسطة omarzonex مشاهدة المشاركة
              السلام عليكم أخي الكريم
              هل لك خلفية مسبقة على برمجة oop في لغة فيجوال بيسك
              هل لك خبرة كافية كتابة كافة انواع الشيدر مع التعديل في التغييرات الذي تحصل عند تصميم مجسم ما بعدة نواتج حسابية للتطبيق هيكلية الهندسة النانوتكنولوجي nanotechnology في المعادلات بأنواعها المختلفة
              الحين النانوتكنولوجي... شو دخله في التصميم؟؟

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

              تعليق


              • #8
                تمل حل الدالة لكن الخطأ باللون الاحمر

                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
                  حسنا لقد جربت هذا الكود على السى شارب و يعمل جيدا :

                  كود:
                  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
                    الخطأ باللون الاحمر ..

                    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
                      هياااااااااااا تيحااا مصر عمل السورس كوود اخيراً مشكور يا اخ قمت بحذف ; وعمل ولكن اريده ان يتحرك بضغط زر مثال عند الضغط على زر الايسر للماوس والحركه يتحرك على محور اليمين او اليسار على درجه = 5
                      .......................................
                      my Age: 24
                      my name: azoz
                      my nationlty: kuwaiti
                      my country :KuwaiT
                      ........................................

                      تعليق


                      • #12
                        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
                          أخي تفضل هذا الموقع لشرح الدايركت إكس
                          http://www.directxtutorial.com/
                          أعتقد مو كل الدروس مجانية في منها مقابل نقود ...لكن إنته خذ المجانية

                          <<Nobody>> سابقاً

                          تعليق


                          • #14
                            و هذه دورة مع الVisual basic :

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

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

                            بالتوفيق
                            Egypt


                            I Love Direct-X

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

                            تعليق

                            يعمل...
                            X