Как динамически окрашивать / текстурировать трехмерный объект? - PullRequest
0 голосов
/ 25 февраля 2010

У меня есть 3D-модель, состоящая из треугольников. Я хочу, чтобы, учитывая точку рядом с моделью, я хотел бы покрасить модель (треугольники) в другой цвет, скажем синий.

Прямо сейчас у меня есть ограничивающая сфера вокруг модели, и когда происходит столкновение, я просто хочу приблизительно покрасить участки модели, с которых произошло столкновение.

Может кто-нибудь предложить мне что-нибудь, что я могу использовать и сделать это?

Спасибо

1 Ответ

1 голос
/ 25 февраля 2010

Если у вас есть только одно или небольшое количество точек для проверки, наиболее быстрым для визуализации методом, вероятно, будет написание шейдера в GLSL, который условно изменяет цвета фрагментов в зависимости от расстояния до вашей точки ).

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

...