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

Schwarzefee

Treue Seele

  • »Schwarzefee« ist der Autor dieses Themas

Beiträge: 155

Wohnort: Ost-Sachsen

Beruf: Programmierer

  • Private Nachricht senden

1

09.05.2014, 12:11

Editor - Womit?

Hi,

ich hab in letzter Zeit mit OpenGL (und DirectX) rumgespielt, ein paar kleine Sachen gemacht, etc.

Jetzt möchte ich mich an ein etwas komplexeres Spiel wagen.
Dazu habe ich u.A. vor, auch einen MapEditor zu erstellen.

Meine Frage: wie geh ich da am Besten ran? Für den Mapeditor brauche ich ja eine GUI. Bisher habe ich unter C++ meist mit wxWidgets gearbeitet. Das funktioniert ja auch mit OpenGL.
Kann man für Spiele-Editoren Bibliotheken wie wxWidgets (oder QT) nehmen? Das Problem was ich sehe, ist zB auch der Input.
Man müsste ja im Prinzip 2 verschiedene Inputer erstellen, einen für den Editor (auf Basis von zB wxWidgets) und einen für das eigentliche Spiel (zB mit GLFW).

Wie ist da die beste Herangehensweise? (Ich bin ja sicher nicht der Einzige der vor diesem Problem gestanden hat ;))


Gruß

eXpl0it3r

Treue Seele

Beiträge: 386

Wohnort: Schweiz

Beruf: Professional Software Engineer

  • Private Nachricht senden

2

09.05.2014, 12:45

Ich weiss nicht wie man es mit GLFW macht, aber mit SFML kann man ein UI-Widget erstellen, welches dann ein RenderWindow/Window ist. Somit kann man es einfach mit dem UI Code integrieren und der SFML Code sieht es einfach als normales Fenster. Dies sollte eigentlich mit GLFW auch möglich sein.
Die Events müssen dann einfach richtig von der System Queue gelesen werden.
Blog: https://dev.my-gate.net/
—————————————————————————
SFML: https://www.sfml-dev.org/
Thor: http://www.bromeon.ch/libraries/thor/
SFGUI: https://github.com/TankOs/SFGUI/

3

09.05.2014, 13:07

Du kannst einerseits UI Bibliotheken in C++ verwenden (MFC, Qt, wxWidgets, ...), andererseits wird auch gerne in der Windows Softwareentwicklung auf managed Code zurückgegriffen wie C#, der dann die Engine spezifischen funktionen (wenn in C++ geschrieben) aus einer nativen DLL lädt.
EnvisionGame(); EnableGame(); AchieveGame(); - Visionen kann man viele haben. Sie umzusetzen und auf das Ergebnis stolz zu sein ist die eigentliche Kunst.

Schwarzefee

Treue Seele

  • »Schwarzefee« ist der Autor dieses Themas

Beiträge: 155

Wohnort: Ost-Sachsen

Beruf: Programmierer

  • Private Nachricht senden

4

09.05.2014, 14:42

Hi,

Zitat

Ich weiss nicht wie man es mit GLFW macht, aber mit SFML kann man ein UI-Widget erstellen, welches dann ein RenderWindow/Window ist. Somit kann man es einfach mit dem UI Code integrieren und der SFML Code sieht es einfach als normales Fenster.

Du meinst, ich soll mit wxWidgets ein Fenster erstellen, und das Handle an (zB) SFML übergeben? Und damit dann zB den Input handeln?


Zitat

Nur um dich vorzuwarnen, einen Editor mit nur grundlegenden Elementen für eine Engine zu bauen ist ein riesen Act.
Am besten machst du den Editor in der Engine selbst.

Wie meinst du das genau? Die GUI selber schreiben?



Gruß

eXpl0it3r

Treue Seele

Beiträge: 386

Wohnort: Schweiz

Beruf: Professional Software Engineer

  • Private Nachricht senden

5

09.05.2014, 14:49

Ich habe noch nie selbst damit rum experimentiert. Für SFML 1.6 (solltest du nicht verwenden) gab es ein offizielles Tutorial. Für SFML 2.x geht das eigentlich so ziemlich gleich.
Blog: https://dev.my-gate.net/
—————————————————————————
SFML: https://www.sfml-dev.org/
Thor: http://www.bromeon.ch/libraries/thor/
SFGUI: https://github.com/TankOs/SFGUI/

Werbeanzeige