2016-07-06 8 views
1

Also habe ich eine Mesh-Kurve, die ich von Blender importiert habe. Ich möchte einzelne Punkte auf der Kurve platzieren (in einem festen Abstand) und sie dann anhand einer bestimmten Zahl einfärben.Wie werden einzelne Teile der Kurve in Einheit, Echtzeit?

Sagen wir zum Beispiel, Nummer 1000 ist die Farbe Rot und Nummer 10 ist die Farbe Blau (basierend auf Farbverlauf). Diese Zahlen werden in Echtzeit aktualisiert, daher möchte ich, dass meine Farbe in Echtzeit aktualisiert wird.

Ich habe keine Ahnung, wie Sie dieses Problem angehen. Ich habe nach Ideen gesucht, konnte aber nichts Nützliches finden.

enter image description here

Danke.

enter image description here

+0

@JoeBlow da gehst du: http://prntscr.com/bpm3yw – 2222

+0

@JoeBlow könnte es ein Seil sein. nicht unbedingt. – 2222

+0

@JoeBlow ist es für eine Visualisierungsanwendung. stell dir so etwas vor. http://www.west-racing.com/mf/wp-content/uploads/2011/12/ytfumefx.jpg es ist nur, wenn es die Daten liest es etwas rot oder grün an diesem bestimmten Punkt ändert – 2222

Antwort

2

Schlechte Nachrichten, ist es nicht einfach, dies zu tun.

Unity ist eine Spiel-Engine - es ist einfach nicht relevant für diese Art von Problem, die Sie kennen?

Ich glaube, die einzige echte Lösung wäre , um es auf der Shader-Ebene zu tun.

Wie Sie wissen, Schreiben von Shadern ist ein ganzes Engineering-Bereich für sich. Ich schlage vor, Dinge wie "Unity3d Farbverlauf, Shader" zuerst zu googeln.

Zum Beispiel

http://answers.unity3d.com/questions/1108472/3-color-linear-gradient-shader.html


Eine Sache, die Sie tun können, denkbar. Mach das Seil weiß. Leuchtet auf! Also, farbige schmale Strahler oder sorgfältig platzierte diffuse Lichter. Vielleicht in Verbindung mit Schichten für die Beleuchtung. Es ist nicht unvorstellbar, dass es funktionieren könnte, viel Spaß!

Hinweis - tatsächlich löste das OP das Problem nur mit farbigen Lichtern - eine Lösung in einigen Fällen.


Bitte beachten Sie, dass der GL api auch hier perfekt ist.

user2299169 gibt einen hervorragenden Link in den Kommentaren oben:

http://gamedev.stackexchange.com/questions/96964/how-to-correctly-draw-a-line-in-unity

GL Doco: https://docs.unity3d.com/ScriptReference/GL.LINES.html

Dank user2299169.

+0

War im Begriff, eine ähnliche Sache zu schreiben, ich denke, ein Shader ist der einzige vernünftige Weg, um das Problem zu lösen, nach all dem Problem der Änderung der Pixelfarben dynamisch auf Shapes ist, was Shader erfunden zu lösen. –

+0

Rechts. Völlig einverstanden, Scott. Es gibt noch eine andere "schlaue" Lösung, die ich einbauen werde ...! – Fattie

+0

Scheitelpunkt-Farben könnten auch funktionieren, können sie einfach mit Skript aktualisieren und/oder im Shader ändern – mgear

Verwandte Themen