2 // Copyright (c) 2014 Samsung Electronics Co., Ltd.
4 // Licensed under the Flora License, Version 1.0 (the License);
5 // you may not use this file except in compliance with the License.
6 // You may obtain a copy of the License at
8 // http://floralicense.org/license/
10 // Unless required by applicable law or agreed to in writing, software
11 // distributed under the License is distributed on an AS IS BASIS,
12 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 // See the License for the specific language governing permissions and
14 // limitations under the License.
18 #include <dali-toolkit/public-api/shader-effects/mask-effect.h>
26 MaskEffect::MaskEffect()
30 MaskEffect::~MaskEffect()
34 MaskEffect MaskEffect::New( Image maskImage )
36 const char* ALPHA_MASK_FRAGMENT_SHADER_SOURCE =
39 " highp vec4 mask = texture2D(sEffect, vTexCoord); \n"
40 " gl_FragColor = texture2D(sTexture, vTexCoord) * uColor * vec4(1,1,1,mask.a); \n"
43 ShaderEffect shader = ShaderEffect::New( "", // Use default
44 ALPHA_MASK_FRAGMENT_SHADER_SOURCE,
45 GeometryType( GEOMETRY_TYPE_IMAGE ),
46 ShaderEffect::GeometryHints( ShaderEffect::HINT_BLENDING ) );
48 shader.SetEffectImage( maskImage );
50 return MaskEffect( shader );
53 //Call the Parent copy constructor to add reference to the implementation for this object
54 MaskEffect::MaskEffect( ShaderEffect handle )
55 : ShaderEffect( handle )
59 } // namespace Toolkit