Bitte um Rat: welche Library oder Oberfläche?
-
Als Tool-Programm zu einem OpenGL-Spiel will ich einen Editor zur Objektplazierung auf dem Rennkurs programmieren. Das Ganze soll unter Linux und Windows laufen und ist im Prinzip ein Programm zum Zeichnen in Bitmaps. Die Objekte werden als farbcodierte Punkte in eine Bitmap, die mit der Mesh korrespondiert, eingetragen. Zur Bearbeitung müssen die Bitmaps natürlich beliebig und pixelgenau skaliert werden können. Unter Kylix/Delphi hatte ich ein ähnliches Programm schon mal geschrieben, aber dieses soll auf jeden Fall in C oder C++ geschrieben werden. Bevor ich starte, bitte ich um einen Rat:
Soll ich GTK nehmen? Gibt es das überhaupt unter Windows?
Ist stattdessen eine GUI-Library, evtl. in Verbindung mit SDL, günstiger? Welche GUI-Library bietet sich an?
Oder soll ich sogar versuchen, alles mit OpenGL zu erledigen? Das würde bedeuten, dass erst mal die Widgets programmiert werden müssten, hätte aber den Vorteil, dass man bequem mit halbtransparenten Bitmap-Layern arbeiten könnte.
Oder?
Vielen Dank, Reinhard
-
Also ich quäle mich aufgrund der Notwendigkeit gerade mit einer eigenen GUI rum und kann nur sagen es ist ein tierischer Aufwand.
Das bisken OpenGL-Darstellung ist dabei nicht mal das Problem (vom Text mal abgesehen)
Aber allein das Event-Handling hats schon in sich- wenn man's vernünftig machen möchte..
-
Was mich bei meinem eigenen Toolkit immer wieder stört und was ich auch noch nicht völlig fehlerfrei hinbekommen hab, ist das Fokus Management (TAB-Taste). Ja ich kann bestätigen, tierischer Spaß.

-
stimm ich zu. das sauber+schoen+simpel+.. hinzubekommen ist ein riesen akt und ein eigenes fachgebiet fuer sich. ich versuche mich da immer soweit wie moeglich zu druecken. am ende hat man, wenn es gut laufen soll, soviel arbeit reingesteckt wie in die eigentliche aufgabe, was aus meiner sicht ne megaverschwendung ist.
deswegen besteht das ganze bei mir meistens aus einer art immediate gui und hotkeys.
wobei ich auch schon oefters einfach nen http server eingebaut habe (das implementieren davon kostet ca ne stunde) und dann kann man mittels simplem html das allermeiste erledigen, das schoene ist, das ist sogar remote lauffaehig, wenn ich meine engine vom pc auf konsolen portiere (z.b. ps2/gc), kann ich weiterhin mit remote darauf zugreifen und alles moegliche einstellen (man hat ja sonst darauf entweder keine konsole, oder ein rumgehackte mit dem pad was eigentlich nur kontroller fuer das spiel sein sollte)
und zum topicsteller: wenn du pixelgenau punkte setzen willst, wieso nimmst du dann nicht ein bestehendes tool wie z.b. Gimp?
kein eigenes tool zu haben ist nichtmal ein defizit, oft sind die leute mit bekannten tools vertraut und moegen damit viel lieber arbeiten als propriaeteren...
-
rapso schrieb:
und zum topicsteller: wenn du pixelgenau punkte setzen willst, wieso nimmst du dann nicht ein bestehendes tool wie z.b. Gimp?
kein eigenes tool zu haben ist nichtmal ein defizit, oft sind die leute mit bekannten tools vertraut und moegen damit viel lieber arbeiten als propriaeteren...Im Prinzip stimme ich dir zu, und ich habe grundsätzlich nichts dagegen, für solche Zwecke auf ausgereifte Programme zurückzugreifen. Nur geht es in diesem Fall um mehr als Pixelpositionen. Die einzelnen Pxiel repräsentieren ja Objekte, die frei skaliert und (später auch) rotiert werden sollen. Also müssen die Infos, die aus der Bitmap abzulesen sind, zusammen mit weiteren Parametern in einem anderen Format gespeichert werden. Nur mit einer Textdatei zu arbeiten, ist auch nicht möglich, weil die Objekte darin kaum zu identifizieren sind (welcher von den 455 Bäumen ist denn der an der Weggabelung, der schön groß herauskommen soll?).
Nein, an einem grafischen Editor führt kein Weg vorbei, es geht nur um das Wie. Aber zurück zu meiner Frage: Es muss doch eine GUI geben, die sowohl unter Linux als auch Windows zu benutzen ist?
-
natürlich. gTK, wxWidgets und einige andere..