hallo leute
ich baue grad ein kleines grafikframework das ich in einer gameengine verwenden möchte. ich möchte möglichst alle technischen aspekte wegkapseln, so dass es möglich ist diese auszutauschen ohne die engine umschreiben zu müssen.
die engine hat ein properties file, aus dem sie die klassennamen der zu erzeugenden objekte für die anzeige ausliest und dann diese per reflection instantiiert. so reicht es, das properties file zu ändern, um die engine auf einer anderen plattform laufen zu lassen. mit anzeige ist hier das fenster gemeint, in welches das spiel rendert. das hab ich nun vollständig generisch implementiert und das ist auch schön soweit.
mein problem ist grad folgendes: awt und swing fenster verwenden beide java.awt.Graphics und deren kinder um zu zeichnen. ich weiss nicht wie dies bei swt ist, bin mir aber ziemlich sicher, dass hier etwas anderes zum einsatz kommt. um die grafikschnittstelle zu abstrahieren habe ich mir einen wrapper für diese geschrieben, da die zu verwendende grafik ja auch vom verwendeten fenster abhängt. diese grafikschnittstelle wird vom fenster in den renderloop gegeben und dort von allen zu zeichnenden objekten verwendet.
aber irgendwie fühlt es sich falsch an die grafik zu wrappen. andererseits wäre es möglicherweise nicht sinnvoll direkt java.awt.Graphics zum rendern zu nehmen, weil man sich damit wohl auf swing und awt fenster für die anzeige beschränken würde. ich weiss gar nicht, wie es mit applets ist - was verwenden die für anzeigen?
möglicherweise hab ich mich grad einfach nur gedanklich festgefahren. vielleicht hat jemand von euch schonmal was ähnliches gebaut und kann mir helfen meinen kopf etwas zu entwirren?
vielen dank
ich baue grad ein kleines grafikframework das ich in einer gameengine verwenden möchte. ich möchte möglichst alle technischen aspekte wegkapseln, so dass es möglich ist diese auszutauschen ohne die engine umschreiben zu müssen.
die engine hat ein properties file, aus dem sie die klassennamen der zu erzeugenden objekte für die anzeige ausliest und dann diese per reflection instantiiert. so reicht es, das properties file zu ändern, um die engine auf einer anderen plattform laufen zu lassen. mit anzeige ist hier das fenster gemeint, in welches das spiel rendert. das hab ich nun vollständig generisch implementiert und das ist auch schön soweit.
mein problem ist grad folgendes: awt und swing fenster verwenden beide java.awt.Graphics und deren kinder um zu zeichnen. ich weiss nicht wie dies bei swt ist, bin mir aber ziemlich sicher, dass hier etwas anderes zum einsatz kommt. um die grafikschnittstelle zu abstrahieren habe ich mir einen wrapper für diese geschrieben, da die zu verwendende grafik ja auch vom verwendeten fenster abhängt. diese grafikschnittstelle wird vom fenster in den renderloop gegeben und dort von allen zu zeichnenden objekten verwendet.
aber irgendwie fühlt es sich falsch an die grafik zu wrappen. andererseits wäre es möglicherweise nicht sinnvoll direkt java.awt.Graphics zum rendern zu nehmen, weil man sich damit wohl auf swing und awt fenster für die anzeige beschränken würde. ich weiss gar nicht, wie es mit applets ist - was verwenden die für anzeigen?
möglicherweise hab ich mich grad einfach nur gedanklich festgefahren. vielleicht hat jemand von euch schonmal was ähnliches gebaut und kann mir helfen meinen kopf etwas zu entwirren?
vielen dank