| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475 |
- <!--
- Copyright (C) 2009-2017, Panagiotis Christopoulos Charitos and contributors.
- All rights reserved.
- Code licensed under the BSD License.
- http://www.anki3d.org/LICENSE
- -->
- <shaderProgram>
- <mutators>
- <mutator name="TEXTURE_TYPE" values="0 1"/> <!-- 0: no tex, 1: rgba tex -->
- </mutators>
- <shaders>
- <shader type="vert">
- <source><![CDATA[
- #include "shaders/Common.glsl"
- layout(location = 0) in vec2 in_pos;
- layout(location = 1) in vec2 in_uv;
- layout(location = 2) in vec4 in_col;
- #if TEXTURE_TYPE > 0
- layout(location = 0) out vec2 out_uv;
- #endif
- layout(location = 1) out vec4 out_col;
- out gl_PerVertex
- {
- vec4 gl_Position;
- };
- layout(ANKI_UBO_BINDING(0, 0)) uniform u_
- {
- vec4 u_transform; // x: x scale, y: y scale, z: x transl, w: y transl
- };
- void main()
- {
- #if TEXTURE_TYPE > 0
- out_uv = in_uv;
- #endif
- out_col = in_col;
- vec2 pos = u_transform.xy * in_pos + u_transform.zw;
- gl_Position = vec4(pos, 0.0, 1.0);
- }
- ]]></source>
- </shader>
- <shader type="frag">
- <source><![CDATA[
- #include "shaders/Common.glsl"
- #if TEXTURE_TYPE > 0
- layout(location = 0) in vec2 in_uv;
- #endif
- layout(location = 1) in vec4 in_col;
- layout(location = 0) out vec4 out_col;
- #if TEXTURE_TYPE > 0
- layout(ANKI_TEX_BINDING(0, 0)) uniform sampler2D u_tex;
- #endif
- void main()
- {
- #if TEXTURE_TYPE == 0
- out_col = in_col;
- #elif TEXTURE_TYPE == 1
- out_col = in_col * texture(u_tex, in_uv);
- #endif
- }
- ]]></source>
- </shader>
- </shaders>
- </shaderProgram>
|