Jump to content
Unity Insider Forum

3D Linien in Unity 3D


Recommended Posts

Ich kenne drei Wege, um 3D Linien in Unity zu erstellen. Und weil mir gerade langweilig ist, stelle ich sie euch kurz vor.

 

1. Linien mit dem Line Renderer erzeugen

Wenn man nach einer Möglichkeit sucht 3D Linien in Unity zu erzeugen, stößt man warscheinlich als erstes auf den LineRenderer. Der Name legt nahe, dass es sich hierbei um das richtige Werkzeug für diesen Job handelt. Linien werden in diesem Fall von 2 oder mehr Punkten (Segmente), einem Meterial und einer Breite definiert.

 

Vorteile:

- einfach zu implementieren

- einzige Möglichkeit in Unity3D Indie

Nachteile:

- pro Renderer nur eine Linie

- die Breite scheint nicht immer korrekt gerendert zu werden

- vergleichsweise langsam

 

2. Linien als Mesh

Hier wird die Linie durch ein Script erzeugt. Dieses könnte in C# etwa so aussehen:

Vector3 normal = Vector3.Cross(start, end);
Vector3 side = Vector3.Cross(normal, end-start);
side.Normalize();
Vector3 a = start + side * (lineWidth / 2);
Vector3 b = start + side * (lineWidth / -2);
Vector3 c = end + side * (lineWidth / 2);
Vector3 d = end + side * (lineWidth / -2); 

Vorteile:

- viel schneller als der Line Renderer

- totale Kontrolle über die Linien (Farbe, Material, Breite, Orientierung)

 

Nachteile:

- Linien müssen selber erstellt werden

- vergleichsweise schwer zu implementieren

 

3. Linien mit GL

Diese Methode ist für mich der klare Gewinner der drei Möglichkeiten. Hier die Vorteile und Nachteile:

 

Vorteile:

- schneller als die anderen Möglichkeiten

- leichter zu implementieren als die Mesh-Lösung

 

Nachteile:

- wenig Kontrolle über das Aussehen der Linie (keine Breite definierbar, Perpektivität fehlt)

 

 

Fazit:

Für massives und dynamisches erstellen von Linien ist der LineRenderer nicht die beste Lösung, allerdings die einzige im kostenlosen Unity. Der LineRenderer ist für eine limitierte Anzahl von Linien gemacht. Eine vernünftige und flexible Lösung bieten die Mesh-Linien aber wenn man die beste Performance sucht, ist GL die beste Lösung.

Link zu diesem Kommentar
Auf anderen Seiten teilen

  • 5 months later...

 

3. Linien mit GL

Diese Methode ist für mich der klare Gewinner der drei Möglichkeiten. Hier die Vorteile und Nachteile:

 

Vorteile:

- schneller als die anderen Möglichkeiten

- leichter zu implementieren als die Mesh-Lösung

 

Nachteile:

- wenig Kontrolle über das Aussehen der Linie (keine Breite definierbar, Perpektivität fehlt)

 

 

Hi, wo genau finde ich weitere Informationen zur Verwendung der von dir genannten "GL Linien"?

Link zu diesem Kommentar
Auf anderen Seiten teilen

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Lädt...
×
×
  • Neu erstellen...