Вычислите, должен ли meshCollider быть выпуклым или вогнутым в Unity C #? - PullRequest
0 голосов
/ 09 октября 2018

В Unity есть способ во время выполнения, когда имеешь дело с неизвестными сгенерированными пользователем фигурами, для которого мы сейчас хотим создать meshCollider, чтобы вычислить, должна ли сетка быть выпуклой или нет, т.е. есть ли у meshFilter внутренние кривые?(Достаточно просто установить это свойство вручную, посмотрев на него, но здесь я имею дело с неизвестными заранее формами.) Спасибо!

1 Ответ

0 голосов
/ 10 октября 2018

Для каждого треугольника в сетке вам необходимо рассчитать его нормаль лица.Затем для каждой грани нормали проверьте знак точечного произведения с каждой вершиной, чтобы увидеть, находится ли он за треугольником.Если все вершины находятся за всеми треугольниками, это выпукло.

Лично я бы просто пометил все вогнутым и продолжил.

...