Как скрыть "трещины" между GeometryModel3D в одной ModelVisual3D?
Я пишу приложение для визуализации наук о Земле, которое использует wpf 3d. Пользователь должен иметь возможность детализировать и быстро увеличивать детали с минимальными затратами ресурсов. Я решил разделить свой срез (ModelVisual3D) на под прямоугольники (GeometryModel3D), чтобы у каждого была своя собственная текстура, которая изменяется при увеличении камеры (аналогично картам Google).
Проблема заключается в том, что между подреугольниками появляются "трещины", хотя между ними фактически нет пустого пространства.
Как это скрыть? или есть какой-либо другой способ назначить несколько материалов с разными размерами для одного ModelVisual3D?
PS Я пытался сделать фон серым, светло-серым, серебристым и бело-дымным. Это немного помогает, но это не приемлемо. Я также пытался перекрывать под-прямоугольники, но безрезультатно.
2 ответа
Похоже на изменение ImageBrush
растягивается до Stretch.None и помогает использование текстур большего размера, чем подквадрат. Хотя сейчас мне нужен более точный контроль текстурных координат для поверхности.
Вместо текущих настроек вы можете создать несколько текстур с разным разрешением и переключаться между ними в зависимости от уровня масштабирования. (Мипмапы)
Когда вы подойдете очень близко, вы можете заменить весь объект и поменять его на более мелкий) и использовать очень детализированную текстуру.
Это потребует немного больше предварительной обработки, но вы сможете использовать одну геометрию.