Skip to main content
GameDev.net gamedev.net
🔒 Locked

Is this full source code to the original unreal engine?

Started by Inevitab13 Feb 24, 2008 at 2:45 AM 12 replies 14.7k views
Original Post
Inevitab13
Inevitab13
Is this the full source to unreal engine 1? (http://unrealtournament2004.filefront.com/file/Unreal_Tournament_Source_Code;50393)
Cygon
Cygon
No, it's just a fraction of the code, mainly containing the audio and video interfaces plus some public headers.

You'll find a small 'engine.lib' somewhere in that archive containing the missing stuff in compiled form. I guess it might allow you to port Unreal 1 to modern hardware at best, but it won't allow you to view the actual engine code.

-Markus-


Professional C++ and .NET developer trying to break into indie game development.
Follow my progress: http://blog.nuclex-games.com/ or Twitter - Topics: Ogre3D, Blender, game architecture tips & code snippets.
Inevitab13
Inevitab13
Is there a way to decompile it? or has anyone done this?
stonemetal
stonemetal
If you are that interested in peaking under the hood check out the quake1/2/3 source it is fully gpl these days.
blakedev
blakedev
Quote:
Original post by Inevitab13
Is there a way to decompile it? or has anyone done this?

That's probably illegal, but theoretically possible. Only thing about that is that you would most likely get assembly code from it, and it would probably take less time to learn and write your own engine than convert that to the programming language that you are using.
guyver23
guyver23
Your experience may not be the same as mine, but every time I've tried to study a complete, working game of that magnitude, all I've ever gotten out of it was increased confusion. :(
Hodgman
Hodgman
The older Unreal engines use some terrible OO-design practices anyway (Such as a base entity class containing dozens of variables used by only certain sub-classes), so they're not even very useful for learning.

I'm not sure about UE3, but hopefully they've learned some better practices by now.
Valeranth
Valeranth
Quote:
Original post by blakedev
Quote:
Original post by Inevitab13
Is there a way to decompile it? or has anyone done this?

That's probably illegal, but theoretically possible. Only thing about that is that you would most likely get assembly code from it, and it would probably take less time to learn and write your own engine than convert that to the programming language that you are using.


There are MANY decompiles that outprint source code.. value names are changed so like main would be 'int main(int arg1, char **arg2)' and there are, ofcouse no comments. It also is the optimized code so it my not be as portable as the original code.. Over all not very pleasing to look at and you dont get any info out of it. And we all know source code is EVIL to learn from even with comments...
I will not post any becouse of the legality of them and the fact that I dont want to help anyone rip off a game like unreal.
Structural
Structural
Quote:
Original post by guyver23
Your experience may not be the same as mine, but every time I've tried to study a complete, working game of that magnitude, all I've ever gotten out of it was increased confusion. :(


Try to focus at one certain aspect of the engine. I took Torque and peeked at the networking/ghosting/SIM part for half a week (trying to figure out a problem I had with syncing objects) and learned a lot of that. Also digging through the animation part of Torque (to take control of one specific bone from script) taught me a lot about how skeletal animation is implemented.

Aimlessly looking at an engine will indeed not help you a lot.
STOP THE PLANET!! I WANT TO GET OFF!!
Valeranth
Valeranth
Quote:
Original post by Structural
Quote:
Original post by guyver23
Your experience may not be the same as mine, but every time I've tried to study a complete, working game of that magnitude, all I've ever gotten out of it was increased confusion. :(


Try to focus at one certain aspect of the engine. I took Torque and peeked at the networking/ghosting/SIM part for half a week (trying to figure out a problem I had with syncing objects) and learned a lot of that. Also digging through the animation part of Torque (to take control of one specific bone from script) taught me a lot about how skeletal animation is implemented.

Aimlessly looking at an engine will indeed not help you a lot.


I should put out, that just becouse these guys are professionals doesnt mean that know everything they are doing, so reading the source code will show you how they did it but it may be riddled with bag codeing, hacks, and may not be the fastest way of doing it. The fact that they are professionals means that they normaly are under time constraints and normaly will try and speed up the coding by using these speed hacks which are not the best way of doing things..
Ravyne
Ravyne
Quote:
Original post by Hodgman
The older Unreal engines use some terrible OO-design practices anyway (Such as a base entity class containing dozens of variables used by only certain sub-classes), so they're not even very useful for learning.

I'm not sure about UE3, but hopefully they've learned some better practices by now.


If my recent exposure to some Unreal Engine 3 code during a job interview represents typical Unreal Engine 3 code, then I wouldn't count on it [grin]
throw table_exception("(? ???)? ? ???");
d000hg
d000hg
Yeah, game coders often like to claim that "the best coders work in games", but all the evidence I've seen is that in general, game development has little to do with good software development. The idea that "if it works it's a success" is NOT how software development/design should be, but games are quite an extreme branch of software.
stonemetal
stonemetal
Quote:
Original post by Alpha_ProgDes
are there any other 3D games/engines that are fully GPL?


Id is the only game company that I have heard of releasing source. Panda 3d is open source, it is used in Disney's toon town MMO game. There are a few open source engines that as far as I know have never been used in commercial games, such as crystal space and ogre.

Topic Locked

This topic has been locked by a moderator. New replies are not allowed.

Sign in to reply to this topic.