RMC Mingleton - (Godot Engine Plugin)
Where singletons go to mingle!
Create and access singletons of any base type.
Rivello Multimedia Consulting offers this design pattern for the Godot Engine.
Create your projects with confidence, performance, and scalability.
Highlights
-
Does NOT require any autoload, interface, nor baseclass.
-
Compatible with nodes, resources, and classes.
-
Compatible with GDScript, C#, and C++
Table of Contents
- Getting Started
- Examples
- Theory
- Resources
- Credits
Getting Started
- Download this repo (*.zip or *.git)
- Save repo as
[RepoName]
- Download
DOTNET
version of the Godot Engine
- Create/open a Godot Project
- Complete the
Prerequisites
steps from Godot C# Basics
- Create/open folder
[ProjectName]/addons/
- Install any dependencies
-
Optional: gdUnit4 - Add if you want to run RMC's included unit tests. Project compiles with or without this plugin
-
Required: rmc-core-godot - Project requires this core functionality
- Copy folder from
[RepoName]/addons/[PluginName]
to [ProjectName]/addons/[PluginName]
- Create the C# Solution via
Godot Menu → Project → Tools → C# → Create C# Solution
- Build the C# Solution via (🔨) Icon in upper right of editor (or Control-B)
- Activate the plugin via
Godot Menu → Project → Project Settings → Plugins → [PluginName] → Enabled
- Enjoy!
Examples
Example01_Mingleton
Sample Subclass |
Mingleton API |
|
|
Theory
The Singleton is a creational design pattern that lets you ensure that a class has only one instance, while providing a global access point to this instance.
Resources
- Samuel Asher Rivello's Godot Portfolio - Articles, Repos, & Tips
- Samuel Asher Rivello's Godot Template - Ideal starting point for new projects
- Samuel Asher Rivello's Unity Article — Project Structure Best Practices - Ideal setup
- Samuel Asher Rivello's Unity Article — C# Coding Standards - Naming, conventions, more!
Credits
Creator
- Samuel Asher Rivello
- Over 25 years XP with game development (2024)
- Over 11 years XP with Unity (2024)
Contact
- Twitter - @srivello
- Git - Github.com/SamuelAsherRivello
- Resume & Portfolio - SamuelAsherRivello.com
- LinkedIn - Linkedin.com/in/SamuelAsherRivello <--- Say Hello! :)
License
- Provided as-is under MIT License
- Copyright © 2024 Rivello Multimedia Consulting, LLC