This page has been translated automatically.
Видеоуроки
Интерфейс
Основы
Продвинутый уровень
Подсказки и советы
Основы
Программирование на C#
Рендеринг
Профессиональный уровень (SIM)
Принципы работы
Свойства (properties)
Компонентная Система
Рендер
Физика
Редактор UnigineEditor
Обзор интерфейса
Работа с ассетами
Контроль версий
Настройки и предпочтения
Работа с проектами
Настройка параметров ноды
Setting Up Materials
Настройка свойств
Освещение
Sandworm
Использование инструментов редактора для конкретных задач
Расширение функционала редактора
Встроенные объекты
Ноды (Nodes)
Объекты (Objects)
Эффекты
Декали
Источники света
Geodetics
World-ноды
Звуковые объекты
Объекты поиска пути
Player-ноды
Программирование
Основы
Настройка среды разработки
Примеры использования
C++
C#
UnigineScript
UUSL (Unified UNIGINE Shader Language)
Плагины
Форматы файлов
Материалы и шейдеры
Rebuilding the Engine Tools
Интерфейс пользователя (GUI)
VR Development
Двойная точность координат
API
Containers
Common Functionality
Controls-Related Classes
Engine-Related Classes
Filesystem Functionality
GUI-Related Classes
Math Functionality
Node-Related Classes
Objects-Related Classes
Networking Functionality
Pathfinding-Related Classes
Physics-Related Classes
Plugins-Related Classes
IG Plugin
CIGIConnector Plugin
Rendering-Related Classes
VR-Related Classes
Работа с контентом
Оптимизация контента
Материалы
Визуальный редактор материалов
Сэмплы материалов
Material Nodes Library
Miscellaneous
Input
Math
Matrix
Textures
Art Samples
Учебные материалы
Внимание! Эта версия документация УСТАРЕЛА, поскольку относится к более ранней версии SDK! Пожалуйста, переключитесь на самую актуальную документацию для последней версии SDK.
Внимание! Эта версия документации описывает устаревшую версию SDK, которая больше не поддерживается! Пожалуйста, обновитесь до последней версии SDK.

Unigine::AnimationCurveScalar Class

Warning
The functionality described here is EXPERIMENTAL and is not recommended for production use. Future releases may bring significant changes to API and features. Backward compatibility of the final production-ready version is not guaranteed.
Header: #include <UnigineAnimation.h>
Inherits from: AnimationCurve

This class represents an interface enabling you to create and manage animation curves containing scalar values.

AnimationCurveScalar Class

Members

Math::Scalar getDefaultKeyValue() const#

Returns the current default value of all keys in the curve.

Return value

Current default value of all keys in the curve.

getNumKeys() const#

Returns the current total number of key points in the curve.

Return value

Current total number of key points in the curve.

getMinTime() const#

Returns the current point of the whole animation timeline where this curve starts being applied, in units.

Return value

Current point of the whole animation timeline where this curve starts being applied, in units.

getMaxTime() const#

Returns the current point of the whole animation timeline up to which this curve is applied, in units.

Return value

Current point of the whole animation timeline up to which this curve is applied, in units.

AnimationCurveScalar ( ) #

Constructor. Creates a new animation curve instance containing scalar values.

void copy ( const Ptr<AnimationCurveScalar> & curve ) #

Copies all data (key points and tangents) from the specified source curve.

Arguments

  • const Ptr<AnimationCurveScalar> & curve - Source curve.

int addKey ( float time, Math::Scalar value ) #

Adds a new key point with the specified value at the specified point of the timeline to the curve.

Arguments

  • float time - Time of the key on the timeline, in seconds.
  • Math::Scalar value - The scalar value of the key.

Return value

Index of the added key point.

int addKey ( float time, Math::Scalar value, AnimationCurve::KEY_TYPE type ) #

Adds a new key point with the specified value and type at the specified point of the timeline to the curve.

Arguments

  • float time - Time of the key on the timeline, in seconds.
  • Math::Scalar value - The scalar value of the key.
  • AnimationCurve::KEY_TYPE type - Interpolation type set for the key, one of the KEY_TYPE_* values.

Return value

Index of the added key point.

int addKey ( float time, Math::Scalar value, AnimationCurve::KEY_TYPE type, const Math::vec2 & left_tangent, const Math::vec2 & right_tangent ) #

Adds a new key point with the specified value, type and tangents at the specified point of the timeline to the curve.

Arguments

  • float time - Time of the key on the timeline, in seconds.
  • Math::Scalar value - The scalar value of the key.
  • AnimationCurve::KEY_TYPE type - Interpolation type set for the key, one of the KEY_TYPE_* values.
  • const Math::vec2 & left_tangent - Coordinates of the left tangent at the key point.
  • const Math::vec2 & right_tangent - Coordinates of the right tangent at the key point.

Return value

Index of the added key point.

void removeKey ( int index ) #

Removes the key point with the specified index from the curve.

Arguments

int moveKey ( int index, float new_time ) #

Moves the key point with the specified number to a new time position (preserving the tangents). The index of key point will be updated automatically. This method can be used to implement dragging of keys on the curve.

Arguments

  • int index - Key point number, in the range from 0 to the total number of key points in the curve.
  • float new_time - Time of the key on the timeline, in seconds.

Return value

New index of the key.

void setKeyType ( int index, AnimationCurve::KEY_TYPE type ) #

Sets the interpolation type for the specified key on the curve.

Arguments

AnimationCurve::KEY_TYPE getKeyType ( int index ) const#

Returns the interpolation type of the specified key on the curve.

Arguments

Return value

Interpolation type set for the key, one of the KEY_TYPE_* values.

float getKeyTime ( int index ) const#

Returns the current time of the key point with the specified index.

Arguments

Return value

The time of the specified key point on the timeline, in seconds.

void setKeyValue ( int index, Math::Scalar value ) #

Sets the value for the specified key on the curve.

Arguments

  • int index - Key point number, in the range from 0 to the total number of key points in the curve.
  • Math::Scalar value - The scalar value of the key.

Math::Scalar getKeyValue ( int index ) const#

Returns the current value for the specified key on the curve.

Arguments

Return value

The scalar value of the key.

void setKeyLeftTangent ( int index, const Math::vec2 & left_tangent ) #

Sets new coordinates for the left tangent at the specified key point of the curve.

Arguments

  • int index - Key point number, in the range from 0 to the total number of key points in the curve.
  • const Math::vec2 & left_tangent - Coordinates of the left tangent at the specified key point to be set.

Math::vec2 getKeyLeftTangent ( int index ) const#

Returns the current coordinates for the left tangent at the specified key point of the curve.

Arguments

Return value

Coordinates of the left tangent at the specified key point to be set.

void setKeyRightTangent ( int index, const Math::vec2 & right_tangent ) #

Sets new coordinates for the right tangent at the specified key point of the curve.

Arguments

  • int index - Key point number, in the range from 0 to the total number of key points in the curve.
  • const Math::vec2 & right_tangent - Coordinates of the right tangent at the specified key point to be set.

Math::vec2 getKeyRightTangent ( int index ) const#

Returns the current coordinates for the right tangent at the specified key point of the curve.

Arguments

Return value

Coordinates of the right tangent at the specified key point to be set.

void setTypeOfAllKeys ( AnimationCurve::KEY_TYPE type ) #

Sets the interpolation type for all keys of the curve.

Arguments

void clear ( ) #

Clears the curve removing all key points and tangents.

Math::Scalar getValueByTime ( float time ) #

Returns the key value at the specified key point of the curve.

Arguments

  • float time - Time of the key on the timeline, in seconds.

Return value

The scalar value of the key.

Math::Scalar getValueByNormalizedTime ( float time ) #

Returns the key value using the normalized time value of the key.

Arguments

  • float time - The normalized time value of the key.

Return value

The scalar value of the key.

void save ( const Ptr<Blob> & blob ) const#

Saves the curve data to a blob.

Arguments

  • const Ptr<Blob> & blob - Blob to which the curve data will be saved.

void load ( const Ptr<Blob> & blob ) #

Loads the curve data from the blob.

Arguments

  • const Ptr<Blob> & blob - Blob storing the curve data.
Last update: 19.12.2023
Build: ()