Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Viewport "Jumping" when panning around the Y axis #12

Closed
KillerGoldFisch opened this issue Sep 21, 2020 · 17 comments
Closed

Viewport "Jumping" when panning around the Y axis #12

KillerGoldFisch opened this issue Sep 21, 2020 · 17 comments

Comments

@KillerGoldFisch
Copy link

I have a strange Issue with the Plugin:
When i am panning the editor viewport around the Y-axis, the position of it jumps around.
Here is a video showing the issue: YT
All other axis move without anny issues.

I reinstalled UE 2.25.3 and have only the HIDUE and SpaceMouse (1.0.0 release) plugin activated.
Other applications do run without this problems.

I use the SpaceMouse Pro.

Does anyone have an idea what could be the reason for this strange jumps?

@sirpiltrafus
Copy link

sirpiltrafus commented Sep 22, 2020 via email

@microdee
Copy link
Owner

I should really write about this in the README. Just disable the default bindings in your per-application space mouse settings because that's emulating a mousewheel by default which nobody asked for. Or uninstall the 3DxWare bloatware, I haven't used that in years.

@sirpiltrafus
Copy link

sirpiltrafus commented Sep 22, 2020 via email

@KillerGoldFisch
Copy link
Author

Thanks for the fast reply.

Maybe i am blind, but i couldn't find an option to disable this setting using the 3dconnexion software, so i digged a bit into the profile and config system and found a workaround:

If someone encounter the same problem:

Go to the C:\Users\<username>\AppData\Roaming\3Dconnexion\3DxWare\Cfg directory. There schoud be a file named UE4Editor.xml. Open it with your favorite text editor and search for this part:

        <Axis>
          <Enabled>true</Enabled>
          <Input>
            <ActionID>HIDMultiAxis_Rx</ActionID>
            <Min>-512</Min>
            <Max>511</Max>
            <Deadband>0</Deadband>
          </Input>
          <Output>
            <ActionID>HIDMouse_Wheel</ActionID>
            <Min>-512.0000</Min>
            <Max>511.0000</Max>
            <Scale>1.0000</Scale>
            <Reversed>true</Reversed>
          </Output>
        </Axis>

Then change the <Enabled>true</Enabled> to <Enabled>false</Enabled> and save the file.

This shoud do the trick.

@microdee microdee pinned this issue Sep 26, 2020
@brybalicious
Copy link

Yes, I believe I am getting this issue of jumping and instability too, specifically when setting Camera Behaviour to 'Orbitting No Roll', which would be my preference. Things work smoothly on 'Camera Delta No Roll'.

When I tried to disable conflicting mappings by going into properties on the 3dx Connection Properties, I completely lost panning and translation functionality in UE4Editor. I guess this is because 3dx finally set some particular mappings for UE4Editor which didn't exist?

I deleted the file C:\Users\<username>\AppData\Roaming\3Dconnexion\3DxWare\Cfg\UE4Editor.xml and still, panning (x, y and z axes) has not returned. I removed and then reactivated the spacemouse plugin, and still no functionality. Weird, because it all worked when first installed.

@KillerGoldFisch
Copy link
Author

Here is my UE4Editor.xml for reference:

UE4Editor.xml

<?xml version="1.0" encoding="UTF-8"?>
<AppCfg Default="false" xmlns="" CfgFormatVersion="1.3" ThisFileVersion="1.12">
  <AppInfo>
    <Signature>
      <Name>UE4Editor</Name>
      <ExecutableName>UE4Editor.exe</ExecutableName>
    </Signature>
    <Options />
  </AppInfo>
  <CfgProperties>
    <ID>ID_UE4Editor</ID>
    <Name>UE4Editor</Name>
    <InheritsFromID>ID_Default_KMJ_Cfg</InheritsFromID>
    <Access>
      <ReadOnly>false</ReadOnly>
      <AllowInheritance>true</AllowInheritance>
      <Hidden>false</Hidden>
    </Access>
  </CfgProperties>
  <AuthorInfo>
    <DriverVersion>17.7.0.17687</DriverVersion>
    <LastChange>
      <Tool>3DxSmartUI.exe</Tool>
      <Version>1.2.20251.17614</Version>
      <Date>9/21/2020 10:30:42 PM UTC</Date>
      <User>Kevin</User>
    </LastChange>
    <Created>
      <Tool>3DxService.exe</Tool>
      <Version>17.7.0.17687</Version>
      <Date>2020:9:1:21:22:10:28:403</Date>
      <User>Kevin</User>
    </Created>
  </AuthorInfo>
  <Settings />
  <Devices>
    <Device>
      <ID>ID_Standard_3D_Mouse</ID>
      <Name>Standard 3D Mouse</Name>
      <AxisBank>
        <Name>STR_DEFAULT_BANK</Name>
        <ID>Default</ID>
        <Axis>
          <Enabled>true</Enabled>
          <Input>
            <ActionID>HIDMultiAxis_X</ActionID>
            <Min>-512</Min>
            <Max>511</Max>
            <Deadband>0</Deadband>
          </Input>
          <Output>
            <ActionID>HIDMultiAxis_X</ActionID>
            <Min>-512.0000</Min>
            <Max>511.0000</Max>
            <Scale>1.0000</Scale>
            <Reversed>false</Reversed>
          </Output>
        </Axis>
        <Axis>
          <Enabled>true</Enabled>
          <Input>
            <ActionID>HIDMultiAxis_Y</ActionID>
            <Min>-512</Min>
            <Max>511</Max>
            <Deadband>0</Deadband>
          </Input>
          <Output>
            <ActionID>HIDMultiAxis_Y</ActionID>
            <Min>-512.0000</Min>
            <Max>511.0000</Max>
            <Scale>1.0000</Scale>
            <Reversed>false</Reversed>
          </Output>
        </Axis>
        <Axis>
          <Enabled>true</Enabled>
          <Input>
            <ActionID>HIDMultiAxis_Z</ActionID>
            <Min>-512</Min>
            <Max>511</Max>
            <Deadband>0</Deadband>
          </Input>
          <Output>
            <ActionID>HIDMultiAxis_Z</ActionID>
            <Min>-512.0000</Min>
            <Max>511.0000</Max>
            <Scale>1.0000</Scale>
            <Reversed>false</Reversed>
          </Output>
        </Axis>
        <Axis>
          <Enabled>true</Enabled>
          <Input>
            <ActionID>HIDMultiAxis_Ry</ActionID>
            <Min>-512</Min>
            <Max>511</Max>
            <Deadband>0</Deadband>
          </Input>
          <Output>
            <ActionID>HIDMultiAxis_Ry</ActionID>
            <Min>-512.0000</Min>
            <Max>511.0000</Max>
            <Scale>1.0000</Scale>
            <Reversed>false</Reversed>
          </Output>
        </Axis>
        <Axis>
          <Enabled>true</Enabled>
          <Input>
            <ActionID>HIDMultiAxis_Rz</ActionID>
            <Min>-512</Min>
            <Max>511</Max>
            <Deadband>0</Deadband>
          </Input>
          <Output>
            <ActionID>HIDMultiAxis_Rz</ActionID>
            <Min>-512.0000</Min>
            <Max>511.0000</Max>
            <Scale>1.0000</Scale>
            <Reversed>false</Reversed>
          </Output>
        </Axis>
        <Axis>
          <Enabled>false</Enabled>
          <Input>
            <ActionID>HIDMultiAxis_Rx</ActionID>
            <Min>-512</Min>
            <Max>511</Max>
            <Deadband>0</Deadband>
          </Input>
          <Output>
            <ActionID>HIDMouse_Wheel</ActionID>
            <Min>-512.0000</Min>
            <Max>511.0000</Max>
            <Scale>1.0000</Scale>
            <Reversed>true</Reversed>
          </Output>
        </Axis>
      </AxisBank>
    </Device>
    <Device>
      <ID>ID_ProductID_C62B</ID>
      <ButtonBank Default="true">
        <Name>STR_DEFAULT_BUTTONBANK</Name>
        <ID>Default</ID>
        <Button>
          <Input>
            <ActionID>HIDButton_3</ActionID>
          </Input>
          <Output>
            <ActionID>Translate (W)</ActionID>
          </Output>
        </Button>
        <Button>
          <Input>
            <ActionID>HIDButton_5</ActionID>
          </Input>
          <Output>
            <ActionID>Rotate (E)</ActionID>
          </Output>
        </Button>
        <Button>
          <Input>
            <ActionID>HIDButton_6</ActionID>
          </Input>
          <Output>
            <ActionID>Scale (R)</ActionID>
          </Output>
        </Button>
      </ButtonBank>
    </Device>
  </Devices>
  <MacroTable>
    <MacroEntry>
      <ID>Translate (W)</ID>
      <KeyStroke>
        <Key>1A</Key>
      </KeyStroke>
    </MacroEntry>
    <MacroEntry>
      <ID>Rotate (E)</ID>
      <KeyStroke>
        <Key>8</Key>
      </KeyStroke>
    </MacroEntry>
    <MacroEntry>
      <ID>Scale (R)</ID>
      <KeyStroke>
        <Key>15</Key>
      </KeyStroke>
    </MacroEntry>
  </MacroTable>
</AppCfg>

@brybalicious
Copy link

Thanks. So, I figured something out. I figured that something might have changed in DefaultSettings.ini for the particular project. So, I started a new project without 3DxWare running, and voila! The spacemouse worked again. I set it all up with my favourite settings, with Orbitting No Roll, and it all worked. Though, it still jumps.

Then, I started up 3DxWare and played with those settings - also opening up UE4Editor.xml and making sure all booleans are set to false. This time, nothing broke in the level, and everything works. However, there's still jumping.

I noticed that the jumping occurs also, every time I click the mouse, or even press a key (I was trying to take a screenshot with Windows + Shift + S and what I noticed is that the debug line 'Report' gets very long, every time it jumps.

So, functionality restored... but no resolution to the jumping.

I compared the DefaultSettings.ini before and after switching on 3DxWare and nothing has changed (in the new level).

@brybalicious
Copy link

Ok. Finally... progress. I found the problem. Somehow, the Camera Speed (top-right corner of 3D viewport) was set to -9 on that particular project, which did happen as a glitch after I turned off the rotation and translation settings in 3DxWare. Setting it to a sensible positive number gave me back the capacity to navigate the level.

Still outstanding:

  • why does the plugin say I have 2 connected spacemice?
  • the editor still jumps, especially when slowly rotating around objects in Orbitting No Roll mode

This GIF capture actually captured it surprisingly well despite the missing frames... you can see that the Report output is extremely long each time it jumps... it's like the camera position is trying to correct for the translation and rotation, to bring the object back to the center of the screen, but at an extremely jagged rate...

https://gyazo.com/2b5daaf9de524fb0e5253b3772157074

@brybalicious
Copy link

In some circumstances, it renders the spacemouse quite unusable... as, when you close in on the target object, it jumps further away than where you started...

@microdee
Copy link
Owner

microdee commented Nov 6, 2020

@brybalicious I see. Unfortunately that doesn't seem to be the same jump as this issue originally opened for. That was something caused by third party software (the 3DxWare service). This however seems like a glitch with the plugin itself. Does this only occur on orbit modes? I see you have the wireless space navigator, wireless spacemice can report multiple devices at once.
I never noticed this exact behaviour, neither my colleagues using this plugin daily (at least they didn't report yet) so this will be some real challenge to debug. Actually one of my colleagues have a wireless space navigator too, I can maybe borrow it for testing at some point.

@brybalicious
Copy link

Yes, please do. I am also able to e.g. jump on a discord stream and share my logs with you if that helps. Simple to reproduce on my end - simply set to Orbitting No Roll, and get close to an object and orbit/translate around it for a while at a low speed.

@microdee
Copy link
Owner

I've fixed a "jittering" phenomena inside the orbiting modes, so hopefully that was the bug you've experienced. It'll be included within next release.

@Hunanbean
Copy link

for me, the controls are no longer jittering with your latest update. Thank you

@microdee microdee closed this as completed Feb 9, 2021
@Hunanbean
Copy link

Hello again. In most places things are working perfectly, but if you open a single mesh, that particular workspace has severe jitter when orbiting around Y axis again. This jitter is like a self cancelling oscillation, effectively rendering it usless in this workspace.
Thank you for your continued work. Most satisfying marketplace purchase i have made!

@microdee
Copy link
Owner

microdee commented Mar 2, 2021

thanks for report I'll also check in a moment, can you record a video of what you're experiencing?

@microdee
Copy link
Owner

microdee commented Mar 2, 2021

I could reproduce the bug fixing it. This particular issue is tracked here: #30

@Hunanbean
Copy link

Looking forward to the fix. Thank you for the quick response! Switching any further comments to issue #30

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants