2023-09-02 19:56:50 +08:00
|
|
|
|
|
|
|
#define DIRLIGHT TEXCOORD1
|
|
|
|
#define POINTLIGHT TEXCOORD2
|
|
|
|
#define SPOTLIGHT TEXCOORD4
|
|
|
|
#define SPOTLIGHT_NORM TEXCOORD5
|
|
|
|
|
|
|
|
/* follow macro in glslcc too large
|
|
|
|
"TANGENT",
|
|
|
|
"BINORMAL",
|
|
|
|
"BLENDINDICES",
|
|
|
|
"BLENDWEIGHT"
|
|
|
|
*/
|
|
|
|
#undef TANGENT
|
|
|
|
#undef BINORMAL
|
|
|
|
#undef BLENDINDICES
|
|
|
|
#undef BLENDWEIGHT
|
|
|
|
|
|
|
|
#define TANGENT TEXCOORD6
|
|
|
|
#define BINORMAL TEXCOORD7
|
|
|
|
#define BLENDINDICES COLOR1
|
|
|
|
#define BLENDWEIGHT COLOR2
|
2023-12-15 22:29:23 +08:00
|
|
|
|
|
|
|
#if !defined(GLES2)
|
|
|
|
# define vfloat_def(x, y) vec4 x[(y + 3) / 4]
|
|
|
|
# define vfloat_at(x, y) x[y / 4][y % 4]
|
|
|
|
|
|
|
|
# define vvec2_def(x, y) vec4 x[(y * 2 + 3) / 4]
|
|
|
|
# define vvec2_at1(x, y, z) x[(y / 2)][y % 2 * 2 + z]
|
|
|
|
# define vvec2_at(x, y) vec2(vvec2_at1(x, y, 0), vvec2_at1(x, y, 1))
|
|
|
|
|
|
|
|
# define vvec3_def(x, y) vec4 x[(y * 3 + 3) / 4]
|
|
|
|
# define vvec3_at1(x, y, z) x[(y * 3 + z) / 4][((y * 3 + z) % 4)]
|
|
|
|
# define vvec3_at(x, y) vec3(vvec3_at1(x, y, 0), vvec3_at1(x, y, 1), vvec3_at1(x, y, 2))
|
|
|
|
#else
|
|
|
|
# define vfloat_def(x, y) float x[y]
|
|
|
|
# define vfloat_at(x, y) x[y]
|
|
|
|
|
|
|
|
# define vvec2_def(x, y) vec2 x[y]
|
|
|
|
# define vvec2_at1(x, y, z) x[y][z]
|
|
|
|
# define vvec2_at(x, y) x[y]
|
|
|
|
|
|
|
|
# define vvec3_def(x, y) vec3 x[y]
|
|
|
|
# define vvec3_at1(x, y, z) x[y][z]
|
|
|
|
# define vvec3_at(x, y) x[y]
|
|
|
|
#endif
|