// INTERNAL INCLUDES
#include <dali/internal/event/rendering/renderer-impl.h> // Dali::Internal::Renderer
-#include <dali/internal/update/common/animatable-property.h>
-#include <dali/public-api/rendering/visual-renderer.h> // Dali::VisualRenderer
+#include <dali/public-api/rendering/visual-renderer.h> // Dali::VisualRenderer
namespace Dali
{
*/
const PropertyInputImpl* GetSceneObjectInputProperty(Property::Index index) const override;
-private: // implementation
+protected: // implementation
/**
* @brief Constructor.
*
*/
bool GetCurrentPropertyValue(Property::Index index, Property::Value& value) const;
+ /**
+ * @brief Ensure that properties are mapped to uniforms
+ */
+ void AddUniformMappings();
+
protected:
/**
* A reference counted object may only be deleted by calling Unreference()
VisualRenderer(const VisualRenderer&) = delete;
VisualRenderer& operator=(const VisualRenderer&) = delete;
- /**
- * @brief Ensure that properties are mapped to uniforms
- */
- void AddUniformMappings();
-
public:
struct VisualPropertyCache
{
Vector2 mTransformOffset{Vector2::ZERO};
- Vector2 mTransformSize{Vector2::ZERO};
+ Vector2 mTransformSize{Vector2::ONE};
Vector2 mTransformOrigin{Vector2::ZERO};
Vector2 mTransformAnchorPoint{Vector2::ZERO};
Vector4 mTransformOffsetSizeMode{Vector2::ZERO};
float mPreMultipliedAlpha{0.0f};
};
- struct AnimatableVisualProperties
- {
- AnimatableVisualProperties()
- : mTransformOffset(Vector2::ZERO),
- mTransformSize(Vector2::ZERO),
- mTransformOrigin(Vector2::ZERO),
- mTransformAnchorPoint(Vector2::ZERO),
- mTransformOffsetSizeMode(Vector4::ZERO),
- mExtraSize(Vector2::ZERO),
- mMixColor(Vector3::ONE),
- mPreMultipliedAlpha(0.0f)
- {
- }
-
- SceneGraph::AnimatableProperty<Vector2> mTransformOffset;
- SceneGraph::AnimatableProperty<Vector2> mTransformSize;
- SceneGraph::AnimatableProperty<Vector2> mTransformOrigin;
- SceneGraph::AnimatableProperty<Vector2> mTransformAnchorPoint;
- SceneGraph::AnimatableProperty<Vector4> mTransformOffsetSizeMode;
- SceneGraph::AnimatableProperty<Vector2> mExtraSize;
- SceneGraph::AnimatableProperty<Vector3> mMixColor;
- SceneGraph::AnimatableProperty<float> mPreMultipliedAlpha;
-
- void* mExtendedProperties{nullptr}; // Enable derived class to extend properties further
- };
-
private:
VisualPropertyCache mPropertyCache;
};
} // namespace Dali
-#endif // DALI_INTERNAL_RENDERER_H
+#endif // DALI_INTERNAL_VISUAL_RENDERER_H