Заливка 3D-формы соединяется с первой вершиной на P5. js webGL - PullRequest
0 голосов
/ 09 мая 2020

Это тот эффект, которого я пытаюсь достичь

Это делается с помощью обработки 3.x

Я пытаюсь воссоздать тот же эффект с помощью p5 . js https://editor.p5js.org/atommic/sketches/kqblWtqln

This is the effect I'm trying to achieve (done with Processing 3.x)

Вот как это выглядит на p5. js когда все вершины имеют одинаковое значение z

Когда все вершины находятся в одной плоскости, проблем нет, и все выглядит так, как ожидалось

P5.js sketch - completely 2d - all vertexes are on the same plane

значения X и Y этой формы представляют собой 2 массива. Значение Z является функцией mouseX.

for (var i = 0; i < xpos0.length; i++) {

    G = abs((xpos0[i] - mouseX+500)) / (80);
    if (G >= 1) {
        G = 1;
    }
    curveY = curvePoint(-5, 15, 0, 20, G);

    vertex(xpos0[i], ypos0[i], -curveY);  
}

Вот как это выглядит на P5. js при использовании других значений z

При перемещении мышь и изменение значения Z некоторых вершин, этот эффект происходит. Заливка каким-то образом связывает все с первой вершиной массива

P5.js - vertexes are on different planes, fill connects to first vertex P5.js - vertexes are on different planes - connection to first vertex is more visible

Есть идеи, почему это происходит и как чтобы этого избежать?

1 Ответ

0 голосов
/ 10 мая 2020

По-видимому, это известная проблема, поскольку она описана как ожидаемое поведение в документации p5 js

https://p5js.org/reference/# / p5 / vertex enter image description here

...