https://github.com/samuelasherrivello/rmc-mini-mvcs-godot
A plugin for the Godot Game Engine. The RMC Mini Mvcs Architecture.
https://github.com/samuelasherrivello/rmc-mini-mvcs-godot
architecture best-practices csharp godot-engine mvc-architecture
Last synced: 5 months ago
JSON representation
A plugin for the Godot Game Engine. The RMC Mini Mvcs Architecture.
- Host: GitHub
- URL: https://github.com/samuelasherrivello/rmc-mini-mvcs-godot
- Owner: SamuelAsherRivello
- License: mit
- Created: 2024-06-09T18:11:50.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2024-07-06T18:41:24.000Z (12 months ago)
- Last Synced: 2025-01-31T04:26:20.900Z (5 months ago)
- Topics: architecture, best-practices, csharp, godot-engine, mvc-architecture
- Language: C#
- Homepage:
- Size: 4.81 MB
- Stars: 4
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# RMC Mini Mvcs Architecture - (Godot Engine Plugin)
>Separate the important concerns of your game logic
to make your games more readable, scalable, and maintainable.
Rivello Multimedia Consulting offers this Mvcs ([Mode-View-Controller-Service](https://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93controller-service)) architecture for the [Godot Engine](https://godotengine.org/).
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
1. [Getting Started](#getting-started)
1. [Examples](#examples)
1. [Resources](#resources)
1. [Credits](#credits)
## Getting Started
1. Download this repo (*.zip or *.git)
1. Save repo as `[RepoName]`
1. Download `DOTNET` version of the [Godot Engine](https://godotengine.org/)
1. Create/open a Godot Project
1. Complete the `Prerequisites` steps from [Godot C# Basics](https://docs.godotengine.org/en/stable/tutorials/scripting/c_sharp/c_sharp_basics.html)
1. Create/open folder `[ProjectName]/addons/`
1. Install any dependencies
* **Optional**: [gdUnit4](https://github.com/MikeSchulze/gdUnit4) - Add if you want to run RMC's included unit tests. Project compiles with or without this plugin
* **Required**: [rmc-mingleton](https://github.com/SamuelAsherRivello/rmc-mingleton) - Project requires this core functionality
1. Copy folder from `[RepoName]/addons/[PluginName]` to `[ProjectName]/addons/[PluginName]`
1. Create the C# Solution via `Godot Menu → Project → Tools → C# → Create C# Solution`
1. Build the C# Solution via (🔨) Icon in upper right of editor (or Control-B)
1. Activate the plugin via `Godot Menu → Project → Project Settings → Plugins → [PluginName] → Enabled`
1. Enjoy!
## Examples
### (Beginner)
#### Example01_Clock
| Screenshot | Diagram |
|---|---|
||
|
#### Example01_Clock
| Screenshot | Diagram |
|---|---|
||
|
#### Example04_Score
| Screenshot | Diagram |
|---|---|
||
|
### (Advanced)
#### Example01_MultiScene
| Screenshot | Diagram |
|---|---|
||
|
## 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