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

FSA

Community-Fossil

  • »FSA« ist der Autor dieses Themas
  • Private Nachricht senden

1

19.09.2011, 17:50

Level Editor

Hallo
Ich habe mal eine Frage:
Wie kann ich einen Leveleditor schreiben?
Brauche ich jetzt nich unbedingt für mein Spiel, aber mich würde mal interessieren ob man so was auch mit der TriBase Engine realisieren kann.
Ich kann mir halt nur nicht vorstellen wie ich das ganze machen sol, also Rendern, Objekt platzieren und auch wieder laden. Jedenfalls schreib ich auch irgendwann ein für mein Spiel einen und verwende Bullet Physics um zB Türen zu öffnen ohne Animation. Ich verstehe halt nicht wie dass geht! Der Leveleditor macht ein großes Objekt draus und dortraus soll das Spiel dann einzelne Objekte erkennen und bewegen?
Wie geht so was,Tutorials?
Danke

Zitat

Der RCCSWU (RandomCamelCaseSomtimesWithUndersquare) Stil bricht auch mal mit den veraltet strukturierten Denkmustern und erlaubt dem Entwickler seine Kreativität zu entfalten.

drakon

Supermoderator

Beiträge: 6 513

Wohnort: Schweiz

Beruf: Entrepreneur

  • Private Nachricht senden

2

19.09.2011, 20:58

Ein Leveleditor ist eigentlich dem realen Spiel normalerweise recht nahe (jetzt keine Sonderfälle, wo man die einzelnen Levels rein deskriptiv beschreibt oder mithilfe von Grafikdateien). Das ganze Rendering kannst du eigentlich 1:1 übernehmen und dann hast du halt Möglichkeiten, um die Spielwelt zu verändern. Du kannst dann ein Haus anwählen und es bewegen. Das geht im normalen Spiel dann halt nicht (unbedingt).
Nimm sonst einfach mal ein mehr oder weniger modernes Spiel und da hat es meistens auch einen Leveleditor dabei. Dort siehst du ja, was man so tun können muss.

3

20.09.2011, 00:17

Ich benutze zum Beispiel Qt für den Editor. Der benutzt ganz normal die Spiel Engine, die natürlich um ein paar Funktionen erweitert werden musste (bestimmte Zugriffsfunktionen, die das eigentliche Spiel nicht benötigte).

Das ist eigentlich der beste Weg, so sind zum Beispiel Lade/Speicher Routinen für Spiel und Editor identisch (es kann also nicht ohne weiteres passieren, dass ein Level zwar im Editor geladen werden kann, im Spiel aber nicht); um nur ein Beispiel zu nennen.
Der Editor ansich ist dann recht simpel, man muss natürlich mit dem jeweiligen GUi Framework umgehen können (in meinem Fall also Qt), der Rest ergibt sich dann von selbst. Natürlich kann man auch den Editor direkt im Spiel haben, aber eine extra Anwendung mit gescheiter GUi finde ich da schon eleganter.

Praktisch umgesetzt ist das ganze dann indem ich 3 Projekte habe, für Engine, Spiel und Editor. Das Spielprojekt ist ziemlich schlank es enthält ansich nur Dinge wie das Hauptmenü und die Eingabeverarbeitung.
Lieber dumm fragen, als dumm bleiben!

FSA

Community-Fossil

  • »FSA« ist der Autor dieses Themas
  • Private Nachricht senden

4

22.09.2011, 17:36

Ok Danke.
ich werde mal bisschen Qt lesen und testen, und auch mal ein test Editor schreiben.
Habe halt nur immer bisschen probleme, wie ich das Objekt setzten kann also X,Y,Z Werte.
Aber krieg ich bestimmt irgendwie raus.
MFG

Zitat

Der RCCSWU (RandomCamelCaseSomtimesWithUndersquare) Stil bricht auch mal mit den veraltet strukturierten Denkmustern und erlaubt dem Entwickler seine Kreativität zu entfalten.

FSA

Community-Fossil

  • »FSA« ist der Autor dieses Themas
  • Private Nachricht senden

5

23.09.2011, 14:06

Also ich habe mir jetzt gedanken gemacht mit der Planung.
Ein Problem habe ich da aber noch: Wie kann ich ein Objekt platzieren? Irgendwie raffe ich das nicht -.-
Danke

Zitat

Der RCCSWU (RandomCamelCaseSomtimesWithUndersquare) Stil bricht auch mal mit den veraltet strukturierten Denkmustern und erlaubt dem Entwickler seine Kreativität zu entfalten.

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

6

23.09.2011, 14:39

Ja wie platzierst du denn Objekte in deinem Spiel?

Fireball

Alter Hase

Beiträge: 415

Wohnort: Werne

Beruf: Dipl. Inf.

  • Private Nachricht senden

7

23.09.2011, 14:42

Hmm ... ich benutze DirectX. Da kommt Qt für mich nicht in Frage. :-(


Ich benutze zum Beispiel Qt für den Editor. Der benutzt ganz normal die Spiel Engine, die natürlich um ein paar Funktionen erweitert werden musste (bestimmte Zugriffsfunktionen, die das eigentliche Spiel nicht benötigte).

Das ist eigentlich der beste Weg, so sind zum Beispiel Lade/Speicher Routinen für Spiel und Editor identisch (es kann also nicht ohne weiteres passieren, dass ein Level zwar im Editor geladen werden kann, im Spiel aber nicht); um nur ein Beispiel zu nennen.
Der Editor ansich ist dann recht simpel, man muss natürlich mit dem jeweiligen GUi Framework umgehen können (in meinem Fall also Qt), der Rest ergibt sich dann von selbst. Natürlich kann man auch den Editor direkt im Spiel haben, aber eine extra Anwendung mit gescheiter GUi finde ich da schon eleganter.

Praktisch umgesetzt ist das ganze dann indem ich 3 Projekte habe, für Engine, Spiel und Editor. Das Spielprojekt ist ziemlich schlank es enthält ansich nur Dinge wie das Hauptmenü und die Eingabeverarbeitung.

David_pb

Community-Fossil

Beiträge: 3 886

Beruf: 3D Graphics Programmer

  • Private Nachricht senden

8

23.09.2011, 14:55

Hmm ... ich benutze DirectX. Da kommt Qt für mich nicht in Frage. :-(


Wieso? Was spricht dagegen?
@D13_Dreinig

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

9

23.09.2011, 14:56

Ich würde meinen Editor wohl basierend auf .NET bauen.

Fireball

Alter Hase

Beiträge: 415

Wohnort: Werne

Beruf: Dipl. Inf.

  • Private Nachricht senden

10

23.09.2011, 15:30

Wie bekomme ich DirectX dazu in ein Qt Fenster zu rendern?

Hmm ... ich benutze DirectX. Da kommt Qt für mich nicht in Frage. :-(


Wieso? Was spricht dagegen?

Werbeanzeige