Unreal Engine 4 Scripting with C++ Cookbook
| Learn |
|
|---|---|
| About |
Unreal Engine 4 (UE4) is a complete suite of game development tools made by game developers, for game developers. With more than 100 practical recipes, this book is a guide showcasing techniques to use the power of C++ scripting while developing games with UE4. It will start with adding and editing C++ classes from within the Unreal Editor. It will delve into one of Unreal's primary strengths, the ability for designers to customize programmer-developed actors and components. It will help you understand the benefits of when and how to use C++ as the scripting tool. With a blend of task-oriented recipes, this book will provide actionable information about scripting games with UE4, and manipulating the game and the development environment using C++. Towards the end of the book, you will be empowered to become a top-notch developer with Unreal Engine 4 using C++ as the scripting language. |
| Features |
|
| Page Count | 452 |
| Course Length | 13 hours 33 minutes |
| ISBN | 9781785885549 |
| Date Of Publication | 23 Oct 2016 |
| Introduction |
| Installing Visual Studio |
| Creating and building your first C++ project in Visual Studio |
| Changing the code font and color in Visual Studio |
| Extension – changing the color theme in Visual Studio |
| Formatting your code (Autocomplete settings) in Visual Studio |
| Shortcut keys in Visual Studio |
| Extended mouse usage in Visual Studio |
| UE4 – installation |
| UE4 – first project |
| UE4 – creating your first level |
| UE4 – logging with UE_LOG |
| UE4 – making an FString from FStrings and other variables |
| Project management on GitHub – getting your Source Control |
| Project management on GitHub – using the Issue Tracker |
| Project management on VisualStudio.com – managing the tasks in your project |
| Project management on VisualStudio.com – constructing user stories and tasks |
| Introduction |
| Unmanaged memory – using malloc( )/free( ) |
| Unmanaged memory – using new/delete |
| Managed memory – using NewObject< > and ConstructObject< > |
| Managed memory – deallocating memory |
| Managed memory – smart pointers (TSharedPtr, TWeakPtr, TAutoPtr) to track an object |
| Using TScopedPointer to track an object |
| Unreal's garbage collection system and UPROPERTY( ) |
| Forcing garbage collection |
| Breakpoints and stepping through code |
| Finding bugs and using call stacks |
| Using the Profiler to identify hot spots |
| Introduction |
| Axis Mappings – keyboard, mouse and gamepad directional input for an FPS character |
| Axis Mappings – normalized input |
| Action Mappings – one button responses for an FPS character |
| Adding Axis and Action Mappings from C++ |
| Mouse UI input handling |
| UMG keyboard UI shortcut keys |
| Collision – letting objects pass through one another using Ignore |
| Collision – picking up objects using Overlap |
| Collision – preventing interpenetration using Block |
| Introduction |
| Laying down a Navigation Mesh |
| Following behavior |
| Connecting a Behavior Tree to a Character |
| Constructing Task nodes |
| Using Decorators for conditions |
| Using periodic services |
| Using Composite nodes – Selectors, Sequences, and Simple Parallel |
| AI for a Melee Attacker |
| Introduction |
| Core/Logging API – Defining a custom log category |
| Core/Logging API – FMessageLog to write messages to the Message Log |
| Core/Math API – Rotation using FRotator |
| Core/Math API – Rotation using FQuat |
| Core/Math API – Rotation using FRotationMatrix to have one object face another |
| Landscape API – Landscape generation with Perlin noise |
| Foliage API – Adding trees procedurally to your level |
| Landscape and Foliage API – Map generation using Landscape and Foliage APIs |
| GameplayAbilities API – Triggering an actor's gameplay abilities with game controls |
| GameplayAbilities API – Implementing stats with UAttributeSet |
| GameplayAbilities API – Implementing buffs with GameplayEffect |
| GameplayTags API – Attaching GameplayTags to an Actor |
| GameplayTasks API – Making things happen with GameplayTasks |
| HTTP API – Web request |
| HTTP API – Progress bars |