aboutsummaryrefslogtreecommitdiff
path: root/img/gameloop-class.puml
diff options
context:
space:
mode:
Diffstat (limited to 'img/gameloop-class.puml')
-rw-r--r--img/gameloop-class.puml37
1 files changed, 37 insertions, 0 deletions
diff --git a/img/gameloop-class.puml b/img/gameloop-class.puml
new file mode 100644
index 0000000..e66b7d8
--- /dev/null
+++ b/img/gameloop-class.puml
@@ -0,0 +1,37 @@
+@startuml
+!include theme.ipuml
+class LoopManager {
+ +static LoopManager& getInstance()
+
+ +void loop()
+ +void setup()
+ -void render()
+ -void processInput()
+ -void fixedUpdate()
+ -void update()
+ -bool gameRunning
+ -LoopManager()
+}
+
+class LoopTimer {
+ +static LoopTimer& getInstance()
+ +void start()
+ +void update()
+ +float getLag()
+ +float getFixedDeltaTime()
+ +void advanceFixedUpdate()
+ +void enforceFrameRate()
+ +float getDeltaTime()
+ -float lag
+ -float fixedDeltaTime
+ -float deltaTime
+}
+
+LoopManager --> LoopTimer : uses
+LoopManager : loop()
+LoopManager : |-- processInput()
+LoopManager : |-- fixedUpdate()
+LoopManager : |-- update()
+LoopManager : |-- render()
+' TODO: what is this supposed to be?
+@enduml