Skip to content

A project about the implementation of multiple game programming patterns within Unreal Engine 5

License

Notifications You must be signed in to change notification settings

Yunxiang-Li/Unreal5_GameProgrammingPatterns

Repository files navigation

Unreal5_GameProgrammingPatterns

standard-readme compliant

The implementation of multiple game programming patterns within Unreal Engine 5. You can check screenshots/GIFs and more information about this project from my personal portfolio website.

Table of Contents

Overview

This project include several Unreal projects about the implementation of multiple game programming patterns, inspired by the book Game Programming Patterns and Game Development Patterns with Unreal Engine 5: Build maintainable and scalable systems with C++ and Blueprint.

Install

I use Unreal5.2.1 and JetBrains Rider for this project under Windows 10 environment.
Unreal download
JetBrains Rider download

Usage

  1. Download this repo, open(or zip and open) the Unreal5_GameProgrammingPatterns folder.

  2. Double click related uproject file within each project folder.

  3. Let the Unreal Game Engine rebuild the demo.

Structure

Details of each project are explain within each project's Readme file.

  1. HelloPatterns
    Pure Blueprints project, contains 3 examples about how to optimize certain Blueprints to increase performance.
  2. DoubleBuffer
    A brief introduction about double buffer pattern.
  3. Flyweight
    A brief introduction about flyweight pattern.
  4. SpatialPartitioning
    A brief introduction about spatial partitioning.
  5. Component
    Create a custom health component which can track health, handle damage events and broadcast two key events.
  6. Update
    A brief introduction about update pattern.
  7. BehaviorTree
    Build a behavior tree for a simple real-time strategy (RTS) AI Unit. Introduce various building blocks such as selectors, sequences, decorators, services, and tasks.
  8. EventDriven
    Make 3 iterations of one certain implementation to demonstrate techniques of Tick, Timers/Timelines and Event-Driven Systems.
  9. Observer
    Update previous implemented custom HealthComponent class to demonstrate how event delegates enable anonymous communication, eliminating the need for direct object references.
  10. DecoupledSystem
    Decouple a small system using following rules:
  • Functions for downward communication
  • Events for upward communication
  • Interfaces for horizontal communication.
  1. Singleton
    A brief introduction about singleton pattern.
  2. Command
    Implemented command pattern with two ways: Editor Utility Blueprints and C++.
  3. State
    A brief introduction about state pattern.

Maintainers

@Yunxiang-Li.

License

MIT license

About

A project about the implementation of multiple game programming patterns within Unreal Engine 5

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published