Comments (25)
I see this as well. I thought maybe it's an artifact of the way Netwon makes held objects follow the hand?
from newtonvr.
I get it too, but only when performance drops below 90fps. It gets really bad around 45 fps, and becomes unplayable.
from newtonvr.
I see it in the demo scene. Especially on the guns.
from newtonvr.
There's a few errors in how newtonVR makes non-kinematic objects follow the
controller. These are mostly only noticable for objects with interaction
points but happens on everything. The angular/linear velocituies are being
updated an inconsistent number of times per physics frame which is why it
jitters more at lower frame rates.
I have a fixed version in my branch but it behaves slightly differently, a
little more "lateral sway" but less jittering when colliding with objects. I
can submit a pull request from my branch with the fix later if it helps.
On Wed, Aug 17, 2016 at 12:23 PM Ralph Barbagallo [email protected]
wrote:
I see it in the demo scene. Especially on the guns.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
#52 (comment),
or mute the thread
https://github.com/notifications/unsubscribe-auth/AEZvq6YCHqmqtKWZYHZlqF0RqVjwsLzBks5qgnCjgaJpZM4JkgBD
.
from newtonvr.
Hm, this should be fixed with the change from FixedUpdate to OnNewPoses. The velocity algorithm is no longer dependent on the physics steps, but on the OnNewPoses steps. Doing it via FixedUpdate was causing us issues at low framerates so we switched it. I'll try and artificially induce low framerate and see how it goes. However, other things are going to break if your framerate is dropping below 90.
from newtonvr.
I'm seeing this at 90fps on the test scene, though. I'm using an AMD Fury X if that's an issue.
from newtonvr.
Oh crap, yeah. I have been testing at lower framerates recently :P We'll take a look at this first thing in the morning.
from newtonvr.
I've attached our version NVInteractableItem for you to check out.
We went back to applying changes in fixed update with a few other changes
- Rotation may be frozen while held
- Fixed a bug where angle in degrees was being applied to
Rigidbody.angularVelocity instead of radians - We sweep test the object's motion. If it didn't collide it's moved
kinematically. (worse performance, but gives very smooth movement) - Interaction point can be applied in different reference spaces (eg, guns
feel strange if they match the rotation of the grip of the controller
rather than the "pointing direction")
Edit: sorry that didn't attach as intended. See here:
http://pastebin.com/EyMrRhpe
from newtonvr.
Thanks for the Feedback. I tried your script but to no avail (at least I can grab the object and hold it with a very steady hand).
Additionally I am definitely above 90 fps (96 in Unity), and do not notice any overall lag or reprojection (I am running on a GTX 980TI and an 6600K).
I will attach a GIF showing one of the objects thats causes problems GIF As not every object suffers from this issue I am afraid something is wrong with my 3D-Models. But I can´t tell what it could be.
from newtonvr.
This looks like a problem with all objects. We're working on a fix now
from newtonvr.
We've pushed an additional change to the Velocity and AngularVelocity
update sequence to correct the high frame rate jitter issue. They're back
to running in FixedUpdate(), instead of in OnNewPoseApplied(). It fixes
things on our end, but please test and let us know if it fixes thing for
you.
On Wed, Aug 17, 2016 at 10:40 AM Keith Bradner [email protected]
wrote:
This looks like a problem with all objects. We're working on a fix now
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
#52 (comment),
or mute the thread
https://github.com/notifications/unsubscribe-auth/AFcwVhtCevCb8TihOgD7zwMzfjWRNKqkks5qg0eZgaJpZM4JkgBD
.
from newtonvr.
Many thanks for the Update, I really appreciate your efforts, but sadly this does not work either for my problem. At this point I feel like I am doing some super basic stuff terribly wrong :D
Did you experience the same heavy judder as me? GIF : (https://imgur.com/a/Ix6Mz)
from newtonvr.
It's the weirdest thing. Keith saw it, but I haven't so far. I'm writing new code to take only the last pose update, but still apply it in FixedUpdate, but I'm wondering if I'm going the wrong direction. Thanks for the help though, sorry the fix didn't work :(
from newtonvr.
Just a thought... if you're getting this at high frame rate check that
interpolation is off for your rigidbody. Because of the way velocity is
applied interpolation will be quite wrong (especially if gravity is enabled
while the object is held).
Also I'm quite curious if the sweeptest version I made wasn't stable as it
uses rigidbody.setpos/setrot when there's no likely collision in the next
frame, which should be jitter free.
On Thu, 18 Aug 2016 6:53 am Nicholas Abel, [email protected] wrote:
It's the weirdest thing. Keith saw it, but I haven't so far. I'm writing
new code to take only the last pose update, but still apply it in
FixedUpdate, but I'm wondering if I'm going the wrong direction. Thanks for
the help though, sorry the fix didn't work :(—
You are receiving this because you commented.Reply to this email directly, view it on GitHub
#52 (comment),
or mute the thread
https://github.com/notifications/unsubscribe-auth/AEZvq2raY1Lv-05aoBzMlxDLufPS4Ln5ks5qg3TCgaJpZM4JkgBD
.
from newtonvr.
I submitted another possible fix so item velocity only gets updated once per rendered frame (still in fixedupdate though). We're trying to find a computer we can get a solid repo on. Let me know if this fixes the problem for you guys.
from newtonvr.
Thank you so much for all your efforts, but I found the solution for me. For most of you, this might be absolute common knowledge, but my objects had the pivot point being way off center. So they have been far away from the object. Putting the pivot point in 3DS max now directly into the object, solved all my issues!
Now I continue working with the fabulous NewtonVR!
from newtonvr.
Yep, it works fine for me now!
from newtonvr.
Man, this sounded like a great fix but it didn't work for me at all! maybe made it worse even! I made a video to show the issue: https://youtu.be/F5OISF9Xtt0
I just tried it in the test scene with your debug code and it happens there too, so i'm doubting it is just some setting in my scene. The more you turn up the 'debug sleep per frame' the worse it gets. I'm on a geforce 970 and i7 6700k
from newtonvr.
Is there someplace we need to divide the velocity by time.deltatime or something?
from newtonvr.
I'm seeing this as well, heavy sideways jitter when picking up a gun in the example scene.
from newtonvr.
Thank you for confirming the issue! My game is at 90fps most of the time and this issue doesn't ruin it most of the time, but I just don't see a reason why this bug needs to exist. For the times when there is a frame rate dip, or some background process causes an issue, or any other issue comes up...picking up Newton objects becomes a game breaking experience where the objects wildly fly back and forth from your hand.
I'd really don't want to ship my game with this kind of bug!
from newtonvr.
By the way, if you are experiencing this in the editor, make sure you have 'Scene' view closed or covered by another window, or use 'Maximize on Play'. Rendering scene view can have a huge performance hit.
from newtonvr.
I was having a similar problem when messing around with a plank like object. The pivot point for the object was at the base of the mesh and as soon as I moved it to be exactly in the rigidbody center of mass I lost alot of jitter. It makes sense when you look at the code and see how the rigidbody is being tracked to the hand. I suggest moving your pivots and see what happens.
from newtonvr.
We've reverted to the old magic number method of fixing this. Will continue to look for better methods though!
from newtonvr.
yup it is a lot more stable now. I suppose an alternative would be to
switch methods on the fly if frames are taking too long. I still think the
last method must have been missing a time.deltatime division somewhere, but
I haven't looked into that part of the code. thanks for your work on the
big update, i'm excited to have one less system i have to rip out when
porting to other platforms!
On Tue, Nov 22, 2016 at 10:21 PM, Keith Bradner [email protected]
wrote:
We've reverted to the old magic number method of fixing this. Will
continue to look for better methods though!—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
#52 (comment),
or mute the thread
https://github.com/notifications/unsubscribe-auth/AE3l1vWazeIb24vmU79-oleDdXuNqgUeks5rA9tUgaJpZM4JkgBD
.
from newtonvr.
Related Issues (20)
- Offset colliders break interactables
- VR does not exist in the namespace HOT 2
- NVR Interactable Item - OnUseButtonDown fires before 1f HOT 2
- Option for hand controller always-on physics? HOT 1
- Spawn interactable item to hand
- Reset orientation not working
- Not working with Oculus HOT 2
- Issue with Fast Moving Game
- The FlowerGun example is firing the wrong direction. HOT 1
- Documentation out of date HOT 2
- Custom Hand Issues
- How can I detect when the headset is successfully tracking?
- Oculus Rift CV1 Key mapping error HOT 3
- Teleport script breaks using Unity
- Unity project broken HOT 1
- How can I test the example by using HTC VIVE?
- NewtonVR compile error after SteamVR update. HOT 1
- Updated SteamVR 2.0.1 compatibility HOT 6
- Oculus Quest Support HOT 1
- [NewtonVR] Critical Error: Oculus / SteamVR not setup properly or no headset found. UnityEngine.Debug:LogError(Object) NewtonVR.NVRPlayer:SetupIntegration(Boolean)
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from newtonvr.