Skyrim?

Started by
3 comments, last by jbadams 11 years, 1 month ago

Not that I have any intention of making a game as great as skyrim, I was just curios to find out how it was made. I'm talking about the PC version, was it made with c++ or another language. What libraries did they use?

Just wondering, Thanks

Advertisement

Almost every commercial game made for the PC or consoles was made in C++, including Skyrim. Some of the gameplay logic is written in a bespoke scripting language, which looks somewhat like a mix between BASIC and Pascal. Bethesda claim that Skyrim used an 'all-new' engine but in reality it's almost certainly based on Gamebryo, as Oblivion was. I don't have the box handy but there were probably between 30 and 100 programmers, designers, and artists involved over the course of several years, not including work done on previous titles which would have been included in Skyrim too.

Apart from that, "how it was made" could be the subject of a whole book by itself so it would be better to ask more specific questions.

Engine looks pretty much like Oblivion's. Except for the graphics part.

Interior/exterior cell system is the same. Lod system is the same. Their nif files are the same as usual. There is a massive event manager that looks like its all new, but its under utilized. They wrapped their quest system on a nice package for Skyrim, but its the same quest system than before (masochistic as it was). Their scripting system is all new. It gets compiled to bytecode and interpreted by the game at runtime.

They have a weird forward/deferred system in which you can't have MSAA and you cant have more than 4 shadow casting lights per scene. Like the worst of both worlds.

Its a mixed bag really. They have dynamic shadows, but they get updated at regular (long!) intervals in exteriors, and flicker like mad when doing so. They don't have soft particles (or at least quite a bunch of them clip with the environment).

Still, Skyrim looks like an awful amount of work. And I'm pretty confused about it. I'm not sure if it is really well thought, or a product of a messy brainstorming and half implementing everything.

It was proposed for "Best technology" category (or is it was "Best graphics" or both?) in GDC. Lost to Battlefield 3.

"I AM ZE EMPRAH OPENGL 3.3 THE CORE, I DEMAND FROM THEE ZE SHADERZ AND MATRIXEZ"

My journals: dustArtemis ECS framework and Making a Terrain Generator

The engine they used was Gamebryo but it was Bethesdas own fork which they have been maintaining for years. It hardly resembles the origional NetImerse / Gamebryo that you can get off the shelf.

I think the responses so far have answered the original question pretty well, but I just wanted to note that Bethesda (and other AAA studios) have specific reasons for the decisions they make that do not necessarily apply to you as a beginner, hobbyist or indie developer. There's absolutely nothing wrong with being interested in how large commercial games are made, but don't make the common mistake of assuming you need to do things the same way: if you put in the work you can produce a good quality game that performs well using the majority of popular programming languages, and may well have an easier time doing so than if you tried to use C++ like the professionals.

If you want to use C++ then that's fine. It's a very capable language and you'll be able to make great games if you put in the time and effort. Just be aware that you don't have to use C++, and that great games can also be made using other languages, or even without programming.

We live in a time where the barriers for entry into games creation are lower than ever, with a wealth of information available and great tools and software accessible to just about anyone.

Sorry if that was getting a little too off topic, but I felt it was relevant advice to follow up the excellent responses already given to your question. smile.png cool.png

- Jason Astle-Adams

This topic is closed to new replies.

Advertisement