Search Issue Tracker
Fixed in 1.1.0-preview.4
Votes
20
Found in [Package]
1.0-preview
Issue ID
1189859
Regression
No
[InputSystem] Error when vJoy is installed
Platform: Windows
Repro:
1. Install vJoy (http://vjoystick.sourceforge.net/site/)
2. Launch Unity
3. Observe error in console.
```
Could not create a device for 'Shaul Eizikovich vJoy - Virtual Joystick (HID)' (exception: System.NotImplementedException: The method or operation is not implemented.
at UnityEngine.InputSystem.Utilities.PrimitiveValue.FromString (System.String value) [0x0013a] in F:\Unity\Pyromance\Library\PackageCache\com.unity.inputsystem@1.0.0-preview\InputSystem\Utilities\PrimitiveValue.cs:407
at UnityEngine.InputSystem.Utilities.NamedValue.ParseParameter (System.String parameterString, System.Int32& index) [0x0015d] in F:\Unity\Pyromance\Library\PackageCache\com.unity.inputsystem@1.0.0-preview\InputSystem\Utilities\NamedValue.cs:157
at UnityEngine.InputSystem.Utilities.NamedValue.ParseMultiple (System.String parameterString) [0x00050] in F:\Unity\Pyromance\Library\PackageCache\com.unity.inputsystem@1.0.0-preview\InputSystem\Utilities\NamedValue.cs:98
at UnityEngine.InputSystem.Layouts.InputControlLayout+Builder+ControlBuilder.WithParameters (System.String parameters) [0x00014] in F:\Unity\Pyromance\Library\PackageCache\com.unity.inputsystem@1.0.0-preview\InputSystem\Controls\InputControlLayout.cs:666
at UnityEngine.InputSystem.HID.HID+HIDLayoutBuilder.Build () [0x001ac] in F:\Unity\Pyromance\Library\PackageCache\com.unity.inputsystem@1.0.0-preview\InputSystem\Plugins\HID\HID.cs:375
at UnityEngine.InputSystem.HID.HID+<>c__DisplayClass12_0.<OnFindLayoutForDevice>b__0 () [0x00000] in F:\Unity\Pyromance\Library\PackageCache\com.unity.inputsystem@1.0.0-preview\InputSystem\Plugins\HID\HID.cs:185
at UnityEngine.InputSystem.Layouts.InputControlLayout+Collection.TryLoadLayoutInternal (UnityEngine.InputSystem.Utilities.InternedString name) [0x00056] in F:\Unity\Pyromance\Library\PackageCache\com.unity.inputsystem@1.0.0-preview\InputSystem\Controls\InputControlLayout.cs:1811
at UnityEngine.InputSystem.Layouts.InputControlLayout+Collection.TryLoadLayout (UnityEngine.InputSystem.Utilities.InternedString name, System.Collections.Generic.Dictionary`2[TKey,TValue] table) [0x00001] in F:\Unity\Pyromance\Library\PackageCache\com.unity.inputsystem@1.0.0-preview\InputSystem\Controls\InputControlLayout.cs:1822
at UnityEngine.InputSystem.Layouts.InputControlLayout+Cache.FindOrLoadLayout (System.String name) [0x00044] in F:\Unity\Pyromance\Library\PackageCache\com.unity.inputsystem@1.0.0-preview\InputSystem\Controls\InputControlLayout.cs:2023
at UnityEngine.InputSystem.Layouts.InputDeviceBuilder.FindOrLoadLayout (System.String name) [0x00014] in F:\Unity\Pyromance\Library\PackageCache\com.unity.inputsystem@1.0.0-preview\InputSystem\Devices\InputDeviceBuilder.cs:682
at UnityEngine.InputSystem.Layouts.InputDeviceBuilder.InstantiateLayout (UnityEngine.InputSystem.Utilities.InternedString layout, UnityEngine.InputSystem.Utilities.InternedString variants, UnityEngine.InputSystem.Utilities.InternedString name, UnityEngine.InputSystem.InputControl parent) [0x00001] in F:\Unity\Pyromance\Library\PackageCache\com.unity.inputsystem@1.0.0-preview\InputSystem\Devices\InputDeviceBuilder.cs:101
at UnityEngine.InputSystem.Layouts.InputDeviceBuilder.Setup (UnityEngine.InputSystem.Utilities.InternedString layout, UnityEngine.InputSystem.Utilities.InternedString variants, UnityEngine.InputSystem.Layouts.InputDeviceDescription deviceDescription) [0x0000c] in F:\Unity\Pyromance\Library\PackageCache\com.unity.inputsystem@1.0.0-preview\InputSystem\Devices\InputDeviceBuilder.cs:53
at UnityEngine.InputSystem.InputDevice.Build[TDevice] (System.String layoutName, System.String layoutVariants, UnityEngine.InputSystem.Layouts.InputDeviceDescription deviceDescription) [0x0004a] in F:\Unity\Pyromance\Library\PackageCache\com.unity.inputsystem@1.0.0-preview\InputSystem\Devices\InputDevice.cs:653
at UnityEngine.InputSystem.InputManager.AddDevice (UnityEngine.InputSystem.Utilities.InternedString layout, System.Int32 deviceId, System.String deviceName, UnityEngine.InputSystem.Layouts.InputDeviceDescription deviceDescription, UnityEngine.InputSystem.InputDevice+DeviceFlags deviceFlags, UnityEngine.InputSystem.Utilities.InternedString variants) [0x00001] in F:\Unity\Pyromance\Library\PackageCache\com.unity.inputsystem@1.0.0-preview\InputSystem\InputManager.cs:971
at UnityEngine.InputSystem.InputManager.AddDevice (UnityEngine.InputSystem.Layouts.InputDeviceDescription description, System.Boolean throwIfNoLayoutFound, System.String deviceName, System.Int32 deviceId, UnityEngine.InputSystem.InputDevice+DeviceFlags deviceFlags) [0x00072] in F:\Unity\Pyromance\Library\PackageCache\com.unity.inputsystem@1.0.0-preview\InputSystem\InputManager.cs:1100
at UnityEngine.InputSystem.InputManager.OnNativeDeviceDiscovered (System.Int32 deviceId, System.String deviceDescriptor) [0x000c4] in F:\Unity\Pyromance\Library\PackageCache\com.unity.inputsystem@1.0.0-preview\InputSystem\InputManager.cs:1991 )
UnityEngine.InputSystem.InputManager:OnNativeDeviceDiscovered(Int32, String)
UnityEngineInternal.Input.NativeInputSystem:NotifyDeviceDiscovered(Int32, String)
```
Comments (14)
Add comment
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- Timeline section stops rendering after restoring Profiler Window modules
- Cursor image does not update when Cursor.SetCursor is called again with CursorMode.Auto
- Crash on do_runtime_invoke when reopening a specific project after failing to build it
- Animations change speed when rigidbody is added
- Low FPS persists when re-entering Play mode after an extended session in a specific project
BarShiftGames
Feb 03, 2022 20:40
This issue is NOT fixed, I'm using 2019.4.31f1. BUT for anyone who needs an absolute workaround (and this is a hack) essentially go into PrimitiveValue.cs and change the first line of FromString (a function located around line# 370) and change the line ```if (string.IsNullOrEmpty(value)``` to ```if (string.IsNullOrEmpty(value) || value.Contains("NaN"))```. This will at least allow you to edit inputs for the time being, it'll still throw errors and I have no idea if it actually fixes anything, but this at least allows me to SEE and EDIT the input actions.
The problem is that this'll reset EVERY time you reopen unity, so be prepared to do this many times over the course of development.
evilseed
Jan 17, 2022 19:04
Issue persists in 2021.2.8f1
oscarpa9188
Nov 16, 2021 19:40
I am still having this issue. If anyone has come across a solution can you please help me and direct a struggling developer. I have not been able to find a solution and don know why this is considered resolved if there are others still having this issue in 2021
ShazamPowers
Oct 03, 2021 01:58
Still having this issue on 2021.1.23f1, not sure why it is marked as resolved
MagyarPeter
Mar 19, 2021 13:12
[SOLVED] uninstall vjoy(do not just delete the files, uninstall properly), and restart the computer.
MagyarPeter
Mar 19, 2021 12:57
Same, I can't even edit my input actions now.
zoomj
Dec 22, 2020 10:50
This problem is caused by the vjoy...virtual joystick installed on the computer. Uninstalling vjoy will no longer report an error. Why has this problem persisted for so long and has not been fixed yet?
Aaron112
Sep 17, 2020 12:04
Still having this issue.
MellowArpeggiation
May 29, 2020 07:34
Mugik you aren't the only one to make a fix, I made a PR back in November 2019 (https://github.com/Unity-Technologies/InputSystem/pull/949) and it still hasn't been included! It'd be nice to know what is happening here. I understand that Github isn't being used anymore but there are a lot of fixes waiting to be included from there.
MUGIK
May 07, 2020 14:38
I found a fix and made a pull request.
https://github.com/Unity-Technologies/InputSystem/pull/1140
But I'm not sure how long it would take to release, so you can easily change your code according to this pull request (3 lines of code) and you will be able to use the vJoy controller.
Hope this helps :)
P.S. I used vJoy to emulate gamepad using my smartphone and PC Remote cuz I don't have access to normal controllers right now. It's pretty handy for fast prototyping or testing