Странные линии между процедурными сетками Unity - PullRequest
0 голосов
/ 26 октября 2019

Между краями ячеек есть странные линии. Это изображение проблемы: A picture of the problem Another picture of the problem

Код:

    //ChunkSize is the length and width of each mesh(an integer. In this case, it is 100),
    //Vertices are the vertices array of the mesh,
    //ChunkPos is a Vector2 of the position of each mesh(for example, (0,0),(100,0),(0,100),(100,100)...),
    //scaleXZ is the scale of the mesh (Scale the mesh "Horizontally"),
    //and scaleY is the number that is going to be multiplied to the height, so the mesh can scale upwards. (Scale the mesh "Vertically")

    Vector3[] vertices = new Vector3[(chunkSize + 1) * (chunkSize + 1)];
    for (int z = chunkPos.y, i = 0; z <= chunkPos.y + chunkSize; z++)
    {
        for (int x = chunkPos.x; x <= chunkPos.x + chunkSize; x++)
        {
            float y = Mathf.PerlinNoise((x / scaleXZ), (z / scaleXZ)) * scaleY;
            vertices[i] = new Vector3(x - chunkPos.x, y, z - chunkPos.y);
            i++;
        }
    }

Я также использую шейдер Universal Render Pipelineдля материалов этих сеток.

Как мне отредактировать код или сделать что-то с шейдером для решения этой проблемы?

Спасибо за просмотр моего вопроса!

...