Blender Wavefront Object: количество вершин в объявлении грани больше, чем количество всех вершин

Я пытаюсь загрузить объект Wavefront в мою C ++ OpenGL программу, используя мой собственный анализатор. Парсер работает для некоторых .obj-файлов, но в некоторых файлах он выдает index out of range exception, После некоторой отладки я обнаружил, что одна строка в файле ссылается на вершину с номером 10565:

f 2571/5164/4481 8298/5166/4481 10565/5167/4481
^^^^^

Но файл содержит только 10531 Вершины.

Вопросы:

  • Как Blender все еще может импортировать файл?
  • К какой вершине относится Blender с «10565», даже если он не существует?

0

Решение

Лучший ответ будет в источнике —

svn co "https://svn.blender.org/svnroot/bf-extensions/trunk/py/scripts/addons/io_scene_obj/"

Мое предположение было бы игнорировать ошибочные грани, другой вариант — найти ближайшую вершину, которая, скорее всего, будет соединена с двумя другими вершинами.

1

Другие решения

Мне пришлось удалить вершины, которые были дважды.

0