This page has been translated automatically.
Видеоуроки
Интерфейс
Основы
Продвинутый уровень
Подсказки и советы
Основы
Программирование на C#
Рендеринг
Профессиональный уровень (SIM)
Принципы работы
Свойства (properties)
Компонентная Система
Рендер
Физика
Редактор UnigineEditor
Обзор интерфейса
Работа с ассетами
Контроль версий
Настройки и предпочтения
Работа с проектами
Настройка параметров ноды
Setting Up Materials
Настройка свойств
Освещение
Sandworm
Использование инструментов редактора для конкретных задач
Расширение функционала редактора
Встроенные объекты
Ноды (Nodes)
Объекты (Objects)
Эффекты
Декали
Источники света
Geodetics
World-ноды
Звуковые объекты
Объекты поиска пути
Программирование
Основы
Настройка среды разработки
Примеры использования
C++
C#
UnigineScript
UUSL (Unified UNIGINE Shader Language)
Плагины
Форматы файлов
Материалы и шейдеры
Rebuilding the Engine Tools
Интерфейс пользователя (GUI)
VR Development
Двойная точность координат
API
Animations-Related Classes
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.

Player Actor

A Player Actor is a player with a rigid physical body, which is approximated with a capsule and has physical properties. Unlike all other players that can move in any direction, the Player Actor can only walk on the ground.Player Actor — это камера с твердым физическим телом, которое аппроксимируется капсулой и обладает физическими свойствами. В отличие от всех других камер, которые могут двигаться в любом направлении, Player Actor может ходить только по земле.

The viewing orientation of a Player Actor in space is defined by 2 angles - theta and phi - and by the up vector that usually coincides with the Z axis:Ориентация просмотраPlayer Actor в пространстве определяется 2 углами — theta и phi — и вектором up, который обычно совпадает с направлением оси Z:

  • When changing the theta angle, the vertical view direction of the Player Actor changes.При изменении угла theta изменяется вертикальное направление обзора Player Actor.
  • When changing the phi angle, the horizontal view direction and the basis of the Player Actor change.При изменении угла phi изменяется горизонтальное направление обзора и базис Player Actor.

Player Actor Approximated with CapsulePlayer Actor, аппроксимированный капсулой

Примечание
As any transformation of a player forces it to recalculate its inner state (position, direction, angles and so on), the up direction of the player's viewport may become "negative forward". And then transformation will be recalculated by using this direction, causing flip of the player's basis. To avoid such flipping, the theta and phi angles should be recalculated by using the current viewing orientation of the player.Поскольку любое преобразование камеры вынуждает ее пересчитывать свое внутреннее состояние (положение, направление, углы и так далее), направление вверх экрана обзора камеры может стать отрицательным значением по оси, направленной вперед. И затем трансформация будет пересчитана с использованием этого направления, переворачивая базис камеры. Чтобы избежать такого переворачивания, углы theta и phi должны быть пересчитаны с использованием текущей ориентации обзора камеры.

If you need a Player Actor to go up and down a staircase smoothly, without getting stuck on each stair, you should carefully adjust the radius of the capsule that approximates the player. Or you can approximate the staircase with a plane: in this case, the capsule can be of any radius.Если вам нужно, чтобы Player Actor плавно поднимался и спускался по лестнице, не застревая на каждой ступеньке, вам следует настроить радиус капсулы, аппроксимирующей игрока. Или вы можете аппроксимировать лестницу плоскостью: в этом случае капсула может быть любого радиуса.

The height of the player's capsule should also be set correctly to avoid getting stuck in a doorway.Высота капсулы игрока также должна быть корректно настроена, чтобы избежать застревания в дверном проеме.

A Player Actor can be used to create a first person view. Also a Player Actor can be used in pair with Player Persecutor to create a 3rd person view (see the corresponding samples in the SDK).Player Actor можно использовать для создания вида от первого лица. Также Player Actor можно использовать в паре с Player Persecutor для создания вида от третьего лица (см. Соответствующие примеры в SDK).

See alsoСмотрите также#

  • The PlayerActor class to manage the Player Actor via APIКласс PlayerActor для управления Player Actor через API
  • A set of samples located in the <UnigineSDK>/data/samples/players/ folder:
    • actor_00
    • actor_01
    Набор сэмплов, расположенных в папке <UnigineSDK>/data/samples/players/:
    • actor_00
    • actor_01

Calculating CollisionsВычисление столкновений#

When a Player Actor is not simulated as a rigid body, a simple Body Dummy with a capsule shape is used to calculate collisions:Когда для Player Actor не применяется твердое тело, для вычисления столкновений используется простой Body Dummy с формой капсулы:

  1. All contacts with the shape are found.Все контакты с формой найдены.
  2. The Player Actor is pushed out of objects it collided with along the contact normal (the global penetration factor is also taken into account here). Effectively, it's a sum of all normal vectors of found contacts.Player Actor выталкивается из объектов, с которыми он столкнулся, вдоль нормали в точке контакта (здесь также учитывается глобальный коэффициент проникновения). По сути, это сумма всех векторов нормалей найденных контактов.
  3. The velocity change is calculated: the initial velocity vector is projected onto each contact normal (the dot product is calculated) and the result is subtracted from the initial velocity.Вычисляется изменение скорости: вектор начальной скорости проецируется на каждую нормаль контакта (вычисляется точечное произведение), и результат вычитается из начальной скорости.

Creating an ActorСоздание Player Actor#

To create a Player Actor camera, do the following:Чтобы создать камеру Player Actor, выполните следующие действия:

  1. On the Menu bar, choose Create -> Camera -> Actor.

    В строке меню выберите Create -> Camera -> Actor.

  2. Place the camera somewhere in the world and specify the required parameters via the Parameters window.Разместите камеру где-нибудь в мире и укажите необходимые параметры через окно Parameters.

Editing a Player ActorРедактирование Player Actor#

In the Player Actor section of the Node tab, you can adjust common camera parameters: bit masks, viewing frustum parameters, and post-process materials, as well as actor-specific physical parameters of the camera described below.В разделе Player Actor вкладки Node вы можете настроить основные параметры камеры: битовые маски, параметры пирамиды видимости и материалы для последующей обработки, а также конкретные параметры камеры, описанные ниже.

Player Actor parametersПараметры Player Actor

Physical parametersФизические параметры#

Physical Toggle on and off the rigid body of the Player Actor. Enabled Physical allows interacting with the environment as a physical object.Включение и выключение твердого тела Player Actor. Включение этого параметра позволяет камере как физическому объекту взаимодействовать с окружающей средой.
Physical Mass The player's physical mass. If g (Earth's gravity) equals to 9.8 m/s^2, and 1 unit equals to 1 meter, the mass is measured in kilograms.Физическая масса камеры. Если g (сила тяжести Земли) равна 9.8 m/s^2, а 1 юнит равен 1 метру, масса измеряется в килограммах.
Physical Mask A bit mask defining the player's interaction with physicals.Битовая маска, определяющая взаимодействие камеры с физическими объектами.
Physics Intersection Mask A bit mask defining the player's physics intersection with other objects. Битовая маска, определяющая пересечение физики игрока с другими объектами.
Collision Toggle on and off the player's ability to collide with other objects.Включение и выключение способности игрока сталкиваться с другими объектами.
Collision Mask A bit mask defining nodes the Player Actor is able to collide with.Битовая маска, определяющая ноды, с которыми может столкнуться Player Actor.
Collision Radius The radius of the player's capsule.Радиус капсулы игрока.
Collision Height The height of the player's capsule.Высота капсулы игрока.
Min Velocity The default velocity of the Player Actor.Скорость Player Actor по умолчанию.
Max Velocity The velocity of the Player Actor used when the actor runs.Скорость Player Actor, используемая при движении камеры.
Min Theta The minimum theta angle (zenith angle, also known as pitch angle) that determines how far upward the player can look.Минимальный угол theta (зенитный угол, также известный как угол тангажа), который определяет, как далеко камера может смотреть вверх.
Max Theta The maximum theta angle (zenith angle, also known as pitch angle) that determines how far downward the player can look.Максимальный угол theta (зенитный угол, также известный как угол тангажа), который определяет, как далеко камера может смотреть вниз.
Acceleration The player's acceleration.Ускорение камеры.
Damping The player's velocity damping with the time.Затухание скорости камеры со временем.
Turning The velocity of the player's turning action.Скорость поворота камеры.
Jumping The jumping coefficient. The greater the value, the higher the Player Actor jumps.Коэффициент прыжка. Чем больше значение, тем выше прыгает Player Actor.
Max Step Height The maximum step height. The value defines the maximum height of a surface to which the player can make a step. It can be used for walking up and down the stairs and stepping over curbs.Максимальная высота ступени. Значение определяет максимальную высоту поверхности, на которую игрок может сделать шаг. Его можно использовать для подъема и спуска по лестнице и перешагивания через бордюры.
Phi The phi angle (azimuth angle, also known as yaw angle). This angle determines the horizontal viewing direction, i.e. left or right.Угол phi (азимутальный угол, также известный как угол рыскания). Этот угол определяет горизонтальное направление обзора, то есть влево или вправо.
Theta The theta angle (zenith angle, also known as pitch angle). This angle determines the vertical viewing direction, i.e. upward and downward. The value is clamped between the minimum and the maximum theta angle.Угол theta (зенитный угол, также известный как угол тангажа). Этот угол определяет вертикальное направление обзора, то есть вверх и вниз. Значение ограничивается минимальным и максимальным углом theta.
View Direction X, Y, and Z values of the vector defining where the player's view is directed.Значения X, Y и Z вектора, определяющего, куда направлен взгляд камеры.
Ground A flag indicating that the player currently stands on the ground surface. This flag is used to set actor state, i.e. play the corresponding skinned animation of standing/walking instead of being in the air.Флаг, указывающий на то, что игрок в данный момент стоит на поверхности земли. Этот флаг используется для установки состояния камеры, т.е. воспроизведения соответствующей анимации стояния / ходьбы вместо нахождения в воздухе.
Ceililng A value indicating if the actor touches the ceiling surface with its head.Значение, указывающее, касается ли игрок поверхности потолка своей головой.
Num Contacts The number of contacts, in which the player's capsule participates.Количество контактов, в которых участвует капсула игрока.
Последнее обновление: 19.12.2023
Build: ()