44 lines
1.6 KiB
C++
44 lines
1.6 KiB
C++
#pragma once
|
|
|
|
|
|
#include "engine/lumix.h"
|
|
#include "engine/iplugin.h"
|
|
|
|
|
|
namespace Lumix
|
|
{
|
|
|
|
class OutputBlob;
|
|
|
|
namespace Anim
|
|
{
|
|
struct ComponentInstance;
|
|
class ControllerResource;
|
|
}
|
|
|
|
|
|
struct AnimationScene : public IScene
|
|
{
|
|
virtual const OutputBlob& getEventStream() const = 0;
|
|
virtual class Animation* getAnimableAnimation(ComponentHandle cmp) = 0;
|
|
virtual float getAnimableTime(ComponentHandle cmp) = 0;
|
|
virtual void setAnimableTime(ComponentHandle cmp, float time) = 0;
|
|
virtual void updateAnimable(ComponentHandle cmp, float time_delta) = 0;
|
|
virtual Entity getControllerEntity(ComponentHandle cmp) = 0;
|
|
virtual u8* getControllerInput(ComponentHandle cmp) = 0;
|
|
virtual void setControllerInput(ComponentHandle cmp, int input_idx, float value) = 0;
|
|
virtual void setControllerInput(ComponentHandle cmp, int input_idx, bool value) = 0;
|
|
virtual struct Transform getControllerRootMotion(ComponentHandle cmp) = 0;
|
|
virtual class Path getControllerSource(ComponentHandle cmp) = 0;
|
|
virtual Anim::ComponentInstance* getControllerRoot(ComponentHandle cmp) = 0;
|
|
virtual int getControllerInputIndex(ComponentHandle cmp, const char* name) const = 0;
|
|
virtual Entity getSharedControllerParent(ComponentHandle cmp) = 0;
|
|
virtual void setSharedControllerParent(ComponentHandle cmp, Entity parent) = 0;
|
|
virtual void applyControllerSet(ComponentHandle cmp, const char* set_name) = 0;
|
|
virtual void setControllerDefaultSet(ComponentHandle cmp, int set) = 0;
|
|
virtual int getControllerDefaultSet(ComponentHandle cmp) = 0;
|
|
virtual Anim::ControllerResource* getControllerResource(ComponentHandle cmp) = 0;
|
|
};
|
|
|
|
|
|
} // ~ namespace Lumix
|