Plarium corporate blog
Game development
C#
Unity3D
Comments 10
-1
Сам недавно столкнулся с похожей проблемой, и реализовал свой MeshEditor, но у меня треугольник хранит в себе по три вершины, вместо Ваших трех сторон, почему именно хранить стороны, а не вершины?
0
Для реализации некоторых алгоритмов проще работать именно с ребрами как отдельными сущностями, а не с парами вершин. Примеры сможете посмотреть в следующих статьях данного цикла. Из тех же соображений удобства в коде Triangle у нас также есть properties для прямого доступа к вершинам.
0
> Из тех же соображений удобства в коде Triangle у нас также есть properties для прямого доступа к вершинам.

На последней схеме не заметил что бы был прямой доступ к вершинам, из под триангла.

> Примеры сможете посмотреть в следующих статьях данного цикла.

Тогда буду с нетерпением ждать следующей статьи :)
+1
vertices = Mesh.vertices;

Данные из меша можно получать через Mesh.GetVertexes( list ) тогда аллокаций не будет, если лист достаточной длины.
0
Да, верно подмечено. Однако этот метод больше полезен, судя по всему, для обработки множества мешей подряд, используя один и тот же список. С точки зрения времени выполнения все равно лучше кешировать, если хватает памяти. Кроме того, мы используем PLINQ для параллельного выполнения некоторых операций по обработке геометрии, а LINQ более лоялен по производительности к Array, нежели к List (https://jacksondunstan.com/articles/3165). Еще Mesh.GetVertexes также обращается к ядру движка, чего мы по возможности избегали в собственной реализации.
0
А подскажите, уважаемые, не допилен-ли Unity за последний год до пригодности создания на нём простейших игрушек 3D паззлов? Уровня примерно такого:
image
image
Ранее точность детектора коллизий для таких сложных фигур была вопиюще неприемлемой.
Уж не говоря об отсутствии возможности сделать в меше несколько необходимых вырезов.
0
Вычисления коллизий невыпуклых фигур — довольно трудоемкая задача.
Для расчетов физики 3D-объектов Unity использует PhysX от NVIDIA. В 2018.3 как раз было обновление с 3.3 до 3.4. По Вашему вопросу советуем смотреть, какие улучшения произошли при смене версии PhysX, а не самого Unity.
0
Благодарю, ясн. Плюсик извините поставить не могу, пишу оч редко и «кармы» не нажил.
Да, нетривиальная.
Список changes для 3.4 как-то не воодушевил, да Unity действительно «не для такого».
Но мне задача актуальна, кто знает подходящие движки и плагины — буду благодарен за наводку, можно в ЛС.
0
Емнип, можно на один геймобжект навесить несколько коллайдеров примитивов, или при использовании rigidbody, в чайлд-объектах несколько коллайдеров. И будет норм работать.
Сам не пробовал, в интернете видел случайно.
0
Рассматривал такой вариант. По сумме причин мне не подошло.
Попилить на примитивы пять-семь фигурок еще бы ладно. А когда моделек не один десяток ( или как на заглавной картинке ) — все уже менее весело. Плюс склейка, настройка центров вращения и ещё несколько каких-то мелких ограничений ( сейчас уже точно не помню, на количество вершин что-ли ).
Only those users with full accounts are able to leave comments., please.