Hallöchen,
Zur Erhaltung des Progforums fehlt hier das Lese-Material, daher stell ich mal mein Projekt vor. Vielleicht gibt es ja Leser die gern was über die Projekte der anwesenden erfahren würden. Ich wär' jedenfalls nicht abgeneigt, auch mal was über eure Projekte zu lesen.
Also, es handelt sich dabei jedenfalls um einen Map-Editor (KEINEN Maker) der anfänglich auf Tiles basierte und man damit schon komplexe Karten mit beliebigen Layern anlegen konnte. Das Ganze wird in C/C++ und der WinAPI sowie OpenGL für die Grafikanzeige programmiert. Die GUI besteht zu 100% aus WinAPI und wurde durch ein selbsterstelltes Button-Kit zusammengebastelt. Es wird also keine Linux-Version geben.
Die Optik vor ca. 3 Monaten:
http://derfeind2k.de/daten/mapedit 3.0.png
Ein aktuelleres Bild (vor ca. 2 Monaten):
http://derfeind2k.de/daten/mapedit 6.0.png
Die ursprünglich Idee war ein RPG-Maker-Ähnliches Spiel mit besserer Grafik und einfach mehr Möglichkeiten durch pixelgenaues Bewegen usw. Daraus ist dann immer mehr was eigenes entstanden. Und wie gesagt, es sollte ein Karteneditor werden und kein Maker. Also die Grafik wird mit dem Programm erstellt, das Spiel welches ich geplant habe, wessen Karten dann mit dem Editor erstellt werden, dann in C++ unabhängig dieses Programms. Das erspart Einem ungemein Arbeit (da keine Scriptsprache benötigt wird).
Irgendwann hat es dann nicht mehr ausgereicht, dass alles auf Tiles basiert zu machen. Da dachte ich an einen komplett freien 2D-Editor bei dem man Sprites platziert, beliebig in Größe und Form ändern kann, mit Transparenzen und Farbänderung. Praktisch gesehen musste ich dafür fast den gesamten Quellcode überarbeiten, ca. 80 % sind dabei über Bord gegangen weil es für Tiles bestimmt war und das Mappen mit Sprites ganz anders funktioniert. Es mussten Routinen für das Einladen von Texturen her, frei bewegliche Objekte, ein Eigenschaftenfenster für diese (links unten) und eine bequeme Möglichkeit damit immer noch gut aussehende Karten zu erstellen.
Der Stand, wie es derzeit aussieht:
http://derfeind2k.de/daten/mapedit%209.0.png
Auf den Ersten Blick wird man sehen, die GUI wurde stark überarbeitet (bis auf einige Fragmente die entweder noch entfernt werden oder übernommen werden konnten). Man sieht auch, die erstellte Test-Karte bietet noch nicht viel. Man kann Objekte platzieren und verschieben, in Größe und Form ändern und eine Textur zuweisen usw. Links oben gibts das Objekt-Fenster in dem man die gesetzten Objekte aufgelistet bekommt. Rechts befindet sich das Textur-Fenster in dem die eingefügten Texturen aufgelistet werden. Bisher noch recht unschön anszusehen.
So soll es mal aussehen:
http://derfeind2k.de/daten/mapedit%209.0_soll.png
Man sieht, die Karte ist noch vom Vorgänger (die Tileversion) kopiert, dort habe ich sie aber so gemappt. Es ist also kein Photoshop-Zusammengeklicke was die Karte betrifft.
Derzeit noch nicht eingefügt aber fest geplant sind Sachen wie Kollisionsmasken, die man auf die einzelnen Objekte zuschneiden kann. Dazu noch Animationen, also Auswahl von Frames für Objekte, die dann in Zyklen durchlaufen werden. In wie fern noch eine Scriptsprache hinzu kommt mit der man etwa Türen bei Knopfdruck animieren kann, weiß ich noch nicht. Andernfalls wird das direkt im Spiel-Quellcode passieren.
Wie gesagt, es wird kein Maker sondern lediglich ein Map-Editor und eigentlich auch nur um ein geplantes Spiel von mir umsetzen zu können. Da ich aber mit der Zeit immer höhere Ansprüche habe hat sich daraus ein eigenes Projekt ergeben.
Zum Spiel selbst lässt sich noch nichts sagen, bis auf eine Idee und ein paar Grafiken existiert noch nichts. Einfach deshalb weil erst der Karteneditor fertig sein muss bevor ich anfangen kann, damit etwas zu machen.
Der Status sieht zur Zeit so aus, dass man die Karten noch nicht 100%ig speichern und laden kann. Objekte werden zwar wieder eingeladen aber das Objektfenster links bleibt noch leer, lässt sich aber flott einrichten. Die Prioritäten liegen aber derzeit woanders. Nämlich das Mapping-Verhalten oder auch, das Handling wie man Karten erstellen kann. Etwa, dass man unter der Registerkarte "Prefabs" fertige Objekte abspeichern kann und diese dann aus der Liste heraus schnell erneut setzen kann. Somit kann man dann Bäume oder andere Objekte schnell duplizieren ohne das Objekt von Grund auf neu zu erstellen und mit Textur zu versehen. Diese Prefab-Listen sollen sich dann auch speichern und exportieren lassen um die Objekte auf anderen Karten erneut einsetzen zu können. Man kann sich also eine Art Datenbank von Objekten erstellen auf die man zurückgreifen kann. Dies erleichtert die Platzierung dieser und die gestaltung komplexerer Karten.
Bisher funktioniert das Anlegen und Speichern von Listen sowie die Aufnahme von Prefabs und das neuplatzieren dieser. Es fehlt noch Exportieren, Importieren und etwas feinhandling.
Layer wird es keine Geben, ist auch unnötig da beliebig viele Objekte angeordnet und übereinander gestapelt werden können ohne sich an Tilegrößen orientieren zu müssen. Es steuert sich also etwa wie ein Grafikprogramm (etwa Photoshop).
Zur Grafik noch etwas, unterstützt werden Texturen von 2er Potenzen. Also 32 x 32, 64 x 256, 512 x 1024 usw... Diese lassen sich auf ein Objekt platzieren und so zuschneiden das beliebige Teile angezeigt werden. Der Baum oben etwa ist von einem großen Tileset von 1024 x 1024 Pixeln heraus "gestanzt" und auf das Objekt gelegt.
Das besondere ist, das was man rechts im Fenster sieht ist praktisch schon das Resultat per OpenGL, so wird es aussehen. Das ist die Karte per (eigene OGL) Engine dargestellt, so werde ich es später auf dem ganzen Bildschirm darstellen und das Spiel darstellen. Welche Auflösung man dann allerdings verwendet steht frei. Hinzu kommen selbstveständlich noch Interface-Elemente usw. Dies ist ja nur die rohe Karte.
Zur Zeit besteht das Programm aus ca. 8770 Zeilen Quellcode.
Soweit zu meinem Projekt. Ich hoffe es war ein wenig informativ und hat einen Einblick gegeben womit ich mich zur Zeit beschäftige. Kommentare sind natürlich erwünscht.
Grüße,
Ynnus