Components

Ginkgo features a component-based game engine architecture. Martin has written a number of blog posts about the architecture of the engine.



Components offer a specific function for the nodes they are attached to. A render component might render its node. An input component connects it to a button on the gamepad. There are hundreds of different components in Ginkgo.

Components have properties to set their values. E.g. a render-component has a blendColor property that stores its rendering color. Some properties are edited with special editors. E.g. the blend color is set via a color picker. Others just have input fields – coordinates for example are just typed into a text field.

Here's a list of the most important components:
 * LocalizedLabel renders text
 * Path stores geometry
 * FilledPathRenderer renders a Path component and fills it with a blend color
 * Box2dBody is a physical body
 * Box2dFixture is the fixture - shapes and parameters - of a Box2dBody
 * SoundEvent plays a sound when an event occurs