{"repo":"decce6/Ixeris","free":true,"listed":false,"github":"https://github.com/decce6/Ixeris","clone":"git clone https://github.com/decce6/Ixeris.git","description":"Buffered raw input and threaded event polling","language":"Java","stars":34,"topics":["minecraft","minecraft-mod","glfw"],"license":"LGPL-3.0","category":"game-templates","readme_excerpt":"Ixeris Overview Ixeris is a mod that optimizes event polling to improve client performance. You might have noticed a visible drop of the FPS when you move your mouse. Part of the FPS drop is because the game does have additional jobs to do when you turn the camera, like calculating the visibility of chunks. However, because of the inefficiency in the native code that polls events and the JNI upcall overhead, some of the CPU time, otherwize can be utilized for rendering, are unnecessarily spent on event polling. This is most noticeable on Windows, especially when your mouse has a high polling rate. Ixeris resolves the issue mainly through two measures: - Threaded Event Polling . Instead of performing rendering and event polling on the same thread, Ixeris performs event polling on the main thread and kicks rendering to a separate render thread . - Buffered Raw Input (Windows-only). Switches the method used for input polling from the inefficient GetRawInputData (one call for each input event) to GetRawInputBuffer which allows reading raw input messages in batches (one call for all events). Additionally, performing this work in Java code has allowed us to eliminate the JNI/FFM upcall overhead. Benchmarks These tests are done after the world has fully loaded and the framerate has stabilized. Test 1: In Game This test compares the performance when the mouse is grabbed, i.e. cursor invisible. This test is performed in a superflat world with no entities. This test is done on Windows,","default_branch":null,"files":null,"tree":[],"storefront":"/r/decce6","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/decce6/Ixeris/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}