2011-01-08 2 views
0

Ситуация следующая: существует большая 3D-модель системы, полученная путем преобразования из 3DMax (размер разметки xaml размером 50 МБ). Для работы с моделью используется Viewport3D. Но мне нужно отобразить только вид спереди. Основная проблема - интенсивность ресурсов получаемого приложения.Преобразование 3D-сцены в 2D-вид

Вопрос: Как конвертировать 3D-сцену в 2D-представление? Предпочтительно без какой-либо заметной потери качества.

+0

Динамически движутся ваши 3D-объекты? Вам нужно изменить сцену в режиме реального времени? Вы пытались запустить приложение с этой сценой 50 МБ? В чем проблемы с этим? Он работает свободно? – pbalaga

+0

Что вы хотите сделать, это проекция. Загляните сюда: http://en.wikipedia.org/wiki/3D_projection, вам нужно написать алгоритм, я думаю. – martin

+0

У нас есть статическая сцена, но динамически перезагружать некоторые элементы в реальном времени, и да, я пытаюсь запустить это приложение, для этого требуется слишком много ресурсов. – Gremory

ответ

0

Вы можете визуализировать вид спереди изображения с помощью RenderTargetBitmap.Render(). Это может занять некоторое время, но когда это будет сделано, вы можете отбросить 3D-модель и отобразить 2D-изображение.

+0

Этот метод делает изображение из нашей сцены, но у нас есть сцена с множеством элементов, и нам нужно вызывать эти элементы из других частей кода – Gremory