reckfellENGINE

SubViewport

Интерфейс к игровому миру, который не создает окно и не выводит изображение на экран напрямую.

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

Интерфейс к игровому миру, который не создает окно и не выводит изображение на экран напрямую.

SubViewport Изолирует прямоугольную область сцены для независимого отображения. Это можно использовать, например, для отображения пользовательского интерфейса в трехмерном пространстве. Примечание: SubViewport — это Viewport, который не является Window, т. е. он сам по себе ничего не рисует. Чтобы что-либо отобразить, SubViewport должен иметь ненулевой размер и быть либо помещен в SubViewportContainer, либо назначен ViewportTexture. Примечание: InputEvent по умолчанию не передаются в автономный SubViewport. Чтобы обеспечить распространение InputEvent, SubViewport можно поместить внутрь SubViewportContainer.

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

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

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

Свойства6

RenderTargetClearModeСвойство
# RenderTargetClearMode
C#
public SubViewport.ClearMode RenderTargetClearMode { get; set; }

Режим очистки, когда в качестве цели рендеринга используется подокно просмотра. Примечание: Это свойство предназначено для использования в 2D.

RenderTargetUpdateModeСвойство
# RenderTargetUpdateMode
C#
public SubViewport.UpdateMode RenderTargetUpdateMode { get; set; }

Управляет перерисовкой render target: Disabled сохраняет последний кадр, Always рисует постоянно, Once запрашивает один кадр. Это не пауза скриптов или физики. В текущей сборке после выполнения Once getter сохраняет значение Once, хотя RenderingServer уже остановил повторную отрисовку. Повторное присваивание Once снова запрашивает кадр; не ждите смены getter на Disabled как признака завершения.

SizeСвойство
# Size
C#
public Vector2I Size { get; set; }

Размер выходного viewport в пикселях. Scaling3DScale меняет внутреннее разрешение 3D отдельно: при Size=(512,384) и scale 0.5 GetTexture по-прежнему имеет 512×384. Для изменения самого результата изменяйте Size, учитывая UI и размеры цели.

Size2DOverrideСвойство
# Size2DOverride
C#
public Vector2I Size2DOverride { get; set; }

Логическая область 2D в пикселях. Для её растягивания в выходной target включите Size2DOverrideStretch. Меняет отображение координат canvas, не размер выходной текстуры Size.

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

Разрешает растягивание логической области Size2DOverride в выходной Size. Например, canvas 64 × 48 может занимать target 128 × 96 без изменения размера выходной текстуры.

ViewCountСвойство
# ViewCount
C#
public int ViewCount { get; set; }

Количество слоёв представления, в которые мы выполняем рендеринг. Установите это значение в 2, чтобы включить стереорендеринг.

Методы12

GetClearModeSubViewport.ClearMode
# GetClearMode
C#
public SubViewport.ClearMode GetClearMode();
Возвращает SubViewport.ClearMode
GetSizeVector2I
# GetSize
C#
public Vector2I GetSize();
Возвращает Vector2I
GetSize2DOverrideVector2I
# GetSize2DOverride
C#
public Vector2I GetSize2DOverride();

Возвращает запрошенное значение Size2DOverride. Логическая область 2D в пикселях. Для её растягивания в выходной target включите Size2DOverrideStretch. Меняет отображение координат canvas, не размер выходной текстуры Size.

Возвращает Vector2I

Значение свойства Size2DOverride; учитывайте описанное различие между настройкой и фактическим результатом.

GetUpdateModeSubViewport.UpdateMode
# GetUpdateMode
C#
public SubViewport.UpdateMode GetUpdateMode();

Возвращает запрошенное значение RenderTargetUpdateMode. Режим обновления текстуры. Disabled сохраняет кадр; Always отрисовывает и без видимого использования; Once запрашивает один кадр. Getter сцены сохраняет запрос Once после выполнения, поэтому не служит индикатором завершения. Повторное назначение Once запрашивает следующий кадр. Не приостанавливает обработку Entity.

Возвращает SubViewport.UpdateMode

Значение свойства RenderTargetUpdateMode; учитывайте описанное различие между настройкой и фактическим результатом.

GetViewCountint
# GetViewCount
C#
public int GetViewCount();
Возвращает int
IsSize2DOverrideStretchEnabledbool
# IsSize2DOverrideStretchEnabled
C#
public bool IsSize2DOverrideStretchEnabled();

Возвращает запрошенное значение Size2DOverrideStretch. Разрешает растягивание логической области Size2DOverride в выходной Size. Например, canvas 64 × 48 может занимать target 128 × 96 без изменения размера выходной текстуры.

Возвращает bool

Значение свойства Size2DOverrideStretch; учитывайте описанное различие между настройкой и фактическим результатом.

SetClearModevoid
# SetClearMode
C#
public void SetClearMode(SubViewport.ClearMode mode);
Параметры
ИмяТипПо умолчанию
modeSubViewport.ClearMode—
SetSizevoid
# SetSize
C#
public void SetSize(Vector2I size);
Параметры
ИмяТипПо умолчанию
sizeVector2I—
SetSize2DOverridevoid
# SetSize2DOverride
C#
public void SetSize2DOverride(Vector2I size);

Задаёт Size2DOverride. Логическая область 2D в пикселях. Для её растягивания в выходной target включите Size2DOverrideStretch. Меняет отображение координат canvas, не размер выходной текстуры Size.

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

Логическая область 2D в пикселях. Для её растягивания в выходной target включите Size2DOverrideStretch. Меняет отображение координат canvas, не размер выходной текстуры Size.

SetSize2DOverrideStretchvoid
# SetSize2DOverrideStretch
C#
public void SetSize2DOverrideStretch(bool enable);

Задаёт Size2DOverrideStretch. Разрешает растягивание логической области Size2DOverride в выходной Size. Например, canvas 64 × 48 может занимать target 128 × 96 без изменения размера выходной текстуры.

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

Разрешает растягивание логической области Size2DOverride в выходной Size. Например, canvas 64 × 48 может занимать target 128 × 96 без изменения размера выходной текстуры.

SetUpdateModevoid
# SetUpdateMode
C#
public void SetUpdateMode(SubViewport.UpdateMode mode);

Задаёт RenderTargetUpdateMode. Режим обновления текстуры. Disabled сохраняет кадр; Always отрисовывает и без видимого использования; Once запрашивает один кадр. Getter сцены сохраняет запрос Once после выполнения, поэтому не служит индикатором завершения. Повторное назначение Once запрашивает следующий кадр. Не приостанавливает обработку Entity.

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

Режим обновления текстуры. Disabled сохраняет кадр; Always отрисовывает и без видимого использования; Once запрашивает один кадр. Getter сцены сохраняет запрос Once после выполнения, поэтому не служит индикатором завершения. Повторное назначение Once запрашивает следующий кадр. Не приостанавливает обработку Entity.

SetViewCountvoid
# SetViewCount
C#
public void SetViewCount(int viewCount);
Параметры
ИмяТипПо умолчанию
viewCountint—

SubViewport.ClearMode

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

Всегда очищайте цель рендеринга перед рисованием.

Never = 1

Никогда не очищайте цель рендеринга.

Once = 2

Очистите цель рендеринга на следующем кадре, затем переключитесь на SubViewport.ClearMode.Never.

SubViewport.UpdateMode

ЗначениеОписание
Always = 4

Всегда обновляйте цель рендеринга.

Disabled = 0

Не обновляйте цель рендеринга.

Once = 1

Обновите цель рендеринга один раз, затем переключитесь на SubViewport.UpdateMode.Disabled.

WhenParentVisible = 3

Обновляйте цель рендеринга только тогда, когда его родительский объект виден.

WhenVisible = 2

Обновлять цель рендеринга только тогда, когда он виден. Это значение по умолчанию.

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

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

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

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