reckfellENGINE

Entity2D

Игровой 2D-объект, наследуемый всеми 2D-узлами. Имеет позицию, поворот, масштаб и наклон.

На этой странице
class Entity2DReckfellSharpНаследует CanvasItem

Игровой 2D-объект, наследуемый всеми 2D-узлами. Имеет позицию, поворот, масштаб и наклон.

Игровой 2D-объект с преобразованием (положение, поворот и масштаб). Все 2D-сущности, включая физические объекты и спрайты, наследуются от Entity2D. Используйте Entity2D в качестве родительского сущности для перемещения, масштабирования и поворота дочерних элементов в 2D-проекте. Также дает контроль над порядком рендеринга сущности. Примечание: Поскольку и Entity2D, и Control наследуются от CanvasItem, они разделяют несколько концепций из класса, таких как свойства CanvasItem.ZIndex и CanvasItem.Visible.

Объявления сверены с C# SDK 1.0.0. Раскройте имя, чтобы увидеть сигнатуры и описание.

Конструкторы1

Entity2DКонструктор
# Entity2D
C#
public Entity2D();

Свойства12

GlobalPositionСвойство
# GlobalPosition
C#
public Vector2 GlobalPosition { get; set; }

Положение начала координат в canvas элемента, без преобразования камеры и окна. Присваивание переводит точку через обратное преобразование родительского CanvasItem; при наличии родителя его базис должен быть обратимым.

GlobalRotationСвойство
# GlobalRotation
C#
public float GlobalRotation { get; set; }

Глобальное вращение в радианах. См. также Entity2D.Rotation.

GlobalRotationDegreesСвойство
# GlobalRotationDegrees
C#
public float GlobalRotationDegrees { get; set; }

Вспомогательное свойство для доступа к Entity2D.GlobalRotation в градусах вместо радиан. См. также Entity2D.RotationDegrees.

GlobalScaleСвойство
# GlobalScale
C#
public Vector2 GlobalScale { get; set; }

Глобальный масштаб. См. также Entity2D.Scale.

GlobalSkewСвойство
# GlobalSkew
C#
public float GlobalSkew { get; set; }

Глобальный перекос в радианах. См. также Entity2D.Skew.

GlobalTransformСвойство
# GlobalTransform
C#
public Transform2D GlobalTransform { get; set; }

Аффинное преобразование из локальных координат в canvas с учётом наследуемых CanvasItem-предков. Не включает Camera2D, CanvasLayer и конечное преобразование окна; для этапа canvas используйте GetGlobalTransformWithCanvas.

PositionСвойство
# Position
C#
public Vector2 Position { get; set; }

Положение начала координат в локальной системе родительского CanvasItem. Поворот и масштаб родителя влияют на итоговую GlobalPosition. При TopLevel преобразование родительского CanvasItem не наследуется.

RotationСвойство
# Rotation
C#
public float Rotation { get; set; }

Вращение в радианах относительно родителя сущности. См. также Entity2D.GlobalRotation. Примечание: Это свойство редактируется в инспекторе в градусах. Если вы хотите использовать градусы в скрипте, используйте Entity2D.RotationDegrees.

RotationDegreesСвойство
# RotationDegrees
C#
public float RotationDegrees { get; set; }

Вспомогательное свойство для доступа к Entity2D.Rotation в градусах вместо радиан. См. также Entity2D.GlobalRotationDegrees.

ScaleСвойство
# Scale
C#
public Vector2 Scale { get; set; }

Масштаб сущности относительно родительского сущности. Немасштабированное значение: (1, 1). См. также Entity2D.GlobalScale. Примечание: Отрицательные масштабы X в 2D не разлагаются из матрицы преобразования. Из-за способа представления масштаба с помощью матриц преобразования в Reckfell отрицательные масштабы на оси X будут изменены на отрицательные масштабы на оси Y и поворот на 180 градусов при разложении.

SkewСвойство
# Skew
C#
public float Skew { get; set; }

Если установлено ненулевое значение, наклоняет сущность в одном или другом направлении. Это можно использовать для псевдо-3D эффектов. См. также Entity2D.GlobalSkew. Примечание: Наклон выполняется только по оси X и между вращением и масштабированием. Примечание: Это свойство редактируется в инспекторе в градусах. Если вы хотите использовать градусы в скрипте, используйте skew = deg_to_rad(value_in_degrees).

TransformСвойство
# Transform
C#
public Transform2D Transform { get; set; }

Локальное аффинное преобразование элемента: базис и перенос относительно родительского CanvasItem. Для вычисления цепочки используется порядок parentTransform * childTransform.

Методы33

ApplyScalevoid
# ApplyScale
C#
public void ApplyScale(Vector2 ratio);

Умножает текущий масштаб на вектор ratio.

Параметры
ИмяТипПо умолчанию
ratioVector2—
GetAngleTofloat
# GetAngleTo
C#
public float GetAngleTo(Vector2 point);

Возвращает угол в радианах для мировой точки относительно этой Entity2D. Реализация берёт угол вектора ToLocal(point), покомпонентно умноженного на Scale сущности. Передавайте мировые координаты точки; результат зависит от текущего преобразования. См. также Entity2D.LookAt.

Параметры
ИмяТипПо умолчанию
pointVector2—
Возвращает float
GetGlobalPositionVector2
# GetGlobalPosition
C#
public Vector2 GetGlobalPosition();
Возвращает Vector2
GetGlobalRotationfloat
# GetGlobalRotation
C#
public float GetGlobalRotation();
Возвращает float
GetGlobalRotationDegreesfloat
# GetGlobalRotationDegrees
C#
public float GetGlobalRotationDegrees();
Возвращает float
GetGlobalScaleVector2
# GetGlobalScale
C#
public Vector2 GetGlobalScale();
Возвращает Vector2
GetGlobalSkewfloat
# GetGlobalSkew
C#
public float GetGlobalSkew();
Возвращает float
GetPositionVector2
# GetPosition
C#
public Vector2 GetPosition();
Возвращает Vector2
GetRelativeTransformToParentTransform2D
# GetRelativeTransformToParent
C#
public Transform2D GetRelativeTransformToParent(Entity parent);

Составляет преобразование до указанного предка через цепочку Entity2D; для самого объекта возвращает единичное преобразование. Это не поиск преобразования между произвольными соседями и не учёт canvas/камеры.

Параметры
ИмяТипПо умолчанию
parentEntity—
parent

Сам объект или его предок, достижимый через цепочку Entity2D.

Возвращает Transform2D

Преобразование из локальной системы в систему указанного предка Entity2D.

GetRotationfloat
# GetRotation
C#
public float GetRotation();
Возвращает float
GetRotationDegreesfloat
# GetRotationDegrees
C#
public float GetRotationDegrees();
Возвращает float
GetScaleVector2
# GetScale
C#
public Vector2 GetScale();
Возвращает Vector2
GetSkewfloat
# GetSkew
C#
public float GetSkew();
Возвращает float
GlobalTranslatevoid
# GlobalTranslate
C#
public void GlobalTranslate(Vector2 offset);

Добавляет вектор offset к глобальной позиции сущности.

Параметры
ИмяТипПо умолчанию
offsetVector2—
LookAtvoid
# LookAt
C#
public void LookAt(Vector2 point);

Поворачивает сущность так, чтобы его локальная ось +X указывала на point, которая, как ожидается, будет использовать глобальные координаты. Этот метод представляет собой комбинацию методов Entity2D.Rotate и Entity2D.GetAngleTo. point не должен совпадать с положением сущности, иначе сущность всегда будет смотреть вправо.

Параметры
ИмяТипПо умолчанию
pointVector2—
MoveLocalXvoid
# MoveLocalX
C#
public void MoveLocalX(float delta, bool scaled = false);

Применяет локальное смещение по оси X сущности на основе delta. Если scaled равен false, нормализует движение так, чтобы оно не зависело от Entity2D.Scale сущности.

Параметры
ИмяТипПо умолчанию
deltafloat—
scaledboolfalse
MoveLocalYvoid
# MoveLocalY
C#
public void MoveLocalY(float delta, bool scaled = false);

Применяет локальное смещение по оси Y сущности на основе delta. Если scaled равен false, нормализует движение так, чтобы оно не зависело от Entity2D.Scale сущности.

Параметры
ИмяТипПо умолчанию
deltafloat—
scaledboolfalse
Rotatevoid
# Rotate
C#
public void Rotate(float radians);

Применяет вращение к сущности в радианах, начиная с его текущего положения. Это эквивалентно rotation += radians.

Параметры
ИмяТипПо умолчанию
radiansfloat—
SetGlobalPositionvoid
# SetGlobalPosition
C#
public void SetGlobalPosition(Vector2 position);
Параметры
ИмяТипПо умолчанию
positionVector2—
SetGlobalRotationvoid
# SetGlobalRotation
C#
public void SetGlobalRotation(float radians);
Параметры
ИмяТипПо умолчанию
radiansfloat—
SetGlobalRotationDegreesvoid
# SetGlobalRotationDegrees
C#
public void SetGlobalRotationDegrees(float degrees);
Параметры
ИмяТипПо умолчанию
degreesfloat—
SetGlobalScalevoid
# SetGlobalScale
C#
public void SetGlobalScale(Vector2 scale);
Параметры
ИмяТипПо умолчанию
scaleVector2—
SetGlobalSkewvoid
# SetGlobalSkew
C#
public void SetGlobalSkew(float radians);
Параметры
ИмяТипПо умолчанию
radiansfloat—
SetGlobalTransformvoid
# SetGlobalTransform
C#
public void SetGlobalTransform(Transform2D xform);
Параметры
ИмяТипПо умолчанию
xformTransform2D—
SetPositionvoid
# SetPosition
C#
public void SetPosition(Vector2 position);
Параметры
ИмяТипПо умолчанию
positionVector2—
SetRotationvoid
# SetRotation
C#
public void SetRotation(float radians);
Параметры
ИмяТипПо умолчанию
radiansfloat—
SetRotationDegreesvoid
# SetRotationDegrees
C#
public void SetRotationDegrees(float degrees);
Параметры
ИмяТипПо умолчанию
degreesfloat—
SetScalevoid
# SetScale
C#
public void SetScale(Vector2 scale);
Параметры
ИмяТипПо умолчанию
scaleVector2—
SetSkewvoid
# SetSkew
C#
public void SetSkew(float radians);
Параметры
ИмяТипПо умолчанию
radiansfloat—
SetTransformvoid
# SetTransform
C#
public void SetTransform(Transform2D xform);
Параметры
ИмяТипПо умолчанию
xformTransform2D—
ToGlobalVector2
# ToGlobal
C#
public Vector2 ToGlobal(Vector2 localPoint);

Переводит локальную точку элемента в координаты его canvas через GlobalTransform. Не добавляет преобразование камеры или окна. Передача собственного Position вместо локальной точки обычно повторно применяет смещение.

Параметры
ИмяТипПо умолчанию
localPointVector2—
localPoint

Точка относительно самого Entity2D, не Position относительно родителя.

Возвращает Vector2

Точка в canvas элемента, не позиция экрана.

ToLocalVector2
# ToLocal
C#
public Vector2 ToLocal(Vector2 globalPoint);

Переводит точку из canvas элемента в его локальные координаты обратным аффинным GlobalTransform. Это не преобразование экранной позиции ОС или логической точки viewport с камерой; базис должен быть обратимым.

Параметры
ИмяТипПо умолчанию
globalPointVector2—
globalPoint

Точка в canvas этого элемента без преобразования камеры.

Возвращает Vector2

Точка в локальной системе Entity2D.

Translatevoid
# Translate
C#
public void Translate(Vector2 offset);

Перемещает сущность на заданное значение offset в локальных координатах. Это эквивалентно position += offset.

Параметры
ИмяТипПо умолчанию
offsetVector2—
Документация Reckfell EngineНаверх ↑
БЫСТРЫЙ ПЕРЕХОДНачало работыEntity и иерархияC# & .NET 10Сцены и префабы
Руководства и полный API Reckfell K
reckfellENGINE
RECKFELL ACCOUNT

Вход в аккаунт

Войдите в аккаунт Reckfell.

Один аккаунт для всей платформы Reckfell.