Comments (6)
Modern mice have hi-frequency polling that feeds game engine with a lot of data during movements. So if you have 1000Hz mouse - even 250ms frame delay may cause such overflow.
Solution is simple: you should combine all sequential mouse moves (but not key events!) in one event - it is safe because engine uses accumulated delta anyway. With such approach it is almost impossible to cause such overflow except that you can click 100 times per second or so
fix.txt
from ioq3.
I just have it print once instead of spamming in OpenJK. The fix @ec- has made looks interesting though.
from ioq3.
@ec- I just tested your patch in OpenJK and it causes the mouse to not function very well if at all. The mouse just moves a couple of pixels when moving my mouse around. Sounds like the code isn't actually set up to handle delta very well?
from ioq3.
@ensiform I can't tell anything about OpenJK code but for Q3 doesn't matter how complex are your 'painted' mouse fugures between two rendered frames because it will use accumulated delta in result.
Also notice that in ioq3/derivatives that delta readed before wait-loop so it adds another <1000/com_maxpfs>ms lag which may confuse even more
from ioq3.
@ec- Its the same code, still a Q3 derivative. CL_MouseEvent and CL_MouseMove do the same thing regardless
We do have the change for moving the input sampling on the other side of the loop:
JACoders/OpenJK@ba25e50
from ioq3.
Fixed in be1c71d.
from ioq3.
Related Issues (20)
- OpenGL2: Flares in mirrors calculate wrong depth and have wrong visibility
- Failing to open x64 game in a path with special characters HOT 3
- OpenGL2: The game is too bright and auto-exposure doesn't match the original
- OpenGL2: Curved surfaces don't use dynamic level of detail
- OpenGL2: Stencil shadow volumes are broken (cg_shadows 2) HOT 1
- OpenGL2: r_shownormals 1 is not implemented
- [Warning] Area 51 (2005) HOT 1
- rendering improvements feedback
- OpenGL2: r_greyscale doesn't affect everything
- OpenGL2: r_anaglyphMode causes 2D and HUD models to be transparent
- opengl1: Skybox in OpenGL 1.1 displays black lines at edges
- Add OpenGLES2 renderer HOT 1
- Add pk3 file caching to emscripten port
- Make emscripten port default to 85 FPS, non-V-sync HOT 1
- cgame project is not used HOT 3
- Emscripten CD Key valid but still doesn't show levels HOT 4
- Add PBR support
- Unlagged: add option to trust clients
- Suggestion: Add web page for getting the Quake 3 data files HOT 1
- Why do MAX_FLARES for opengl1 and opengl2 renderers differ?
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 ioq3.