reckfellENGINE

VoxelLodTerrain

Воксельный объем с переменным уровнем детализации.

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

Воксельный объем с переменным уровнем детализации.

Предпочтительно использовать гладкую сетку, например: VoxelMesherTransvoxelБлокировочные мешеры могут быть использованы, но в настоящее время они не имеют такой большой поддержки для ЛОД.

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

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

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

Свойства40

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

При включении траектории местности будут храниться генерированные данные о вокселе в памяти зрителей, даже если они не были отредактированы. Это может ускорить воксельные запросы в нередактированных районах и позволит VoxelStream.SaveGeneratorOutput чтобы работать, но значительно увеличивает использование памяти. Этот вариант не поддерживается, когда VoxelLodTerrain.FullLoadModeEnabled Включено.

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

Слой коллизий, используемый генерированными коллайдерами. Проверьте документацию Reckfell для получения дополнительной информации.

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

Сколько уровней LOD установлено для создания коллайдеров, начиная с LOD 0. Установка этого свойства до 0 означает столкновение всех LOD.

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

Предельное значение столкновения, используемое генерированными коллайдерами. Обратите внимание, что оно может зависеть от того, какой двигатель физики используется под капотом, поскольку некоторые не используют пределы.

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

Для получения дополнительной информации проверьте документацию Reckfell.

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

Как долго ждать обновления коллайдеров после редактирования, в миллисекундах. Появление коллайдера дорого, поэтому цель состоит в том, чтобы сгладить его.

DebugDrawActiveMeshBlocksСвойство
# DebugDrawActiveMeshBlocks
C#
public bool DebugDrawActiveMeshBlocks { get; set; }
DebugDrawActiveVisualAndCollisionBlocksСвойство
# DebugDrawActiveVisualAndCollisionBlocks
C#
public bool DebugDrawActiveVisualAndCollisionBlocks { get; set; }
DebugDrawEditBoxesСвойство
# DebugDrawEditBoxes
C#
public bool DebugDrawEditBoxes { get; set; }
DebugDrawEditedBlocksСвойство
# DebugDrawEditedBlocks
C#
public bool DebugDrawEditedBlocks { get; set; }
DebugDrawEnabledСвойство
# DebugDrawEnabled
C#
public bool DebugDrawEnabled { get; set; }
DebugDrawLoadedVisualAndCollisionBlocksСвойство
# DebugDrawLoadedVisualAndCollisionBlocks
C#
public bool DebugDrawLoadedVisualAndCollisionBlocks { get; set; }
DebugDrawMeshUpdatesСвойство
# DebugDrawMeshUpdates
C#
public bool DebugDrawMeshUpdates { get; set; }
DebugDrawModifierBoundsСвойство
# DebugDrawModifierBounds
C#
public bool DebugDrawModifierBounds { get; set; }
DebugDrawOctreeBoundsСвойство
# DebugDrawOctreeBounds
C#
public bool DebugDrawOctreeBounds { get; set; }
DebugDrawOctreeNodesСвойство
# DebugDrawOctreeNodes
C#
public bool DebugDrawOctreeNodes { get; set; }
DebugDrawShadowOccludersСвойство
# DebugDrawShadowOccluders
C#
public bool DebugDrawShadowOccluders { get; set; }
DebugDrawViewerClipboxesСвойство
# DebugDrawViewerClipboxes
C#
public bool DebugDrawViewerClipboxes { get; set; }
DebugDrawVolumeBoundsСвойство
# DebugDrawVolumeBounds
C#
public bool DebugDrawVolumeBounds { get; set; }
DebugDrawVoxelMetadataСвойство
# DebugDrawVoxelMetadata
C#
public bool DebugDrawVoxelMetadata { get; set; }
FullLoadModeEnabledСвойство
# FullLoadModeEnabled
C#
public bool FullLoadModeEnabled { get; set; }

В случае включения система передачи данных будет отключена, и все данные вокселя будут загружаться из stream в память. Это устраняет несколько ограничений, таких как возможность редактирования в любом месте и возможность включения удаленных обычных карт в отредактированные регионы. Это происходит за счет более широкого использования памяти. Однако на практике память используют только отредактированные регионы, так что на практике она может быть достаточно хорошей.

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

Если это будет сделано, то куски коллайдеров будут создаваться из сапог.

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

Сколько уровней LOD нужно использовать. VoxelLodTerrain.LodDistance: если вы хотите увидеть очень далеко, вам нужно больше уровней LOD. Это позволяет блокам становиться больше, чем дальше, чтобы держать их число до приемлемого количества. В противоположность этому, слишком мало уровней LOD означает, что в удаленных регионах будет необходимо использовать слишком много небольших блоков, что может повлиять на эффективность.

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

Как далеко LOD 0 простирается от зрителя. Каждый родитель LOD будет в два раза больше, чем их дети. VoxelLodTerrain.FullLoadModeEnabled , отключена, это также определяет, как далеко допускается редактирование. Дальнейший контроль за СО сверх 0 см. VoxelLodTerrain.SecondaryLodDistance.

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

При установке больше 0, это позволяет LOD угаснуть. При разделении/упадении ячеек в результате изменения уровня детализации они исчезают, чтобы сделать переход менее заметным (или по крайней мере более приятным). Эта функция требует использования конкретного тендера, проверки онлайновой документации или примеров для получения дополнительной информации.

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

Material Используется для покрытия громкости. Этот узел используется в основном с гладкими вокселями, что означает, что, если вы хотите получить больше одного "материала" на земле, вам нужно использовать методы сплатмирования с помощью тендера. Кроме того, многие параметры требуют, чтобы тендеры работали правильно. Проверьте онлайн документацию или примеры для дополнительной информации. Примечание: Если вы используете a ShaderMaterial, он будет показан на каждой куске для поддержки параметров на один кубик/ЛОД, так что динамические изменения, сделанные с параметрами, не будут применяться. Вы можете использовать глобальная униформа чтобы обойти это ограничение.

MeshBlockSizeСвойство
# MeshBlockSize
C#
public uint MeshBlockSize { get; set; }

Устанавливает, сколько вокселов по всей местности. Воксельные куски хранятся в кубических кусках 16x16x16, и по умолчанию меши местности соответствуют этому размеру. Но вы можете установить это на 32, так что ячеек будет иметь 2x2x2 вокселовые кусочки. Это компромисс по эффективности. Более высокий размер ячеек может ускорить трансформацию за счет более медленных сетчатых обновлений. Значения, отличные от 16 и 32, не поддерживаются. Примечание: эта регулировка также влияет VoxelInstancer Кусочки.

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

На основе которых будут генерироваться обычные карты индекса LOD.

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

Это функция, которая используется только с гладким рельефом (SDF). Она является дорогостоящей, но позволяет привести гораздо больше деталей в отдалённую местность. Эта функция требует использования конкретного тендера, проверки онлайновой документации или примеров для получения дополнительной информации.

NormalmapMaxDeviationDegreesСвойство
# NormalmapMaxDeviationDegrees
C#
public int NormalmapMaxDeviationDegrees { get; set; }
NormalmapOctahedralEncodingEnabledСвойство
# NormalmapOctahedralEncodingEnabled
C#
public bool NormalmapOctahedralEncodingEnabled { get; set; }

Включает октаэдральное сжатие обычных карт, которое сокращает использование памяти, вызванное удаленными обычными картами, примерно на 33%, что оказывает определенное воздействие на качество зрения. Ваш тендер может быть соответствующим образом модифицирован для их декодирования.

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

Максимальное разрешение плитки в отдаленных обычных картах.

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

Минимальное разрешение плитки в отдаленных обычных картах. Это резолюция, на которой будут начинаться обычные карты с уровня ОВБ, определенного в VoxelLodTerrain.NormalmapBeginLodIndex1. Резолюции будут удвоены на каждом уровне ОВБ до тех пор, пока они не достигнут VoxelLodTerrain.NormalmapTileResolutionMax.

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

Включает генерацию обычных карт GPU, которая может ускорить его. Это применимо только к генераторам, которые его поддерживают. Вулкан требуется.

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

Контроль размера каждого LOD выше LOD 0 в вокселях по отношению к этим LOD (вокселя LOD N в два раза больше, чем LOD N-1). Более высокие значения позволяют видеть дальше, прежде чем детали будут уничтожены, но более дороги. Следует отметить, что он не обязательно будет соблюдаться точно и скорее будет использоваться в качестве целевого минимального расстояния. Это используется только тогда, когда VoxelLodTerrain.StreamingSystem установлен следующим образом: VoxelLodTerrain.StreamingSystemEnum.ClipboxВ других случаях VoxelLodTerrain.LodDistance используется. Чтобы контролировать LOD 0, смотрите VoxelLodTerrain.LodDistance.

StreamingSystemСвойство
# StreamingSystem
C#
public VoxelLodTerrain.StreamingSystemEnum StreamingSystem { get; set; }

Выберите лежащий в основе алгоритм, используемый для определения того, когда загружать и разгружать куски вокруг зрителей при их движении.

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

При включении этот узел будет проводить большую часть цикла обновления в отдельной нитью. В противном случае он будет работать на главной нити.

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

Включает генерацию блока GPU, которая может ускорить его. Это применимо только для генераторов, которые поддерживают его. Вулкан требуется.

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

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

VoxelBoundsСвойство
# VoxelBounds
C#
public Aabb VoxelBounds { get; set; }

Границы, в пределах которых могут существовать данные об объемах (загруженные или нет), во вокселях. По умолчанию это псевдобесконечно. Если вы создаёте планету, остров или какую-то арену, вы можете выбрать конечный размер. Заметьте, потому что этот объем использует куски с LOD, эти границы сжимаются до ближайшей границы.

Методы79

DebugDumpAsSceneint
# DebugDumpAsScene
C#
public int DebugDumpAsScene(string path, bool includeInstancer);

Сохранить текущее состояние местности как файл сцены Reckfell. Может быть использовано для проверки мешей и образцов более подробно в редакторе.

Параметры
ИмяТипПо умолчанию
pathstring—
includeInstancerbool—
Возвращает int
DebugGetDataBlockCountint
# DebugGetDataBlockCount
C#
public int DebugGetDataBlockCount();

Узнайте, сколько кусочков данных вокселя в настоящее время загружено

Возвращает int
DebugGetDataBlockInfoReckfell.Collections.Dictionary
# DebugGetDataBlockInfo
C#
public Reckfell.Collections.Dictionary DebugGetDataBlockInfo(Vector3 blockPos, int lod);

Получил отладочную информацию о специфической воксельной куске данных.

Текст
{
    "loading_state": int,
}
Параметры
ИмяТипПо умолчанию
blockPosVector3—
lodint—
Возвращает Reckfell.Collections.Dictionary
DebugGetDrawFlagbool
# DebugGetDrawFlag
C#
public bool DebugGetDrawFlag(VoxelLodTerrain.DebugDrawFlag flagIndex);

Узнает, установлен ли конкретный отладочный флаг. Этот метод всегда неверен в экспортных играх.

Параметры
ИмяТипПо умолчанию
flagIndexVoxelLodTerrain.DebugDrawFlag—
Возвращает bool
DebugGetDrawShadowOccludersbool
# DebugGetDrawShadowOccluders
C#
public bool DebugGetDrawShadowOccluders();
Возвращает bool
DebugGetMeshBlockCountint
# DebugGetMeshBlockCount
C#
public int DebugGetMeshBlockCount();

Понимает, сколько пятен на местности.

Возвращает int
DebugGetMeshBlockInfoReckfell.Collections.Dictionary
# DebugGetMeshBlockInfo
C#
public Reckfell.Collections.Dictionary DebugGetMeshBlockInfo(Vector3 blockPos, int lod);

Получает отладочную информацию о конкретной сетке.

Текст
{
    "transition_mask": int,
    "recomputed_transition_mask": int,
    "loaded": bool,
    "meshed": bool,
    "mesh_state": int,
    "visible": bool,
    "visual_active": bool,
    "collision_active": bool
}
Параметры
ИмяТипПо умолчанию
blockPosVector3—
lodint—
Возвращает Reckfell.Collections.Dictionary
DebugGetOctreesDetailedReckfell.Collections.Array
# DebugGetOctreesDetailed
C#
public Reckfell.Collections.Array DebugGetOctreesDetailed();

Получает отладочную информацию о сетке октейров, используемой для потока местности на различных уровнях детализации. Вернутый массив содержит чередующиеся Vector3I и Reckfell.Collections.Array значения, когда каждая пара соответствует одному осью в определенном положении:

Текст
[
    Vector3i,
    Array,
    Vector3i,
    Array,
    ...
]

В массиве после позиций содержится информация о одном октри:

Текст
[
    int (node state),
    null or Array (children info)
]

Когда информация о детях не является ничтожной, она содержит 8 массивов, структурированных таким же образом, и может быть рекурсивно пересечена для получения состояния каждого узла октея.

Возвращает Reckfell.Collections.Array
DebugIsDrawEnabledbool
# DebugIsDrawEnabled
C#
public bool DebugIsDrawEnabled();
Возвращает bool
DebugPrintSdfTopDownReckfell.Collections.Array
# DebugPrintSdfTopDown
C#
public Reckfell.Collections.Array DebugPrintSdfTopDown(Vector3I center, Vector3I extents);

Захват сверху показанного поля дистанции (SDF) на нескольких уровнях LOD в пределах конкретной области. Возвращенный массив содержит изображение для каждого LOD.

Параметры
ИмяТипПо умолчанию
centerVector3I—
extentsVector3I—
Возвращает Reckfell.Collections.Array
DebugRaycastMeshBlockReckfell.Collections.Array
# DebugRaycastMeshBlock
C#
public Reckfell.Collections.Array DebugRaycastMeshBlock(Vector3 origin, Vector3 dir);

Получает непустые сетчатые положения от грубого космического луча до расстояния в 256 единиц. Возвращенный массив содержит:

Текст
[
    {
        "position": Vector3i,
        "lod": int
    },
    ...
]
Параметры
ИмяТипПо умолчанию
originVector3—
dirVector3—
Возвращает Reckfell.Collections.Array
DebugSetDrawEnabledvoid
# DebugSetDrawEnabled
C#
public void DebugSetDrawEnabled(bool enabled);
Параметры
ИмяТипПо умолчанию
enabledbool—
DebugSetDrawFlagvoid
# DebugSetDrawFlag
C#
public void DebugSetDrawFlag(VoxelLodTerrain.DebugDrawFlag flagIndex, bool enabled);

Устанавливает конкретный отладочный флаг на рисунке. Обратите внимание, что отладочный рисунок должен быть также обеспечен видимостью. Этот метод ничего не делает в экспортных играх.

Параметры
ИмяТипПо умолчанию
flagIndexVoxelLodTerrain.DebugDrawFlag—
enabledbool—
DebugSetDrawShadowOccludersvoid
# DebugSetDrawShadowOccluders
C#
public void DebugSetDrawShadowOccluders(bool enabled);
Параметры
ИмяТипПо умолчанию
enabledbool—
GetCacheGeneratedBlocksbool
# GetCacheGeneratedBlocks
C#
public bool GetCacheGeneratedBlocks();
Возвращает bool
GetCollisionLayerint
# GetCollisionLayer
C#
public int GetCollisionLayer();
Возвращает int
GetCollisionLodCountint
# GetCollisionLodCount
C#
public int GetCollisionLodCount();
Возвращает int
GetCollisionMarginfloat
# GetCollisionMargin
C#
public float GetCollisionMargin();
Возвращает float
GetCollisionMaskint
# GetCollisionMask
C#
public int GetCollisionMask();
Возвращает int
GetCollisionUpdateDelayint
# GetCollisionUpdateDelay
C#
public int GetCollisionUpdateDelay();
Возвращает int
GetDataBlockRegionExtentint
# GetDataBlockRegionExtent
C#
public int GetDataBlockRegionExtent();
Возвращает int
GetDataBlockSizeuint
# GetDataBlockSize
C#
public uint GetDataBlockSize();

Получает размер одного кунического блока данных в воксах.

Возвращает uint
GetGenerateCollisionsbool
# GetGenerateCollisions
C#
public bool GetGenerateCollisions();
Возвращает bool
GetGeneratorUseGpubool
# GetGeneratorUseGpu
C#
public bool GetGeneratorUseGpu();
Возвращает bool
GetLodCountint
# GetLodCount
C#
public int GetLodCount();
Возвращает int
GetLodDistancefloat
# GetLodDistance
C#
public float GetLodDistance();
Возвращает float
GetLodFadeDurationfloat
# GetLodFadeDuration
C#
public float GetLodFadeDuration();
Возвращает float
GetMaterialMaterial
# GetMaterial
C#
public Material GetMaterial();
Возвращает Material
GetMeshBlockSizeuint
# GetMeshBlockSize
C#
public uint GetMeshBlockSize();
Возвращает uint
GetNormalmapBeginLodIndexint
# GetNormalmapBeginLodIndex
C#
public int GetNormalmapBeginLodIndex();
Возвращает int
GetNormalmapGeneratorOverrideVoxelGenerator
# GetNormalmapGeneratorOverride
C#
public VoxelGenerator GetNormalmapGeneratorOverride();
Возвращает VoxelGenerator
GetNormalmapGeneratorOverrideBeginLodIndexint
# GetNormalmapGeneratorOverrideBeginLodIndex
C#
public int GetNormalmapGeneratorOverrideBeginLodIndex();
Возвращает int
GetNormalmapMaxDeviationDegreesint
# GetNormalmapMaxDeviationDegrees
C#
public int GetNormalmapMaxDeviationDegrees();
Возвращает int
GetNormalmapTileResolutionMaxint
# GetNormalmapTileResolutionMax
C#
public int GetNormalmapTileResolutionMax();
Возвращает int
GetNormalmapTileResolutionMinint
# GetNormalmapTileResolutionMin
C#
public int GetNormalmapTileResolutionMin();
Возвращает int
GetNormalmapUseGpubool
# GetNormalmapUseGpu
C#
public bool GetNormalmapUseGpu();
Возвращает bool
GetOctahedralNormalEncodingbool
# GetOctahedralNormalEncoding
C#
public bool GetOctahedralNormalEncoding();
Возвращает bool
GetProcessCallbackVoxelLodTerrain.ProcessCallback
# GetProcessCallback
C#
public VoxelLodTerrain.ProcessCallback GetProcessCallback();

Получает, какой звонок используется для обновления основной нити этого узла.

Возвращает VoxelLodTerrain.ProcessCallback
GetSecondaryLodDistancefloat
# GetSecondaryLodDistance
C#
public float GetSecondaryLodDistance();
Возвращает float
GetStatisticsReckfell.Collections.Dictionary
# GetStatistics
C#
public Reckfell.Collections.Dictionary GetStatistics();

Получает отладочную информацию о том, сколько времени потрачено на обработку местности. Вернутый словарь имеет следующую структуру:

Текст
{
    "time_detect_required_blocks": int,
    "time_request_blocks_to_load": int,
    "time_process_load_responses": int,
    "time_request_blocks_to_update": int,
    "time_process_update_responses": int,
    "remaining_main_thread_blocks": int,
    "dropped_block_loads": int,
    "dropped_block_meshs": int,
    "updated_blocks": int,
    "blocked_lods": int
}

Времена в микросекундах.

Возвращает Reckfell.Collections.Dictionary
GetStreamingSystemVoxelLodTerrain.StreamingSystemEnum
# GetStreamingSystem
C#
public VoxelLodTerrain.StreamingSystemEnum GetStreamingSystem();
Возвращает VoxelLodTerrain.StreamingSystemEnum
GetViewDistanceint
# GetViewDistance
C#
public int GetViewDistance();
Возвращает int
GetVoxelBoundsAabb
# GetVoxelBounds
C#
public Aabb GetVoxelBounds();
Возвращает Aabb
IsAreaMeshedbool
# IsAreaMeshed
C#
public bool IsAreaMeshed(Aabb areaInVoxels, int lodIndex);

Это не значит, что в этом районе действительно есть сетка. Возвращение не соответствует действительности, если район не был обработан сеткой (поэтому неизвестно, должна ли быть сетка здесь или нет). При траектории местности это может быть использовано для определения того, полностью ли зона «загружена», на случай, если игра полагается на меши или сетчатые коллайдеры.

Параметры
ИмяТипПо умолчанию
areaInVoxelsAabb—
lodIndexint—
Возвращает bool
IsFullLoadModeEnabledbool
# IsFullLoadModeEnabled
C#
public bool IsFullLoadModeEnabled();
Возвращает bool
IsNormalmapEnabledbool
# IsNormalmapEnabled
C#
public bool IsNormalmapEnabled();
Возвращает bool
IsThreadedUpdateEnabledbool
# IsThreadedUpdateEnabled
C#
public bool IsThreadedUpdateEnabled();
Возвращает bool
SaveModifiedBlocksVoxelSaveCompletionTracker
# SaveModifiedBlocks
C#
public VoxelSaveCompletionTracker SaveModifiedBlocks();

Запрашивает сохранение всех модифицированных вокселей. Сбережение асинхронно и будет продолжаться некоторое время в будущем. Если игра выйдет, двигатель обеспечит выполнение охранных задач до закрытия приложения. Используйте возвращенный объект для слежения, чтобы знать, когда сбережение завершено. Однако, сбережения, произведенные после вызова этого метода, не будут отслеживаться этим объектом. Заметьте, что блоки, разгружаемые по мере перемещения зрителя, могут также приводить к сохранению задач независимо от этой функции.

Возвращает VoxelSaveCompletionTracker
SetCacheGeneratedBlocksvoid
# SetCacheGeneratedBlocks
C#
public void SetCacheGeneratedBlocks(bool enabled);
Параметры
ИмяТипПо умолчанию
enabledbool—
SetCollisionLayervoid
# SetCollisionLayer
C#
public void SetCollisionLayer(int layer);
Параметры
ИмяТипПо умолчанию
layerint—
SetCollisionLodCountvoid
# SetCollisionLodCount
C#
public void SetCollisionLodCount(int count);
Параметры
ИмяТипПо умолчанию
countint—
SetCollisionMarginvoid
# SetCollisionMargin
C#
public void SetCollisionMargin(float margin);
Параметры
ИмяТипПо умолчанию
marginfloat—
SetCollisionMaskvoid
# SetCollisionMask
C#
public void SetCollisionMask(int mask);
Параметры
ИмяТипПо умолчанию
maskint—
SetCollisionUpdateDelayvoid
# SetCollisionUpdateDelay
C#
public void SetCollisionUpdateDelay(int delayMsec);
Параметры
ИмяТипПо умолчанию
delayMsecint—
SetFullLoadModeEnabledvoid
# SetFullLoadModeEnabled
C#
public void SetFullLoadModeEnabled(bool _UnnamedArg0);
Параметры
ИмяТипПо умолчанию
_UnnamedArg0bool—
SetGenerateCollisionsvoid
# SetGenerateCollisions
C#
public void SetGenerateCollisions(bool enabled);
Параметры
ИмяТипПо умолчанию
enabledbool—
SetGeneratorUseGpuvoid
# SetGeneratorUseGpu
C#
public void SetGeneratorUseGpu(bool enabled);
Параметры
ИмяТипПо умолчанию
enabledbool—
SetLodCountvoid
# SetLodCount
C#
public void SetLodCount(int lodCount);
Параметры
ИмяТипПо умолчанию
lodCountint—
SetLodDistancevoid
# SetLodDistance
C#
public void SetLodDistance(float lodDistance);
Параметры
ИмяТипПо умолчанию
lodDistancefloat—
SetLodFadeDurationvoid
# SetLodFadeDuration
C#
public void SetLodFadeDuration(float seconds);
Параметры
ИмяТипПо умолчанию
secondsfloat—
SetMaterialvoid
# SetMaterial
C#
public void SetMaterial(Material material);
Параметры
ИмяТипПо умолчанию
materialMaterial—
SetMeshBlockSizevoid
# SetMeshBlockSize
C#
public void SetMeshBlockSize(uint _UnnamedArg0);
Параметры
ИмяТипПо умолчанию
_UnnamedArg0uint—
SetNormalmapBeginLodIndexvoid
# SetNormalmapBeginLodIndex
C#
public void SetNormalmapBeginLodIndex(int lodIndex);
Параметры
ИмяТипПо умолчанию
lodIndexint—
SetNormalmapEnabledvoid
# SetNormalmapEnabled
C#
public void SetNormalmapEnabled(bool enabled);
Параметры
ИмяТипПо умолчанию
enabledbool—
SetNormalmapGeneratorOverridevoid
# SetNormalmapGeneratorOverride
C#
public void SetNormalmapGeneratorOverride(VoxelGenerator generatorOverride);
Параметры
ИмяТипПо умолчанию
generatorOverrideVoxelGenerator—
SetNormalmapGeneratorOverrideBeginLodIndexvoid
# SetNormalmapGeneratorOverrideBeginLodIndex
C#
public void SetNormalmapGeneratorOverrideBeginLodIndex(int lodIndex);
Параметры
ИмяТипПо умолчанию
lodIndexint—
SetNormalmapMaxDeviationDegreesvoid
# SetNormalmapMaxDeviationDegrees
C#
public void SetNormalmapMaxDeviationDegrees(int angle);
Параметры
ИмяТипПо умолчанию
angleint—
SetNormalmapTileResolutionMaxvoid
# SetNormalmapTileResolutionMax
C#
public void SetNormalmapTileResolutionMax(int resolution);
Параметры
ИмяТипПо умолчанию
resolutionint—
SetNormalmapTileResolutionMinvoid
# SetNormalmapTileResolutionMin
C#
public void SetNormalmapTileResolutionMin(int resolution);
Параметры
ИмяТипПо умолчанию
resolutionint—
SetNormalmapUseGpuvoid
# SetNormalmapUseGpu
C#
public void SetNormalmapUseGpu(bool enabled);
Параметры
ИмяТипПо умолчанию
enabledbool—
SetOctahedralNormalEncodingvoid
# SetOctahedralNormalEncoding
C#
public void SetOctahedralNormalEncoding(bool enabled);
Параметры
ИмяТипПо умолчанию
enabledbool—
SetProcessCallbackvoid
# SetProcessCallback
C#
public void SetProcessCallback(VoxelLodTerrain.ProcessCallback mode);

Установки, которые используются для обновления основной строки этого узла. По умолчанию он использует _process.

Параметры
ИмяТипПо умолчанию
modeVoxelLodTerrain.ProcessCallback—
SetSecondaryLodDistancevoid
# SetSecondaryLodDistance
C#
public void SetSecondaryLodDistance(float lodDistance);
Параметры
ИмяТипПо умолчанию
lodDistancefloat—
SetStreamingSystemvoid
# SetStreamingSystem
C#
public void SetStreamingSystem(VoxelLodTerrain.StreamingSystemEnum system);
Параметры
ИмяТипПо умолчанию
systemVoxelLodTerrain.StreamingSystemEnum—
SetThreadedUpdateEnabledvoid
# SetThreadedUpdateEnabled
C#
public void SetThreadedUpdateEnabled(bool enabled);
Параметры
ИмяТипПо умолчанию
enabledbool—
SetViewDistancevoid
# SetViewDistance
C#
public void SetViewDistance(int distanceInVoxels);
Параметры
ИмяТипПо умолчанию
distanceInVoxelsint—
SetVoxelBoundsvoid
# SetVoxelBounds
C#
public void SetVoxelBounds(Aabb _UnnamedArg0);
Параметры
ИмяТипПо умолчанию
_UnnamedArg0Aabb—
VoxelToDataBlockPositionVector3I
# VoxelToDataBlockPosition
C#
public Vector3I VoxelToDataBlockPosition(Vector3 voxelPosition, int lodIndex);

Преобразует положение вокселя в позицию блока данных для конкретного индекса LOD.

Параметры
ИмяТипПо умолчанию
voxelPositionVector3—
lodIndexint—
Возвращает Vector3I
VoxelToMeshBlockPositionVector3I
# VoxelToMeshBlockPosition
C#
public Vector3I VoxelToMeshBlockPosition(Vector3 voxelPosition, int lodIndex);

Преобразует положение вокселя в сетку для конкретного индекса LOD.

Параметры
ИмяТипПо умолчанию
voxelPositionVector3—
lodIndexint—
Возвращает Vector3I

VoxelLodTerrain.DebugDrawFlag

VoxelLodTerrain.ProcessCallback

ЗначениеОписание
Disabled = 2

Узел не будет обновляться.

Idle = 0

Узел будет использовать _process в той части его логики, которая идет по главной нитью.

Physics = 1

Узел будет использовать _physics_process в той части его логики, которая идет по главной нитью.

VoxelLodTerrain.StreamingSystemEnum

ЗначениеОписание
Clipbox = 1

Загружается вокруг зрителя в концентрические коробки. Поддерживает несколько зрителей и только зрители. Это лучшая система мультиплеера. Из-за упрощения места расположения кусочков на каждом LOD могут быть менее оптимальными, чем VoxelLodTerrain.StreamingSystemEnum.LegacyOctree.

LegacyOctree = 0

Грузы кувыркаются вокруг зрителя в сферической модели. Не поддерживает нескольких зрителей. Не поддерживает только зрителей столкновения. Не поддерживает "никаких зрителей" (вместо этого он предполагает происхождение). Не поддерживает расстояние просмотра только для каждого зрителя VoxelLodTerrain.ViewDistance используется. Это была первая система, которая была внедрена, поэтому она остается доступной для целей совместимости по умолчанию.

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

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

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

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