#include <dali/public-api/common/vector-wrapper.h>
#include <dali/public-api/object/weak-handle.h>
#include <dali/public-api/rendering/shader.h>
+#include <limits> ///< for std::numeric_limits
#include <string>
// INTERNAL INCLUDES
struct DALI_SCENE3D_API BlendShapes
{
+ using Index = uint32_t;
+ static constexpr Index INVALID_INDEX = std::numeric_limits<Index>::max();
+
enum class Version
{
VERSION_1_0,
struct BlendShapeData
{
- std::vector<float> weights;
- std::vector<float> unnormalizeFactors;
- Version version{Scene3D::Loader::BlendShapes::Version::INVALID};
- uint32_t bufferOffset{0};
- int32_t components{0x0};
- Dali::WeakHandle<Actor> mActor;
+ std::vector<std::string> names;
+ std::vector<float> weights;
+ std::vector<float> unnormalizeFactors;
+ Version version{Scene3D::Loader::BlendShapes::Version::INVALID};
+ uint32_t bufferOffset{0};
+ int32_t components{0x0};
+ Dali::WeakHandle<Actor> mActor;
};
// shader properties - animatable (uniforms)