У каждого игрока есть камера, которая следует за ним при движении. Чтобы изменить масштаб или переместить камеру в другие места, мы предоставляем набор API.
В CSL камера представлена структурой на игрока в Игрок:
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){ifis_local(){// Простой зум «установил и забыл»camera.size=7.0;}}}
Если вы хотите смещения камеры, кинематографические сцены или пользовательское сглаживание, выключите follow_player и управляйте camera.position сами:
Постобработка
Постобработка позволяет применять к вашей камере визуальные эффекты, такие как искажение, цветокоррекция и другие эффекты, чтобы ваша игра выглядела ярче!
CSL не в настоящее время не предоставляет пользовательские API для постобработки (например, регистрацию обратного вызова рантайм-процессора постобработки). У вас есть два варианта:
Настроить в редакторе: настройте стандартный стек постобработки через Редактировать → Конфигурация игры → Постобработка. Это применяется при использовании стандартного поведения камеры.
Настроить через C# API (продвинуто, не CSL): если вы используете пользовательский CameraControl через C# assembly API, вы можете зарегистрировать постпроцессор и применять эффекты, такие как Bloom / Blur / Color Grade / Vignette.
Если вы включите любой эффект, All Out автоматически будет использовать HDR-пайплайн.