Я пытаюсь нарисовать линию в Three.js с разными цветами для разных вершин, используя THREE.Line
и THREE.LineBasicMaterial
, с vertexColors
, установленный в THREE.VertexColors
. Я бы предпочел, чтобы между цветами соседних вершин не было интерполяции (так, что цвет просто изменяется прерывисто на половине точки между двумя вершинами).Вершины Цвета в THREE.Line
Я попытался установить shading: THREE.FlatShading
на материале, но теперь я понимаю, что это не вариант для LineBasicMaterial
: http://jsfiddle.net/214huf0a/
Есть встроенный (или простой) способ предотвратить сглаживание цвета между точками на линии в Three.js, или мне нужно написать свой собственный шейдер?
Именно то, что я искал. Наше любопытство - это различное поведение с «THREE.LinePieces» - следствие конкретных шейдеров, которые Three.js использует для визуализации «LineBasicMaterial», или тот факт, что установка режима на «THREE.LinePieces» вызывает вызов рисования с помощью ' GL_LINES', а не 'GL_LINE_STRIP'? – caseygrun
Второй. – WestLangley