VoxelEntity
Базовый класс для томов вокселя.
Базовый класс для томов вокселя.
Объявления сверены с C# SDK 1.0.0. Раскройте имя, чтобы увидеть сигнатуры и описание.
Свойства7
CastShadowСвойство
public GeometryInstance3D.ShadowCastingSetting CastShadow { get; set; }Устанавливает режим теневого литья, который будет использоваться на местности.
FormatСвойство
public VoxelFormat Format { get; set; }Отменяет стандартный формат вокселей. ПРЕДУПРЕЖДЕНИЕ: изменение этой системы приведет к перезагрузке местности. Если в ней есть поток, содержащий данные, сохраненные в другом формате, она может загрузиться неправильно.
GIModeСвойство
public GeometryInstance3D.GIModeEnum GIMode { get; set; }Используется режим глобального освещения местности.
GeneratorСвойство
public VoxelGenerator Generator { get; set; }Процедурный генератор, используемый для загрузки вокселовых блоков при отсутствии в потоке.
MesherСвойство
public VoxelMesher Mesher { get; set; }Определяет, как воксель преобразуется в видимые пятна.
RenderLayersMaskСвойство
public int RenderLayersMask { get; set; }Устанавливает слоёв изгибов местности.
StreamСвойство
public VoxelStream Stream { get; set; }Первичный источник данных о стойких вокселах. Если не будет установлен, весь объем будет использовать генератор.
Методы16
ConvertToEntitiesEntity3D
public Entity3D ConvertToEntities(VoxelEntity.EntityConversionFlags flags);Создает дерево, представляющее местность во время звонка, только используя ванильные узлы Reckfell.
Этот метод может использоваться как способ получения снимка местности как ванильной сцены, которая может быть открыта стандартными версиями Reckfell без проигрывателей. Он также может использоваться для отладочных целей или как способ работы с элементами Reckfell, ожидающими узла дело (такими, как некоторые опции для выпечки GI, навигационное производство или экспорт GLTF).
Вернутый корень не добавляется к дереву сцены. Вам решать, что с ним делать. Если вы хотите, чтобы он присутствовал на месте преступления, вы должны добавить его как ребёнок существующего узла. В противном случае, не забудьте освободить его.
Структура вывода: каждый кусок местности создаст свой собственный MeshInstance3D, с уникальными ArrayMesh Прикрепляемые к нему ресурсы. Кроме того, к мешам и/или сеткам могут прикрепляться материалы. В зависимости от конфигурации местности эти материалы могут быть уникальными на кусок. Если на местности имеются LOD, то кусочки хранятся под соответствующим узлом LOD. Если эта местность имеет привод, то в нее могут быть включены многоместные куски. См. VoxelEntity.EntityConversionFlags для вариантов.
Ресурсы: если не указано, ресурсы, прикрепляемые к узлам дерева, будут служить прямыми ссылками на те, которые фактически используются системой рельефа. Осторожно, в зависимости от конфигурации, возможно, что они изменятся при осуществлении следующего технологического цикла (например, материалы с параметрами на один кусок объединяются, поэтому когда кусочки выгружаются, те, которые упоминаются в узлах, могут резко измениться по мере их повторного использования новыми кусками).
Performance: это может быть дорогостоящая операция, которая может замедлить вашу игру.
Упаковка в файл с места преступления: можно сохранить вывод в качестве файла PackedEntity, путем назначения Entity.Owner (см. документацию Reckfell). В ней содержится много уникальных ячеек, так что сохраненные сцены могут быть очень большими. Предпочитаю сохранение как двоичный .rbin если это проблема. ShaderMaterial С детализацией кусочки будут иметь уникальные текстуры, которые будут еще больше увеличиваться.
GLTF: если ваша местность использует ShaderMaterial и вы хотите превратить местность в GltfDocument, эти материалы не перенесут, потому что GLTF не поддерживает их. VoxelMesherTransvoxel с LOD, пятна в вашем документе GLTF будут иметь нежелательную дополнительную геометрию и трещины на швах (которые обычно будут обрабатываться тендером).
LOD: если в вашей местности есть LOD, вы получите только снимок, из которого LOD в настоящее время активны. Подробная информация будет сконцентрирована вокруг зрителей и будет иметь все меньше и меньше деталей дальше.
| Имя | Тип | По умолчанию |
|---|---|---|
flags | VoxelEntity.EntityConversionFlags | — |
Entity3DGetFormatVoxelFormat
public VoxelFormat GetFormat();VoxelFormatGetGIModeGeometryInstance3D.GIModeEnum
public GeometryInstance3D.GIModeEnum GetGIMode();GeometryInstance3D.GIModeEnumGetGeneratorVoxelGenerator
public VoxelGenerator GetGenerator();VoxelGeneratorGetMesherVoxelMesher
public VoxelMesher GetMesher();VoxelMesherGetRenderLayersMaskint
public int GetRenderLayersMask();intGetShadowCastingGeometryInstance3D.ShadowCastingSetting
public GeometryInstance3D.ShadowCastingSetting GetShadowCasting();GeometryInstance3D.ShadowCastingSettingGetStreamVoxelStream
public VoxelStream GetStream();VoxelStreamGetVoxelToolVoxelTool
public VoxelTool GetVoxelTool();Создаёт пример VoxelTool с этим узлом, доступ к вокселям и методам выпуска.
Вы можете сохранить его в переменной члена, чтобы избежать создания снова, пока узел все еще существует.
VoxelToolSetFormatvoid
public void SetFormat(VoxelFormat format);| Имя | Тип | По умолчанию |
|---|---|---|
format | VoxelFormat | — |
SetGIModevoid
public void SetGIMode(GeometryInstance3D.GIModeEnum mode);| Имя | Тип | По умолчанию |
|---|---|---|
mode | GeometryInstance3D.GIModeEnum | — |
SetGeneratorvoid
public void SetGenerator(VoxelGenerator generator);| Имя | Тип | По умолчанию |
|---|---|---|
generator | VoxelGenerator | — |
SetMeshervoid
public void SetMesher(VoxelMesher mesher);| Имя | Тип | По умолчанию |
|---|---|---|
mesher | VoxelMesher | — |
SetRenderLayersMaskvoid
public void SetRenderLayersMask(int mask);| Имя | Тип | По умолчанию |
|---|---|---|
mask | int | — |
SetShadowCastingvoid
public void SetShadowCasting(GeometryInstance3D.ShadowCastingSetting mode);| Имя | Тип | По умолчанию |
|---|---|---|
mode | GeometryInstance3D.ShadowCastingSetting | — |
SetStreamvoid
public void SetStream(VoxelStream stream);| Имя | Тип | По умолчанию |
|---|---|---|
stream | VoxelStream | — |
VoxelEntity.EntityConversionFlags
| Значение | Описание |
|---|---|
Instancer = 1 | Если местность имеет... |
InvisibleBlocks = 2 | Некоторые кусочки скрыты внутри системы местности, в частности как часть системы LOD. Если этот флаг будет предоставлен, то эти куски будут включены в выпуск. |
MaterialOverrides = 4 | Указывается, что материалы, присутствующие на местности, должны применяться к кускам результата. |