const float GRAVITY_Y(-0.09);
}
-#define METABALL_NUMBER 12
+#define METABALL_NUMBER 6
const char*const METABALL_VERTEX_SHADER = DALI_COMPOSE_SHADER (
//Create the shader for the metaballs
Shader shader = Shader::New( METABALL_VERTEX_SHADER, METABALL_FRAG_SHADER );
- Material material = Material::New( shader );
Geometry metaballGeom = CreateGeometry();
-
+ Renderer renderer = Renderer::New( metaballGeom, shader );
+ renderer.SetProperty( Renderer::Property::BLENDING_MODE, BlendingMode::ON );
+ renderer.SetBlendFunc(BlendingFactor::ONE, BlendingFactor::ONE, BlendingFactor::ONE, BlendingFactor::ONE);
//Initialization of each of the metaballs
for( int i = 0; i < METABALL_NUMBER; i++ )
{
mMetaballs[i].position = Vector2(0.0f, 0.0f);
- mMetaballs[i].radius = mMetaballs[i].initRadius = randomNumber(0.025f,0.035f);
+ mMetaballs[i].radius = mMetaballs[i].initRadius = randomNumber(0.05f,0.07f);
mMetaballs[i].actor = Actor::New( );
mMetaballs[i].actor.SetName("Metaball");
mMetaballs[i].actor.SetScale( 1.0f );
mMetaballs[i].actor.SetParentOrigin( ParentOrigin::CENTER );
-
- Renderer renderer = Renderer::New( metaballGeom, material );
- renderer.SetProperty( Renderer::Property::BLENDING_MODE, BlendingMode::ON );
- renderer.SetBlendFunc(BlendingFactor::ONE, BlendingFactor::ONE, BlendingFactor::ONE, BlendingFactor::ONE);
-
mMetaballs[i].actor.AddRenderer( renderer );
mMetaballs[i].positionIndex = mMetaballs[i].actor.RegisterProperty( "uPositionMetaball", mMetaballs[i].position );
//Create new shader
Shader shader = Shader::New( METABALL_VERTEX_SHADER, REFRACTION_FRAG_SHADER );
- //Create new material
- Material material = Material::New( shader );
- //Add Textures
- material.AddTexture(mBackImage, "sTexture");
- material.AddTexture(fbo, "sEffect");
+ //Create new texture set
+ TextureSet textureSet = TextureSet::New();
+ textureSet.SetImage( 0u, mBackImage );
+ textureSet.SetImage( 1u, fbo );
//Create geometry
Geometry metaballGeom = CreateGeometryComposition();
- Renderer mRenderer = Renderer::New( metaballGeom, material );
+ Renderer mRenderer = Renderer::New( metaballGeom, shader );
+ mRenderer.SetTextures( textureSet );
mCompositionActor = Actor::New( );
mCompositionActor.SetParentOrigin(ParentOrigin::CENTER);