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

1

21.12.2011, 18:39

Anwendung von Lua

Guten Abend,

ich bin auf der Suche nach Lektüre oder ähnlichem, die sich mit dem Thema von der Anwendung von Lua (in Spielen) beschäftigt.
Mir geht es nicht um die Syntax, sondern darum, wie man Lua "am besten" in sein Spiel integriert, welche Aufgaben Lua übernehmen sollte und ähnliches.

Kann mir da wer helfen ?

Lg

Schorsch

Supermoderator

Beiträge: 5 145

Wohnort: Wickede

Beruf: Softwareentwickler

  • Private Nachricht senden

2

21.12.2011, 19:52

Da gibt es viele verschiedene Ansichten und Möglichkeiten zu. Du kannst Skriptsprachen einerseits einsetzen, um Konfigurationsdateien zu erstellen. So hast du im Skript deine variablen Werte, welche du dann beim Programmstart einliest. Andererseits kannst du die Skriptsprache benutzen, um Inhalt in dein Spiel zu bringen. Stell dir die Dialoge in Rollenspielen vor. Dies könnte über Skripte realisiert werden. Text der Ausgegeben wird, verschiedene Antwortmöglichkeiten und darauf reagierender Text. Oft werden Skriptsprachen auch für Verhalten von Gegnern/Objekten eingesetzt. Das alles geht soweit, dass zum Teil Spiele fast ausschließlich in einer Skriptsprache geschrieben werden. Dabei werden dann Zeitkritische Sachen in C++ umgesetzt, was zum Beispiel Wegfindungsalgorithmen sein könnten. Der Rest wird dann mehr oder weniger in der Skriptsprache geschrieben. Du musst da selbst deinen Weg finden, wie viel du skripten willst. Der Vorteil dieser Sprachen ist ja normalerweise, dass die Entwicklungszeit oft verkürzt wird und man schnell Änderungen einpflegen kann, da man nicht unbedingt kompilieren muss. Vor allem diese Dynamik bringt viele Vorteile mit sich.
Direkt Bücher zu dem Thema kenne ich keine. Das Thema wird aber meist in weiterführenden Büchern über Spieleentwicklung behandelt. Auch bei den KI-Büchern findet sich oft was dazu. Ich würde dir einfach vorschlagen, einfach auszuprobieren. Wie du es integrierst hängt ja dann auch immer vom Anwendungsfall ab. Von daher bau es einfach mal ein und spiel damit ein bisschen rum. Du willst ja Vorteile davon haben, von daher wirst du schnell merken was der "richtige" Weg für dich ist.
„Es ist doch so. Zwei und zwei macht irgendwas, und vier und vier macht irgendwas. Leider nicht dasselbe, dann wär's leicht.
Das ist aber auch schon höhere Mathematik.“

3

21.12.2011, 20:22

Ich hab mir, bevor ich ans progammieren gehe, ein paar Gedanken gemacht.
Und zwar möchte ich z.B. in einem Spiel ein Objekt (Kiste, Kugel irgendwas) haben, dass per Skript sein Verhalten bekommt. Also Skript würde im Pseudocode jetz so aussehen :

falls Spieler.distanz < 200
geh rechts
sonst
geh links
..
falls hp <200
tot = 1

__

Dieses Script würde ich dann in jedem Frame für das Objekt aufrufen.
Aber Lua brauch dann doch Funktionszeiger, um zB Spieler.Distance aus meiner "c++-klasse" aufzurufen und dann noch die Zeiger auf die Funktionen des Objektes selber. Wir wird das dann gemacht, wird am Anfang eine riesige Liste (fast) aller Funktionen an Lua übergeben damit Lua damit arbeiten kann ?

lg

Schorsch

Supermoderator

Beiträge: 5 145

Wohnort: Wickede

Beruf: Softwareentwickler

  • Private Nachricht senden

4

21.12.2011, 21:50

Guck mal nach Luabind.
„Es ist doch so. Zwei und zwei macht irgendwas, und vier und vier macht irgendwas. Leider nicht dasselbe, dann wär's leicht.
Das ist aber auch schon höhere Mathematik.“

Tobiking

1x Rätselkönig

  • Private Nachricht senden

5

22.12.2011, 00:23

Eins der prominentesten Beispiele für Lua dürfte wohl das User Interface von World of Warcraft sein. Nebem dem offiziellen Interface gibt es eine riesige Community, die Erweiterungen entwickelt. Viele andere MMORPGs verwenden ebenfalls Lua: Warhammer online, Rift, Age of Conan ...

Bei Civilization 5 habe ich gesehen, wird Lua für Szenarien verwendet. Die Scripte beinhalten Beschreibung, Initialisierung, Mapgenerierung etc.

Werbeanzeige