2015-08-17 2 views
1

У меня возникла проблема создания 2d gui на рендерере. 2-й гий должен располагаться динамически в соответствии с шириной элементов, которая нарисована в три раза (элемент имеет ширину X, используя три блока), меню должно быть расположено на 50 пикселей справа справа от него и т. Д.).2D gui on threejs renderer

Есть ли способ достичь этого? Рисование непосредственно на рендерере с использованием спрайтов или с использованием элементов DOM?

ответ

0

Да, используя элементы DOM, это единственный способ (спрайты используют изображения AFAIK), если вам не нужно перемещать свои элементы в 3D, что потребует рендерера css.

  • Если геометрия вашего объекта еще имеет свойство width затем использовать его

  • В противном случае вычислить рамку, чтобы получить его;

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

+0

@Atranhasis проблема с расстоянием камеры на осях Z изменяя расстояние, чтобы показать полный элемент на экране (он может быть довольно высоким), тем самым меняя элементы «на экране» шириной – mjanisz1

+1

. Конечно;) как насчет этой ссылки http://stackoverflow.com/questions/15331358/three-js-get-object-size-with -respect к камере-и-объектную позицию-на экране – Atrahasis

Смежные вопросы