Coder Social home page Coder Social logo

ecsess's Introduction

ECSess

===

An ECS design in c++14.

The goal is to provide a user friendly and optimized EntityComponentSystem.

What's in ?

  • EntityManager
  • SystemManager
  • BindingSystems: By tag, group, Type, TypeRestriction, Entity to System
  • PoolManager to avoid heavy reallocation
  • ScheduleManager
  • Serializer to freeze the game and then store/retrieve the party.

Build platform:

It will be available under GNU/Linux, Windows (to see xp compatibility) and maybe Mac OS

Presets:

Many presets will be present to make it a real framework.

Graphical presets

  • 2D
    • SDL
    • SFML
  • 3D
    • OPENGL ?

Sounds presets

Physical presets

  • Chipmunk

Network presets

Game presets

  • Life
  • PatternMovement
  • ...

You'll be able to add your own Entities, Components, Systems and Managers.

TODO:

  • Store Components on ComponentManager contiguous
  • bindTagged
  • bindGrouped
  • advancedTypeSystem
  • Entity::bind(ASystem *)
  • name Entities for better debug output (DEBUG_MODE)
  • choice between static and shared library
  • complete view functions (tree view of type restriction...)
  • Conception for dll/so mistake
    • Register class on construction on executable side ?
  • Warning when Entities/Components array must reallocate

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.