Существует не очень простой ответ на этот вопрос.
Кромки отсутствуют в геометрии three.js, и есть несколько различных способов их представления.
Вершины могут принадлежать супам треугольника или индексированным сеткам, что означает разные числа для того же числа треугольников.
Треугольники, с другой стороны, совершенно разные, если они созданы для существования с Geometry
vs BufferGeometry
. Geometry
имеет класс Face3
, который довольно сложный, BufferGeometry
имеет типизированный массив, где три числа могут представлять треугольник.
Если вы хотите отладить приложение и посмотреть, случайно ли вы создаете больше геометрий, чем необходимо (клоны по ошибке или что-то еще), используйте renderer.info
в соответствии с предложением WestLangley.
Если вы хотите принять кого-то семантику elses, используйте что-то вроде инструмента rstats в другом ответе.
Если вам нужно что-то конкретное для ваших нужд, то вы можете задать такие вопросы, как «Это размер, который имеет значение, потому что тогда я также должен считать uvs как вершины», «Он слишком велик для хранения в памяти как Geometry
» , «Я заинтересован только в производительности преобразования вершин» и т. Д.
Есть нет края в three.js Структуры AFAIK – pailhead