reckfellENGINE

Sky

Ресурс фона неба и radiance-карты окружения.

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

Хранит материал неба, режим обновления карты и запрошенное разрешение radiance. Назначается в Environment.Sky. Видимый фон требует BackgroundMode = Sky; режим обработки карты не отключает фоновые вызовы sky().

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

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

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

Создаёт ресурс неба: материал не назначен, ProcessMode = Automatic, RadianceSize = Size256. Для видимого фона назначьте материал неба, ресурс в Environment.Sky и BackgroundMode = Sky.

Свойства3

ProcessModeСвойство
# ProcessMode
C#
public Sky.ProcessModeEnum ProcessMode { get; set; }

Политика обновления и фильтрации radiance-карты, а не частота отрисовки видимого фона. Automatic выбирается рендерером; Quality обновляет качественно, Incremental распределяет фильтрацию по кадрам, Realtime рассчитан на частые изменения. Текущий RD Realtime требует внутренний размер 256.

RadianceSizeСвойство
# RadianceSize
C#
public Sky.RadianceSizeEnum RadianceSize { get; set; }

Запрошенная детализация карты окружения: enum Size32…Size2048, по умолчанию Size256. Это не разрешение viewport. В текущем RD Realtime внутренне приводит другой размер к 256 с предупреждением; getter ресурса хранит запрошенный enum, а не подтверждает внутреннее размещение.

SkyMaterialСвойство
# SkyMaterial
C#
public Material SkyMaterial { get; set; }

Материал генерации неба и карты окружения. Используйте материал неба или ShaderMaterial с shader_type sky. Ресурс удерживает ссылку на материал; назначение не переключает Environment.BackgroundMode.

Методы6

GetMaterialMaterial
# GetMaterial
C#
public Material GetMaterial();

Материал генерации неба и карты окружения. Используйте материал неба или ShaderMaterial с shader_type sky. Ресурс удерживает ссылку на материал; назначение не переключает Environment.BackgroundMode.

Возвращает Material

Назначенный Material или null, если материал не задан.

GetProcessModeSky.ProcessModeEnum
# GetProcessMode
C#
public Sky.ProcessModeEnum GetProcessMode();

Политика обновления и фильтрации radiance-карты, а не частота отрисовки видимого фона. Automatic выбирается рендерером; Quality обновляет качественно, Incremental распределяет фильтрацию по кадрам, Realtime рассчитан на частые изменения. Текущий RD Realtime требует внутренний размер 256.

Возвращает Sky.ProcessModeEnum

Запрошенный режим ресурса; Automatic не сообщает выбранную внутреннюю политику.

GetRadianceSizeSky.RadianceSizeEnum
# GetRadianceSize
C#
public Sky.RadianceSizeEnum GetRadianceSize();

Запрошенная детализация карты окружения: enum Size32…Size2048, по умолчанию Size256. Это не разрешение viewport. В текущем RD Realtime внутренне приводит другой размер к 256 с предупреждением; getter ресурса хранит запрошенный enum, а не подтверждает внутреннее размещение.

Возвращает Sky.RadianceSizeEnum

Сохранённое запрошенное значение RadianceSizeEnum.

SetMaterialvoid
# SetMaterial
C#
public void SetMaterial(Material material);

Материал генерации неба и карты окружения. Используйте материал неба или ShaderMaterial с shader_type sky. Ресурс удерживает ссылку на материал; назначение не переключает Environment.BackgroundMode.

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

Материал неба; null снимает назначенный материал.

SetProcessModevoid
# SetProcessMode
C#
public void SetProcessMode(Sky.ProcessModeEnum mode);

Политика обновления и фильтрации radiance-карты, а не частота отрисовки видимого фона. Automatic выбирается рендерером; Quality обновляет качественно, Incremental распределяет фильтрацию по кадрам, Realtime рассчитан на частые изменения. Текущий RD Realtime требует внутренний размер 256.

Параметры
ИмяТипПо умолчанию
modeSky.ProcessModeEnum—
mode

Режим обновления карты окружения.

SetRadianceSizevoid
# SetRadianceSize
C#
public void SetRadianceSize(Sky.RadianceSizeEnum size);

Запрошенная детализация карты окружения: enum Size32…Size2048, по умолчанию Size256. Это не разрешение viewport. В текущем RD Realtime внутренне приводит другой размер к 256 с предупреждением; getter ресурса хранит запрошенный enum, а не подтверждает внутреннее размещение.

Параметры
ИмяТипПо умолчанию
sizeSky.RadianceSizeEnum—
size

Значение RadianceSizeEnum; не произвольное число пикселей.

Sky.ProcessModeEnum

ЗначениеОписание
Automatic = 0

Автоматически выбирает подходящий режим обработки на основе вашего шейдера неба. Если ваш шейдер использует TIME или POSITION, это будет использовать Sky.ProcessModeEnum.Realtime. Если ваш шейдер использует любую из переменных LIGHT_* или любые пользовательские униформы, это будет использовать Sky.ProcessModeEnum.Incremental. В противном случае это по умолчанию Sky.ProcessModeEnum.Quality.

Incremental = 2

Использует ту же выборку высокого качества важности для обработки карты сияния, что и Sky.ProcessModeEnum.Quality, но обновляет в течение нескольких кадров. Количество кадров определяется ProjectSettings.rendering/reflections/sky_reflections/roughness_layers. Используйте это, когда вам нужны карты сияния самого высокого качества, но у вас есть небо, которое медленно обновляется.

Quality = 1

Использует выборку важности высокого качества для обработки карты сияния. В целом, это приводит к гораздо более высокому качеству, чем Sky.ProcessModeEnum.Realtime, но генерация занимает гораздо больше времени. Это не следует использовать, если вы планируете изменять небо во время выполнения. Если вы обнаружите, что отражение недостаточно размыто и показывает искры или светлячков, попробуйте увеличить ProjectSettings.rendering/reflections/sky_reflections/ggx_samples.

Realtime = 3

Использует алгоритм быстрой фильтрации для обработки карты сияния. В целом это приводит к снижению качества, но существенному ускорению времени выполнения. Если вам нужно лучшее качество, но при этом нужно обновлять небо в каждом кадре, рассмотрите возможность включения ProjectSettings.rendering/reflections/sky_reflections/fast_filter_high_quality. Примечание: Алгоритм быстрой фильтрации ограничен кубическими картами 256×256, поэтому Sky.RadianceSize должен быть установлен на Sky.RadianceSizeEnum.Size256. В противном случае выводится предупреждение, а переопределенный размер сияния игнорируется.

Sky.RadianceSizeEnum

ЗначениеОписание
Max = 7

Представляет размер перечисления Sky.RadianceSizeEnum.

Size1024 = 5

Размер текстуры Radiance составляет 1024×1024 пикселей.

Size128 = 2

Размер текстуры Radiance составляет 128×128 пикселей.

Size2048 = 6

Размер текстуры Radiance составляет 2048×2048 пикселей.

Size256 = 3

Размер текстуры Radiance составляет 256×256 пикселей.

Size32 = 0

Размер текстуры Radiance составляет 32×32 пикселя.

Size512 = 4

Размер текстуры Radiance составляет 512×512 пикселей.

Size64 = 1

Размер текстуры Radiance составляет 64×64 пикселя.

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

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

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

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