#wpf #3d #xaml #c_sharp
Ситуация следующая: имеется достаточно большая 3D модель системы, полученная конвертацией из 3DMax (размер xaml разметки больше 50мб). Для работы с моделью используется Viewport3D. Но для отображения нужен лишь фронтальный вид. Основной проблемой становится ресурсоемкость получающегося приложения. Вопрос: существует ли способ для приведения 3D сцены к 2D виду? Желательно без существенной потери качества.
Ответы
Ответ 1
То что вы хотите нельзя сделать, кроме как превратив в статическое изображение. Рендеринг 3D-сцены - это и есть приведение к 2D. Единственное, что можно было бы сделать, это всё превратить в какой-нибудь флеш, который в принципе работает именно с 2D, но тогда все объекты по отдельности придётся как-то растеризовать или превращать в плоские векторные объекты. И не факт что это будет работать быстрее, или что это будет меньше весить.Ответ 2
XAML файлы - это некомпилированные Baml. Может стоит создать алгоритм их хранения в бинарном виде вроде отдельного файла, который можно прочитать и отправить в Viewport3D. Еще скорее всего если детально просмотреть сохраненный результат из 3DMax`a, скорее всего он будет просто ужасным. Здесь тоже можно кое-что выкинуть. В любом случае нужно поработать ручками.
Комментариев нет:
Отправить комментарий