• Projects
  • 3Dconnexion Space Mouse Support in Godot

cybereality In the meantime, you can open the file addons/spacemouse/SpaceMouse.gd and look for these two variables.
const translate_speed = 0.1
const rotate_speed = 0.02
Feel free to change them if you like (you will have to enable/disable the plugin to see the effect).

I suspect trying to tighten those scalar values down would likely just run into floating point precision issues, but I guess I could try.

cybereality I wanted to add sliders to adjust the speed, but it doesn't look like you can export variables in editor plugins. My only option was to make a new dock, where I could attach settings.

I think in this case, just having a config.ini or just conf(no extension) file in a sort of plain text format would probably be fine.

It might be a good idea to include the version number in the release zip file name.

Edit: yeah this is a huge QoL improvement! the camera mode with some speed adjustments makes a big difference. 🙂

    Megalomaniak It might be a good idea to include the version number in the release zip file name.

    Yeah, good call. I updated the zip names.

    Kojack Haven't tried it yet, but I will. 🙂

    Yes, please do. There is a very small market for people with Space Navs that are also using Godot.

      It's working fine for me.
      Windows 10, Godot 3.4.4, both Space Navigator and Space Pilot Pro.

      One thing that would be nice is saving the settings.

      Does Godot support addons that are project independent? Unity pretends to not do addons that are outside of the project (so the tool is available in all projects automatically), but there's an undocumented way to do it (I use it for my Unity Connexion plugin) which Unity provides for its own editor addons.

      Oh yeah, I could save the settings, it wouldn't take long. I wanted more people to test it and give feedback before I submit to the asset library. So far I only got you two here that I know tried it. Some other people mentioned they were going to download, but I never heard back from them.

      I believe the plug-ins are project specific. But once it is on the asset library, you can click one button in the editor and it will install itself. So that is good enough for me, but I can double check if there is some global way to do it.

        cybereality
        One of the issues I had with project based addons in Unity was when I wanted to use it with student projects. It got annoying to have to modify many student projects to do something that is unrelated to the project. Plus being careful to not include it when pushing changes I might make to the project.
        Unreal, 3DSMax, Maya, Blender, Sketchup, Visual Studio, etc all let you install addons to the editor itself.
        Obviously not something you can do if Godot doesn't support that, just something I've run into before. Ideally both would be supported, project payload addons and global editor addons.

        You could probably go on the Connexion dev forums and ask if anyone wants to try it out. https://forum.3dconnexion.com/

        I got the Xbox controller technically working, but it's really bad. I mean, it works, but it felt really bad and not much better than just using the mouse. Not sure it's worth investigating any further, but maybe I will take another look tomorrow.

        9 days later

        So I'm considering this project done. The 1.4.3 version is on Github and can now be installed directly in the Godot editor via the Asset Library tab.
        https://godotengine.org/asset-library/asset/1383

        Also, just in case anyone finds this by search and is working on something similar, the vendor and product ids for all Space Mouse devices are listed on the 3Dconnexion FAQ:

        Keyboard Pro: USB\VID_256F&PID_C664\…
        Numpad Pro: USB\VID_256F&PID_C665\…
        CadMouse Pro: USB\VID_256F&PID_C656\…
        CadMouse Compact: USB\VID_256F&PID_C655\…
        CadMouse Compact Wireless: USB\VID_256F&PID_C658\…
        CadMouse Pro Wireless: USB\VID_256F&PID_C654\…
        CadMouse Pro Wireless Left:  USB\VID_256F&PID_C657\…
        SpaceMouse Enterprise: USB\VID_256F&PID_C633\…
        CadMouse: USB\VID_256F&PID_C650\…
        CadMouse Wireless: USB\VID_256F&PID_C651\…
        Universal Receiver: USB\VID_256F&PID_C652\…
        SpaceMouse Compact: USB\VID_256F&PID_C635\…
        SpaceMouse Pro Wireless Receiver: USB\VID_256F&PID_C632\…
        SpaceMouse Pro Wireless (cabled): USB\VID_256F&PID_C631\…
        SpaceMouse Wireless Receiver: USB\VID_256F&PID_C62F\…
        SpaceMouse Wireless (cabled): USB\VID_256F&PID_C62E\…
        SpaceMouse Pro: USB\VID_046D&PID_C62B\…
        SpacePilot Pro: USB\VID_046D&PID_C629\…
        SpaceExplorer: USB\VID_046D&PID_C627\…
        SpaceNavigator: USB\VID_046D&PID_C626\…
        SpaceNavigator for Notebooks: USB\VID_046D&PID_C628\…
        SpaceTraveler: USB\VID_046D&PID_C623\…
        SpacePilot: USB\VID_046D&PID_C625\…
        SpaceBall 5000 USB: USB\VID_046D&PID_C621\…
        SpaceMouse Plus USB: USB\VID_046D&PID_C603\…
        SpaceMouse Plus XT USB: USB\VID_046D&PID_C603\…
        SpaceMouse Classic USB: USB\VID_046D&PID_C606\…
        CadMan: USB\VID_046D&PID_C605\…

        https://3dconnexion.com/uk/support/faq/how-can-i-check-if-my-usb-3d-mouse-is-recognized-by-windows/

        I already have the 7 most popular devices on my plug-in (the standard consumer models) but I may update my product id database in the future. I am just pretty busy and most of those are CadMouse and stuff I don't think Godot users are using. However, I will update at some point.