Improve your game's code to make it more readable, reusable, modular and optimized following design patterns, and enhance your overall use of C++ with Unreal Engine Design patterns are a series of tools and practices by which we can learn to write faster and easier to work with code. With this book, you will explore a range of design patterns and how they can be applied to projects developed in Unreal Engine 5. The book begins by exploring the key principles which underpin code and develop an understanding of the concepts, challenges, and key benefits of using patterns in your code. We’ll then move on to identifying patterns which are woven into the core of Unreal Engine 5 such as Double Buffer, Flyweight and Spatial Partitioning, then explore some of the existing tool sets which embody patterns in their design and usage including Component, Behaviour Tree and Update. You’ll then start to develop a series of gameplay use cases through C++ to implement a range of design patterns including Interface and Event based Observers to build a decoupled communications hierarchy and explore Singleton, Command and State, as well as Behavioural Patterns, Template, Subclass Sandbox and Type Object. The final section of the book will introduce the use of design patterns for optimization including Dirty Flag, Data Locality and Object Pooling. By the end of this book, you will be able to design systems with the perfect C++/Blueprint blend for maintainable and scalable systems. If you are a beginner or intermediate game developer who is working with Unreal Engine and would like to improve your C++ coding practices, this book will help you produce clean, reusable code using design patterns. The book will cover introductory tasks to show the key fundamentals of using Unreal Engine 5 however learning Unreal Engine from scratch is not the purpose of this book. You would benefit from having some experience of the Unreal Engine but deep working knowledge is not required as activities will introduce the tools and features when needed.