白色精灵材质



因此,SpriteMaterial的默认颜色似乎是0xFFFFFF。这似乎意味着精灵没有颜色。如果我将材质的颜色属性更改为0xFF0000,则精灵将显示为红色。

如果我想要白色怎么办?你将如何做到这一点?

如果您想让精灵纹理更亮(更白),可以通过将颜色增加到1.0以上来实现。不能使用十六进制值,而是使用以下内容:

obj.material.color = new THREE.Color( 2, 2, 2 );//or higher

注意,1,1,1是纯白色(灰色是0.5,0.5,0.5),所以你进入了屏幕无法再显示的颜色值,所以它只是被剪切为白色

参考

与photoshop类似,也有不同的方法来混合对象看看这个例子:http://threejs.org/examples/?q=blend#webgl_materials_blending

添加剂混合是光耀斑等的最佳方法。

您可以查看左下角的代码,看看如何将其应用于您的案例。请注意,需要在您的材料上启用透明度,才能使其工作

我不在你的环境中编码,在不知道混合数学和编码的情况下,你很难帮助,但精灵中的不透明度/透明度通常是这样定义的:

  1. 按Alpha通道的颜色

    在这种情况下,颜色的格式为0xAARRGGBB,因此如果放弃最高的8颜色位,则将Alpha设置为零,根据使用的混合方程式,Alpha可以是完全透明或完全实心的材质。在这种情况下,只需添加alpha值。

    有时精灵有单独的图像遮罩,包含Alpha通道或位遮罩。

  2. 按特定像素位置的颜色

    它通常是精灵的一角。因此,如果你的精灵完全充满了单一的颜色,这意味着它是完全透明的。这种透明度编码根本不知道Alpha通道,因此无法将颜色与其他精灵组合。这种精灵只有洞(其中的颜色与特定像素位置相同)。例如,图标使用此选项。

    在这种情况下,识别像素位置,例如,将精灵划分为4个正方形,每个正方形具有不同的颜色。哪个未渲染是用于透明度颜色的角。。。

  3. 按特定颜色

    在这种情况下,使用一种特定的颜色作为透明颜色。通常选择这种颜色,这样调色板中就不会遗漏太多。通常黑色或白色取决于背景或内容。在这种情况下,如果0x00FFFFFF意味着透明,那么你可以尝试使用0x00FEFEFE(这是可用的第二高强度白色/灰色阴影)

因此,确定哪一个是它,并相应地修复你的精灵。

最新更新