I've always been a Valve fan, but now that I have the opportuninty to choose a game engine for a project I'm not sure I want to choose the Source Engine after watching this wikipedia entry. My options essentially boiled down to an open source stack (Horde3D + Zoidcom + Spark + SFML + CEGUI, and well, not OSS but PhysX too), UDK and the Source Engine.

My question is (because I really have no experience with it) what would be the technical reasons (not license or other) for any developer to choose the Source Engine over any other open source or commercial option ?, is the Source Engine really worth it as a game development tool or has it time already passed and it is obsolete against other solutions?.


Edit: Precised my question a little more , I'm looking for technical reasons to choose the Source Engine.

  • \$\begingroup\$ Why do your options not include Unity? It's the popular engine nowadays and former UDK users typically find it to be a breath of fresh air, so from them I get the impression that it's easier to use. \$\endgroup\$
    – Ricket
    Feb 4, 2011 at 13:38
  • \$\begingroup\$ Unity might be somewhat free, it is not C++ in its free version. By the quoted libs, I guess the OP wants C++ libs, and I agree with him: it gives leverage and experience for companies to use C++ and not those scripting languages. \$\endgroup\$
    – jokoon
    Feb 4, 2011 at 13:42
  • \$\begingroup\$ What would you use SFML for if you're making a 3d game (assumption based off mentioning Source and Horde3D) and you're already looking at CEGUI? \$\endgroup\$ Feb 4, 2011 at 16:23

4 Answers 4


Well, by far and away your biggest question should be: is my game going to be commercial? If so, then you will have to obtain a Source engine license, which is going to be (in most cases) substantially more costly than other engines, especially options like Unity. From the jist of your post I assume you aren't going to be commercial, though.

If your game is not going to be commercial, you can use the Source engine for free, but then you will have limited access to the engine and be at the mercy of the SDK tools. Valve has not done a great job (I am putting this lightly) at maintaining the SDK lately and the tools remain in a near-broken state.

Personally, speaking as someone who has worked on multiple Source SDK mods since 2005, I would stay as far away from source as possible. The tools are simply far too outdated and unkempt at this point. They have literally gotten worse as time has passed; for example the demo smoother tool (used to edit the camera movement in a demo to get good footage for movies such as trailers), has actually become harder to use from the Episode 1 SDK to the Orange Box SDK. It has more bugs and more crashes. The other tools can have the same said of them, OBSDK's Hammer (the level editing tool) now has multiple render bugs that did not exist in previous SDK versions, etc... it simply feels as if they do not care about their free tools anymore. It's a shame, as mods are a huge part of why Valve is what they are today. I do not know if their commercial tools fare the same (I would hope not!), but given what I have experienced with the free SDK there is no way I would ever consider purchasing/using the source engine for a commercial game.

As for other free engines, Ogre3D and Irrlicht are worth looking into as well. Also the Torque engine from Garage Games has just recently re-launched with a much lower price, $100 for their 3D engine, down from what used to be around $2000 iirc.

  • 2
    \$\begingroup\$ As another former Source mod developer, I completely agree with this. When he says Valve hasn't done a good job of maintaining it, he's putting it extremely lightly. The tools are freaking awful, and the SDK is consistently broken, inconsistent, and largely undocumented. The engine architecture will leave you banging your head against a wall a lot, and honestly I can't believe anyone puts up with its awfulness. (Keep in my I say this as someone who LOVES Valve's games and Steam.) Do not waste your time with the Source engine, unless you are being paid a hell of a lot of money. \$\endgroup\$
    – Bob Somers
    Feb 4, 2011 at 23:36
  • \$\begingroup\$ @Bob I was looking for just that kind of confirmation. It doesn't seem right a company like Valve would not put love in something that they use for themselves, what a shame... perhaps they have been working on something else and haven't shared it?. \$\endgroup\$ Feb 5, 2011 at 0:48
  • \$\begingroup\$ It is a shame. I can only hope that the internal code is better kept than the SDK code. To be quite honest, Valve was at the top of my list for companies I'd like to work for someday, but after working with the SDK code base I've crossed them off my list because if I had to wade through that mess everyday I'd want to eat a bullet by the end of my first week. \$\endgroup\$
    – Bob Somers
    Feb 5, 2011 at 5:48
  • \$\begingroup\$ To be fair to Valve, this is a product that they're handing out for free. I know that's not a great argument for undocumented and badly maintained, buggy SDKs. I've no experience working with Source, but I have worked with a LOT of undocumented, buggy APIs (one's that we've had to pay for, too). I'm almost convinced that Valve must keep 2 versions of it: a version for use internally and a version for external shipping. Which might make sense of the bugs and lack of documentation. \$\endgroup\$ Jun 19, 2012 at 9:58

There are a handful of things the source engine gets you.

  1. It "just works". None of this trying to ham fist tech together like in your OSS solution.
  2. Lots of tech focused on realistic humans. Ragdolls are good, IK (for proper foot placement) is good. Pathfinding is there (I think). Physics is pretty polished. And you get their facial animation tool which lets you do passable cinematics in-game along with gestures (partial additive animations). NPCs have things like "interest points" that they'll occasionally look at when wandering about, or event-based reactions to things (for example, saying something if you throw a physics object at them or if you're at low health).
  3. It's not Unreal. You're working in C++ as a programmer instead of UnrealScript.

But there are some problems with it.

  1. I don't think they've solved the lighting for dynamic objects (last I checked dynamic objects were vertex lit using a single sample point at the origin), meaning that it can clash pretty bad with the nice-looking lightmapped static environment.
  2. Not as modern occlusion solutions. Unless they've changed it since I've used it, you still have to do Quake-3-style manual portal placement and sometimes hint brushes. Hope you like making most of your level out of brushes.
  3. It's not Unreal. The artists' tools aren't going to be as polished. Techniques learned here probably aren't as useful to the job market as a whole as more studios use Unreal.

The Source Engine is an interesting toolset. It is not for everyone. Mostly it is for the mod crowd, and for those that wish to make a commercially released game. The interface hasn't changed much in years. That could be looked at as a good or a bad thing, depending on the user. Compared to UDK, it is a breath of fresh air. It is half way between UDK, CryEngine, and Unity. UDK has a convoluted import process that is un-necessarily complicated. If you don't want to deal with programming in Unity, you have to purchase quite a few plugins to get to the level of a AAA quality game. Source is not as dependant on programming. CryEngine has a propietary format, and currently only provides support for Maya, and 3DS Max. If you do not use those packages, you will hit a brick wall in your development. To see what progress has been made with this issue visit http://www.crydev.net/newspage.php?news=89611

For all of you that want an all inclusive package that does it all, Source is a viable alternative. Source doesn't have those strange import issues. There are tools for artificial intelligence, spawn points, hurt zones, heads up display creation, skyboxes with parallax effects, audio zones, ragdoll physics, vehicle physics, rope effects, cloth dynamics, facial animation, body animation, particles, and destructible objects. Source is also compatible with many 3D content applications, not just the most popular packages.

A powerful combination is the Source Engine, and Blender. Blender can be downloaded at http://www.blender.org/download/get-blender/


The source engine is more a professionnal engine, I would recommend to use it if you have a project within a company, but if you are doing something "through" the help of internet, my answer is that you can't beat open source: its use is more widespread and their usage is more commonly "standard" in its design, while professionnal engines usually have been made with a goal in mind, which were half life 2 and all other mods alike, and thus, those requirements with their deadlines made it more difficult to use, even if the result is awesome.

It really depends how do you work and what do you want to do; I'm not much experience, but as I see it, even an indie would use open source rather than pro engines.

Open source softwares always have to shine in ease of use, whatever is the result, because that's the only thing that makes a software better than another: OSS and internet are brothers for life, but they can't beat the voodoo magics of proprietary top-notch last-generation software.


Not the answer you're looking for? Browse other questions tagged .