Zitat Zitat von Whiz-zarD Beitrag anzeigen
Generell das Entwickeln von Schnittstellen. Bei Banken kommt ja nicht nur eine Software zum Tragen, sondern gleich mehrere, die untereinander funktionieren müssen. D.h. es müssen Schnittstellen gebaut werden.
Unsere Software bekommt die Daten von anderer Software eines anderen Hersteller. Dafür haben wir dann Schnittstellen gebaut. Wenn sich dann was an einer Software ändert und unsere Schnittstelle kann damit nicht umgehen, dann ist es meist schon zu spät. Wenn Updates eingespielt werden müssen, dann wird das eh erst Monatelang in einem Testsystem beobachtet, ob sich alles verhält, wie es soll, ehe das Update wirklich live geht.
Deswegen "Altsysteme". Ich tue mir das in der Uni auch grad an und kann daher gut mit dir mitfühlen auch wenn es bei uns nicht so schlimm ist.

Zitat Zitat von RPG Hacker Beitrag anzeigen
Jab, wir benutzen XNA. Aber ehrlich gesagt bin ich davon nicht nur begeistert. XNA bietet zwar ein nettes Framework, mit dem man schnell in eine Engine einsteigen kann und die wichtigsten Funktionen gleich schon geboten bekommt (was auch durch die Einfachheit von C# noch unterstützt wird), oftmals ist aber gerade dieses hohe Level genau das Problem.
Das fasst meine Meinung über XNA gut zusammen. Es stellt sich zwar mächtig hin, versagt aber bei den kleinen Sachen (Versuch mal ordentlich Primitves zu zeichnen...). Ich weiß jetzt nicht wie MonoGame ist und kenne auch nur ein Game damit (Bastion), aber das ist Open Source und daher würde ich nie das tote XNA empfehlen.

Zitat Zitat
Eine andere Sache, die mir in XNA nicht gefällt, ist dass es viele Sachen komplizierter macht als nötig. Zur Erläuterung: In unserem Spiel gibt es einen Laser, der Ray-Tracing verwendet und genau bis zur nächsten Wand fliegt. Zur Darstellung verwenden wir Tiles, die wir x-mal wiederholen. Nun dachten wir uns, dass es vielleicht einen ganz guten Effekt gäbe, wenn wir den Laser per Add-Blending darstellen. War auch an und für sich keine schlechte Idee, nur haben die Tiles sich an den Übergängen überlappt (was in XNA sonst kaum anders lösbar wäre aufgrund gewisesr Eigenschaften), was bei Add-Blend natürlich bedeutet, dass an dieser Stelle doppelt addiert wird und man Übergangskanten hat. Schön und gut dachte ich mir. Zeichne ich den Laser einfach vorher per Alpha-Blend auf einen Buffer und dann von da per Add-Blend auf den Bildschirm. Aber nein, Pustekuchen. Das einzige, was ich dafür hätte verwenden können, sind RenderTargets. Und die sind einfach so ziemlich das schlimmste, was es in XNA gibt. Jeder, der damit schonmal gearbeitet hat, kennt sicher das Problem mit der lilanen Farbe im Hintergrund. Ich schwöre: Ich habe ein paar Stunden lang gegoogelt und diverse als funktionierend abgestempelte Methoden teilweise eins zu eins übernommen. Ich habe es einfach nicht geschafft, die Farbe rauszukriegen. In anderen Libraries, beispielsweise Allegro, hätte ich an diesem Problem vielleicht fünf Minuten gesessen.
In XNA kannst du eine Textur nicht stretchen? Das glaub ich irgendwie nicht Also wenn der Laser eine komplizierte horizontale Animation hat sondern einfach nur ein Streifen, hätte es auch ein Strech getan denke ich. Ich dachte immer RenderTargets sind einfach nur FrameBuffer. Das man da soviel kaputt machen kann wusste ich nicht (also, das die engine Entwickler offenbar da Probleme hatten.).

Zitat Zitat
Also wie gesagt: XNA ist schon ein nettes Framework für den Einstieg in eine eigene Engine, weil es einem viel Arbeit schon abnimmt, aber für ein wirklich ernsthaftes Projekt, für das ich etwas mehr Zeit hätte, würde ich es nicht verwenden wollen.
Naja für simple pixelbasirende Spiele wird es gehen. Auch für simples 3D. Siehe Terraria oder Secret of Grindea.


Zitat Zitat
Klar. Habe ich denn was anderes behauptet? Ich bin ja nicht auf den Kopf gefallen. Natürlich sind Referenzen in C# nichts anderes als Pointer.
Ich meine Pointer zeigen auf nichts oder? Aber eine Referenz zeigt doch auf etwas selbst wenn man nichts darauf verweißt. Zumindest ist das in Java so.