Documentation and Optimization Part 1 (#2)
Authored-by: Dennis Ploeger <develop@dieploegers.de>
This commit is contained in:
31
docs/architecture.md
Normal file
31
docs/architecture.md
Normal file
@@ -0,0 +1,31 @@
|
||||
# Escoria architecture
|
||||
|
||||
## The plugin script, autoload and classes
|
||||
|
||||
According to the [concept of Godot plugins](https://docs.godotengine.org/en/stable/tutorials/plugins/editor/making_plugins.html), `Escoria`initializes itself in the plugin script `addons/escoria-core/editor/plugin_escoria.gd`. This script is mostly used to initialize the [Escoria configuration items](configuration.md) and initialize (and later remove) the autoloads.
|
||||
|
||||
Escoria is based on an autoload scene available as [`escoria`](api/escoria.gd.md), that binds together all required objects and interfaces in a central place. An additional autoload, [`esctypes`](api/escoria_types.gd.md) defines basic escoria classes.
|
||||
|
||||
In addition to this, various classes are defined in the respective class files and build up the various resources used in Escoria.
|
||||
|
||||
* [Movable](api/Movable.md): A class that can be added to another node to handle movements on that node.
|
||||
|
||||
## Nodes of the Escoria autoload scene
|
||||
|
||||
The Escoria autoload scene holds various nodes that take vital parts of the engine.
|
||||
|
||||
### Inputs Manager
|
||||
|
||||
The central component in Escoria to receive, handle and deliver input events.
|
||||
|
||||
### ESC Compiler
|
||||
|
||||
The [ESC compiler](api/esc_compiler.gd.md) compiles files in the [ESC language](../esc.md) into a list of events that can be run by the ESC runner
|
||||
|
||||
### Main
|
||||
|
||||
`escoria.main` is the main scene manager used in Escoria that allows for switching scenes with transitions
|
||||
|
||||
## The Godot main scene of Escoria
|
||||
|
||||
The scene, that Godot loads when starting a game (the [*main scene*](https://docs.godotengine.org/en/stable/getting_started/step_by_step/exporting.html#setting-a-main-scene)) is set to `addons/escoria-core/game/main_scene.tscn` and basically instantiates the configured main menu scene and starts it.
|
||||
Reference in New Issue
Block a user