blob: 5909c7233132bf20a5a78754cf1dfa6a9f8b8a09 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
#ifndef __TEXTURE_UTILS_INC
#define __TEXTURE_UTILS_INC
#include "interpolators.cginc"
float2 get_uv_by_channel(v2f i, uint which_channel) {
[forcecase]
switch (which_channel) {
case 0:
return i.uv01.xy;
break;
case 1:
return i.uv01.zw;
break;
case 2:
return i.uv23.xy;
break;
case 3:
return i.uv23.zw;
break;
default:
return 0;
break;
}
}
#define UV_SCOFF(i, tex_st, which_channel) get_uv_by_channel(i, round(which_channel)) * (tex_st).xy + (tex_st).zw
#endif // __TEXTURE_UTILS_INC
|