ARCADE-TEK-2026 / archi_arcade

architecture commune de l'arcade
4 stars 7 forks source link

Plus d'ajouts #8

Closed GlassAlo closed 1 year ago

GlassAlo commented 1 year ago

IEntity -> removeComponent(compType) = enlever component plus utile pour l'entité IEntityManager & IEventManager -> clearAllEntity/Events = remove tout les entities/events stockés namespace components = IComponents & fils namespace systems = ISystems & fils

Saverio976 commented 1 year ago

dans quel cas c'est intérressant de remove tous les component de CompType ? (par contre pouvoir remove un component oui xD, l'oubli de fou xD)

Saverio976 commented 1 year ago

Autre question, pourquoi faire un namespace pour System, et un port components ? on a un namespace ECS J'ai peur que ça fasse beaucoup de namespace alors que "ECS" regroupe déjà ça

GlassAlo commented 1 year ago

Parce que tu veux pas écrire "moveSystem" "drawSystem" "positionComponent" Mais juste move draw position et le namespace donne son appartenance

Saverio976 commented 1 year ago

ça veut dire j'enlève le namespace Game par ce que y a que 1 system dedans, et le systeme GameLogic va dans le namespace System

GlassAlo commented 1 year ago

Pour moi gameLogic devrait pas faire partie de l'archi donc bon Pareil pour IGraph

Saverio976 commented 1 year ago

pour moi, c'est justement dans un soucis de clarté pour l'UML

un utilisateur de la lib va dériver ses systems de IGraph si il fait un system plutôt graphique, et IGameLogic si il fait un system plutôt grame

GlassAlo commented 1 year ago

C'est rajouter une interface pour rien, mes systems vont pas hériter d'un truc qui ajoute rien jsp

Saverio976 commented 1 year ago

ça veut dire ton UML va avoir tous dans namespace System

GlassAlo commented 1 year ago

Tous les systems oui

Saverio976 commented 1 year ago

j'ai peut être mal compris

ce que tu veux faire c'est coder les cpp system du jeu dans le namespace System ?

GlassAlo commented 1 year ago

Ce que je veux c'est que mes systems héritent de ISytem, rajouter une couche qui n'ajoute rien pour les systèmes, c'est pas utile, le namespace sera là pour les contenir et enlever le préfixe ou suffixe. IGameLogic et IGraph sont juste des systems comme les autres imo

Saverio976 commented 1 year ago

Je comprends toujours pas, tu peux faire un example d'utilisation ?

GlassAlo commented 1 year ago

CompType est pas une enum class la, c'est une struct, c'est pas normal, si ?

Saverio976 commented 1 year ago

Non en effet, il y avait enum struct à un moment