【问题标题】:three.js blend color with mapthree.js 将颜色与地图混合
【发布时间】:2012-12-20 12:18:06
【问题描述】:

我有一个具有地图和颜色的网格。我想将地图中的透明部分设置为颜色。我试过了,但只有地图是渲染的。

var map = THREE.ImageUtils.loadTexture(url);
var material = new THREE.MeshPhongMaterial({
     color: colors[Math.ceil(Math.random() * (colors.length - 1))],
     transparent: true,
     opacity: 1.0,
     map: map,
     blending: THREE.NormalBlending
});
target.mesh = new THREE.Mesh(
     new THREE.CubeGeometry(target.size.x, target.size.y, target.size.z), 
     material);

【问题讨论】:

  • 查看这篇文章。几周前我问过它(在我的另一个帐户上)它对我有用。 stackoverflow.com/questions/13678523
  • @2pha 谢谢。好像挺复杂的……有没有用shader?
  • 您可以复制并粘贴答案中的代码。它基本上改变了 phong 材料的工作方式,并将影响所有 phong 材料。

标签: webgl three.js blending


【解决方案1】:

Ovilia,来自 2pha 的参考可能会满足您的需求。它是不完美的,因为它改变了标准内置三个着色器的行为——如果您需要将标准“phong”行为与修改后的贴花行为混合匹配,那么它可能会导致问题。只有你可以决定!另一种方法是指定一个自定义着色器,但这需要(一点)工作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-10-20
    • 1970-01-01
    • 2018-12-13
    • 2018-12-12
    • 2021-02-18
    • 1970-01-01
    • 2020-11-27
    相关资源
    最近更新 更多