2.1.x 材质为什么不用vec4作为参数

用color作为参数的话,有个弊端是只能取值0到255。
希望引擎提供支持,或者告知一下自定义属性类型的方法。

vec4 应该也是 ok 的,你是怎么写的?



@jjyinkailejj 目前我只找到 vec2, color4, number, 这三个可以正常使用。

版本 2.1.2-beta.1

:6:

明白了。。inspector 确实还没有 vec4 这个支持,有空我们加一下哈

:14:这样,那代码里面用的话应该没有问题。希望这块能尽快完善。从1.x版本跟过来,升级了三次shader的用法。希望这是最后一次,也是最具期待的一次。

感谢反馈,已加入 vec4 支持了,会进入到 2.2 版本

1赞

2.12 还没来,2.2又要来,有点慌

请教2.2什么时候会开始测试?
一直在等待新的shader系统啊

暂时还没,还是完善

不来才慌吧,肯定会越变越好的

请教一下,怎么在材质中配置这些参数:

其实和正常的组件用法是一样的。比如说你在fs中定义了

uniform vec4 color;

如果该参数需要作为材质的参数需要在effect的properties属性中声明:

properties: {
    color: {
        type: vec4,
        value: [0, 0, 0, 0]
    }
}

这样子,color这个参数就会暴露在材质的属性面板上。

感谢大佬的回复。知道这个怎么使用了。这里还有个问题,color4 在属性面板上可以显示,但是我会有个报错。
parse fs failed: Error: expected user defined type, struct or keyword, got color4 at line 13
还有就是,color4怎么取里面的rgba的值?转换成现在使用的vec4【1.0,1.0,0.0,1.0】这样的。

这块内容其实目前没有具体的api以及说明,只有看官方的几个材质依样画葫芦积累一些经验。




由此可知官方目前提供的一些材质参数: float, vec2, color3, color4, sampler2D

感谢大佬解答迷津。:+1::+1::+1::+1: