CG 函数
一、无返回值的函数
1. 基本结构
1 | void name(in 参数类型 参数名, out 参数类型 参数名) |
- void 返回值
- name 函数名称
- in 表示输入参数,表示函数外传入函数的参数,函数内部不会修改,只会使用该参数进行计算,可以有多个
- out 表示输出参数,表示函数内部传递给函数调用者,在函数内部必须对该参数进行初始化或者修改,允许有多个
2. 注意
- in 和 out 都可以省略,省略后就没有相关的限制
- 虽然可以省略,但是在编写 Shader 时不建议省略 因为他们可以明确参数的传递方式,同时提高代码的可维护性
二、有返回值的函数
1. 基本结构
1 | type name(in 参数类型 参数名) |
- type 返回值类型
- name 函数名称
- in 表示输入参数,表示函数外传入函数的参数,函数内部不会修改,只会使用该参数进行计算,可以有多个
2. 注意
- 虽然可以使用 out,但是不推荐,除非是自定义的一些逻辑函数
- 对于顶点/片元着色器只会使用但返回值的方式进行处理