Three.js 在Forge 3D viewer中,覆盖网格对于某些材质颜色是透明的
我正在尝试向我的forge viewer添加自定义几何体,如下所示。除了使用某些颜色外,它通常工作良好 我使用以下代码添加球体网格:Three.js 在Forge 3D viewer中,覆盖网格对于某些材质颜色是透明的,three.js,autodesk-forge,autodesk-viewer,forge,Three.js,Autodesk Forge,Autodesk Viewer,Forge,我正在尝试向我的forge viewer添加自定义几何体,如下所示。除了使用某些颜色外,它通常工作良好 我使用以下代码添加球体网格: 常数几何=新的三个。球面测量法(0.4,32,32) 常量材质=新的三网格基本材质({ 颜色:someColor, 透明:假, }) const sphere=新的三个网格(几何体、材质) viewer.overlays.addScene('sphere-mesh-scene') viewer.overlays.addMesh(球体,“球体网格场景”) 对于s
常数几何=新的三个。球面测量法(0.4,32,32)
常量材质=新的三网格基本材质({
颜色:someColor,
透明:假,
})
const sphere=新的三个网格(几何体、材质)
viewer.overlays.addScene('sphere-mesh-scene')
viewer.overlays.addMesh(球体,“球体网格场景”)
对于someColor
的某些值,球体是透明的,对于其他值,球体不是:
e、 g
#6b6e75
和#54ffff
生成一个透明球体,
虽然
#000000
和#98888
生成一个不透明球体
是否需要设置任何材质属性以避免出现这种情况?还是我需要和锻造厂的物料经理打交道
我使用的是forge viewer 7.14.0版
编辑
对于点云,我也得到了相同的结果-对于具有许多不同颜色的点云,一些点是透明的,并在Forge几何体上获得“发光轮廓”。这是因为默认情况下,混合着色器决定是否应添加透明度(例如,添加到选定节点)通过叠加中的色调颜色 调用
viewer.start/loadModel(svf,options,cb,cb,cb,initOptions)
时,我们可以通过如下方式在initOptions
中打开useIdBufferSelection
来抑制此行为:
见现场演示可以确认是否能够重现该问题,并将与工程部交流想法。
viewer.loadModel(svf,null,null,null,{useIdBufferSelection:true});