Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

1

04.12.2013, 19:33

2D Engine - Kleiner DevBlog

Guten Abend,

ich möchte euch heute und auch zukünftig meine kleine 2D Engine zeigen an der ich jetzt seit ungefähr einer Woche arbeite . Die Engine soll jetzt nicht mit den aktuellen mithalten können sondern als reine Übung dienen, natürlich werde ich sie veröffentlichen wenn sie gut ankommt. Im Moment arbeite ich an dem Level-Editor, das ist bis jetzt auch das einzig fertige an meinem Programm. Mit dem jetzigen Stand kann man Tilesets laden und eine kleine Map gestalten(bei größeren wird es schwer da man für das Zeichnen aktuell immer wieder klicken muss). Für diese Version wird es noch keinen Download geben, da man im Moment nicht viel machen kann. Sobald es mehr Features gibt wird es aber auch was zum downloaden geben.
Jetzt gibts auch mal was zum gucken:



Ich würde mich freuen wenn der ein oder andere konstruktive Kritik schreibt und mein Projekt nicht runtermacht oder dergleichen sowie es hier schon oft passiert ist. Außerdem wäre es schön wenn keine Kommentare wie "Mach doch lieber ein Spiel anstatt einer Engine!" kommen.
So das wars dann von mir schönen Abend noch :)

LG

MitgliedXYZ

Alter Hase

Beiträge: 1 369

Wohnort: Bayern

  • Private Nachricht senden

2

04.12.2013, 19:41

Für welche Sprache wird den deine Engine? C#?

Und da das ein Entwicklerforum ist, wäre es bestimmt noch Interessant, wenn du etwas von der Technik dahinter verrätst. Nutzt du GDI+ zur Anzeige, oder vielleicht was ganz anderes?

3

04.12.2013, 20:03

Als Sprache benutze ich C++ und verwenden tue ich QT und SFML.
Ich bin noch am überlegen für welche Sprache die Engine dann letzen Endes seien wird aber ich denke es wird C++ sein.
Da C# ja auch ziemlich beliebt ist würde ich das auch in Erwägung ziehen aber bis jetzt habe ich mich noch garnicht mit der Sprache beschäftigt :D

4

04.12.2013, 20:24

Finde ich eine tolle Sache. Ich würde sowas auch gerne machen aber bin leider noch nicht fähig dazu :(. Ich hoffe, dass man die Engine C++ als Sprache verwendet :D
go on :thumbup:

Zitat

Die wichtigste Eigenschaft eines Programmierers ist vorausschauende Faulheit.


5

04.12.2013, 20:35

Zitat

Finde ich eine tolle Sache. Ich würde sowas auch gerne machen aber bin leider noch nicht fähig dazu :(. Ich hoffe, dass man die Engine C++ als Sprache verwendet :D

go on :thumbup:
Vielen Dank! :)
Am liebsten würde ich ja alle Sprachen unterstützen, aber ich muss erstmal schauen das ich es auf die Reihe kriege überhaupt erstmal eine zu unterstützen :D

Snowy

Frischling

Beiträge: 54

Wohnort: Stuttgart

  • Private Nachricht senden

6

05.12.2013, 10:42

Ich finde dein Projekt echt gut und ich denke du solltest da auch aufjedenfall dran bleiben. Ich würde das ebenfalls auch gerne machen, aber bin noch zu frisch, um sowas zu bewerkstelligen. Interessehalber würde es mich interessieren, wie lange du schon programmierst, das du in der Lage bist so etwas zu basteln?

Gruß,
Snowy
return 0;

Schorsch

Supermoderator

Beiträge: 5 145

Wohnort: Wickede

Beruf: Softwareentwickler

  • Private Nachricht senden

7

05.12.2013, 14:44

Ohne das hier entstehende schlecht reden zu wollen. So kompliziert wie man vielleicht auf den ersten Blick denken mag ist das eigentlich gar nicht. Zumindest grundlegend nicht. Der hier gezeigte Screenshot sieht natürlich schon schick und ziemlich vernünftig aus. Je professioneller das ganze dann werden soll, desto komplexer ist dann schnell die Arbeit die dahinter steckt. Einen kleinen Leveleditor zu schreiben ist meiner Meinung nach eine tolle Erfahrung. Mein erster Ansatz war mit C++ und SDL. Man sah nur die Karte, mit dem Scrollrad konnte man die Tiles wechseln und einzelne Tiles durch klicken hinzufügen. Über die Tastatur konnte man dann speichern und laden. Namen für die Dateien mussten beim Programmstart in der Konsole eintippen (Größe der Karte ebenfalls), bevor dann das eigentliche SDL Fenster geöffnet wurde. So etwas reicht ja vielleicht erst mal für den Anfang um sich ein wenig mit der Materie vertraut zu machen.
abcd00186 zeigt hier natürlich schon noch was ganz anderes. Eine vernünftige Oberfläche mit Menü und allem drum und dran ist natürlich um einiges schöner und komfortabler. Dafür natürlich auch ein wenig komplexer zu entwickeln. In diesem Fall mit Qt entwickelt (gibt natürlich auch andere Alternativen), sollte man die benutzten Bibliotheken schon kennen. Für den Anfang kann man sich also in solche Bibliotheken einlesen und dann gucken wie man das ganze verknüpft. Wer natürlich vor einer Woche mit dem Programmieren angefangen hat sollte die Finger von sowas lassen. Ansonsten muss man sich manchmal einfach nur trauen. Ob das ganze dann fertig wird sei dahin gestellt, aber man wird eine Menge dabei lernen. Das aber nur am Rande.
Und jetzt zum eigentlichen Thema. Wie möchtest du deine Engine denn aufbauen? Soll es eine Bibliothek werden die man in dein Projekt einbindet und dazu lieferst du Tools um die Arbeit zu vereinfachen (Beispiel dein Level-Editor), oder hast du vor alles in einem Programm ablaufen zu lassen (Beispiel Game-Maker, Unity)? Das macht natürlich einen riesen Unterschied, einerseits in der Bedienung und andererseits für dich bei der Entwicklung. Auch vom Aufwand. Wie meinst du das mit den verschiedenen Sprachen? möchtest du das ganze in C++ entwickeln und dann gucken ob du Wrapper für andere Sprachen anbieten kannst(zumindest im Falle du entwickelst eine externe Bibliothek), oder wie stellst du dir das vor? Vielleicht hast du dir dazu ja auch noch keine Konkreten Gedanken gemacht. Gibt es schon genauere Ideen, was du an Tools gern anbieten möchtest? Oder lässt du das ein wenig auf dich zu kommen und guckst wie sich dein Projekt mit der Zeit weiterentwickelt?
„Es ist doch so. Zwei und zwei macht irgendwas, und vier und vier macht irgendwas. Leider nicht dasselbe, dann wär's leicht.
Das ist aber auch schon höhere Mathematik.“

8

05.12.2013, 15:30

Zitat

Ich finde dein Projekt echt gut und ich denke du solltest da auch
aufjedenfall dran bleiben. Ich würde das ebenfalls auch gerne machen,
aber bin noch zu frisch, um sowas zu bewerkstelligen. Interessehalber
würde es mich interessieren, wie lange du schon programmierst, das du in
der Lage bist so etwas zu basteln?

Gruß,

Snowy
Hey, danke für die Antwort :), programmieren tue ich seit ca. einem Jahr. Angefangen habe ich mit Youtube Videos und kleineren Projekten die mir rückblickend eigentlich nicht viel gebracht haben. Seit Oktober habe ich ein C++ Buch mit dem ich eigentlich mehr gelernt habe als in dem 3/4 davor zusammen.

Zitat

Und jetzt zum eigentlichen Thema. Wie möchtest du deine Engine denn
aufbauen? Soll es eine Bibliothek werden die man in dein Projekt
einbindet und dazu lieferst du Tools um die Arbeit zu vereinfachen
(Beispiel dein Level-Editor), oder hast du vor alles in einem Programm
ablaufen zu lassen (Beispiel Game-Maker, Unity)? Das macht natürlich
einen riesen Unterschied, einerseits in der Bedienung und andererseits
für dich bei der Entwicklung. Auch vom Aufwand. Wie meinst du das mit
den verschiedenen Sprachen? möchtest du das ganze in C++ entwickeln und
dann gucken ob du Wrapper für andere Sprachen anbieten kannst(zumindest
im Falle du entwickelst eine externe Bibliothek), oder wie stellst du
dir das vor? Vielleicht hast du dir dazu ja auch noch keine Konkreten
Gedanken gemacht. Gibt es schon genauere Ideen, was du an Tools gern
anbieten möchtest? Oder lässt du das ein wenig auf dich zu kommen und
guckst wie sich dein Projekt mit der Zeit weiterentwickelt?
Später soll alles in einem Programm laufen wie zB. Unity richtig. Entwickeln möchte ich das Ganze in C++. Das mit den verschiedenen Sprachen sollte bedeuten das ich versuche, das die Leute, die die Engine benutzen mit der gewünschten Sprache programmieren können.
Aber wie genau ich das jetzt realisieren werde weiß ich noch nicht, es gibt auch noch genug andere Sachen die davor zu erledigen sind.
Einerseits habe ich schon viele Ideen für nützliche Tools im Kopf aber anderseits werde ich es auch auf mich zu kommen lassen und schauen wie es läuft :)

9

06.12.2013, 00:08

Ich habe ein ähnliches Projekt, welches sich in einem bereits fortgeschrittenem Zustand befindet. Die Sache dabei ist einfach, ich habe jetzt bereits 3 mal komplett neu angefangen und nach dem letzten mal noch 2 weitreichende Änderungen am Projekt vorgenommen, einfach weil ich die Sprache eben nicht komplett oder nicht gut genug ausgenutzt hatte. Zwischendurch noch ein paar Designschwächen und du hast eine Menge arbeit vor dir ;)
Ich möchte dir nicht die Motivation rauben, ein Projekt an dem man Spaß hat, ist eine sehr sehr gute Grundlage um etwas zu lernen, mach dich allerdings auf ein paar Rückschläge gefasst ;)

10

14.12.2013, 13:45

Ich habe jetzt endlich das Grundgerüst für das Layersystem fertig :)



Man kann soviele Layer wie man will erstellen, ich habe auf dem Bild aber nur 2 da ich noch kein Widget zum verwalten der Layer implementiert habe. Mein Ziel ist es jetzt bis Weihnachten das Layersystem fertigzustellen und mich dann mit dem speichern der Leveldateien
auseinanderzusetzen. Hättet ihr eine Idee was für ein Format am besten dafür geeignet wäre? Ich würde zu XML tendieren, bin mir aber auch nicht 100% sicher.

LG

Werbeanzeige