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修改它并移除光点然后重新导出它。
我正在使用 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修改它并移除光点然后重新导出它。