【发布时间】:2012-10-06 20:16:02
【问题描述】:
我已经使用 THREE.TextGeometry 在我的场景中添加了一些文本,并且文本似乎卡在我放置的任何 xy 平面中。有什么方法可以让它始终与用户可读的屏幕保持一致?
【问题讨论】:
标签: three.js
我已经使用 THREE.TextGeometry 在我的场景中添加了一些文本,并且文本似乎卡在我放置的任何 xy 平面中。有什么方法可以让它始终与用户可读的屏幕保持一致?
【问题讨论】:
标签: three.js
使文本始终面向屏幕(而不是相机):
mesh.quaternion.copy(camera.quaternion);
请注意,这与object.lookAt(camera); 不同,因为这将导致不同的方向取决于对象在屏幕上的位置。
Object3D.onBeforeRender 可用于更新每一帧的方向。使用Object3D.frustumCulled = false; 禁用截锥体剔除以确保始终触发回调可能很有用。
【讨论】:
mesh.quaternion.copy( camera.quaternion );更可取。
试试
mesh.lookAt( camera.position );
然后网格的局部 z 轴应指向相机。
【讨论】:
render() 函数,请在更改相机位置后将其放入其中。