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

LukasBanana

Alter Hase

  • »LukasBanana« ist der Autor dieses Themas

Beiträge: 1 097

Beruf: Shader Tools Programmer

  • Private Nachricht senden

1

28.06.2012, 11:12

Visual Storyboard in wxWidgets implementieren

Hi, wer von euch schon mal mit Xcode 4 programmiert hat, sollte auch das "Storyboard" kennen. Hier mal ein Bild:

(Link)


Wie ihr seht, kann man damit sehr komfortabel Events mit deren Wirkungen editieren (z.B. Button gedrückt -> anderes View erscheint).
So etwas in der Art will ich jetzt in meinen World Editor für das Event Handling der Game Logic einbauen.
Man soll Events mit Consequences verbinden können, ähnlich wie im Bild zusehen.

Meine Frage ist nun, wie macht man das mit wxWidgets am besten? Diese visuelle Ansicht mit OpenGL darzustellen wäre wahrscheinlich zu viel Overhead.
Ich bin sicher, dass wxWidgets auch für so etwas jede Menge GUI elemente zur Verfügung stellt, aber welche?

LukasBanana

Alter Hase

  • »LukasBanana« ist der Autor dieses Themas

Beiträge: 1 097

Beruf: Shader Tools Programmer

  • Private Nachricht senden

2

01.07.2012, 21:15

Schade, dass mir hier niemand weiter helfen konnte. Macht aber nix, ich hab nämlich jetzt schon mal ein bischen was hinbekommen.
Anbei mal eine kleine Vorschau auf den "Storyboard Designer" für den nächste SoftPixel Sandbox Release :D
»LukasBanana« hat folgendes Bild angehängt:
  • Screenshot27.png

LukasBanana

Alter Hase

  • »LukasBanana« ist der Autor dieses Themas

Beiträge: 1 097

Beruf: Shader Tools Programmer

  • Private Nachricht senden

3

06.07.2012, 14:59

Da euch mein visuelles Storyboard wohl nicht so sehr interessiert, frage ich einfach mal:
Wie erstellt ihr denn die Game-Logic in euren Projekten?
Macht ihr das immer mit einer Script Sprache wie "AngelScript", "Lua", "Python" etc - wenn ja welche könnte ihr da empfehlen und warum?
Macht ihr das vlt. gar nicht mit eigenen Tools sondern mit der Blender GameEngine?
Oder programmiert ihr die meiste Game-Logic direkt in euren Projekten - also in C/ C++/ Java ect?

Sacaldur

Community-Fossil

Beiträge: 2 301

Wohnort: Berlin

Beruf: FIAE

  • Private Nachricht senden

4

06.07.2012, 15:23

hardcoded! muhahahahaha! ^^ (je nach der für das Projekt verwendeten Sprache dann C#, Java oder Python)

allerdings solltest du dich nicht an mir orientieren
die meisten meiner Projekte waren entweder nicht groß genug oder ich bin nicht so weit gekommen, dass ich mir um Spiellogik hätte Gedanken machen müssen

allerdings würde ich dir grundsätzlich von beispielsweise C++ abraten
andere Sprachen, wie Java oder C# sind schon etwas besser für die Logik geeignet, wohingegen Skriptsprachen immernoch am idealsten sind
du solltest auch bedenken, dass die Skripte nicht von Programmierern erstellt werden sollte, weshalb du dich auch nicht auf Programmiersprachen (Skriptsprachen sind ja auch Programmiersprachen) beschränken solltest
als nicht-Programmierer sollte man idealerweise mittels grafischer Hilfsmittel sich die Logik zusammen basteln können (beispielsweise indem man in einer Map Trigger platziert, die von anderen Objekten Aktionen auslösen können, wie das Öffnen einer Tür etc.)
(ich habe dabei auch ein wenig den Hammer Editor im Kopf, da ich mit diesem schon ein wenig gearbeitet habe)

weiterhin sollte es sehr einfach sein, das erstellte mal so eben zu testen
es ist immer unhandlich, wenn man den Code in einem externen Programm bearbeiten und ausführbaren Code daraus generieren muss
alles, was interpretiert wird, bringt nicht das Problem der Kompilierung, alles andere sollte automatisch mit dem Knopfdruck auf "Spiel starten" oder "Spiel testen" geschehen
Spieleentwickler in Berlin? (Thema in diesem Forum)
---
Es ist ja keine Schande etwas falsch zu machen, als Programmierer tu ich das täglich, [...].

LukasBanana

Alter Hase

  • »LukasBanana« ist der Autor dieses Themas

Beiträge: 1 097

Beruf: Shader Tools Programmer

  • Private Nachricht senden

5

06.07.2012, 22:31

Ja, einen visuellen Designer finde ich eigentlich auch besser.

Und hier noch mal einen aktuallisierten Screenshot :)
»LukasBanana« hat folgendes Bild angehängt:
  • Screenshot29.png

6

06.07.2012, 22:33

Tipp: Ich würde mal Anti-Aliasing benutzen. :)

FSA

Community-Fossil

  • Private Nachricht senden

7

06.07.2012, 23:26

Wie hast du das hinbekommen? Ich bin auch gerade dabei sowas zu probieren ;)

Zitat

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

8

06.07.2012, 23:27

Ich denke er benutzt das hier: http://de.wikipedia.org/wiki/Spline-Interpolation

LukasBanana

Alter Hase

  • »LukasBanana« ist der Autor dieses Themas

Beiträge: 1 097

Beruf: Shader Tools Programmer

  • Private Nachricht senden

9

06.07.2012, 23:50

Ich verwende für meinen Editor wxWidgets und da gibt's auch für den GDI Part der WinAPI eine sehr schöne Abstrahierung.
Wobei Splines von der WinAPI nativ gezeichnet werden können. Anti-Aliasing würde ich gerne einbauen, gibt's aber afaik in der WinAPI nicht nativ. Das müsste man wahrscheinlich selber machen und das ist mir die Arbeit nicht Wert.

@FSA: was genau willst du denn wissen? Für die splines verwende ich diese wxDC Funktion ;)

Gruß,
Lukas

Beiträge: 1 223

Wohnort: Deutschland Bayern

Beruf: Schüler

  • Private Nachricht senden

10

07.07.2012, 00:08

Zitat

Anti-Aliasing würde ich gerne einbauen, gibt's aber afaik in der WinAPI nicht nativ.

In GDI nicht, aber GDI+ sollte das können.

GDI++ ist ab WinXP(?) vorinstalliert und kann auf älteren Systemen auch noch nachgerüstet werden.



Und ganz nebenbei: Ich fände es ohnehin Zeitgemäßer, wenn man heutzutage bei solchen grafisch aufwendigen Guielementen auf Hardwarebeschleunigung zurückgreifen würde.

Werbeanzeige