1
Other Languages / Использование памяти: 3д-модель vs тайловая модель
« on: January 31, 2018, 10:28:28 PM »
Здравствуйте!
Из беглого прочтения документации я понял, что тайловая модель - это та же 3d-модель (mesh 3d), но дополненная слоями с пониженной детализацией: чтобы близкие объекты показывать как есть, в исходной, максимальной детализации, дальние же берутся из слоёв с пониженной детализацией. Таким образом скорость отрисовки больших пространств драматически возрастает. Как мультитриангуляция.
Т.е. построить тайловую модель сложнее, чем просто модель. Нужны дополнительные структуры и расчёты.
Однако, построение 3d-модели требует значительно больших объёмов оперативной памяти в сравнении с тайловой моделью.
Например, если взять 800 фотографий 12Мп, то по ним без труда строится плотное облако 170 млн точек (качество = высокое). По облаку успешно строится тайловая модель (32Гб оперативки). Но просто 3д-модель без текстуры и без цветов вершин на этих же 32Гб построить по такому облаку не удастся ни в каком виде (даже если задать количество треугольников 1000, и выключить интерполяцию).
1. Как такое возможно? Почему эта 3д-модель так прожорлива? Прожорливее тайловой модели.
2. Можно ли (будет) как-то преобразовать построенную тайловую модель в 3д-модель?
3. 3д-модели местности/рельефа имеют такую особенность: большая площадь (десятки Га), небольшая высота (десятки метров). Удвоение площади (числа фотографий) потребует вдвое больше памяти при построении 3д-модели. Но если вручную задать размер области, и поочерёдно построить модель сначала для одной половины, а потом для другой половины, то требования по памяти останутся без изменений. Останется только склеить половинки между собой. Можно ли (планируется ли) как-то автоматизировать этот процесс? Построение 3д-модели больших площадей, путём разбивки плотного облака точек на области меньшего размера с последующей склейкой полученных моделей. Тогда не пришлось бы думать, как организовать 256Гб на машину, и хватило бы типичных 16Гб для модели местности любой сложности.
Из беглого прочтения документации я понял, что тайловая модель - это та же 3d-модель (mesh 3d), но дополненная слоями с пониженной детализацией: чтобы близкие объекты показывать как есть, в исходной, максимальной детализации, дальние же берутся из слоёв с пониженной детализацией. Таким образом скорость отрисовки больших пространств драматически возрастает. Как мультитриангуляция.
Т.е. построить тайловую модель сложнее, чем просто модель. Нужны дополнительные структуры и расчёты.
Однако, построение 3d-модели требует значительно больших объёмов оперативной памяти в сравнении с тайловой моделью.
Например, если взять 800 фотографий 12Мп, то по ним без труда строится плотное облако 170 млн точек (качество = высокое). По облаку успешно строится тайловая модель (32Гб оперативки). Но просто 3д-модель без текстуры и без цветов вершин на этих же 32Гб построить по такому облаку не удастся ни в каком виде (даже если задать количество треугольников 1000, и выключить интерполяцию).
1. Как такое возможно? Почему эта 3д-модель так прожорлива? Прожорливее тайловой модели.
2. Можно ли (будет) как-то преобразовать построенную тайловую модель в 3д-модель?
3. 3д-модели местности/рельефа имеют такую особенность: большая площадь (десятки Га), небольшая высота (десятки метров). Удвоение площади (числа фотографий) потребует вдвое больше памяти при построении 3д-модели. Но если вручную задать размер области, и поочерёдно построить модель сначала для одной половины, а потом для другой половины, то требования по памяти останутся без изменений. Останется только склеить половинки между собой. Можно ли (планируется ли) как-то автоматизировать этот процесс? Построение 3д-модели больших площадей, путём разбивки плотного облака точек на области меньшего размера с последующей склейкой полученных моделей. Тогда не пришлось бы думать, как организовать 256Гб на машину, и хватило бы типичных 16Гб для модели местности любой сложности.