Bienvenue, Invité. Merci de vous connecter ou de vous inscrire.
Avez-vous perdu votre e-mail d'activation ?

Auteur Sujet: [ODFAEG] (Open Source Development Framework Adapted For Every Game)  (Lu 22182 fois)

0 Membres et 1 Invité sur ce sujet

Lolilolight

  • Hero Member
  • *****
  • Messages: 1232
    • Voir le profil
Présentation du projet

ODFAE est un framework pour SFML que je développe depuis plusieurs années déjà dans le but de créer un jeux vidéos complet. (De n'importe quel type)

Le but est de fournir un framework le plus complet possible afin de créer n'importe quel type de jeux.  (Et devenir ainsi le framework de création de jeux par excellence.)

Le code source du framework est régulièrement remis à jour et implémente déjà des nouvelles fonctionnalités du standart c++11 (les threads et primitives de synchronisation, les tuples, les lvalue, les std::functions, etc...) ainsi que certains design pattern. (le pattern facory, type erasure, entity system, singleton, etc...)

SFGL est un projet opensource vous pouvez donc faire part de vos idées afin d'améliorer la structure du code source.

La version 1 devrait sortir vers le mois de févrirer-mars mais en attendant vous pouvez toujours aller rechercher les sources sur github : https://github.com/Lolilolight/ODFAEG/tree/master/src/odfaeg

Vous pouvez aussi si vous le souhaiter consulter mon devblog :
http://lolilolightdevblog.wordpress.com/



Les fonctionnalités.

Voici une liste des fonctionnalités implémentées (ou en cours d'amélioration) :

-Un entity system.
-Un système de signal et de slots.
-Un système d'actions.
-Un système de gestion de ressources.
-Un système de states.

Les fonctionnalités à venir dans les versions futures.

-Un système de réseau avec cryptage SSL et prédiction de mouvement.
-Un moteur de particule.
-Gestion de la 3D. (Chargement de fichier.obj, génération de terrain, éclairage, physique, etc...)

Certains tutoriels sont déjà en cours de rédaction sur ce site :

Chapitre I :

http://www.jeux-libres.com/tutoriaux/tuto-679-chapitre-introduction-et-installation-de-sfgl.php

Chapitre II :

http://www.jeux-libres.com/tutoriaux/tuto-680-chapitre-entity-systeme-de-sfgl.php

Chapitre III :

http://www.jeux-libres.com/tutoriaux/tuto-684-odfaeg-ombre-lumieres-et-animation.php

Versions futures

Version II

Ajout de la partie réseau du framework, et ajout de la physique afin de préparer la version III.

Version III

Ajout de la 3D.
« Modifié: Août 31, 2014, 08:21:09 am par Lolilolight »

Lolilolight

  • Hero Member
  • *****
  • Messages: 1232
    • Voir le profil
Re : [ODFAEG] (OPEN SOURCE DEVELOPMENT FRAMEWORK ADAPTED FOR EVERY GAME)
« Réponse #1 le: Janvier 10, 2014, 04:26:54 pm »
Un nouveau chapitre viens juste d'être rédigé (voir le 1er post de ce topic pour les mises à jours), ce chaptire porte sur les lumières, les ombres et les animations.

Bref encore un chapitre à rédiger, un peu d'ordre dans le code source et la version I sortira enfin!

Pour la version II, je prévois d'implémenter un système de particule ainsi que d'améliorer tout ce qui est plus relatif à la physique. (collisions plus précises avec des hiérarchies de volumes englobants, etc...) ainsi que le réseau et la prédiction de mouvement.

J'ai déjà le code source sous la main pour le réseau mais pas encore pour les hiérarchies de volumes englobants qui seront surtout une préparation pour la version III du framework qui incluera la 3D!

Bref je vais faire un update du 1er post qui parlera des versions future.

Lolilolight

  • Hero Member
  • *****
  • Messages: 1232
    • Voir le profil
Re : [ODFAEG] (OPEN SOURCE DEVELOPMENT FRAMEWORK ADAPTED FOR EVERY GAME)
« Réponse #2 le: Janvier 11, 2014, 01:01:25 pm »
Re, une bonne nouvelle, j'ai réussi à simplifier l'écriture au niveau des template lors de la création d'actions et lors la connection de signaux.

J'ai remis à jour les tutoriels et le code source.  :)

Une classe du genre "action map" ne devrait pas tarder à arriver pour simplifier la liaison de plusieurs sf::Event à un seul signal.

PS : mais je dois encore trouver une solution pour le passage de références.
PS 2 : un système de placeholder sera implémenté surement aussi plus tard, dès que j'aurai trouvé comment faire ceci : http://accu.org/index.php/journals/1397 avec des std::tuple à argument variable plutôt que des std::list.
« Modifié: Janvier 11, 2014, 01:07:07 pm par Lolilolight »

Lolilolight

  • Hero Member
  • *****
  • Messages: 1232
    • Voir le profil
Re : [ODFAEG] (OPEN SOURCE DEVELOPMENT FRAMEWORK ADAPTED FOR EVERY GAME)
« Réponse #3 le: Janvier 12, 2014, 11:22:34 am »
Rajout d'une classe "ActionMap" qui permet de gérer les combinaisons d’événements plus facilement.

Ce qui devrait clôturer normalement la version I du framework, la suite portera majoritairement sur des corrections de bug/optimisations, le rajout d'une classe pour gérer une action avec 2 signaux  (un pour faire et un autre pour défaire une action), car j'en ai besoin pour mon éditeur de map, et du nettoyage de code source/génératon de documentation et exemples.

Lolilolight

  • Hero Member
  • *****
  • Messages: 1232
    • Voir le profil
Re : [ODFAEG] (OPEN SOURCE DEVELOPMENT FRAMEWORK ADAPTED FOR EVERY GAME)
« Réponse #4 le: Janvier 13, 2014, 11:42:19 am »
Amélioration du resourcemanager :

-L'alias peut désormais être de n'importe quel type. (et plus uniquement de type std::string)
-Rajout d'une fonction qui permet de créer sa propre fonction pour charger ses ressources et la passer au ressource manager.

Lo-X

  • Hero Member
  • *****
  • Messages: 618
    • Voir le profil
    • My personal website, with CV, portfolio and projects
Re : [ODFAEG] (OPEN SOURCE DEVELOPMENT FRAMEWORK ADAPTED FOR EVERY GAME)
« Réponse #5 le: Janvier 13, 2014, 11:46:06 am »
Et si tu ouvrais un devblog pour y donner tes ajouts quotidiens et que tu n'utilisais le forum que pour les versions majeures et les questions qu'on te pose ?

Lolilolight

  • Hero Member
  • *****
  • Messages: 1232
    • Voir le profil
Re : [ODFAEG] (OPEN SOURCE DEVELOPMENT FRAMEWORK ADAPTED FOR EVERY GAME)
« Réponse #6 le: Janvier 13, 2014, 12:57:15 pm »
Salut, heu, existe t'il un site qui permet de faire un devblog ou bien faut il en fait un soit même ?

Le problème c'est que je n'ai pas le temps de faire tout ça moi même, je suis seul pour tout faire (et je ne parle pas que de mon travail) et le développement de cette librairie me donne déjà assez de boulot.

Bref si cela vous dérange, je n'apporterai que les nouvelles en ce qui concerne les mises à jour majeures ici, et pour répondre aux questions.
« Modifié: Janvier 13, 2014, 01:03:29 pm par Lolilolight »

Laurent

  • Administrator
  • Hero Member
  • *****
  • Messages: 32110
    • Voir le profil
    • SFML's website
    • E-mail
Re : [ODFAEG] (OPEN SOURCE DEVELOPMENT FRAMEWORK ADAPTED FOR EVERY GAME)
« Réponse #7 le: Janvier 14, 2014, 07:50:33 pm »
Ce serait bien oui, merci.
Laurent Gomila - SFML developer

G.

  • Hero Member
  • *****
  • Messages: 1392
    • Voir le profil
Re : [ODFAEG] (OPEN SOURCE DEVELOPMENT FRAMEWORK ADAPTED FOR EVERY GAME)
« Réponse #8 le: Janvier 14, 2014, 08:35:04 pm »
Tu peux utiliser Wordpress.
wordpress.com si tu veux un blog directement hébergé.
wordpress.org si tu veux télécharger Wordpress et l'héberger toi-même.

Lolilolight

  • Hero Member
  • *****
  • Messages: 1232
    • Voir le profil
Re : [ODFAEG] (OPEN SOURCE DEVELOPMENT FRAMEWORK ADAPTED FOR EVERY GAME)
« Réponse #9 le: Janvier 15, 2014, 09:20:26 am »
Ok je vais regarder de ce côté là, merci. :)
« Modifié: Janvier 15, 2014, 12:54:29 pm par Lolilolight »

Lolilolight

  • Hero Member
  • *****
  • Messages: 1232
    • Voir le profil
Re : [ODFAEG] (OPEN SOURCE DEVELOPMENT FRAMEWORK ADAPTED FOR EVERY GAME)
« Réponse #10 le: Janvier 15, 2014, 01:29:19 pm »
Voilà j'ai update le 1er topic en mettant un lien vers mon devblog... (mais il n'est pas encore fini je dois écrire encore tout le système mur, lumières et ombrage)

Lolilolight

  • Hero Member
  • *****
  • Messages: 1232
    • Voir le profil
Re : [ODFAEG] (OPEN SOURCE DEVELOPMENT FRAMEWORK ADAPTED FOR EVERY GAME)
« Réponse #11 le: Janvier 30, 2014, 04:34:31 pm »
Plop, la version RC vient juste d'être postée sur mon git-hub (c'est la version sans la documentation et sans les tutoriels)
La 1ère version arrivera donc très bientôt.

Elle comprend :

-Un "Entity system". (Animations, "Scene nodes", systèmes de mise à jour de la scène, une grille pour le stockage des entités et le monde. (qui contient tout le reste))
-Un moteur de lumière.
-Un système d'états pour sauvegarder et restaurer des états sans devoir tout recharger.
-Un système de "listener" pour connecter des actions ou des "triggers" et leur passer des paramètres.
-Un système léger de gestion de ressources.

La version 2 arrivera très bientôt aussi avec en plus :

-Un système de réseau sécurisé. (Avec openssl)
-Un système de prédiction de mouvement.
-Un moteur de particules.


 
« Modifié: Janvier 30, 2014, 04:48:14 pm par Lolilolight »

christophedlr

  • Full Member
  • ***
  • Messages: 151
    • Voir le profil
    • E-mail
Re : [ODFAEG] (OPEN SOURCE DEVELOPMENT FRAMEWORK ADAPTED FOR EVERY GAME)
« Réponse #12 le: Février 04, 2014, 09:29:30 am »
Projet prometteur (ça me rassure de ne pas être seul à vouloir faire un tel projet ;) ). Je regarderais plus en détail quand j'aurais le temps.

Lolilolight

  • Hero Member
  • *****
  • Messages: 1232
    • Voir le profil
Re : [ODFAEG] (OPEN SOURCE DEVELOPMENT FRAMEWORK ADAPTED FOR EVERY GAME)
« Réponse #13 le: Février 04, 2014, 10:05:47 am »
Salut!

J'ai trouvé une solution pour le stockage des ressources de types différents avec des identifiants de différents types. (std::string, enums, etc...)

J'ai rajouté également une méthode wait dans le listener car j'avais des problèmes de synchronisation au rendu.

Bref je mettrai ça à jour lors de la sortie de la release qui est prévu pour le 1er mars! (Juste le temps pour moi de finir la documentation et les tutoriels)

PS : pour les tutoriels je compte faire un .txt et l'intégrer dans le git-hub plutôt.

Lolilolight

  • Hero Member
  • *****
  • Messages: 1232
    • Voir le profil
Re : [ODFAEG] (Open Source Development Framework Adapted For Every Game)
« Réponse #14 le: Février 12, 2014, 05:48:52 pm »
J'ai revu certaines choses, et j'ai amélioré :
-Stockage des entity managers avec des identifiant de différents types dans le cache.
-Ajout d'un state dans la classe entity afin de pouvoir ajouter des attributs personnalisés pour chaque type d'entité, avec en plus un exécuteur personnalisé pour remettre à jour les states des entités. (Ceci évite de devoir utlisé trop d'héritage)

Et quelques corrections. (Entre autre dans mon "event buffer")

Tout cela sera remis à jour avec la documentation le 1er mars.