{
UNIFORM vec4 uColor;
- UNIFORM vec2 uObjectFadeStart;//@blah
- UNIFORM vec2 uObjectFadeEnd;//@input
- UNIFORM float uAlphaScale;//@output
+ UNIFORM vec2 uObjectFadeStart;
+ UNIFORM vec2 uObjectFadeEnd;
+ UNIFORM float uAlphaScale; // Global alpha scale
};
// inputs
-INPUT vec2 vModelSpaceCenterToPos;//@version
-INPUT vec2 vScreenSpaceVelocityVector; //@Notjhing
+INPUT vec2 vModelSpaceCenterToPos; // 2d, ignoring z
+INPUT vec2 vScreenSpaceVelocityVector;
INPUT float vSpeed;
INPUT vec2 vTexCoord;
/*
- * Copyright (c) 2023 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2024 Samsung Electronics Co., Ltd.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* - ParticleSystem buffer is being updated every frame
*/
std::string vertexShaderCode = streamAttributesStr + std::string(
-
- "INPUT mediump vec2 aPosition;\n\
+ "//@version 100\n\
+ INPUT mediump vec2 aPosition;\n\
INPUT mediump vec2 aTexCoords;\n\
\n\
- uniform mediump mat4 uMvpMatrix;\n\
- uniform mediump vec3 uSize;\n\
- uniform lowp vec4 uColor;\n\
- \
- OUTPUT mediump vec2 vTexCoord;\n\
+ UNIFORM_BLOCK VertBlock \n\
+ {\n\
+ UNIFORM mediump mat4 uMvpMatrix;\n\
+ UNIFORM mediump vec3 uSize;\n\
+ UNIFORM lowp vec4 uColor;\n\
+ };\n\
+ OUTPUT mediump vec2 vTexCoord;\n\
OUTPUT mediump vec4 vColor;\n\
\n\
void main()\n\
}\n");
std::string fragmentShaderCode =
- {
- "INPUT mediump vec2 vTexCoord;\n\
- INPUT mediump vec4 vColor;\n\
- uniform sampler2D sTexture;\n\
- \n\
- void main()\n\
- {\n\
- lowp vec4 col = TEXTURE(sTexture, vTexCoord) * vColor;\n\
- if(col.a < 0.1) { discard; }\
- fragColor = col;\n\
- }\n"};
+ {"//@version 100\n\
+ INPUT mediump vec2 vTexCoord;\n\
+ INPUT mediump vec4 vColor;\n\
+ UNIFORM sampler2D sTexture;\n\
+ \n\
+ void main()\n\
+ {\n\
+ lowp vec4 col = TEXTURE(sTexture, vTexCoord) * vColor;\n\
+ if(col.a < 0.1) { discard; }\
+ gl_FragColor = col;\n\
+ }\n"};
mShader = Shader::New(Dali::Shader::GetVertexShaderPrefix() + vertexShaderCode, Dali::Shader::GetFragmentShaderPrefix() + fragmentShaderCode);
mGeometry = Geometry::New();