SFML community forums

General => SFML projects => Topic started by: horias3 on July 13, 2016, 12:24:59 pm

Title: Isaac 2D
Post by: horias3 on July 13, 2016, 12:24:59 pm
Hi guys, I have just developed a C++ "framework" based on SFML(Simple and Fast Multimedia Library) and Boost C++ Libraries(just the "any" library) that provides support for an easy development and understandable(flexible) structure even in complex scenarios for application and games.

I can't say that I am very proud  of it, because it is still need a lot of work in order to be what I want.

But, long story short:

Isaac was developed with the idea of making something complex(complex systems like big applications or games) easy to understand and maintain, with that in mind the very reasonable approach in order to create something like that, was the using of Petri Network.

So this is not an engine or something like that, is a "state-machine" like mechanism that should help you organize your application/game.

Give it a look at tell me what you think.

Website :http://horiacondrea.com/isaac/ (http://horiacondrea.com/isaac/)
Bitbucket : https://bitbucket.org/bitsreality/isaac-2d (https://bitbucket.org/bitsreality/isaac-2d)

PS: There are also some tutorials available on the website.

I am ready to face the trial.

Thank you,
Horatiu. 
Title: AW: Isaac 2D
Post by: eXpl0it3r on July 13, 2016, 02:22:19 pm
Sounds quite interesting! :)
Looking at the Hello Isaac tutorial it seems however relatively complex just to get started.
Even after reading a few things here and there I don't fully understand what Isaac's goal is. Should it just be a state machine after that Petri net theory? And what are the advantages compared to something like my SmallGameEngine[/UR]? (https://github.com/eXpl0it3r/SmallGameEngine)
Title: Re: Isaac 2D
Post by: horias3 on July 13, 2016, 05:17:58 pm
It is indeed a state machine after the Petri net theory. But it has also other features:

1. Support for data transportation between the scenes of the application/games (using boost:any )
2. Scene inheritance is available in the application
3. Triggers can be defined very easy
4. You can have a scene with multiple processing elements (they can be of several types)

Isaac is an "altered" form (game dev oriented) implementation that is using the Petri net theory.