cameraКамера и постобработка

Камера

Каждый игрок начинает с камерой, которая следует за ним по мере его перемещения. Чтобы настроить масштаб или переместить камеру в другие места, мы предоставляем набор API.

В CSL камера — это структура на уровне отдельного игрока в Player:

  • camera.follow_player: bool: когда true, движок заставляет камеру следовать за игроком.

  • camera.position: v2: центр камеры в мировом пространстве (используется, когда follow_player = false).

  • camera.size: float: величина зума. Больше = сильнее отдаление (вы видите больше мира).

Поскольку изменения камеры носят чисто косметический характер, применяйте их только на локальном клиенте:

import "core:ao"

MyPlayer :: class : Player_Base {
    ao_late_update :: method(dt: float) {
        if is_local() {
            // Простое "настроил и забыл" увеличение/уменьшение
            camera.size = 7.0;
        }
    }
}

Пользовательское слежение (смещение + сглаживание)

Если вам нужны смещения камеры, кат-сцены или собственное сглаживание, отключите follow_player и управляйте camera.position самостоятельно:

Постобработка

Постобработка позволяет применять к вашей камере визуальные эффекты, такие как искажение, цветокоррекция и другие, чтобы сделать вашу игру более эффектной!

CSL не на данный момент предоставляет пользовательские API постобработки (например, регистрацию обратного вызова постобработчика во время выполнения). У вас есть два варианта:

  • Настроить в редакторе: настройте стек постобработки по умолчанию через Edit → Game Config → Post Processing. Это применяется при использовании поведения камеры по умолчанию.

  • Настроить через C# API (для опытных пользователей, не CSL): если вы используете пользовательский CameraControl через API сборки C#, вы можете зарегистрировать постобработчик и вызывать эффекты вроде Bloom / Blur / Color Grade / Vignette.

Если вы включите любой эффект, All Out автоматически использует HDR-пайплайн.

Последнее обновление