Quantcast
Channel: Timothy Lottes
Viewing all articles
Browse latest Browse all 434

Kotaku - Report: Valve’s Steam PC Getting 2013 Reveal, Runs On Linux

$
0
0
Kotaku - Report: Valve’s Steam PC Getting 2013 Reveal, Runs On Linux
If this happens, and I like the GPU, I'm definitely building for this platform! As someone developing a game on Linux first and later porting back to Windows, I can say first hand that Linux is an awesome platform for games, here are some of the highlights for me,

(1.) Low latency direct access to input via /dev/input/event*.
(2.) Nothing running in the background, game gets the full machine.
(3.) Awesome GL drivers on NVIDIA at least (and no Windows WDDM latency).

As someone who is not enslaved to Visual Studio or the complexity nightmare of a massive C++ based project or engine, I've got 1 second compile times on Linux with gcc and optimization on with my C based engine. This is part way possible because my engine uses no headers, because in Linux, it was trivial to just write my own headers in my source for any external interface I needed (all of which are provided by simple Linux system calls, with the exception of OpenGL). My development iteration time on Linux is as fast as a key stroke to save my source in the text editor, which automatically triggers a background compile, and instant in-game reload of a shared library binary without exiting the game. I don't use an IDE or any debugger, it is just too fast to simply modify the code while it is running to try stuff and print stuff on the screen if necessary.

Edit: Counted Lines of Code
Going direct on Linux is trivially simple, here is roughtly what I have including manually building "headers" to everything,

60 lines - Linux system call interface in inline asm (file IO, etc).
60 lines - X11 interface (to get window).
180 lines - OpenGL interface, mostly "header" defines.
250 lines - Direct Linux input IO, mostly key code defines (one/line).

Those 250 lines for direct Linux input include all the code running the background real-time thread which writes input into a STREAM-DRAW pinned CPU memory for direct GPU read.

Viewing all articles
Browse latest Browse all 434

Trending Articles