Merge "Move glyphy shaders into separate files" into devel/master
[platform/core/uifw/dali-toolkit.git] / dali-toolkit / internal / graphics / shaders / glyphy-shader-fragment-prefix.frag
1 struct Material
2 {
3   mediump float mOpacity;
4   mediump float mShininess;
5   lowp    vec4  mAmbient;
6   lowp    vec4  mDiffuse;
7   lowp    vec4  mSpecular;
8   lowp    vec4  mEmissive;
9 };
10
11 uniform sampler2D     sTexture;
12 uniform sampler2D     sOpacityTexture;
13 uniform sampler2D     sNormalMapTexture;
14 uniform sampler2D     sEffect;
15 varying mediump vec2 vTexCoord;
16 uniform Material      uMaterial;
17 uniform lowp  vec4    uColor;
18 varying highp vec4    vVertex;
19 varying highp vec3    vNormal;
20 varying mediump vec4  vColor;
21 uniform vec4 u_atlas_info;
22
23 #define GLYPHY_TEXTURE1D_EXTRA_DECLS , sampler2D _tex, ivec4 _atlas_info, ivec2 _atlas_pos
24 #define GLYPHY_TEXTURE1D_EXTRA_ARGS , _tex, _atlas_info, _atlas_pos
25 #define GLYPHY_DEMO_EXTRA_ARGS , sTexture, uu_atlas_info, gi.atlas_pos
26
27 vec4 glyphy_texture1D_func (int offset GLYPHY_TEXTURE1D_EXTRA_DECLS)
28 {
29   ivec2 item_geom = _atlas_info.zw;
30   vec2 pos = (vec2 (_atlas_pos.xy * item_geom +
31                     ivec2 (mod (float (offset), float (item_geom.x)), offset / item_geom.x)) +
32              + vec2 (.5, .5)) / vec2(_atlas_info.xy);
33   return texture2D (_tex, pos);
34 }