Timothree Besset, perhaps better known amongst Linux gamers as "TTimo" and the former main "Linux guy" at id Software, has announced es_core. The purpose of es_core is to provide an experimental framework for low-latency, high-FPS multi-player games.
Besset described in a blog post
. Here's the key of what es_core is all about:
This got me thinking about how I would approach this, and what my ideal engine framework would look like. We are talking PC-centric, mouse and keyboard gaming here. High end GPU, multicore CPU, 120 Hz display and low latency, high precision input.
Renderer eye candy should never get in the way of a smooth game simulation. A sudden dip in renderer fps should never mean that you are going to miss that jump, or that your mouse handling is going to turn you around in a slightly different way than usual.
The technology foundation for a project like this is extremely important. Unity and UDK are amazing engines, but they are general purpose in nature, and they made compromises to that end which make them ill-suited.
So I decided to put some code together to explore the subject. There's just enough stuff now that I feel it's worth putting it out to get some feedback. I've named this es_core, you can find the project on github.
With this experimental framework, Ogre is being used as the renderer, SDL2 is supported, and input is sampled in its own dedicated thread. All threaded communication is being done by message passing built on ZeroMQ.
You can check out the early code on GitHub
with support for Windows, Linux, and OS X.