Javascript 3JS渲染器上的2D gui
我在渲染器上创建2d gui时遇到问题。 2d gui必须根据元素宽度动态定位,元素宽度以三个JS绘制(元素宽度为X,使用三个JS单位,菜单必须定位在最右侧50px处等)Javascript 3JS渲染器上的2D gui,javascript,user-interface,three.js,Javascript,User Interface,Three.js,我在渲染器上创建2d gui时遇到问题。 2d gui必须根据元素宽度动态定位,元素宽度以三个JS绘制(元素宽度为X,使用三个JS单位,菜单必须定位在最右侧50px处等) 有没有办法做到这一点?使用精灵或DOM元素直接在渲染器上绘图?是的,使用DOM元素,这是唯一的方法(精灵使用图像AFAIK),除非您需要在3D中移动元素,而3D需要css渲染器 如果对象的几何体仍具有宽度属性,则使用它 否则计算边界框得到它 然后,您只需要找到合适的乘法因子,将该值转换为像素,以适合您的布局是的,使用DOM
有没有办法做到这一点?使用精灵或DOM元素直接在渲染器上绘图?是的,使用DOM元素,这是唯一的方法(精灵使用图像AFAIK),除非您需要在3D中移动元素,而3D需要css渲染器
- 如果对象的几何体仍具有
属性,则使用它宽度
- 否则计算边界框得到它
然后,您只需要找到合适的乘法因子,将该值转换为像素,以适合您的布局是的,使用DOM元素,这是唯一的方法(精灵使用图像AFAIK),除非您需要在3D中移动元素,这需要css渲染器
- 如果对象的几何体仍具有
属性,则使用它宽度
- 否则计算边界框得到它
然后,您只需找到合适的倍增因子,将该值转换为像素,以适合您的布局@Atranhasis问题在于Z轴上的摄影机距离改变了其距离,以在屏幕上显示整个元素(它可能相当高),从而改变了“屏幕上”元素的宽度(当然;)关于链接@Atranhasis,问题在于Z轴上的相机距离改变了它的距离,以在屏幕上显示整个元素(它可能相当高),从而改变了“屏幕上”元素的宽度(当然;)那链接呢