- 期望为右侧纹理,结果为左侧黑色
- 代码是在官方的vksession代码的基础上,修复gltf模型加载纹理问题,但是发现部分纹理会显示黑色(部分模型纹理可正常),https://file.ljcdn.com/bim-oss/20220304/1646383982124scene100.gltf;使用该模型(很普通的平面+普通纹理)很容易复现
- 纹理分辨率是要求的2的次幂*2的次幂
- 问题大致是 renderGL(frame){} 函数的问题,即为摄像头纹理绘制到canvas 导致模型纹理丢失
- 其实和gltf无关,和textureloader也无关,纹理其实已经正常加载了,但是renderGL会将该纹理冲掉
已知问题,会尽快修复
真的无语 最简单的模型 贴图纹理都变黑
这个情况我也遇到过,是通过给模型增加一个自发光然后重新导出修复的
我也遇到了这个问题,怀疑是贴图格式导致的,我测了几个模型,显示黑色这个贴图是png格式的,能显示正常那个是jpg
然后我再做阴影效果的时候发现,创建底部平面接受阴影设置就会让颜色正常显示!
下面是用的透明阴影。你可以尝试一下是否能成
var planeGeometry = new THREE.PlaneGeometry(100, 60, 10, 10); var planeMaterial = new THREE.ShadowMaterial(); planeMaterial.opacity = 0.2; var plane = new THREE.Mesh(planeGeometry, planeMaterial); plane.matrixAutoUpdate = false; plane.matrix.fromArray(hitTestRes[0].transform) plane.opacity = 0 scene.add(plane); plane.receiveShadow = true;
ar加阴影的文章如下:有兴趣可以看一下https://blog.csdn.net/weixin_43805502/article/details/123913679