如何设置贴纸在三个JS网格上显示哪一面?

时间:2016-10-18 19:36:21

标签: three.js

我正在尝试使用DecalGeometry将贴图应用于网格对象的外部。但是,贴花出现在网格内部。我在DecalGeometry中尝试了旋转和位置设置,但似乎无法影响贴花出现在网格的哪一侧。 FWIW,网格是一种自定义OBJ模型。我的代码在此处发布有点广泛,但您可以查看问题here。我有红色的BoundingBoxHelpers来帮助可视化放置。

1 个答案:

答案 0 :(得分:0)

material对象有一个参数,允许你指定它将显示的网格的边(感谢@jt发布这个问题Prevent decal from showing on inside of mesh。我的工作代码看起来像这样......

var decalMaterial = new THREE.MeshPhongMaterial( {
    map: decalNormal,
    transparent: true,
    depthTest: true,
    depthWrite: false,
    polygonOffset: true,
    polygonOffsetFactor: - 4,
    side: THREE.DoubleSide
});