Масштабировать инвариантные объекты в webgl - PullRequest
3 голосов
/ 16 февраля 2012

WebGl не поддерживает толщину линий.Поэтому, когда мне нужно выделить какую-то линию, я просто рисую вокруг нее прямоугольник.Но когда я масштабирую сцену, это выглядит довольно страшно.

Теперь я вижу два способа:

1) Пересчитать ширину прямоугольника в соответствии с canvas.width в координаты модели.

2) Поместить все объекты, инвариантные к масштабированию, под отдельныематрицу (я использую scenejs) и пересчитываю их позиции после каждого колеса мыши

Мне не нравятся оба этих решения.Поэтому я задаюсь вопросом: есть ли хороший обходной путь, чтобы сделать масштабирование объектов инвариантным?

1 Ответ

0 голосов
/ 06 ноября 2012

Другим способом (хотя и не самым эффективным) может быть использование шейдеров.В нашем приложении WebGL мы рендерим подсвеченные примитивы в текстуру, а затем размываем их на экране, чтобы добавить «эффект свечения выделения».

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