three.js:sceneLoader&;射线问题

three.js:sceneLoader&;射线问题,three.js,raycasting,Three.js,Raycasting,问题:光线不适用于通过sceneLoader加载的模型 问题说明:我以前用JSONLoader加载模型,但需要导入场景的所有信息,所以我尝试了sceneLoader()。所有加载都很好,但是raycasters intersectObject()函数找不到交点 带JSONLoader的旧版本(cca第350行): 带有sceneLoader的新版本(cca第900行): 首先,我尝试使用IntersectObjects(),然后我只使用IntersectObject()关注一个对象。这没用。通过

问题:光线不适用于通过sceneLoader加载的模型

问题说明:我以前用JSONLoader加载模型,但需要导入场景的所有信息,所以我尝试了sceneLoader()。所有加载都很好,但是raycasters intersectObject()函数找不到交点

带JSONLoader的旧版本(cca第350行): 带有sceneLoader的新版本(cca第900行):

首先,我尝试使用IntersectObjects(),然后我只使用IntersectObject()关注一个对象。这没用。通过这两种方法加载的对象似乎相同,但使用sceneLoader,此方法无法找到任何交集

我错过什么了吗

注:Sry,如果我没有提到什么重要的事情,就告诉我这么做

编辑:经过一些测试后,我发现,“加载场景模型的模型”程序的工作原理就像有一个模型的不可见副本旋转(Math.PI/2,0,0)-重力光线在房间的右侧或左侧与不可见副本相交。。 使用场景加载程序加载的模型:


编辑n.2:它确实是一个旋转的物体,名为“Zdi”-试图旋转它的几何体和其他可能性,但我不能穿过那个假想的门。问题是,可见墙也会旋转:-(

你能明确哪些光线不工作(
directionRay
gravityRay
或两者),这两者的含义是什么?另外,也许你应该看看?抱歉,如果不相关,两条光线都不能与场景加载程序一起工作,因为它们找不到与加载的模型相交(事实上,他们可以-viz编辑)。但我仍然无法确定我的问题是在光线中(不太可能-与JSON加载程序使用相同的函数)还是在场景加载程序中存在错误。问题是相关的,但解决了stg else。哦,还有意思-重力光线投射器在方向(0,-1,0)上投射光线检测脚下的物品,这样我就可以决定何时停止我的模型。光线方向目前并不重要,它只是相机方向的一条光线来决定我在看什么。好的。你确定你的
模型
变量包含好的对象吗?另外,你是否尝试过
递归
选项?递归没有意义在这种情况下(顺便说一句,已经尝试过了)。我加载没有子体的模型。当我使用场景加载程序加载模型时,我尽可能多地切割有问题的部分-我只使用intersectObject(),而不是intersectObjects(),其中传递给此函数的模型在有问题的部分上方填充有名为Zdi的加载对象(表示墙)。此外,使用gravityRay找到的对象(请参见编辑)与名为Zdi的对象(位于我房间的墙壁上)相对应。感谢您的帮助,我非常感谢!