【发布时间】:2019-10-19 19:41:14
【问题描述】:
我在 Three.js 中加载在 Sketctup (https://graviditetsberegner.dk/square.skp) 中创建的 dae 模型。我发现当从 Sketchup 到 Three.js 时,dae 模型在不同组件的纹理放置和分层放置方面是最好的。我使用以下代码加载模型,而不对网格进行任何修改:
var modelLoader = new THREE.ColladaLoader();
modelLoader.load("https://www.graviditetsberegner.dk/square.dae", function (dae) {
model = dae.scene.clone();
scene.add(model);
...
模型加载正常,但是当我旋转相机时(有时只是在加载时),它看起来真的很模糊并且出现白线。
我可以设置一个选项或其他东西以使其看起来平滑且没有白线吗?我已经为渲染器尝试了抗锯齿,但效果不佳。
可以在这里找到小提琴:https://jsfiddle.net/35wc6myf/
【问题讨论】:
-
启用抗锯齿并将设备像素比应用于渲染器会使结果更加清晰,请参阅jsfiddle.net/8eLk7b3y/1。线条的错误颜色在
ColladaLoader中看起来像是一个问题。如果将模型转换为glTF是否有效?它实际上是通过网络交付 3D 资产的更好选择,推荐格式为three.js。 -
它在 glTF 中看起来很完美,但是当我尝试使用画布纹理来显示文本时,我遇到了纹理的位置问题。使用 dae 格式,纹理会像我预期的那样对齐,但是使用 glTF,文本纹理会关闭并且是镜像的。但如果推荐使用 glTF,我将继续处理此问题,并可能在此处创建一个新帖子来描述我在使用 glTF 时遇到的问题。
-
是的,我认为修复基于
glTF的工作流比使用Collada更好。 -
我在这里描述了我在使用 glTF 时遇到的问题:stackoverflow.com/questions/56443872/…