Der SplineToFieldGenerator ist ein Script für den GIANTS Editor, das Euch dabei helfen soll, Felder einfach mithilfe von Splines zu erstellen und dabei eine möglichst geringe Anzahl an polygonPoints zu behalten.
Dieses Script kann besonders bei sehr großen oder ungleichmäßig geformten Feldern viel Arbeit ersparen.
Funktionen:
-Einfache Feldgenerierung per fieldBoundarySpline
-Feldinsel Generierung mithilfe von: fieldIslandSpline/fieldIslandSmallSpline
Feldinseln sind optional und kein Muss
UI-Funktionen:
-Erstellen der benötigten Splines und Gruppen
-Generieren der polygonPoints
-Ein- und Ausblenden der Splines
-Render-Debug zur besseren Übersicht der polygonPoints des ausgewählten Feldes mit den aktuellen einstellung die auch live geupdated werden sollten andere einstellung vorgenommen werden
-Löschen Aller Splines und Gruppen von einem ausgewählten oder von allen Feldern
Hinweise: Beim ersten Spline und Gruppen Löschen wird automatisch eine Backup-TransformGroup unter: SplineToFieldGenerator -> Backup erstellt. Wo dann die entsprechent gelöschten splines und gruppen als backup hinterlegt werden. Diese werden dann als fieldxxBackup in der Backup(TransformGroup) gespeichert. Diese dient dazu, die Splines und Gruppen des jeweiligen Feldes zu sichern, falls versehentlich etwas gelöscht wurde oder später weitere Änderungen vorgenommen werden sollen.
Zusätzlich übernimmt das Script viele automatische Prüfungen und gibt passende Meldungen In der GE Konsole aus, was aktuell durchgeführt wird oder warum bestimmte Funktionen nicht ausgeführt werden konnten.
Beispiel wie ein Fieldaufgebaut sein kann:
Zuerst benötigt Ihr ein Feld, das mithilfe des GIANTS Editor FieldToolkits oder eines anderen Scripts erstellt wurde.
Einfaches Feld
fields
-----└──fieldxx
--------├──polygonPoints(transformgroup)
--------├──nameIndicator(transformgroup) Standart GIANTS aufbau
--------├──teleportIndicator(transformgroup)
-------------------------------------------------------------------------------
--------└──fieldBoundarySpline(Spline) SplineToFieldGenerator aufbau
-------------------------------------------------------------------------------
Feld mit Feldinseln
fields
-----└──fieldxx
--------├──polygonPoints(transformgroup)
--------├──nameIndicator(transformgroup) Standart GIANTS aufbau
--------├──teleportIndicator(transformgroup)
-------------------------------------------------------------------------------
--------├──fieldBoundarySpline(Spline)
--------└──fieldIsland(transformgroup) SplineToFieldGenerator aufbau
-----------└──fieldIslandSpline(Spline)
-------------------------------------------------------------------------------
Bei der fieldIsland(TransformGroup) muss darauf geachtet werden, dass diese passend zu den Feldinseln ausgerichtet ist.
Dabei helfen die blauen Linien im Render-Debug-Modus, um zu erkennen, ob während der Generierung Bereiche korrekt als Feldinsel berücksichtigt werden.
Feld mit schwer erreichbaren Feldinseln
fields
-----└──fieldxx
--------├──polygonPoints(transformgroup)
--------├──nameIndicator(transformgroup) Standart GIANTS aufbau
--------├──teleportIndicator(transformgroup)
-------------------------------------------------------------------------------
--------├──fieldBoundarySpline(Spline)
--------└──fieldIsland(transformgroup)
-----------├──fieldIslandSpline(Spline) SplineToFieldGenerator aufbau
-----------├──fieldIslandSpline(Spline)
-----------└──fieldIslandWaypoint(transformgroup)
--------------└──fieldIslandSpline(Spline)
-------------------------------------------------------------------------------
Der fieldIslandWaypoint dient dazu, einer oder mehreren fieldIslandSpline's eine zusätzliche TransformGroup zu geben, um schwer erreichbare Feldinseln besser abbilden zu können.
Dies ist besonders hilfreich bei stark verwinkelten oder komplexen Feldern.
Wichtige Hinweise
Der Aufbau muss nicht zu 100 % exakt in derselben Reihenfolge erfolgen wie in den Beispielen gezeigt.
Das Script arbeitet intern folgendermaßen:
fieldBoundarySpline -> fieldIsland (transformgroup)
Dabei ist es egal, an welcher Position sich die fieldBoundarySpline innerhalb der fieldXX-Gruppe befindet, da das Script diese automatisch zuerst sucht
Wichtig ist lediglich:
Alles, was fieldIsland im Namen trägt, muss sich auch innerhalb der fieldIsland-TransformGroup befinden. Andernfalls kann es zu fehlerhaften oder unerwarteten Generierungsmustern kommen.
Zusätzlich sollte beachtet werden, dass das Script nicht in jeder Situation eine 100 % perfekte Feldform erzeugen kann. Durch die technische Funktionsweise von Splines kann es vereinzelt vorkommen, dass Ecken leicht abgeschrägt oder ungenau generiert werden, da sich mit Splines keine vollständig präzisen 90°-Kanten erstellen lassen. Daher kann es in manchen Fällen notwendig sein, bestimmte Ecken oder Übergänge manuell nachzubearbeiten.
Instalation:
1.) Starten Sie die Aktuelle Version ihres GIANTS Editor
2.) Navigiren sie oben über die Menüleiste zu: Fenster->Skript Editor. und öffnen Sie denn Skript Editor
3.) Machen Sie Rechtsklick auf denn ordner wo sie das script speichern möchtest z.b. Geteilte Scripte und wähle: Ordner Durchsuchen. aus
4.) Nun kopieren sie nurnoch die SplineToFieldGenerator.lua datein in denn von ihnen ausgewählten Script-Ordner und restarten sie denn GIANTS Editor einmal
5.) Das Skript steht anschließend im GIANTS Editor über die Menüleiste unter "Skripte" zur Verfügung.