WPF 3D выдавливает "растровое изображение" - PullRequest
0 голосов
/ 11 июня 2010

Я ищу способ симуляции проектора в wpf 3D:

У меня есть эти "in" параметры:

  • форма луча: черно-белый растровый файл

  • размер луча (например, 30 °)

  • цвет луча

  • интенсивность луча (диммер)

  • положение проектора (x, y, z)

  • положение луча (панорамирование (x)), наклон (y) относительно проектора)

Сначала я думал об использовании светового объекта, но кажется, что wpf не может этого сделать

Итак, теперь ядумаю, что я могу сделать для каждого проектора полигон из своего растрового изображения ...

Сначала мне нужно преобразовать черно-белое растровое изображение в вектор.Только простая форма (пузырь, линия, точка, крест ...)

Есть ли способ WPF сделать это?Или, может быть, внешний программный файл (бесплатное программное обеспечение);

, тогда мне нужно построить многоугольник с формой преобразованного растрового изображения, цвета, размера, ориентации в параметре.

я незнаете, как я могу определить длину луча, и если это может быть бесконечно ...

Чтобы показать результат луча, я думаю о создании комнаты (пол, стена ...) и луч закончитсяк этой стене ...

мне нет дела до реального рендеринга света (рассеивание ...), но рендеринг сцены должен быть в реальном времени и по крайней мере 15 раз в секунду (с вероятностью от одного до 100проекторы одновременно), информация о положении, угле, форме, цвете будет отправляться для каждого рендера ...

Хорошо, мне нужен образец для этого, я думаю, что все эти вещи могут быть полезныдля других людей

Если у вас есть пример кода:

Преобразовать растровое изображение в вектор Выдавливать векторы из одной точки с параметром угла до столкновения стены Установите x, y положение луча зависит отположение проектора Set Alpha iинтенсивность луча, цвет

Может быть, я совершенно не прав, и WPF не готов к этому, поэтому посоветуйте мне другой способ (xna, d3D) с образцом, конечно; -)

Спасибо тебе

Ответы [ 2 ]

0 голосов
/ 11 июня 2010

Для «светлых узоров на полу» есть два способа:

использовать прожектор с печеньем.Или проектор с пользовательским шейдером, который выполняет аддитивное смешивание.

или вручную создает частично прозрачные полигоны для имитации "лучей".и мне нужен пример для одного или другого случая

0 голосов
/ 11 июня 2010

Я бы представлял «луч» как свет. Я бы загрузил растровое изображение в буфер трафарета. Вы должны быть в состоянии сделать это с OpenGL, DirectX или XNA. AFAIK, WPF не предоставляет доступ к оборудованию для буфера трафарета или теней.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...