Unvanquished Is Rewriting, Modernizing The Quake 3 Engine
Phoronix: Unvanquished Is Rewriting, Modernizing The Quake 3 Engine
The Unvanquished open-source game is one of the most fascinating open-source game projects as they've strived for fundamental improvements in the ioquake3 engine and also to deliver high quality art assets and in-game content. Unvanquished is powered by the Daemon Engine, which is derived from the ioquake3 engine at its core -- the open-source version of id's Quake III engine. With the original code being the better part of two decades old, the developers are seeking to modernize and rewrite the code-base...
They have done some cool things with their engine so far. To bad they have scrap it and write something brand new after coming so far. Maybe forking the DOOM3 engine would be a good place to start?
We are not scraping the current engine but more like evolving it incrementally. We are however scraping and replacing the internals one at a time so that eventually we have a more "modern" engine.
Did you considered other options? If yes which were they?
Originally Posted by kangz
Why is better to modernize engine than ship the game?
You say that as if they cannot do both and that they are mutually exclusive.
Originally Posted by Ramiliez
Also, the amount of time people spend writing code is generally not going to affect the speed of game shipment since all the other parts (assets, sound..) are done by other people. Most of the work is not programming, which is why most FOSS games just suck.
I had a look at some of your latest source code and it's looking really clean and heavily document. Well done.
I'm just loving that C89 style. So neat and proper. It's no wonder so many quake3 ports have been made over the years.
C might get tedious and boring but well written C just makes me happy in ways no C++ hack could. I suspect the lack of interest in Doom3 indicates others feel the same way as I do.
I haven't noticed any C++ stuff so I'm hoping your C++11 transition will be very strict and limited.
Anyhow, I hope you guys can merge the Jedi Outcast\Academy modifications so that there will truly be one fork to rule them all
The blog explains it in detail. PNaCl is supposed to get over the older VM that is in use right now. It's just a bytecode interpreter, the same as it's in use right now, but delegating the maintenance of its compiler to Google, and thus switching from a currently unmaintained and inefficient one to one widely supported.
Originally Posted by c117152
You love that style, but did you contribute back? If you don't and you are just saying: this developer should use this, what is the benefit?
Originally Posted by c117152
What is so bad of using C++ or C++ 11?
Using iterators or auto? Using a STL sort function that works faster than QSort?
What would be the problem if they would use JS like V8 (they don't, as you did not read the blog post) as their portable scripting engine? Would it taint the project? Would it make it a web app? 0AD game is using a JS engine as the main scripting, and I don't see it working on the web, maybe you can clarify me.
PNaCl is not a web technology, is a sandbox environment to execute C/C++ programs. PNaCl (Portable Native Client) is a C/C++ VM that executes everything in a sandbox. But is still C++. It is more C++ than Asm.JS is, as it can do all operations that C++ does, excluding some very weird pointer arithmetics, and even if a buffer overflow occurs, this would in the worst case break the VM (the runtime of the game logic), not the user's machine credentials and such.
Great work Unvanquished Team.
I do not play the type of FPS you guys produce, however I like to follow your updates and see a determined team make a great game.
Amazing visuals and may you guys reach your goals in not time.
All the best!
I am mildly disappointed that they are switching to C++ if only because I have been spending a fair bit of time learning C lately and was starting to look for decent game projects I could start to dig into and potentially help out with. As Unvanquished is one of the nicer and more polished open source games out there I was strongly considering getting to know the code base. But now? Not so much, as I really don't care for C++. I know it offers a lot of features missing from C, but none of them seem compelling enough to spend any significant amount of time wading through C++ code which almost always seems to tend towards the convoluted and unnecessarily over-engineered side of things. This is just personal preference though and obviously the devs have already made up there mind, I'll just have to keep looking around till I find a project that is a better fit for what I am after.