projects
/
platform
/
core
/
uifw
/
dali-toolkit.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
(Vector) Reset the current frame when stopped
[platform/core/uifw/dali-toolkit.git]
/
dali-toolkit
/
internal
/
visuals
/
npatch
/
npatch-visual.cpp
diff --git
a/dali-toolkit/internal/visuals/npatch/npatch-visual.cpp
b/dali-toolkit/internal/visuals/npatch/npatch-visual.cpp
index
618c466
..
85fc08c
100755
(executable)
--- a/
dali-toolkit/internal/visuals/npatch/npatch-visual.cpp
+++ b/
dali-toolkit/internal/visuals/npatch/npatch-visual.cpp
@@
-57,7
+57,7
@@
const char* VERTEX_SHADER = DALI_COMPOSE_SHADER(
attribute mediump vec2 aPosition;\n
varying mediump vec2 vTexCoord;\n
varying mediump vec2 vMaskTexCoord;\n
attribute mediump vec2 aPosition;\n
varying mediump vec2 vTexCoord;\n
varying mediump vec2 vMaskTexCoord;\n
- uniform
mediump
mat4 uMvpMatrix;\n
+ uniform
highp
mat4 uMvpMatrix;\n
uniform mediump vec3 uSize;\n
uniform mediump vec2 uNinePatchFactorsX[ FACTOR_SIZE_X ];\n
uniform mediump vec2 uNinePatchFactorsY[ FACTOR_SIZE_Y ];\n
uniform mediump vec3 uSize;\n
uniform mediump vec2 uNinePatchFactorsX[ FACTOR_SIZE_X ];\n
uniform mediump vec2 uNinePatchFactorsY[ FACTOR_SIZE_Y ];\n
@@
-98,8
+98,7
@@
const char* VERTEX_SHADER_3X3 = DALI_COMPOSE_SHADER(
attribute mediump vec2 aPosition;\n
varying mediump vec2 vTexCoord;\n
varying mediump vec2 vMaskTexCoord;\n
attribute mediump vec2 aPosition;\n
varying mediump vec2 vTexCoord;\n
varying mediump vec2 vMaskTexCoord;\n
- uniform mediump mat4 uModelMatrix;\n
- uniform mediump mat4 uMvpMatrix;\n
+ uniform highp mat4 uMvpMatrix;\n
uniform mediump vec3 uSize;\n
uniform mediump vec2 uFixed[ 3 ];\n
uniform mediump vec2 uStretchTotal;\n
uniform mediump vec3 uSize;\n
uniform mediump vec2 uFixed[ 3 ];\n
uniform mediump vec2 uStretchTotal;\n
@@
-227,13
+226,13
@@
void AddVertex( Vector< Vector2 >& vertices, unsigned int x, unsigned int y )
vertices.PushBack( Vector2( x, y ) );
}
vertices.PushBack( Vector2( x, y ) );
}
-void RegisterStretchProperties( Renderer& renderer, const char * uniformName, const N
inePatchImage
::StretchRanges& stretchPixels, uint16_t imageExtent)
+void RegisterStretchProperties( Renderer& renderer, const char * uniformName, const N
PatchLoader
::StretchRanges& stretchPixels, uint16_t imageExtent)
{
uint16_t prevEnd = 0;
uint16_t prevFix = 0;
uint16_t prevStretch = 0;
unsigned int i = 1;
{
uint16_t prevEnd = 0;
uint16_t prevFix = 0;
uint16_t prevStretch = 0;
unsigned int i = 1;
- for( N
inePatchImage
::StretchRanges::ConstIterator it = stretchPixels.Begin(); it != stretchPixels.End(); ++it, ++i )
+ for( N
PatchLoader
::StretchRanges::ConstIterator it = stretchPixels.Begin(); it != stretchPixels.End(); ++it, ++i )
{
uint16_t start = it->GetX();
uint16_t end = it->GetY();
{
uint16_t start = it->GetX();
uint16_t end = it->GetY();
@@
-291,7
+290,11
@@
void NPatchVisual::LoadImages()
{
if( NPatchLoader::UNINITIALIZED_ID == mId && mImageUrl.IsLocalResource() )
{
{
if( NPatchLoader::UNINITIALIZED_ID == mId && mImageUrl.IsLocalResource() )
{
- mId = mLoader.Load( mImageUrl.GetUrl(), mBorder );
+ bool preMultiplyOnLoad = IsPreMultipliedAlphaEnabled() && !mImpl->mCustomShader ? true : false;
+
+ mId = mLoader.Load( mImageUrl.GetUrl(), mBorder, preMultiplyOnLoad );
+
+ EnablePreMultipliedAlpha( preMultiplyOnLoad );
}
if( ! mAuxiliaryPixelBuffer && mAuxiliaryUrl.IsValid() && mAuxiliaryUrl.IsLocalResource() )
}
if( ! mAuxiliaryPixelBuffer && mAuxiliaryUrl.IsValid() && mAuxiliaryUrl.IsLocalResource() )
@@
-430,6
+433,7
@@
NPatchVisual::NPatchVisual( VisualFactoryCache& factoryCache )
mBorder(),
mAuxiliaryImageAlpha( 0.0f )
{
mBorder(),
mAuxiliaryImageAlpha( 0.0f )
{
+ EnablePreMultipliedAlpha( mFactoryCache.GetPreMultiplyOnLoad() );
}
NPatchVisual::~NPatchVisual()
}
NPatchVisual::~NPatchVisual()
@@
-473,8
+477,8
@@
Shader NPatchVisual::CreateShader()
const NPatchLoader::Data* data;
// 0 is either no data (load failed?) or no stretch regions on image
// for both cases we use the default shader
const NPatchLoader::Data* data;
// 0 is either no data (load failed?) or no stretch regions on image
// for both cases we use the default shader
- N
inePatchImage
::StretchRanges::SizeType xStretchCount = 0;
- N
inePatchImage
::StretchRanges::SizeType yStretchCount = 0;
+ N
PatchLoader
::StretchRanges::SizeType xStretchCount = 0;
+ N
PatchLoader
::StretchRanges::SizeType yStretchCount = 0;
auto fragmentShader = mAuxiliaryPixelBuffer ? FRAGMENT_MASK_SHADER
: FRAGMENT_SHADER;
auto fragmentShader = mAuxiliaryPixelBuffer ? FRAGMENT_MASK_SHADER
: FRAGMENT_SHADER;