Time line entry. More...
#include <kanzi/message/message_arguments.hpp>
#include <kanzi/object/metaclass.hpp>
#include <kanzi/property/property_field.hpp>
#include <user/animation/kzu_animation_item_base.h>
#include <system/kzs_types.h>
#include <system/debug/kzs_error.h>
#include "kzu_time_line_entry_properties.h"
Classes | |
class | kanzi::KzuTimelineEntryMessages |
class | kanzi::KzuTimelineEntryMessages::TimelineEntryMessageArguments |
class | kanzi::KzuTimelineEntryMessages::TimelineEntryStartedMessageArguments |
class | kanzi::KzuTimelineEntryMessages::TimelineEntryFinishedMessageArguments |
class | kanzi::KzuTimelineEntryMessages::TimelineEntryProgressedMessageArguments |
class | kanzi::KzuTimelineEntryMessages::TimelineEntryPlayedToEndMessageArguments |
struct | KzuTimeLineEntryPlayback |
Playback structure for timeline entry, KZ_NULL when the entry has been deleted. More... | |
Namespaces | |
kanzi | |
Macros | |
#define | KZU_TIME_LINE_ENTRY_LOOP_INFINITELY |
Sets time line entry to loop repeatedly. More... | |
Enumerations | |
enum | KzuTimeLineEntryPlaybackMode { KZU_TIME_LINE_ENTRY_PLAYBACK_MODE_NORMAL, KZU_TIME_LINE_ENTRY_PLAYBACK_MODE_REVERSE, KZU_TIME_LINE_ENTRY_PLAYBACK_MODE_PINGPONG } |
Playback type of the contained animation clip. More... | |
enum | KzuTimeLineEntryWeightBlendMode { KZU_TIME_LINE_ENTRY_WEIGHT_BLEND_MODE_NONE, KZU_TIME_LINE_ENTRY_WEIGHT_BLEND_MODE_WEIGHTED_AVERAGE_SUM, KZU_TIME_LINE_ENTRY_WEIGHT_BLEND_MODE_ADDITIVE } |
Blend mode for weight. More... | |
Functions | |
KzuTimeLineEntry * | kzuTimeLineEntryCreateAnimationItem (kanzi::Domain *domain, kzFloat start, kanzi::AnimationItemSharedPtr animationItem) |
Creates new time line entry based on given animation item. More... | |
KANZI_API kzsError | kzuTimeLineEntryAcquirePlayback (struct KzuTimeLineEntry *timeLineEntry, struct KzuTimeLineEntryPlayback **out_playBack) |
Acquires playback reference from a time line entry. More... | |
KANZI_API kzsError | kzuTimeLineEntryReleasePlayback (struct KzuTimeLineEntryPlayback *playback) |
Releases a playback reference. More... | |
KANZI_API kzsError | kzuTimeLineEntryDelete (struct KzuTimeLineEntry *timeLineEntry) |
Deallocates memory required for a time line entry. More... | |
KANZI_API void | kzuTimeLineEntrySetDeleteAfterPlayback (struct KzuTimeLineEntry *timeLineEntry, kzBool delete_entry) |
Sets the time line entry to be deleted after its playback has finished. More... | |
KANZI_API kzBool | kzuTimeLineEntryGetDeleteAfterPlayback (const struct KzuTimeLineEntry *timeLineEntry) |
Returns true if time line entry is set to be deleted after its playback has finished. More... | |
KANZI_API void | kzuTimeLineEntrySetActiveLastFrame (struct KzuTimeLineEntry *timeLineEntry, kzBool active) |
Sets if the time line entry was running during the previous frame before the current frame. More... | |
KANZI_API kzBool | kzuTimeLineEntryGetActiveLastFrame (const struct KzuTimeLineEntry *timeLineEntry) |
Returns true if time line entry was active on frame before this frame. More... | |
KANZI_API struct KzuAnimationClip * | kzuTimeLineEntryGetAnimationClip (const struct KzuTimeLineEntry *entry) |
Gets animation clip from time line entry. More... | |
KANZI_API struct KzuAnimationItem * | kzuTimeLineEntryGetAnimationItem (const struct KzuTimeLineEntry *entry) |
Gets the animation item from a time line entry. More... | |
KANZI_API kzsError | kzuTimeLineEntryGetAnimations (struct KzuTimeLineEntry *timeLineEntry, struct KzcDynamicArray **out_animations) |
Gets a list of animations that the time line entry references into, extracted from clips and animations, sequence not supported. More... | |
KANZI_API kzsError | kzuTimeLineEntryUpdate (struct KzuAnimationPlayer *player, struct KzuTimeLineEntry *timeLineEntry, kzFloat time) |
Updates a time line entry. More... | |
KANZI_API kzsError | kzuTimeLineEntryFinish (struct KzuTimeLineEntry *timeLineEntry, struct KzuAnimationPlayer *player) |
Finishes a time line entry, i.e. More... | |
KANZI_API kzBool | kzuTimeLineEntryIsFinished (const struct KzuTimeLineEntry *timeLineEntry) |
Returns if given entry is finished. More... | |
KANZI_API void | kzuTimeLineEntrySetRestoreOriginalValues (struct KzuTimeLineEntry *timeLineEntry, kzBool restoreOriginalValues) |
Sets restoring for original values for time line entry. More... | |
KANZI_API kzBool | kzuTimeLineEntryIsRestoreOriginalValues (const struct KzuTimeLineEntry *timeLineEntry) |
Returns if the time line entry will restore original values after playback. More... | |
KANZI_API void | kzuTimeLineEntrySetPlaybackMode (struct KzuTimeLineEntry *timeLineEntry, enum KzuTimeLineEntryPlaybackMode type) |
Sets the playback mode. More... | |
KANZI_API enum KzuTimeLineEntryPlaybackMode | kzuTimeLineEntryGetPlaybackMode (const struct KzuTimeLineEntry *timeLineEntry) |
Returns the playback mode of a time line entry. More... | |
KANZI_API void | kzuTimeLineEntrySetInputType (KzuTimeLineEntry *timeLineEntry, const KzuPropertyType *inputPropertyType, kanzi::ResourceSharedPtr inputObject, kzString inputObjectRelativePath, kanzi::PropertyField inputTargetAttribute) |
Sets the input type for a time line entry. More... | |
KANZI_API void | kzuTimeLineEntryGetInputType (const struct KzuTimeLineEntry *timeLineEntry, const KzuPropertyType **out_inputPropertyType, void **out_inputObject, kzMutableString *out_inputObjectPath, kanzi::PropertyField *out_inputTargetAttribute) |
Gets the input type of a time line entry. More... | |
KANZI_API const KzuPropertyType * | kzuTimeLineEntryGetInputPropertyType (const struct KzuTimeLineEntry *timeLineEntry) |
Gets input property type from entry. More... | |
KANZI_API void * | kzuTimeLineEntryGetInputObject (const struct KzuTimeLineEntry *timeLineEntry) |
Returns the input object from a time line entry or KZ_NULL if none. More... | |
KANZI_API void | kzuTimeLineEntrySetRepeatCount (struct KzuTimeLineEntry *timeLineEntry, kzInt repeatCount) |
Sets the repeat count for a time line entry. More... | |
KANZI_API kzInt | kzuTimeLineEntryGetRepeatCount (const struct KzuTimeLineEntry *timeLineEntry) |
Returns the repeat count of a time line entry. More... | |
KANZI_API kzInt | kzuTimeLineEntryGetCurrentRepeatIndex (const struct KzuTimeLineEntry *timeLineEntry, kzFloat time) |
Gets the current repeat index at given time from a time line entry. More... | |
KANZI_API void | kzuTimeLineEntrySetStartingTime (struct KzuTimeLineEntry *timeLineEntry, kzFloat time) |
Sets a new starting time for a time line entry and moves the ending time accordingly. More... | |
KANZI_API kzFloat | kzuTimeLineEntryGetStartingTime (const struct KzuTimeLineEntry *timeLineEntry) |
Gets the starting time of a time line entry. More... | |
KANZI_API void | kzuTimeLineEntrySetDurationScale (struct KzuTimeLineEntry *timeLineEntry, kzFloat durationModifier) |
Sets a duration modifier. More... | |
KANZI_API kzFloat | kzuTimeLineEntryGetDuration (const struct KzuTimeLineEntry *timeLineEntry) |
Gets the duration of one repeat of the time line entry. More... | |
KANZI_API kzFloat | kzuTimeLineEntryGetEndingTime (const struct KzuTimeLineEntry *timeLineEntry) |
Gets the end time of a time line entry. More... | |
KANZI_API kzBool | kzuTimeLineEntryIsActiveAtTime (const struct KzuTimeLineEntry *timeLineEntry, kzFloat time) |
Returns whether or not the time line entry is active at the given time. More... | |
KANZI_API kzBool | kzuTimeLineEntryIsPlayedToEnd (const struct KzuTimeLineEntry *timeLineEntry) |
KANZI_API kzsError | kzuTimeLineEntrySetWeight (const struct KzuTimeLineEntry *timeLineEntry, kzFloat weight) |
Sets the relative weight for a time line entry. More... | |
KANZI_API kzFloat | kzuTimeLineEntryGetWeight (const struct KzuTimeLineEntry *timeLineEntry) |
Gets the relative weight of a time line entry. More... | |
KANZI_API void | kzuTimeLineEntrySetWeightBlendMode (struct KzuTimeLineEntry *timeLineEntry, enum KzuTimeLineEntryWeightBlendMode weightBlendMode) |
Sets the weight blend mode for a time line entry. More... | |
KANZI_API enum KzuTimeLineEntryWeightBlendMode | kzuTimeLineEntryGetWeightBlendMode (const struct KzuTimeLineEntry *timeLineEntry) |
Gets the weight blend mode of a time line entry. More... | |
KANZI_API void | kzuTimeLineEntrySetMessageDispatchingEnabled (struct KzuTimeLineEntry *entry, kzBool enabled) |
Sets message dispatching enabled for entry, by default enabled. More... | |
KANZI_API void | kzuTimeLineEntrySetContextObject (KzuTimeLineEntry *timeLineEntry, const void *contextObject) |
Sets the context object for a time line entry, can be a material, a render pass or anything that can be animated. More... | |
KANZI_API void | kzuTimeLineEntrySetContextObject (KzuTimeLineEntry *timeLineEntry, kanzi::ResourceSharedPtr contextObject) |
KANZI_API const void * | kzuTimeLineEntryGetContextObject (const struct KzuTimeLineEntry *timeLineEntry) |
Gets the context object of a time line entry. More... | |
KANZI_API kzsError | kzuTimeLineEntrySetContextObjectPath (struct KzuTimeLineEntry *timeLineEntry, kzString targetObjectPath) |
Sets the context object path for a time line entry. More... | |
KANZI_API kzString | kzuTimeLineEntryGetContextObjectPath (const struct KzuTimeLineEntry *timeLineEntry) |
Gets the context object path of a time line entry. More... | |
KANZI_API kzBool | kzuTimeLineEntryIsContextObjectResource (const struct KzuTimeLineEntry *timeLineEntry) |
KANZI_API kzsError | kzuTimeLineEntrySetTargetObjectPath (struct KzuTimeLineEntry *timeLineEntry, const struct KzuAnimation *animation, kzString path) |
Sets the target object path for an animation in the time line entry. More... | |
KANZI_API kzString | kzuTimeLineEntryGetTargetObjectPath (const struct KzuTimeLineEntry *timeLineEntry, const struct KzuAnimation *animation) |
Gets the target object path for an animation in the time line entry. More... | |
KANZI_API void | kzuTimeLineEntrySetForceUpdate (struct KzuTimeLineEntry *entry, kzBool forceUpdate) |
Forces the entry to be updated. More... | |
Time line entry.
Describes how animation clips or sequences are used on their parent time line. Allows multiple playback modes and adjusting the playback rates.
::KzuTimelineEntryMessages::TimelineEntryStartedMessage.get() message is sent when the time line entry starts playback. The message has the following three arguments. ::KzuTimelineEntryMessages::AnimationItemProperty.get() pointer argument is the KzuAnimationItem passed to kzuTimeLineEntryCreateAnimationItem(). ::KzuTimelineEntryMessages::TimelineEntryProperty.get() pointer argument is the KzuTimeLineEntry itself. ::KzuTimelineEntryMessages::TimelineEntryPlaybackProperty.get() pointer argument is a pointer to a KzuTimeLineEntryPlayback structure, it is used internally by Kanzi.
::KzuTimelineEntryMessages::TimelineEntryProgressedMessage.get() message is sent periodically when the time line entry is still playing. It has the following four arguments. ::KzuTimelineEntryMessages::AnimationItemProperty.get() pointer argument is the KzuAnimationItem passed to kzuTimeLineEntryCreateAnimationItem(). ::KzuTimelineEntryMessages::TimelineEntryProperty.get() pointer argument is the KzuTimeLineEntry itself. ::KzuTimelineEntryMessages::TimelineEntryPlaybackProperty.get() pointer argument is a pointer to a KzuTimeLineEntryPlayback structure, it is used internally by Kanzi. ::KzuTimelineEntryMessages::AnimationItemTimeProperty.get() float argument is the time how long the time line entry has been playing.
::KzuTimelineEntryMessages::TimelineEntryPlayedToEndMessage.get() message is sent every time the time line entry has played to the end. If the entry repeats several times, the message is sent after each repetition. It is not sent if the animation item is a time line sequence. The message has the following two arguments. ::KzuTimelineEntryMessages::AnimationItemProperty.get() pointer argument is the KzuAnimationItem passed to kzuTimeLineEntryCreateAnimationItem(). ::KzuTimelineEntryMessages::TimelineEntryProperty.get() pointer argument is the KzuTimeLineEntry itself.
::KzuTimelineEntryMessages::TimelineEntryFinishedMessage.get() message is sent when the time line entry has finished all its repetitions and will be deleted. The message has the following three arguments. ::KzuTimelineEntryMessages::AnimationItemProperty.get() pointer argument is the KzuAnimationItem passed to kzuTimeLineEntryCreateAnimationItem(). ::KzuTimelineEntryMessages::TimelineEntryProperty.get() pointer argument is the KzuTimeLineEntry itself. ::KzuTimelineEntryMessages::TimelineEntryPlaybackProperty.get() pointer argument is a pointer to a KzuTimeLineEntryPlayback structure, it is used internally by Kanzi.
::KzuTimelineEntryMessages::TimelineEntryWeightProperty.get() float property specifies the time line entry's relative weight when the weight blend mode is KZU_TIME_LINE_ENTRY_WEIGHT_BLEND_MODE_WEIGHTED_AVERAGE_SUM. It can be read and written with kzuTimeLineEntryGetWeight() and kzuTimeLineEntrySetWeight().
Copyright 2008-2020 by Rightware. All rights reserved.
#define KZU_TIME_LINE_ENTRY_LOOP_INFINITELY |
Sets time line entry to loop repeatedly.
Playback type of the contained animation clip.
KzuTimeLineEntry* kzuTimeLineEntryCreateAnimationItem | ( | kanzi::Domain * | domain, |
kzFloat | start, | ||
kanzi::AnimationItemSharedPtr | animationItem | ||
) |
Creates new time line entry based on given animation item.
KANZI_API kzsError kzuTimeLineEntryAcquirePlayback | ( | struct KzuTimeLineEntry * | timeLineEntry, |
struct KzuTimeLineEntryPlayback ** | out_playBack | ||
) |
Acquires playback reference from a time line entry.
Throws an error if entry is already associated with a playback.
KANZI_API kzsError kzuTimeLineEntryReleasePlayback | ( | struct KzuTimeLineEntryPlayback * | playback | ) |
Releases a playback reference.
KANZI_API kzsError kzuTimeLineEntryDelete | ( | struct KzuTimeLineEntry * | timeLineEntry | ) |
Deallocates memory required for a time line entry.
KANZI_API void kzuTimeLineEntrySetDeleteAfterPlayback | ( | struct KzuTimeLineEntry * | timeLineEntry, |
kzBool | delete_entry | ||
) |
Sets the time line entry to be deleted after its playback has finished.
False by default.
KANZI_API kzBool kzuTimeLineEntryGetDeleteAfterPlayback | ( | const struct KzuTimeLineEntry * | timeLineEntry | ) |
Returns true if time line entry is set to be deleted after its playback has finished.
KANZI_API void kzuTimeLineEntrySetActiveLastFrame | ( | struct KzuTimeLineEntry * | timeLineEntry, |
kzBool | active | ||
) |
Sets if the time line entry was running during the previous frame before the current frame.
Used internally by Kanzi.
KANZI_API kzBool kzuTimeLineEntryGetActiveLastFrame | ( | const struct KzuTimeLineEntry * | timeLineEntry | ) |
Returns true if time line entry was active on frame before this frame.
KANZI_API struct KzuAnimationClip* kzuTimeLineEntryGetAnimationClip | ( | const struct KzuTimeLineEntry * | entry | ) |
Gets animation clip from time line entry.
KANZI_API struct KzuAnimationItem* kzuTimeLineEntryGetAnimationItem | ( | const struct KzuTimeLineEntry * | entry | ) |
Gets the animation item from a time line entry.
KANZI_API kzsError kzuTimeLineEntryGetAnimations | ( | struct KzuTimeLineEntry * | timeLineEntry, |
struct KzcDynamicArray ** | out_animations | ||
) |
Gets a list of animations that the time line entry references into, extracted from clips and animations, sequence not supported.
timeLineEntry | The time line entry containing the animations. |
out_animations | A pointer that is set to point to a KzcDynamicArray of KzuAnimation objects. Do not modify this list. |
KANZI_API kzsError kzuTimeLineEntryUpdate | ( | struct KzuAnimationPlayer * | player, |
struct KzuTimeLineEntry * | timeLineEntry, | ||
kzFloat | time | ||
) |
Updates a time line entry.
This function is normally called from kzuAnimationPlayerUpdate().
player | The animation player. |
timeLineEntry | The entry to update. |
time | Time in seconds, relative to the entry's starting time (time 0.0 is the beginning of the entry). |
KANZI_API kzsError kzuTimeLineEntryFinish | ( | struct KzuTimeLineEntry * | timeLineEntry, |
struct KzuAnimationPlayer * | player | ||
) |
Finishes a time line entry, i.e.
marks it for deletion it and sends the ::KzuTimelineEntryMessages::TimelineEntryFinishedMessage.get() message, restores original values if necessary.
KANZI_API kzBool kzuTimeLineEntryIsFinished | ( | const struct KzuTimeLineEntry * | timeLineEntry | ) |
Returns if given entry is finished.
KANZI_API void kzuTimeLineEntrySetRestoreOriginalValues | ( | struct KzuTimeLineEntry * | timeLineEntry, |
kzBool | restoreOriginalValues | ||
) |
Sets restoring for original values for time line entry.
Restoring values means removing the effect of animations belonging to the time line entry when the entry is finished. The default value is KZ_FALSE.
KANZI_API kzBool kzuTimeLineEntryIsRestoreOriginalValues | ( | const struct KzuTimeLineEntry * | timeLineEntry | ) |
Returns if the time line entry will restore original values after playback.
KANZI_API void kzuTimeLineEntrySetPlaybackMode | ( | struct KzuTimeLineEntry * | timeLineEntry, |
enum KzuTimeLineEntryPlaybackMode | type | ||
) |
Sets the playback mode.
The default is KZU_TIME_LINE_ENTRY_PLAYBACK_MODE_NORMAL.
KANZI_API enum KzuTimeLineEntryPlaybackMode kzuTimeLineEntryGetPlaybackMode | ( | const struct KzuTimeLineEntry * | timeLineEntry | ) |
Returns the playback mode of a time line entry.
timeLineEntry | The time line entry. |
KANZI_API void kzuTimeLineEntrySetInputType | ( | KzuTimeLineEntry * | timeLineEntry, |
const KzuPropertyType * | inputPropertyType, | ||
kanzi::ResourceSharedPtr | inputObject, | ||
kzString | inputObjectRelativePath, | ||
kanzi::PropertyField | inputTargetAttribute | ||
) |
Sets the input type for a time line entry.
Set both inputObject and inputObjectRelativePath to KZ_NULL to use time as input (default).
timeLineEntry | The time line entry. |
inputPropertyType | The type of the property. |
inputObject | The object that hosts the input property or KZ_NULL to use inputObjectRelativePath instead. |
inputObjectRelativePath | A relative path to the object that hosts the input property or KZ_NULL to use inputObject directly. |
inputTargetAttribute | The part of the property to use or ::PropertyFieldWhole to use the whole property. |
KANZI_API void kzuTimeLineEntryGetInputType | ( | const struct KzuTimeLineEntry * | timeLineEntry, |
const KzuPropertyType ** | out_inputPropertyType, | ||
void ** | out_inputObject, | ||
kzMutableString * | out_inputObjectPath, | ||
kanzi::PropertyField * | out_inputTargetAttribute | ||
) |
Gets the input type of a time line entry.
KZ_NULL to not use the output parameter.
out_propertyManager | Property manager used in property driven animation, KZ_NULL if none. |
out_inputPropertyType | Property type used for animation, KZ_NULL for time-based animation. |
out_inputObject | Object used for property targeting, KZ_NULL if none. |
out_inputObjectPath | Path used for property object targeting, KZ_NULL if none. |
out_inputTargetAttribute | Target attribute in property driven animation, ::PropertyFieldWhole for none. |
KANZI_API const KzuPropertyType* kzuTimeLineEntryGetInputPropertyType | ( | const struct KzuTimeLineEntry * | timeLineEntry | ) |
Gets input property type from entry.
KANZI_API void* kzuTimeLineEntryGetInputObject | ( | const struct KzuTimeLineEntry * | timeLineEntry | ) |
Returns the input object from a time line entry or KZ_NULL if none.
KANZI_API void kzuTimeLineEntrySetRepeatCount | ( | struct KzuTimeLineEntry * | timeLineEntry, |
kzInt | repeatCount | ||
) |
Sets the repeat count for a time line entry.
Use the value -1 for an infinite repeat.
KANZI_API kzInt kzuTimeLineEntryGetRepeatCount | ( | const struct KzuTimeLineEntry * | timeLineEntry | ) |
Returns the repeat count of a time line entry.
KANZI_API kzInt kzuTimeLineEntryGetCurrentRepeatIndex | ( | const struct KzuTimeLineEntry * | timeLineEntry, |
kzFloat | time | ||
) |
Gets the current repeat index at given time from a time line entry.
For example, if the repeat count is 2, returns 0 if it's playing the 1st repeat, 1 if the 2nd repeat and so on.
KANZI_API void kzuTimeLineEntrySetStartingTime | ( | struct KzuTimeLineEntry * | timeLineEntry, |
kzFloat | time | ||
) |
Sets a new starting time for a time line entry and moves the ending time accordingly.
The animation duration will not be modified.
timeLineEntry | The time line entry. |
Time | in seconds in animation player time. |
KANZI_API kzFloat kzuTimeLineEntryGetStartingTime | ( | const struct KzuTimeLineEntry * | timeLineEntry | ) |
Gets the starting time of a time line entry.
KANZI_API void kzuTimeLineEntrySetDurationScale | ( | struct KzuTimeLineEntry * | timeLineEntry, |
kzFloat | durationModifier | ||
) |
Sets a duration modifier.
For example, setting this to 2 will result in animation playing half of the normal speed.
KANZI_API kzFloat kzuTimeLineEntryGetDuration | ( | const struct KzuTimeLineEntry * | timeLineEntry | ) |
Gets the duration of one repeat of the time line entry.
KANZI_API kzFloat kzuTimeLineEntryGetEndingTime | ( | const struct KzuTimeLineEntry * | timeLineEntry | ) |
Gets the end time of a time line entry.
This operation is not simple getter it needs to do some calculations. Avoid using very heavily.
timeLineEntry | The time line entry. |
KANZI_API kzBool kzuTimeLineEntryIsActiveAtTime | ( | const struct KzuTimeLineEntry * | timeLineEntry, |
kzFloat | time | ||
) |
Returns whether or not the time line entry is active at the given time.
timeLineEntry | The time line entry. |
time | Time in seconds in animation player time. |
KANZI_API kzBool kzuTimeLineEntryIsPlayedToEnd | ( | const struct KzuTimeLineEntry * | timeLineEntry | ) |
KANZI_API kzsError kzuTimeLineEntrySetWeight | ( | const struct KzuTimeLineEntry * | timeLineEntry, |
kzFloat | weight | ||
) |
Sets the relative weight for a time line entry.
KANZI_API kzFloat kzuTimeLineEntryGetWeight | ( | const struct KzuTimeLineEntry * | timeLineEntry | ) |
Gets the relative weight of a time line entry.
KANZI_API void kzuTimeLineEntrySetWeightBlendMode | ( | struct KzuTimeLineEntry * | timeLineEntry, |
enum KzuTimeLineEntryWeightBlendMode | weightBlendMode | ||
) |
Sets the weight blend mode for a time line entry.
KANZI_API enum KzuTimeLineEntryWeightBlendMode kzuTimeLineEntryGetWeightBlendMode | ( | const struct KzuTimeLineEntry * | timeLineEntry | ) |
Gets the weight blend mode of a time line entry.
KANZI_API void kzuTimeLineEntrySetMessageDispatchingEnabled | ( | struct KzuTimeLineEntry * | entry, |
kzBool | enabled | ||
) |
Sets message dispatching enabled for entry, by default enabled.
Can optimize the performance if no time line messages are listened.
KANZI_API void kzuTimeLineEntrySetContextObject | ( | KzuTimeLineEntry * | timeLineEntry, |
const void * | contextObject | ||
) |
Sets the context object for a time line entry, can be a material, a render pass or anything that can be animated.
For object nodes, kzuTimeLineEntrySetContextObjectPath() should be used instead.
Normally, the context object is the object that receives the ::KZU_MESSAGE_ANIMATION_PLAYER_PLAY_ANIMATION message. When the object path set with kzuTimeLineEntrySetTargetObjectPath() is relative, the context object is the starting point of the relative path.
KANZI_API void kzuTimeLineEntrySetContextObject | ( | KzuTimeLineEntry * | timeLineEntry, |
kanzi::ResourceSharedPtr | contextObject | ||
) |
KANZI_API const void* kzuTimeLineEntryGetContextObject | ( | const struct KzuTimeLineEntry * | timeLineEntry | ) |
Gets the context object of a time line entry.
KANZI_API kzsError kzuTimeLineEntrySetContextObjectPath | ( | struct KzuTimeLineEntry * | timeLineEntry, |
kzString | targetObjectPath | ||
) |
Sets the context object path for a time line entry.
The path should be relative to the animation clip's target object path.
Normally, the context object is the object that receives the ::KZU_MESSAGE_ANIMATION_PLAYER_PLAY_ANIMATION message. When the object path set with kzuTimeLineEntrySetTargetObjectPath() is relative, the context object is the starting point of the relative path.
timeLineEntry | The time line entry. |
targetObjectPath | Object path to the context object. |
KANZI_API kzString kzuTimeLineEntryGetContextObjectPath | ( | const struct KzuTimeLineEntry * | timeLineEntry | ) |
Gets the context object path of a time line entry.
KANZI_API kzBool kzuTimeLineEntryIsContextObjectResource | ( | const struct KzuTimeLineEntry * | timeLineEntry | ) |
KANZI_API kzsError kzuTimeLineEntrySetTargetObjectPath | ( | struct KzuTimeLineEntry * | timeLineEntry, |
const struct KzuAnimation * | animation, | ||
kzString | path | ||
) |
Sets the target object path for an animation in the time line entry.
KANZI_API kzString kzuTimeLineEntryGetTargetObjectPath | ( | const struct KzuTimeLineEntry * | timeLineEntry, |
const struct KzuAnimation * | animation | ||
) |
Gets the target object path for an animation in the time line entry.
KANZI_API void kzuTimeLineEntrySetForceUpdate | ( | struct KzuTimeLineEntry * | entry, |
kzBool | forceUpdate | ||
) |
Forces the entry to be updated.
Disables the behavior of animation player not updating property value if entry < startTime or entry > endTime.