Three.js中的度量单位是什么?

时间:2018-11-28 18:27:47

标签: three.js

假设我有一个网格。并希望使用以下内容将其放置在3D模式中:

holygrail : {
    rating: pg,
    regal : {times : 1, 3, 5},
    amc : {times : 2, 4, 6}
    }

这些数字是多少?我确定x不是5像素。例如:

mesh.position.set(5, 5, 5);

确实会返回5,但这是棘手的地方。

我正在使用光线投射器,以便使用以下命令了解鼠标在哪个位置(归一化坐标系或像素):

mesh.position.x 

但是我怎么说5等于这个像素数呢?在这方面的任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

使用A B C X Y Z A X 1 1 NA NA A Y 3 NA 3 NA A Z 3 NA NA 3 A Z 2 NA NA 2 时,必须使用归一化的坐标,因此,从Raycaster.setFromCamera()开始,它似乎已经转换为坐标。 3D世界的度量单位无关紧要,射线将计算它是否与您的对象相交。尝试关注this example in the docs

要回答您的原始问题,Three.js和WebGL本身就是“无单元的”。您可以假装以英寸,米为单位,无论您想要的是什么。单位重要的唯一实例是[-1, 1],其中单位是像素和无单位的混合,因为您要处理HTML元素。