【问题标题】:Changing line colors in Three.js在 Three.js 中更改线条颜色
【发布时间】:2015-04-14 07:28:48
【问题描述】:

在 Three.js 中是否有一种简单直接的方法可以在对象渲染后更改其颜色?更妙的是,您能否在将颜色分配给一堆线条后更改其 RGB 组成,而不是专门遍历每一行或子元素?

我们尝试了几种方法。首先,我们为线段分配颜色,

lineG.vertices.push(new THREE.Vector3(xA,zA,yA))
lineG.vertices.push(new THREE.Vector3(xB,zB,yB))

for (var i = 0; i < 2; i++) lineG.colors.push(colr) 
newLine = new THREE.Line(lineG, lineMat)
lines.add(newLine)

然后随着模拟的进行,我们改变了颜色的组成。

blue_one.setRGB(0.0,0.0+a,0.3+a); colr = blue_one

随着模拟的进行,“a”的值在 0.15、0.3 和 0.45 之间循环。我们发现我们能够在第一次渲染之前改变颜色的组成,但在之后的连续渲染中就不行了。

之后我们尝试将不同的线条集分配给不同的对象(尽管它们属于同一风暴径流模式的一部分),然后更改每个对象的颜色,但那里也没有雪茄。

【问题讨论】:

    标签: object colors three.js line


    【解决方案1】:

    我们尝试了几种方法。 首先,我们为线段分配颜色,

    lineG.vertices.push(new THREE.Vector3(xA,zA,yA))
    lineG.vertices.push(new THREE.Vector3(xB,zB,yB))
    
    for (var i = 0; i < 2; i++) lineG.colors.push(colr) 
    newLine = new THREE.Line(lineG, lineMat)
    lines.add(newLine)
    

    然后我们将颜色的组成更改为 模拟进行了。

    blue_one.setRGB(0.0,0.0+a,0.3+a); colr = blue_one
    

    其中“a”的值在 0.15、0.3 和 0.45 之间循环 随着模拟的进行。我们发现我们能够 在第一个之前更改颜色的组成 渲染,但不是之后的连续渲染。

    之后我们尝试分配不同的行集 到不同的对象(尽管它们是 相同的风暴径流模式),然后改变颜色 每一件物品,但那里也没有雪茄。

    【讨论】:

      猜你喜欢
      • 2017-10-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-07
      • 2016-02-24
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多