@DstivjTS

Как разделить куб на полигони?

(Простите за извращение) Нужно чтобы все стороны куба были отделенными объектами - для этого беру в соответствие с вертексами делю, делаю новые меши. Все 6 сторон получаются идеально кроме их позиции - позиции у них все одинаковые - т.е. позиция куба. Как сделать чтобы у них были правильные позиции?
5ba4e656d6131194065155.png
  • Вопрос задан
  • 248 просмотров
Решения вопроса 1
@DstivjTS Автор вопроса
Всем спасибо, кому интересно вот код(не ругайте сильно):
void UpdatePivot(GameObject obj)


    {
        Mesh mesh = obj.GetComponent<MeshFilter>().mesh;
        Vector3[] verts= mesh.vertices;
         Vector3 p = new Vector3(verts[0].x+verts[1].x+verts[2].x)/3f, verts[0].y+verts[1].y+verts[2].y)/3f, verts[0].z+verts[1].z+verts[2].z)/3f);
        obj.transform.position = p; 
        for (int i = 0; i < verts.Length; i++)
        {
            verts[i] -= p;
        }
        mesh.vertices = verts; 
        mesh.RecalculateBounds(); 
    }
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
MrMureno
@MrMureno Куратор тега Unity
VR for all
по итогу. вы создаете набор новых объектов
у которых меш - простецкая фигура. и все они стоят в 0,0,0 координатах.

вам надо или объекты свои вращать. или в мешах указывать правильно позиции вершин.

как вариант подглядите тут, как создают куб с нуля.
ilkinulas.github.io/development/unity/2016/04/30/c...
или может вдруг как точку отсчета меняют в скрипте) это так для ознакомления
wiki.unity3d.com/index.php/SetPivot
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы