Светодиодная лента в трех цветах

Что может быть лучшим способом имитации светодиодной полосы в threejs, как на изображении? Есть ли какой-нибудь пример, чтобы сделать что-то подобное?

enter image description here

Один из подходов - использовать карты освещения: threejs.org/examples/?q=lightm#webgl_materials_lightmap

prisoner849 31.10.2018 14:45
2
1
568
1

Ответы 1

Это действительно зависит от того, какой реализм вы хотите. Всегда есть способы сделать эффекты более реалистичными, но это быстро становится довольно сложным.

Однако, если мы ограничимся готовой функциональностью THREE.js, в нашем распоряжении будут следующие типы источников света:

  • Окружающий свет
  • DirectionalLight
  • ПолушариеСвет
  • PointLight
  • RectAreaLight
  • Прожектор

И из них я лично рекомендовал бы RectAreaLight, потому что он представляет собой источник света (форму которого вы можете указать, чтобы соответствовать форме ваших светодиодных полос), который представляет собой прямоугольник, который равномерно излучает свет по всей поверхности. Лампа, подобная той, что изображена на картинке, возможно, излучает свет не полностью равномерно, но в зависимости от вашей цели, это может быть достаточно близкое приближение. Вы также можете комбинировать несколько источников света для достижения определенных эффектов.

Спасибо, я решил использовать сетку из эмиссионного материала с RectAreaLight поверх нее. Не уверен, как решить проблему отсутствия теней, поскольку RectAreaLight не может отбрасывать тени

revy 02.11.2018 19:46

Интересное решение! Рассматривали ли вы возможность комбинировать это с дополнительными источниками света, такими как Pointlight или DirectionalLight, для получения (приближения) теней?

Berthur 03.11.2018 01:07

Другие вопросы по теме