Search public documentation:
Unreal Engine 3 is a large and complex collection of systems comprised of both C++ and UnrealScript classes. No one person should ever be expected to fully understand each and every system within the engine. It is important for each developer to have a solid foundation in their individual area of specialization as well as understanding how the systems of the engine work from a high-level overview. Licensees Licensees have to know both how the native low-level engine systems, such as the rendering engine, physics engine, audio engine, etc., all work and function together as well as how all the gameplay systems, such as the gametype, players and cameras, heads up displays and user interfaces, etc., all work. This also means they need to have a solid grasp of the UnrealScript language and its features. Of course, it is likely that there will be developers focused on the native engine and other developers focused on gameplay so again no one person will be responsible for knowing each and every system. UDK Users Users of UDK only have the use of UnrealScript which means they are mainly focused on the gameplay systems. These developers clearly need to understand the UnrealScript language and how its features can be used to customize the existing classes and create completely new systems.
The developers of Unreal Engine 3 follow coding standards in order to ensure code readability and maintainability. Knowing these standards will make understanding the codebase easier and following them when writing new code will provide consistency across the entire codebase of your game. These coding standards can be found in their entirety on the Coding Standard page. In addition, getting up to speed quickly with Unreal Engine 3 requires a basic understanding of how the engine works and what class naming means about that class. Information about these aspects can be found in the documents below:
- Actor Ticking - Overview of the Actor update process.
- Code Orientation - Brief introduction to engine and class naming.
Most of the gameplay within a game created with Unreal Engine 3 is programmed in UnrealScript. The UnrealScript language was designed specifically with gameplay programming in mind with its handling of events, timers, and states. These make creating the elements that make up the in-game action UDK relies solely on the use of UnrealScript while licensees can use UnrealScript in conjunction with native C++ code. Every gameplay programmer working with UE3 should have a solid grasp of UnrealScript and how it is used within the context of UE3. Language Features Documentation over the UnrealScript language and some of its major features can be found on the following pages:
- UnrealScript Reference - Introduction to and reference of UnrealScript language features.
- UnrealWiki UnrealScript Overview - UnrealScript language information on the UnrealWiki.
- Strings In UnrealScript - covers the workings and use of strings in UnrealScript classes.
- UnrealScript Preprocessor - Describes the syntax and functionality of the UnrealScript? preprocessor.
- UnrealScript Interfaces - Overview of interface classes in UnrealScript.
- UnrealScript Delegates - Overview of function delegates in UnrealScript.
- UnrealScript Structs - Explains the performance implications of using UnrealScript structs.
- Networking Overview - Overview of Unreal Networking Architecture.
- Game State Replication - Introduction on various aspects of replication.
- DLLBind - Describes how to call functions in DLLs from UnrealScript.
- TcpLink - Explanation and API documentation of the TcpLink class.
- Using VAX with UnrealScript - How to get Whole Tomato's VAX working in VS2010 for Unreal Script
Starter kits are small projects belonging to a particular genre which you can use as a starting point for your projects.
- MOBA Starter Kit - A Starter Kit for developing a Multiplayer Online Battle Arena game in Unreal Engine 3.
- Platformer Starter Kit - A starter kit for developing platform games in Unreal Engine 3.
- Racer Starter Kit - A starter kit for developing racing games in Unreal Engine 3.
- PhysX Particles Starter Kit - A starter kit example of adding PhysX Particles to the UTGame example provided with UDK.
- Real Time Strategy Starter Kit - A starter kit for developing real time strategy games in Unreal Engine 3.