目前我正在开发一个带有three.js的FPS。我有一个武器,我想锁定在屏幕的右下角,就像在任何其他FPS(所以它看起来像用户拿着武器)。
我提出了一个基本的概念证明,看起来大致如下:
fpsweapon.position.copy( user.position );
fpsweapon.position.y = user.position.y + 15;
所以基本上我正在复制我的用户模型的位置,然后在每次更新时添加一些偏移量。 这是正确的方法吗?有没有人曾经这样做过?
我觉得这种做法是一种巨大的矫枉过正。
任何人都可以提供一些关于如何优雅地做到这一点的想法或网址吗?
提前致谢。
答案 0 :(得分:3)
不要将fpsweapon添加到场景中,将其添加到用户
user.add (fpsweapon);
然后将其位置设置为(0,15,0)。
这将是相对于其容器(用户)的武器位置,您不再需要更改它。