reckfellENGINE

CanvasGroup

Объединяет несколько 2D-узлов в одну операцию рисования.

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

Объединяет несколько 2D-узлов в одну операцию рисования.

Дочерние узлы CanvasItem группы CanvasGroup отрисовываются как единый объект. Это позволяет, например, отрисовывать перекрывающиеся полупрозрачные 2D-узлы, не делая перекрывающиеся участки более непрозрачными, чем предполагалось (для достижения этого эффекта установите свойство CanvasItem.SelfModulate для CanvasGroup). Примечание: CanvasGroup использует пользовательский шейдер для чтения из буфера фона для отрисовки своих дочерних элементов. Присвоение Material группе CanvasGroup переопределяет встроенный шейдер. Чтобы воспроизвести поведение встроенного шейдера в пользовательском Shader, используйте следующее:

Шейдер
shader_type canvas_item;
render_mode unshaded;

uniform sampler2D screen_texture : hint_screen_texture, repeat_disable, filter_nearest;

void fragment() {
    vec4 c = textureLod(screen_texture, SCREEN_UV, 0.0);

    if (c.a > 0.0001) {
        c.rgb /= c.a;
    }

    COLOR *= c;
}

Примечание: Поскольку CanvasGroup и CanvasItem.ClipChildren используют буфер заднего вида, дочерние элементы CanvasGroup, у которых CanvasItem.ClipChildren установлено на значение, отличное от CanvasItem.ClipChildrenMode.Disabled, не будут работать корректно.

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

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

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

Свойства3

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

Устанавливает размер поля, используемого для расширения очищаемого прямоугольника этого CanvasGroup. Это расширяет область заднего буфера, которая будет использоваться CanvasGroup. Меньшее поле уменьшит область используемого заднего буфера, что может повысить производительность, однако, если включен CanvasGroup.UseMipmaps, небольшое поле может привести к ошибкам mipmap на краю CanvasGroup. Соответственно, его следует оставить как можно меньше, но следует увеличить, если по краям группы холстов появляются артефакты.

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

Устанавливает размер поля, используемого для расширения отрисовываемого прямоугольника этого CanvasGroup. Размер CanvasGroup определяется путем подгонки прямоугольника вокруг его дочерних элементов, а затем расширения этого прямоугольника на CanvasGroup.FitMargin. Это увеличивает как используемую область заднего буфера, так и область, охватываемую CanvasGroup, что может снизить производительность. Это должно быть как можно меньше и должно расширяться только тогда, когда требуется увеличенный размер (например, для пользовательских эффектов шейдера).

UseMipmapsСвойство
# UseMipmaps
C#
public bool UseMipmaps { get; set; }

Если true, вычисляет mip-карты для заднего буфера перед рисованием CanvasGroup, чтобы mip-карты можно было использовать в пользовательском ShaderMaterial, прикрепленном к CanvasGroup. Генерация mip-карт снижает производительность, поэтому ее не следует включать, если это не требуется.

Методы6

GetClearMarginfloat
# GetClearMargin
C#
public float GetClearMargin();
Возвращает float
GetFitMarginfloat
# GetFitMargin
C#
public float GetFitMargin();
Возвращает float
IsUsingMipmapsbool
# IsUsingMipmaps
C#
public bool IsUsingMipmaps();
Возвращает bool
SetClearMarginvoid
# SetClearMargin
C#
public void SetClearMargin(float clearMargin);
Параметры
ИмяТипПо умолчанию
clearMarginfloat—
SetFitMarginvoid
# SetFitMargin
C#
public void SetFitMargin(float fitMargin);
Параметры
ИмяТипПо умолчанию
fitMarginfloat—
SetUseMipmapsvoid
# SetUseMipmaps
C#
public void SetUseMipmaps(bool useMipmaps);
Параметры
ИмяТипПо умолчанию
useMipmapsbool—
Документация Reckfell EngineНаверх ↑
БЫСТРЫЙ ПЕРЕХОДНачало работыEntity и иерархияC# & .NET 10Сцены и префабы
Руководства и полный API Reckfell K
reckfellENGINE
RECKFELL ACCOUNT

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

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

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