3D 模型上的 Threebox CastShadow

Threebox CastShadow on 3D Model

我正在使用 threebox js 做一个项目,并试图获取导入的 3D 模型的阴影。按照文档 https://github.com/jscastro76/threebox/blob/master/docs/Threebox.md#threebox-methods 创建对象时,我将 属性 更改为 TRUE(下面的代码)。

window.tb.loadObj(proptions, function (model) {
    model.setCoords(place);
    model.addTooltip("A radar in the middle of nowhere", true);
    model.setRotation({ x: 0, y: 0, z: Math.floor(Math.random() * 100) })
    model.castShadow = true;
    window.tb.add(model);

});

这是我这样做时得到的:

已解决

正如@jscastro 回应的那样,我使用的是带灯的 3d 模型。那盏灯弄乱了我的场景灯。查看@jscastro 回复以获取更多详细信息。

您在使用 sketchfab 的公交车站台模型时遇到的问题是,它在地面以下嵌入了自己的照明,这打破了 threebox 场景中的阴影。

这就是在 threebox 中加载模型时产生阴影问题的原因。 我已将所有模型加载到 threebox 中,没有任何问题,并显示了工具提示,包括公交车站。

如果你确定要使用那个公交站台模型,你需要用Threejs editor修改它并移除光点然后重新导出它。