Я знаю, что создавать среду выполнения — не лучший вариант, но у меня нет выбора
br />
НО мне требуется 40 секунд для 30000 вершин... слишком долго
Можно ли сделать какую-либо оптимизацию в моем коде ?
.
Вот мой код, который вы можете использовать, если у вас сетка N.y && N.x > N.z)
{
uvs[mesh.triangles] = new Vector2(mesh.vertices[mesh.triangles].z, mesh.vertices[mesh.triangles].y);
uvs[mesh.triangles[i + 1]] = new Vector2(mesh.vertices[mesh.triangles[i + 1]].z, mesh.vertices[mesh.triangles[i + 1]].y);
uvs[mesh.triangles[i + 2]] = new Vector2(mesh.vertices[mesh.triangles[i + 2]].z, mesh.vertices[mesh.triangles[i + 2]].y);
}
else if (N.y > N.x && N.y > N.z)
{
uvs[mesh.triangles] = new Vector2(mesh.vertices[mesh.triangles].x, mesh.vertices[mesh.triangles].z);
uvs[mesh.triangles[i + 1]] = new Vector2(mesh.vertices[mesh.triangles[i + 1]].x, mesh.vertices[mesh.triangles[i + 1]].z);
uvs[mesh.triangles[i + 2]] = new Vector2(mesh.vertices[mesh.triangles[i + 2]].x, mesh.vertices[mesh.triangles[i + 2]].z);
}
else if (N.z > N.x && N.z > N.y)
{
uvs[mesh.triangles] = new Vector2(mesh.vertices[mesh.triangles].x, mesh.vertices[mesh.triangles].y);
uvs[mesh.triangles[i + 1]] = new Vector2(mesh.vertices[mesh.triangles[i + 1]].x, mesh.vertices[mesh.triangles[i + 1]].y);
uvs[mesh.triangles[i + 2]] = new Vector2(mesh.vertices[mesh.triangles[i + 2]].x, mesh.vertices[mesh.triangles[i + 2]].y);
}
}
mesh.uv = uvs;
Debug.Log("Finish");
}
Подробнее здесь: https://stackoverflow.com/questions/399 ... timization
Мобильная версия