reckfellENGINE

CsgPolygon3D

Выдавливает 2D-многоугольник для создания 3D-сетки.

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

Выдавливает 2D-многоугольник для создания 3D-сетки.

Массив 2D-точек выдавливается для быстрого и легкого создания различных 3D-сеток. См. также CsgMesh3D для использования 3D-сеток в качестве узлов CSG. Примечание: Узлы CSG предназначены для использования при прототипировании уровней. Создание узлов CSG требует значительных затрат ресурсов ЦП по сравнению с созданием MeshInstance3D с PrimitiveMesh. Перемещение узла CSG в пределах другого узла CSG также требует значительных затрат ресурсов ЦП, поэтому его следует избегать во время игры.

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

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

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

Свойства17

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

Если CsgPolygon3D.Mode равен CsgPolygon3D.ModeEnum.Depth, глубина выдавливания.

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

Material Ультрафиолетовое отображение верхней половины материала по внешней форме (U по длине экструзий и V вокруг контура CsgPolygon3D.Polygon), нижний левый квартал передним краем, и нижний правый квартал сзади.

ModeСвойство
# Mode
C#
public CsgPolygon3D.ModeEnum Mode { get; set; }

CsgPolygon3D.Mode, используемый для выдавливания CsgPolygon3D.Polygon.

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

Когда CsgPolygon3D.Mode равен CsgPolygon3D.ModeEnum.Path, по умолчанию верхняя половина CsgPolygon3D.Material растягивается по всей длине выдавленной формы. Если false, верхняя половина материала повторяется на каждом этапе выдавливания.

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

Если CsgPolygon3D.Mode равен CsgPolygon3D.ModeEnum.Path, местоположение объекта Path3D, используемого для выдавливания CsgPolygon3D.Polygon.

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

Если CsgPolygon3D.Mode равен CsgPolygon3D.ModeEnum.Path, интервал пути или отношение точек пути к выдавливаниям (extrusions).

PathIntervalTypeСвойство
# PathIntervalType
C#
public CsgPolygon3D.PathIntervalTypeEnum PathIntervalType { get; set; }

Если CsgPolygon3D.Mode равен CsgPolygon3D.ModeEnum.Path, это определит, должен ли интервал быть рассчитан по расстоянию (CsgPolygon3D.PathIntervalTypeEnum.Distance) или по дробям подразделения (CsgPolygon3D.PathIntervalTypeEnum.Subdivide).

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

Когда CsgPolygon3D.Mode равен CsgPolygon3D.ModeEnum.Path, если true, концы пути соединяются путем добавления выдавливания между последней и первой точками пути.

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

Когда CsgPolygon3D.Mode это CsgPolygon3D.ModeEnum.PathЕсли: true :: Transform3D ЗАПЛАНИРОВАННЫЕ ЗАСЕДАНИЯ CsgPolygon3D используется в качестве отправной точки для выдерживания, а не в качестве точки отсчета Transform3D ЗАПЛАНИРОВАННЫЕ ЗАСЕДАНИЯ path_node.

PathRotationСвойство
# PathRotation
C#
public CsgPolygon3D.PathRotationEnum PathRotation { get; set; }

Если CsgPolygon3D.Mode равен CsgPolygon3D.ModeEnum.Path, метод поворота траектории, используемый для поворота CsgPolygon3D.Polygon при его выдавливании.

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

Когда CsgPolygon3D.Mode равен CsgPolygon3D.ModeEnum.Path, если true, многоугольник будет повернут в соответствии с правильной касательной пути в выбранных точках. Если false, используется приближение, точность которого уменьшается по мере уменьшения количества подразделений.

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

Если CsgPolygon3D.Mode равен CsgPolygon3D.ModeEnum.Path, выдавливания, которые меньше этого угла, будут объединены вместе для уменьшения количества полигонов.

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

Когда CsgPolygon3D.Mode равен CsgPolygon3D.ModeEnum.Path, это расстояние вдоль пути в метрах, координаты текстуры будут замощены. Если установлено значение 0, координаты текстуры будут точно соответствовать геометрии без замощения.

Многоугольник

PolygonСвойство
# Polygon
C#
public Vector2[] Polygon { get; set; }

Массив точек, определяющий выдавливаемый 2D-полигон. Это может быть выпуклый или вогнутый полигон с 3 или более точками. Полигон не должен иметь пересекающихся ребер. В противном случае триангуляция не будет выполнена, и сетка не будет создана. Примечание: Если в CsgPolygon3D.Polygon определены только 1 или 2 точки, сетка не будет создана.

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

Если true, к выдавливаниям (extrusions) применяется плавное затенение.

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

Если CsgPolygon3D.Mode равен CsgPolygon3D.ModeEnum.Spin, общее число градусов, на которое поворачивается CsgPolygon3D.Polygon при выдавливании.

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

Когда CsgPolygon3D.Mode равен CsgPolygon3D.ModeEnum.Spin, количество выполненных экструзий.

Методы35

GetDepthfloat
# GetDepth
C#
public float GetDepth();
Возвращает float
GetMaterialMaterial
# GetMaterial
C#
public Material GetMaterial();
Возвращает Material
GetModeCsgPolygon3D.ModeEnum
# GetMode
C#
public CsgPolygon3D.ModeEnum GetMode();
Возвращает CsgPolygon3D.ModeEnum
GetPathEntityEntityPath
# GetPathEntity
C#
public EntityPath GetPathEntity();
Возвращает EntityPath
GetPathIntervalfloat
# GetPathInterval
C#
public float GetPathInterval();
Возвращает float
GetPathIntervalTypeCsgPolygon3D.PathIntervalTypeEnum
# GetPathIntervalType
C#
public CsgPolygon3D.PathIntervalTypeEnum GetPathIntervalType();
Возвращает CsgPolygon3D.PathIntervalTypeEnum
GetPathRotationCsgPolygon3D.PathRotationEnum
# GetPathRotation
C#
public CsgPolygon3D.PathRotationEnum GetPathRotation();
Возвращает CsgPolygon3D.PathRotationEnum
GetPathRotationAccuratebool
# GetPathRotationAccurate
C#
public bool GetPathRotationAccurate();
Возвращает bool
GetPathSimplifyAnglefloat
# GetPathSimplifyAngle
C#
public float GetPathSimplifyAngle();
Возвращает float
GetPathUDistancefloat
# GetPathUDistance
C#
public float GetPathUDistance();
Возвращает float
GetPolygonVector2[]
# GetPolygon
C#
public Vector2[] GetPolygon();
Возвращает Vector2[]
GetSmoothFacesbool
# GetSmoothFaces
C#
public bool GetSmoothFaces();
Возвращает bool
GetSpinDegreesfloat
# GetSpinDegrees
C#
public float GetSpinDegrees();
Возвращает float
GetSpinSidesint
# GetSpinSides
C#
public int GetSpinSides();
Возвращает int
IsPathContinuousUbool
# IsPathContinuousU
C#
public bool IsPathContinuousU();
Возвращает bool
IsPathJoinedbool
# IsPathJoined
C#
public bool IsPathJoined();
Возвращает bool
IsPathLocalbool
# IsPathLocal
C#
public bool IsPathLocal();
Возвращает bool
SetDepthvoid
# SetDepth
C#
public void SetDepth(float depth);
Параметры
ИмяТипПо умолчанию
depthfloat—
SetMaterialvoid
# SetMaterial
C#
public void SetMaterial(Material material);
Параметры
ИмяТипПо умолчанию
materialMaterial—
SetModevoid
# SetMode
C#
public void SetMode(CsgPolygon3D.ModeEnum mode);
Параметры
ИмяТипПо умолчанию
modeCsgPolygon3D.ModeEnum—
SetPathContinuousUvoid
# SetPathContinuousU
C#
public void SetPathContinuousU(bool enable);
Параметры
ИмяТипПо умолчанию
enablebool—
SetPathEntityvoid
# SetPathEntity
C#
public void SetPathEntity(EntityPath path);
Параметры
ИмяТипПо умолчанию
pathEntityPath—
SetPathIntervalvoid
# SetPathInterval
C#
public void SetPathInterval(float interval);
Параметры
ИмяТипПо умолчанию
intervalfloat—
SetPathIntervalTypevoid
# SetPathIntervalType
C#
public void SetPathIntervalType(CsgPolygon3D.PathIntervalTypeEnum intervalType);
Параметры
ИмяТипПо умолчанию
intervalTypeCsgPolygon3D.PathIntervalTypeEnum—
SetPathJoinedvoid
# SetPathJoined
C#
public void SetPathJoined(bool enable);
Параметры
ИмяТипПо умолчанию
enablebool—
SetPathLocalvoid
# SetPathLocal
C#
public void SetPathLocal(bool enable);
Параметры
ИмяТипПо умолчанию
enablebool—
SetPathRotationvoid
# SetPathRotation
C#
public void SetPathRotation(CsgPolygon3D.PathRotationEnum pathRotation);
Параметры
ИмяТипПо умолчанию
pathRotationCsgPolygon3D.PathRotationEnum—
SetPathRotationAccuratevoid
# SetPathRotationAccurate
C#
public void SetPathRotationAccurate(bool enable);
Параметры
ИмяТипПо умолчанию
enablebool—
SetPathSimplifyAnglevoid
# SetPathSimplifyAngle
C#
public void SetPathSimplifyAngle(float degrees);
Параметры
ИмяТипПо умолчанию
degreesfloat—
SetPathUDistancevoid
# SetPathUDistance
C#
public void SetPathUDistance(float distance);
Параметры
ИмяТипПо умолчанию
distancefloat—
SetPolygon2 перегрузки
# SetPolygon · 1/2
C#
public void SetPolygon(Vector2[] polygon);
Параметры
ИмяТипПо умолчанию
polygonVector2[]—
# SetPolygon · 2/2
C#
public void SetPolygon(ReadOnlySpan<Vector2> polygon);
Параметры
ИмяТипПо умолчанию
polygonReadOnlySpan<Vector2>—
SetSmoothFacesvoid
# SetSmoothFaces
C#
public void SetSmoothFaces(bool smoothFaces);
Параметры
ИмяТипПо умолчанию
smoothFacesbool—
SetSpinDegreesvoid
# SetSpinDegrees
C#
public void SetSpinDegrees(float degrees);
Параметры
ИмяТипПо умолчанию
degreesfloat—
SetSpinSidesvoid
# SetSpinSides
C#
public void SetSpinSides(int spinSides);
Параметры
ИмяТипПо умолчанию
spinSidesint—

CsgPolygon3D.ModeEnum

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

Форма CsgPolygon3D.Polygon выдавливается вдоль отрицательной оси Z.

Path = 2

:: CsgPolygon3D.Polygon Форма отделяется вдоль Path3D указано в path_node.

Spin = 1

Форма CsgPolygon3D.Polygon выдавливается путем вращения вокруг оси Y.

CsgPolygon3D.PathIntervalTypeEnum

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

Если CsgPolygon3D.Mode установлен на CsgPolygon3D.ModeEnum.Path, CsgPolygon3D.PathInterval будет определять расстояние в метрах, на которое будет выдавливаться каждый интервал пути.

Subdivide = 1

Если CsgPolygon3D.Mode установлен на CsgPolygon3D.ModeEnum.Path, CsgPolygon3D.PathInterval будет подразделять полигоны вдоль пути.

CsgPolygon3D.PathRotationEnum

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

Фигура CsgPolygon3D.Polygon вращается вдоль пути, но не вращается вокруг оси пути. Примечание: Требует, чтобы координаты Z пути постоянно уменьшались для обеспечения жизнеспособных форм.

PathFollow = 2

Форма CsgPolygon3D.Polygon следует траектории и ее вращениям вокруг оси траектории.

Polygon = 0

Форма CsgPolygon3D.Polygon не повернута. Примечание: Требует, чтобы координаты Z траектории постоянно уменьшались для обеспечения жизнеспособных форм.

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

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

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

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