Wiimote i konfiguracja

Witam.

Chcę połączyć wiimote z komputerem (WN 10). Szukałem już na różnych forach i na YouTube, ale żaden z tych poradników u mnie nie działa.

Proszę o pomoc.

Z góry dziękuje.

Halo, zieńtopry :slight_smile:



Zacznij od odinstalowania wszelkich sterowników bluetooth poza podstawowym Windowsowskim.



Jak to zrobisz - zainstaluj Toshiba Bluetooth Stack.



W Toshiba Bluetooth Stack łączenie z Wiimotem jest bardzo proste :slight_smile:



Jak dalej będą problemy - pisz śmiało :slight_smile:

Hej



Dzięki tym sterownikom udało mi się sparować kompa i wii remote. Co teraz?

Teraz musisz rozejrzeć się za programami typu freePIE lub glovePIE, napisać skrypt, który “przetłumaczy” sterowanie kontrolerem na przyciski klawiatury i myszki, a później to już tylko cieszyć się grą :smiley:

A czy da się zaprogramować wiiremote aby działało bez sensor bara?

Tak bez problemu, wtedy korzystasz tylko z żyroskopu i akcelerometru



tutaj masz skrypt do obsługi myszy przez wiimote(wymaga motion plusa), skrypt nie mojego autorstwa
[spoil][hidden]/*

WiiMotion Plus Mouse v 2010.01.14

by lednerg



Emulates the basic functionality of a Gyration Air Mouse.

Requires GlovePIE version .42 or higher.



Leave the Wiimote on your desk when starting so it can calibrate.

Hold B to move, A = Left-Click, + = Right-Click, Down = Middle-Click.

/



var.MoveButton = wiimote.A

mouse.LeftButton = wiimote.B

mouse.RightButton = wiimote.Plus

keyboard.W = wiimote.Up

keyboard.S = wiimote.Down

keyboard.A = wiimote.Left

keyboard.D = wiimote.Right

//mouse.MiddleButton = wiimote.Down



var.Speed = 75 // 0 to 100



PIE.FrameRate = 120hz

if wiimote.HasMotionPlus = false then debug = “WiiMotion Plus NOT DETECTED!”

if wiimote.HasMotionPlus = true and var.MoveButton = true {

var.YawSpeed = wiimote.MotionPlus.YawSpeed

var.PitchSpeed = wiimote.MotionPlus.PitchSpeed

if SameValue( Smooth(wiimote.SmoothRoll, 10), wiimote.SmoothRoll, 10) then var.Roll = Smooth(wiimote.SmoothRoll, 10) else var.Roll = wiimote.SmoothRoll

if var.Roll < 0 and var.Roll >= -90 {

var.XYswap = 1 - EnsureMapRange(var.Roll, -90, 0, 0, 1)

var.RightDown = -1

var.TopUp = 1

}

if var.Roll <= 90 and var.Roll >= 0 {

var.XYswap = 1 - EnsureMapRange(var.Roll, 90, 0, 0, 1)

var.RightDown = 1

var.TopUp = 1

}

if var.Roll > 90 and var.Roll <= 180 {

var.XYswap = 1 - EnsureMapRange(var.Roll, 90, 180, 0, 1)

var.RightDown = 1

var.TopUp = -1

}

if var.Roll < -90 and var.Roll >= -180 {

var.XYswap = 1 - EnsureMapRange(var.Roll, -90, -180, 0, 1)

var.RightDown = -1

var.TopUp = -1

}

var.SpeedX = var.TopUp * var.YawSpeed - ( var.TopUp * var.YawSpeed * var.XYswap ) + ( var.RightDown * var.PitchSpeed * var.XYswap )

var.SpeedY = var.TopUp * var.PitchSpeed - ( var.TopUp * var.PitchSpeed * var.XYswap) + ( -var.RightDown * var.YawSpeed * var.XYswap )

mouse.DirectInputX = int(var.MouseX)

mouse.DirectInputY = int(var.MouseY)

var.MouseX = var.MouseX + ( var.SpeedX / (10500000 - EnsureMapRange(var.Speed, 0, 100, 0, 10000000) ) )

var.MouseY = var.MouseY - ( var.SpeedY / (10500000 - EnsureMapRange(var.Speed, 0, 100, 0, 10000000) ) )

/
// for mouse.x and mouse.y instead

mouse.x = var.MouseX

mouse.y = var.MouseY

var.MouseX = var.MouseX + ( var.SpeedX / (20500 - EnsureMapRange(var.Speed, 0, 100, 0, 20000) ) )

var.MouseY = var.MouseY - ( var.SpeedY / (20500 - EnsureMapRange(var.Speed, 0, 100, 0, 20000) ) )

/

}

if var.MoveButton = false {

var.MouseX = mouse.DirectInputX

var.MouseY = mouse.DirectInputY

/
// for mouse.x and mouse.y instead

var.MouseX = mouse.x

var.MouseY = mouse.y

*/

}[/hidden][/spoil]