Anonymus Raccoon 019cef80f0 Cleaning up
2020-05-03 16:25:25 +02:00
2020-05-01 15:35:40 +02:00
2020-05-03 15:26:00 +02:00
2019-12-16 16:26:04 +01:00
2020-01-25 16:45:11 +01:00
2020-05-03 16:25:25 +02:00
2020-05-03 16:18:07 +02:00

Gamacon

A ECS C-modular game engine with a builtin renderer using the csfml.

Samples:

You can find two examples games created using this engine.

A simple 2D plateformer with good physics: Twac

An isometric RPG: ForecastingVillage

Deserialization & Modularity

Gamacon has a fully xml based deserialization system. Every entity, scene and component can be deserialized from a prefab xml file.

Scene should contains data at the top of the prefab file inside a tag. Each entry will be loaded using one of the registered data_loader. You can create your own data_loader and register them using the engine->add_dataloader(engine, data_name, data_loader_fct) function.

Gamacon also has a UI handler to ease development of graphical interfaces. For example, you can use a tag with properties like x, y, width or height that handle pixel based or screen's percentage based properties. You also have a click property which will automatically handle your click input.

To look at a read usage of prefabs or scene, take a look at ForecastingVillage which is the more complete project you can find created with this library.

Dependencies

Gamacon needs four others libraries:

  • xmlParser to support a simple deserialization.
  • Quadtree to handle collisions
  • CSFML to handle the display. Note that you can use another library to render your scenes but the default makefile rule will require you to have the csfml.
  • libMy a replacement to the libC since we were not allowed to use the standard library durring projects where this game engine was used.

Description
A ECS C-modular game engine (using the CSFML).
Readme MIT 509 KiB
Languages
C 98.2%
Makefile 1.8%