Форум

Динамические оверлеи (декали) на mesh объекте

08 июня 2015 18:29
Не знаю как эта штука правильно называется. Но в движке source от valve называется декаль.
Возможно ли в blend4web создавать такую штуку?
Вот в видео пример работы на three.js

Этот функционал пригодился бы для создания следов от обуви, пуль, взрывов и т.п.
Не стой, где попало… Попадет еще раз.
http://naviris.ru/
08 июня 2015 19:23
Да, декали - это общеупотребляемый термин. Насчет рейкастинга - в 15.06 мы как раз добавили функцию, позволяющую "стрелять" лучом только один раз и получать позицию соударения. Так что с этой частью проблем не будет. А вот каким образом автор сделал огибание декалью геометрии объекта - это уже интересный вопрос. Полагаю, была использована карта глубины, а может быть и анализируется геометрия.
Вообще, при желании такое можно сделать и с нашим текущим API, используя функцию extract_vertex_array. Но это не самый простой путь с математической точки зрения.
Так что, возможно, зашьем такой функционал внутрь движка.
13 августа 2015 21:42
По поводу декалей. Взял код из вашего примера, но координаты от сенсора столкновений приходят с погрешностями (то над стеной, то внутри стены). Можно увидеть, если стрельнуть в стену в этом приложении
Вижу один выход: протянуть raycast и выяснить точку пересечения с колизией, получить нормаль. Может чего ещё посоветуете

UPD: Использую raycast
А вот каким образом автор сделал огибание декалью геометрии объекта - это уже интересный вопрос. Полагаю, была использована карта глубины, а может быть и анализируется геометрия.
Вот тут можно посмотреть живой пример.
Не стой, где попало… Попадет еще раз.
http://naviris.ru/
 
Пожалуйста, зарегистрируйтесь или войдите под своей учетной записью , чтобы оставлять сообщения.