ioquake3 consideration for professional use

Hello I am a professional environment designer and Indie game developer currently considering various open source game engines for future fps production development. The target systems are GNU/Linux (CentOS, SteamOS, Ubuntu) and windows 7+. I wanted to drop by to get some input from the community about quakeio3 viability for commercial use.

I have to admit I am disappointed with the presentation of this engine. Judging by the images here…

One thing I have found about many of these open source projects is that there is a lack of professional development and often times this means textures, shading networks and models don’t do justice to the actual capability’s of the engine. Are there better examples such as an engine demoreel or commercially developed to rate this engine againsed?

Graphics aside the actual game building experience/pipeline is another concern of mine. Does ioquake3 have a developer graphical frontend for arranging assets, setting up shaders, running scripts or other code such as C/C++/Python similar to that of Unreal/Unity/Cry and does it run natively in Linux? I expect to be able to import assets and code in the engine real time.

There are many other things that could be asked but right now you are the sales people. Im not here to make a huge debate, convince me to stay or leave.

Thank you

This is a 16 year old game engine, maintained by the open-source community with the only goal of staying loyal to the original game. It does not have the goal of being a commercial engine and, i hope, will never have. If you’re experimenting with ioquake, or any other id Tech ports, for a commercial release, you’re doing it wrong.

There are plenty of modern game engines out there, focused on providing features that are “hot” right now in the industry: Unreal Engine 4, Unity, Unigine and others. Pick one of them and just use it.

If you really want to work on top of open-source tools, don’t expect to have everything ready for you. Open-source means experimentation, hard-work and lot’s of learning. And that’s a wonderful thing. If that’s not what you’re looking for, and clearly it isn’t, just use the commercial products available.

There are amazing open-source libraries and projects out there:,,

No one is going to do your work for you, though. If there are no good shaders and models, do it yourself. If there are no good textures, then create them. If the code is not good enough, fix it. Why would you ever work with open-source if you’re not planning to get your hands dirty?

If you don’t want to do that, use Unity or Unreal and buy pre-made assets and shaders.

Thank you for your answer, an engine that wishes to remain loyal to the original would not be a good fit.

The technical back end of my company is based on open source tools development. You might be surprised how many ‘old’ community or otherwise programs are. Blender, Photoshop, Maya, Linux kernel to name a few are all over twenty years. We specifically want to stay away from programs such as Unity and UE for long term development due to licensing and in some cases compatibility concerns with our production platforms.

There is no “production-ready” open-source engine available. You have excellent libraries for graphics (OGRE, bgfx), physics (bullet, tokamak, ode), animation (smartbody), ui (librocket, cegui) and so on, but it’s up to you to create a game engine that glues all those libraries together. If you don’t have the manpower or the skills to do it, then you’re bound to using something that glues such solutions together (UE and Unity). That’s how they earn money anyway.

The closest you can get is Torque or Godot. But, you’ll still have to do much work on your own. If you’re small enough not to be able to build you own engine, i see no reason to worry about licensing. You have a lot to worry first and there are tons of flexible licensing out there.

@vinnyvicious, if you try (and produce maps) with new renderer2 in mind, I don’t think you will have the impression of a 16 year old engine. Why do you belittle ioquake3 now?
@TheEnvironmentGuy, yes the presentation of ioquake3 engine is outdated due limited high quality assets. A new render pipeline is already available for ioquake3:
A very short (and also outdated) impression what you can do with ioquake3 renderer (from Xreal/ioquake3):
The lack of high quality presentation demo material for ioquake3 is simply because the process of creating such things is very timeconsuming.

Please take this as your invitation to never post on these forums again if you keep that attitude. This is still the best free software engine for multiplayer first person shooter games.

Recognizing and praising the work of other open-source projects related to game development sounds like bad attitude for you? :disappointed:

@vinnyvicious There is no reason to be disappointed! ‘Recognizing and praising’ is always a good thing!
And I think most of us would like to hear your experiences with the engines you mentioned. I’m very interested in new rendering features too!
But can you show us the results of your work with these engines? Your experiences?

My personal experience is that at least one of those engines you mentioned has a really bad lightning system, in my opinion. The new ioquake3 renderer looks ten times better instead, has a lot of eye-candy features, is highly configurable, and, beside the rendering, there are a lot of common 3rd party tools many people are familiar with.
Moreover, ioquake3 has many, many security fixes. It is the most stable, bug-free, open source engine I know (and I tried a lot of them). Additionally, various ioquake3 developers added so many features to this engine even ‘newer’ engines do not provide (VOIP, OpenAL, 4-Player Splitscreen support, …)

Anyways, considering your various posts, you are new to idtech3 (which isn’t bad), but speaking for a (whole) community, and what their goal is, isn’t really a good thing in this case. That’s the point!
Do not worry, I’m also not experienced enough to always achieve what I want when I try to add some cool feature to the code. For people like you and me (the beginners) the ioquake3 code is really overwhelming sometimes. Though, at least for me the code is easier to understand than the code of idtech4 or other engines, engines you are ‘recognizing and praising’! Thats why I am interested in your experiences with those engines!
I am not responsible for the indisputable success of ioquake3, and therefore also not an ioquake3 ‘salesman’, but have you ever realized how many projects are based on, or forked from ioquake3? Some of them even use OpenGL 3.0!

‘Recognizing and praising’ goes to ioquake3 maintainers as well! They don’t get paid for their work and they do keep Quake 3 (and all the projects based on it) alive! Even projects whose goal is NOT ‘staying loyal to the original game’, e.g.: Standalone games
Everybody can judge about those ioquake3 engine based games, but nobody can judge about engines without a playable game. Don’t always trust engine demos or videos, some of them are only a slideshows running at 10 FPS… :unamused:

Does ioquake offer any sort of license for commercial use?

We cannot offer our code under any alternative license. All code is under the GPL v2 with the only exception being external libraries, some of which we include in the source tree for easy compilation.

The GPL version 2 does not preclude commercial use, the way that most people would accomplish this is to create their own levels, art, sounds, etc and those would be exclusively available via the commercial game you distribute and any source code changes you make would remain GPL and you would be required to distribute that to purchasers and put it on github or whatever.

Here’s an example of Electronic Arts using GPL code:

The best example is of course the original Quake 3: Arena game is still commercial, and you are not free to distribute it. Even though the source code was released, you must still buy Quake 3 if you want to play that game specifically with ioquake3.