steptosky / 3DsMax-XplnObj

This plug-in is for 3DsMax that allows you to import or export x-plane's obj format
Other
22 stars 11 forks source link

Optimisation needed #6

Closed RomSunZ closed 5 years ago

RomSunZ commented 7 years ago

Need points export with checking if point with same XYZ and UVW coordinates already exist

Pancir commented 7 years ago

I'm not sure it is necessary, you always can stitch vertices in the UVW editor. The algorithm always breaks geometry by UVW seams, so if you don't actually need the seams you should not do them, it is all that you need for optimization. Also if you want you can write or search a script which will visit all geometry objects and weld UVW vertex within threshold or you can do it with UVW editor manually. Let me know if you have more arguments and use cases for this feature.

RomSunZ commented 7 years ago

Is your native Russian? If not let me now I'll translate to English. Причина банальна. Если модель содержит полигоны для обеих сторон модели, то экспортируется в 2 раза больше точек, чем нужно, хотя координаты XYZ UVW одни и те же. Плюс как Вы заметили экспортируются повторно вершины швов на модели. А это влияет на производительность отрисовки моделей, это я прочитал в каком-то из блогов разработчиков x-plane.

Pancir commented 7 years ago

Есть один маленький нюанс, вершина состоит из 3 значений, позиция, нормаль и текстурные координаты и чтобы вершины можно было объединить нужно чтобы все эти значения были одинаковы, в описанном вами примере не совпадают нормали. Модель кстати так же бьется по шву перехода групп сглаживания и не совпадать в этом случае будут так же нормали. Все эти моменты могут управляться моделером в 3д макс-е т.е вы как моделер всегда можете настроить геометрию максимально оптимально для вашего случая. Таким образом остался только один момент где можно без ведома пользователя, что-то оптимизировать, это только UVW швы, но на данный момент есть много задач с более высоким приоритетами. Я думаю я напишу эти нюансы в хелпе. P.S Лучше стараться задачи писать на английском т.к плагин все же рассчитан на мировую аудиторию и многим возможно будет полезно понимать о чем мы общаемся.

RomSunZ commented 7 years ago

OK, I've got your point of view. It really should be described in the manual because there you've menshioned about optimization and this confused me.