Can anyone help with Kalman filter setup?
Hey All,
I'm devving a multiplayer online shooter for GearVR.
It uses a custom UDP client server system for the online play. Which is all but finished and works well.
At the moment it is running with simple IIR filters to do smoothing/prediction, which is OK but suffers the usual surging etc.
I'm struggling to add Kalman filtering. I've included KFilter in my C++ code:
http://kalman.sourceforge.net/doc/index.html
I have this data in ~10Hz RX packets:
The data describes the state of 1 client ship in the match. The ships physics is a rigid body in fluid with low friction with:
Z force applied for thrust.
Z torque applied for roll.
X torque applied for pitch.
I understand how to pre-condition this data stream: make it linear in time of the receiver by interpolation.
But setting up the kalman makes me feel dumb :oops: I would actually find it easier to build and train a small neural net to process the UDP data, but before I try that path... anyone familiar with Kalman that could maybe provide some info or a working example for tracking a body in 3D space?
I'm devving a multiplayer online shooter for GearVR.
It uses a custom UDP client server system for the online play. Which is all but finished and works well.
At the moment it is running with simple IIR filters to do smoothing/prediction, which is OK but suffers the usual surging etc.
I'm struggling to add Kalman filtering. I've included KFilter in my C++ code:
http://kalman.sourceforge.net/doc/index.html
I have this data in ~10Hz RX packets:
millisecond timestamp of sending client
X position
Y position
Z position
X rotation
Y rotation
Z rotation
The data describes the state of 1 client ship in the match. The ships physics is a rigid body in fluid with low friction with:
Z force applied for thrust.
Z torque applied for roll.
X torque applied for pitch.
I understand how to pre-condition this data stream: make it linear in time of the receiver by interpolation.
But setting up the kalman makes me feel dumb :oops: I would actually find it easier to build and train a small neural net to process the UDP data, but before I try that path... anyone familiar with Kalman that could maybe provide some info or a working example for tracking a body in 3D space?
