Ich arbeite an einem Spiel mit einer komponentenbasierten Architektur. A Entitybesitzt eine Reihe von ComponentInstanzen, von denen jede über eine Reihe von SlotInstanzen verfügt, mit denen Werte gespeichert, gesendet und empfangen werden können. Factory-Funktionen wie das PlayerErstellen von Objekten mit den erforderlichen Komponenten und Steckplatzverbindungen.
Ich versuche, die bestmögliche Granularität für Komponenten zu ermitteln. Zum Beispiel gerade jetzt Position, Velocityund Accelerationsind alle einzelnen Komponenten, die in Reihe geschaltet. Velocityund Accelerationkönnte leicht in eine einheitliche DeltaKomponente umgeschrieben werden , oder Position, Velocityund Accelerationkönnte neben solchen Komponenten als Frictionund Gravityin eine monolithische PhysicsKomponente kombiniert werden.
Sollte eine Komponente die geringstmögliche Verantwortung tragen (auf Kosten einer Vielzahl von Verbindungsmöglichkeiten) oder sollten zugehörige Komponenten zu monolithischen Komponenten kombiniert werden (auf Kosten der Flexibilität)? Ich neige mich zu ersteren, aber ich könnte eine zweite Meinung gebrauchen.