99d0e702aa
eventDispatch nur nach initialisierung aufrufen
2022-07-11 22:09:00 +02:00
5557030e0d
Delayed initialization auch für Music Klasse
2022-07-11 14:41:58 +02:00
855d67c873
AnimationListener
2022-07-11 14:41:45 +02:00
bc791a9dc3
Merge branch 'anim' into events
2022-07-11 14:08:03 +02:00
921e2fb3ef
An Gradle Struktur angepasst
2022-07-11 14:06:47 +02:00
944249ce82
Merge branch 'main' into anim
...
# Conflicts:
# src/main/java/schule/ngb/zm/tasks/DelayedTask.java
# src/main/java/schule/ngb/zm/tasks/FrameSynchronizedTask.java
# src/main/java/schule/ngb/zm/tasks/FramerateLimitedTask.java
# src/main/java/schule/ngb/zm/tasks/RateLimitedTask.java
# src/main/java/schule/ngb/zm/tasks/Task.java
2022-07-11 14:05:46 +02:00
e1f01fe620
Auf Gradle Struktur angepasst
2022-07-11 14:03:21 +02:00
9f56b49fb7
Merge branch 'main' into events
...
# Conflicts:
# src/main/java/schule/ngb/zm/media/AudioListener.java
# src/main/java/schule/ngb/zm/media/Mixer.java
# src/main/java/schule/ngb/zm/media/Music.java
# src/schule/ngb/zm/media/Sound.java
2022-07-11 14:00:37 +02:00
ec8e5cea91
API angepasst und Javadoc verbessert
2022-07-11 13:53:15 +02:00
6a2adc9d4d
Mehr Javadoc Korrekturen
2022-07-11 08:22:47 +02:00
2c322eb678
Javadocs angepasst und Fehler behoben
2022-07-11 08:18:52 +02:00
b60ffa9ef3
Projektstruktur an Gradle angepasst
2022-07-10 22:46:55 +02:00
0a72b97d56
Gradle initialisiert
2022-07-10 22:46:27 +02:00
54762cb3e6
enabelGlobalDebugging verbessert
2022-07-09 21:01:56 +02:00
2e5d5d7e83
Debug Nachricht beim shutdown
2022-07-09 21:01:39 +02:00
43c5b9f28e
Fehler beim erstellen eines AudioStreams behoben
2022-07-09 21:01:01 +02:00
62f221e18e
BlueJ Testprojekt entfernt
2022-07-09 21:00:11 +02:00
b3ff1a507e
Tests auf Junit5 angepasst
2022-07-08 16:36:33 +02:00
b575c47ab3
Neue Easing funktionen
2022-07-08 08:52:31 +02:00
447accc567
Animationen nutzen FrameSynchronizedTasks
2022-07-08 08:01:53 +02:00
2de37e5501
Merge branch 'tasks' into anim
2022-07-08 08:01:35 +02:00
98a62f35cd
initialize und finish methoden für Tasks
2022-07-08 08:01:24 +02:00
a52125aeb2
Merge branch 'tasks' into anim
2022-07-08 07:53:01 +02:00
476545f721
Changelog
2022-07-08 07:52:39 +02:00
a8bbce72a2
DelayedTask wartet selbstständig
2022-07-08 07:52:35 +02:00
ced0aa6842
Synchronisation über einen globalen Monitor
2022-07-08 07:44:49 +02:00
d48b167fb3
Renamed generator to dispatcher
2022-07-08 07:31:37 +02:00
e4818d4f3e
Abstraktion für Listener API erstellt
...
EventGenerator soll als einheitlicher Unterbau zur Umstzung von Listener Patterns dienen. Damit sollen Listener wie AudioListener oder AnimationListener umgesetzt werden.
2022-07-07 21:45:08 +02:00
9ee7c606fe
Implementierung verschiedener Task-Typen
...
Die Tasks erfüllen verschiedene Aufgaben und können vom TaskRunner parallel ausgeführt werden. Ob ein so komplexes Task-Management notwendig ist, bleibt offen.
2022-07-07 21:18:45 +02:00
303b667cbf
Tests für Animationen
2022-07-07 15:45:25 +02:00
2f59d29d08
Animationen als eigener Prozess
...
Die Animations API verwendet Funktionale Aspekte der Java 8 API und erlaubt die Animation beliebiger Objekte, aber ist vor allem auf die `shape.*` Klassen ausgelegt.
2022-07-07 15:44:36 +02:00
fc7ee36367
Implementierung von Easing-Funktionen
...
Die Implementierungen wurden von https://easings.net übernommen.
2022-07-07 15:42:47 +02:00
3030445dcf
Changelog
2022-07-07 09:21:39 +02:00
b6b8263e5e
Reference auf TextBox entfernt
2022-07-07 09:20:36 +02:00
49ad98fd82
Namen der Threads gesetzt, für leichteres Debugging
2022-07-07 09:20:01 +02:00
1e552d6bc2
Changelog
2022-07-07 08:08:36 +02:00
4e147586e4
Audio Interface ud Mixer Klasse
2022-07-07 08:08:28 +02:00
5213dbb7e9
Formatierung
2022-07-06 22:18:00 +02:00
ed2c14a143
Dokumentation
2022-07-06 22:17:50 +02:00
f9f1cfed24
LineChart auf ChartValue interface umgestellt
2022-07-06 22:17:42 +02:00
e78ec53a53
Merge branch 'main' into charts
2022-07-06 21:29:58 +02:00
c5dd889406
Refactoring der Package-Struktur
2022-07-06 21:27:52 +02:00
a94194daf1
Beispielprojekte zur ZM entfernt
...
Die Projekte werden in einem eigenen Repository (zeichenmaschine-examples) neu veröffentlicht.
2022-07-06 21:23:44 +02:00
4ad24fc523
Changelog angepasst
2022-07-06 21:15:47 +02:00
e42b02763a
width / height umbenannt, damit Constants nicht überschrieben werden
...
Dies ist ein generelles Problem. Wenn in Objekten die von Constants erben width und height als Objektvariablen genutzt werden sollen, ist die Größe der Zeichenleinwand nicht mehr direkt abrufbar.
Ggf. sollten die Variablen in Constants spezifischer benannt werden (z.B. `zmwidth` oder `canvaWidth`).
2022-07-06 21:15:23 +02:00
df335c8ff2
Weitere Methoden zum hinzufügen und entfernen von Shapes
2022-07-06 21:13:18 +02:00
28d996859a
Versionsnummer angepasst
2022-07-06 21:12:57 +02:00
a400829594
updateGame als globale update Methode der Spielemaschine
2022-07-06 21:12:41 +02:00
b5faf202b8
Klassen Sound und Music zur Audiowiedergabe
...
Sound spielt kurze Clips (z.B. Soundeffekte) ab.
Music für längere Hintergrundmusik.
MP3s werden nur über die Einbindung der externen Abhängigkeiten jlayer, tritonus-share und mp3spi ermöglicht.
2022-07-06 20:46:49 +02:00
950098110f
Eine TaskQueue in der Tasks geplant werden können
...
Es können Tasks (Runnables) für die geplante Ausführung (z.B. in 100 ms) übergeben werden. Die Tasks werden dann jeweils am Ende eines Frames abgearbeitet. Bei Bedarf auch parallel mit dem TaskRunner.
Das System sollte noch einmal Refactored werden. (Und ggf. auch auf seine Sinnhaftigkeit geprüft werden.)
2022-07-06 20:41:34 +02:00