Oui c'est vrai tu as raison! Je ne vais pas le faire car personne ne l'achètera. Personne ne fait de don déjà alors...
Je vais plutôt parler des futurs mises à jour de ODFAEG :
-Après le portage à vulkan, je compte continuer l'interface graphique du moteur, il ne me restera plus que la gestion des scripts à faire, voici comment ça va se passer pour la gestion des scripts :
-Lors de la création du projet trois scripts sont générés (main, application.h et application.cpp) la génération dépend du type d'application. (Serveur, client ou simple application, plus tard application web ou androïde)
L'éditeur utilisera l'héritage, mais dans les scripts générés je compte utilisé une architecture ECS pour tirer parti des avantages et inconvénients des 2 systèmes! (Les entités seront donc converti en entités de l'architecture ECS dans le script du jeux, ODFAEG génèrera le code pour vous pour les objets affichables ainsi vous ne devrez pas vous en charger)
Ensuite il y aura la possibilité d'ajouter d'avantages de scripts, les scripts peuvent être de plusieurs types :
-Type 1 : Les scripts de définition des objets, scripts pour l'éditeur : ces scripts définiront quels sont les variables de vos objets (par exemple, point de vie, etc...) ces scripts pourront également contenir quelques fonctions pour ajouter par exemple, une quête à un objet de type pnj. Les objets peuvent hérité d'une classe (par exemple la classe entité) ou pas si par exemple les objets ne sont pas affichable dans le niveau ni transformable. L'anima box de l'éditeur (une interface graphique) vous permettra de créer des objets ou les modifier pour par exemple ajouter une quête à un objet pnj, si l'objet est affichable et transformable vous pourrez ensuite, par exemple, attacher des objets affichables avec l'éditeur à vos objets monstres, pnj, etc...
-Type 2 : Scripts de comportement des objets, scripts du jeux : Dans ces scripts vous pourrez par exemple définir de nouveaux composants pour les entités (par exemple, point de vie, etc...), oui il y aura duplication de certaines variables mais c'est pour tirer avantage des deux types d'architectures, vous pourrez ensuite définir des systèmes comme par exemple pour une factory pour créer un nouveau game object de type monstre et lui attacher une entité affichable créé avec l'éditeur. (Grâce aux systèmes de clonage ou à la fusion des composants des entités vous n'avez pas besoin de créer un script et un objet affichable pour chaque entité de même type), vous pourrez ensuite définir le comportement des entités dans les méthodes init() et update() comme avec le moteur de jeux unity.
Ce système avec deux types de scripts permettra de tirer avantage des deux type d'architectures vous pourrez alors définir un système de blue print (comme avec unreal engine) pour créer ou modifier vos objets dans l'éditeur et ensuite attacher des scripts à vos objets (unity) grâce à un système ECS pour définir les comportements de ses objets. Parce que je trouve que le système de blueprint est trop complexe pour gérer le comportements des gameobjects.
Le code de la classe application ne sera pas caché (comme avec unity) vous pourrez par exemple modifier l'état de vos game objects à l'aide d'un slot et gérer l'IA de vos objets dans un script attaché à une entité. (par exemple un empty)
ODFAEG supportera donc deux types d'architectures, mais aussi deux api de rendu (vulkan et opengl) et sera multiplateforme. Le but d'odfaeg c'est de créer des fonctionnalités non présente dans les moteurs de jeux existant. (Sinon ça n'a pas de sens autant réutiliser un moteur de jeux existant)
Et c'est la raison pour laquelle j'ai décidé de créé mon propre moteur parce que j'ai besoin de fonctionnalités non présente dans d'autres moteurs de jeux et d'un moteur de jeux vraiment générique comme par exemple appel de fonction de callback avec gestion de placeholder permettant de créer n'importe quel type d'application ou bien de jeux vidéo. (Minecraft, jeux en 2D iso, jeux en 2D, jeux en 3D, ou même mixer la 2D et la 3D)
J'ai déjà implémenté pas mal de fonctionnalités mais il y a encore beaucoup à faire comme travail et ODFAEG a de beau jours encore devant lui.





Répondre avec citation



Keep calm and debug it 







:

Désolé je ne sais pas faire de graphs..., je ne connais pas d'outil pour le faire...




Partager