reckfellENGINE

CanvasTexture

Набор цветовой, нормальной и бликовой карт для 2D-освещения.

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

CanvasTexture объединяет ссылки на DiffuseTexture, NormalTexture и SpecularTexture для CanvasItem. Назначьте её текстурой Sprite2D или другого подходящего 2D-объекта; источник света, материал и карты должны быть согласованы отдельно. Само назначение карты нормалей не добавляет рельефную геометрию или освещение. Это ресурс 2D, а не замена материала 3D.

Размер, GetImage и HasAlpha определяются только DiffuseTexture. GetImage не собирает нормали и блик в итоговый освещённый кадр. NormalTexture и SpecularTexture используют согласованные UV; ресурс не упаковывает карты автоматически. Во все три канала можно назначить обычные Texture2D или null, но нельзя назначить CanvasTexture.

TextureFilter и TextureRepeat переопределяют выборку ресурса; ParentNode оставляет наследование CanvasItem. Режим mipmaps не генерирует цепочку. Для обычного SpecularShininess используйте 0…1, даже если setter хранит другие значения. SpecularColor.a не задаёт альфу параметров шейдинга: вместо неё используется shininess.

Проверены ссылки каналов, параметры, чтение цветовой карты, очистка и независимая загрузка ресурса в Windows Forward+/Vulkan. Соответствие RGB/альфы specular-карты параметрам установлено по исходникам шейдера. Рендер освещения, качество нормалей и бликов, 3D и другие ОС этим прогоном не подтверждены.

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

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

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

Создаёт ресурс с тремя пустыми каналами, белым SpecularColor, SpecularShininess = 1 и наследуемыми фильтрацией/повторением. RID принадлежит ресурсу; не освобождайте его вручную. Без DiffuseTexture GetImage возвращает null.

Свойства7

DiffuseTextureСвойство
# DiffuseTexture
C#
public Texture2D DiffuseTexture { get; set; }

Основная цветовая текстура; по умолчанию null. Её логические размеры, HasAlpha и GetImage используются соответствующими запросами CanvasTexture. Без неё размеры 1×1, GetImage возвращает null, HasAlpha — false. Назначение хранит ссылку, а не копию. В этот канал нельзя назначить CanvasTexture, включая другой экземпляр.

NormalTextureСвойство
# NormalTexture
C#
public Texture2D NormalTexture { get; set; }

Карта нормалей для 2D-освещения; по умолчанию null. Она не меняет геометрию, силуэт или коллизии и не определяет размер CanvasTexture. Подготовьте её с правильным направлением нормалей и согласованными UV цветовой карты. Назначение не включает источник света автоматически. CanvasTexture в качестве карты не принимается; null очищает канал.

SpecularColorСвойство
# SpecularColor
C#
public Color SpecularColor { get; set; }

Множитель RGB блика, по умолчанию белый. Альфа Color сохраняется getter-ом, но в параметрах canvas-шейдинга альфа берётся из SpecularShininess, а не из этого цвета. Это не модуляция всей цветовой текстуры. Видимый результат зависит от освещения и шейдера; здесь проверено хранение параметра, не красота блика.

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

Параметр резкости блика, по умолчанию 1; для обычного использования задавайте конечное значение 0…1. Getter/setter не ограничены диапазоном подсказки инспектора: значение 2 сохраняется как 2. Это не обещание корректного GPU-результата вне диапазона и не roughness из материала 3D. При наличии SpecularTexture её альфа также участвует в параметре.

SpecularTextureСвойство
# SpecularTexture
C#
public Texture2D SpecularTexture { get; set; }

Карта блика для 2D-освещения; по умолчанию null. В текущем canvas-шейдере RGB модулирует цвет блика, альфа — shininess; результат умножается на SpecularColor.rgb и SpecularShininess. Это не metallic/roughness-карта материала 3D. CanvasTexture в этот канал не принимается; null очищает ссылку. Размеры ресурса по-прежнему берутся из DiffuseTexture.

TextureFilterСвойство
# TextureFilter
C#
public CanvasItem.TextureFilterEnum TextureFilter { get; set; }

Переопределение фильтрации этой CanvasTexture; по умолчанию CanvasItem.TextureFilterEnum.ParentNode наследует настройку CanvasItem. Конкретный режим задаёт выборку независимо от базовой настройки объекта. Выбор режима с mipmaps не создаёт mipmap-цепочку в исходных картах. Используйте действительное значение enum.

TextureRepeatСвойство
# TextureRepeat
C#
public CanvasItem.TextureRepeatEnum TextureRepeat { get; set; }

Переопределение повторения этой CanvasTexture; по умолчанию CanvasItem.TextureRepeatEnum.ParentNode. Disabled отключает повторение, Enabled повторяет, Mirror чередует отражённые повторы. Это настройка выборки текстур; она не превращает AtlasTexture.Region в отдельное бесшовное изображение. Используйте действительное значение enum.

Методы14

GetDiffuseTextureTexture2D
# GetDiffuseTexture
C#
public Texture2D GetDiffuseTexture();

Возвращает CanvasTexture.DiffuseTexture.

Возвращает Texture2D

Текущее значение DiffuseTexture. Ссылка на текстуру общая, не копия; может быть null.

GetNormalTextureTexture2D
# GetNormalTexture
C#
public Texture2D GetNormalTexture();

Возвращает CanvasTexture.NormalTexture.

Возвращает Texture2D

Текущее значение NormalTexture. Ссылка на текстуру общая, не копия; может быть null.

GetSpecularColorColor
# GetSpecularColor
C#
public Color GetSpecularColor();

Возвращает CanvasTexture.SpecularColor.

Возвращает Color

Текущее значение SpecularColor.

GetSpecularShininessfloat
# GetSpecularShininess
C#
public float GetSpecularShininess();

Возвращает CanvasTexture.SpecularShininess.

Возвращает float

Текущее значение SpecularShininess.

GetSpecularTextureTexture2D
# GetSpecularTexture
C#
public Texture2D GetSpecularTexture();

Возвращает CanvasTexture.SpecularTexture.

Возвращает Texture2D

Текущее значение SpecularTexture. Ссылка на текстуру общая, не копия; может быть null.

GetTextureFilterCanvasItem.TextureFilterEnum
# GetTextureFilter
C#
public CanvasItem.TextureFilterEnum GetTextureFilter();

Возвращает CanvasTexture.TextureFilter.

Возвращает CanvasItem.TextureFilterEnum

Текущее значение TextureFilter.

GetTextureRepeatCanvasItem.TextureRepeatEnum
# GetTextureRepeat
C#
public CanvasItem.TextureRepeatEnum GetTextureRepeat();

Возвращает CanvasTexture.TextureRepeat.

Возвращает CanvasItem.TextureRepeatEnum

Текущее значение TextureRepeat.

SetDiffuseTexturevoid
# SetDiffuseTexture
C#
public void SetDiffuseTexture(Texture2D texture);

Задаёт CanvasTexture.DiffuseTexture.

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

Основная цветовая Texture2D или null; CanvasTexture не принимается.

SetNormalTexturevoid
# SetNormalTexture
C#
public void SetNormalTexture(Texture2D texture);

Задаёт CanvasTexture.NormalTexture.

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

Карта нормалей Texture2D или null; CanvasTexture не принимается.

SetSpecularColorvoid
# SetSpecularColor
C#
public void SetSpecularColor(Color color);

Задаёт CanvasTexture.SpecularColor.

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

Множитель RGB блика; альфа параметров шейдинга задаётся SpecularShininess.

SetSpecularShininessvoid
# SetSpecularShininess
C#
public void SetSpecularShininess(float shininess);

Задаёт CanvasTexture.SpecularShininess.

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

Конечное значение 0…1 для обычного использования; setter не ограничивает подсказкой инспектора.

SetSpecularTexturevoid
# SetSpecularTexture
C#
public void SetSpecularTexture(Texture2D texture);

Задаёт CanvasTexture.SpecularTexture.

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

Карта блика Texture2D или null; CanvasTexture не принимается.

SetTextureFiltervoid
# SetTextureFilter
C#
public void SetTextureFilter(CanvasItem.TextureFilterEnum filter);

Задаёт CanvasTexture.TextureFilter.

Параметры
ИмяТипПо умолчанию
filterCanvasItem.TextureFilterEnum—
filter

Действительный режим фильтрации; ParentNode наследует CanvasItem.

SetTextureRepeatvoid
# SetTextureRepeat
C#
public void SetTextureRepeat(CanvasItem.TextureRepeatEnum repeat);

Задаёт CanvasTexture.TextureRepeat.

Параметры
ИмяТипПо умолчанию
repeatCanvasItem.TextureRepeatEnum—
repeat

Действительный режим повторения; ParentNode наследует CanvasItem.

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

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

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

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