Trail3D
Узел для проведения линий за движущимися предметами.
Узел для проведения линий за движущимися предметами.
:: Trail3D Узел рисует плоскую линию в пространстве с факультативным режимом рекламного щита.
Примечание: Этот узел предназначен для визуального воздействия. CsgPolygon3D узел CsgPolygon3D.ModeEnum.Path режим.
Объявления сверены с C# SDK 1.0.0. Раскройте имя, чтобы увидеть сигнатуры и описание.
Конструкторы1
Trail3DКонструктор
public Trail3D();Свойства15
ColorСвойство
public Color Color { get; set; }Цвет следа.
Примечание: Цвета с значениями выше 1.0 (наружная) не поддерживается.
Примечание: для оказания заметного воздействия на BaseMaterial3D, BaseMaterial3D.VertexColorUseAsAlbedo * Должно быть* true. Для ShaderMaterial, ALBEDO *= COLOR.rgb; должны быть вставлены в таймер fragment() в противном случае, Trail3D.Color не будет заметного эффекта.
ColorGradientСвойство
public Gradient ColorGradient { get; set; }Цветовой уклон по длине следа.
Примечание: Цвета с значениями выше 1.0 (наружная) не поддерживается.
Примечание: для оказания заметного воздействия на BaseMaterial3D, BaseMaterial3D.VertexColorUseAsAlbedo * Должно быть* true. Для ShaderMaterial, ALBEDO *= COLOR.rgb; должны быть вставлены в таймер fragment() в противном случае, Trail3D.Color не будет заметного эффекта.
EmittingСвойство
public bool Emitting { get; set; }Если true, тропа будет генерировать новые точки из головы.
Примечание: Поддерживается только один активный след. true Это позволит очистить существующие следы.
LifetimeСвойство
public float Lifetime { get; set; }Жизнь следа, когда Trail3D.LimitMode это Trail3D.LimitModeEnum.Lifetime.
LimitModeСвойство
public Trail3D.LimitModeEnum LimitMode { get; set; }Ограничить ли след пожизненным или длинным.
MaterialСвойство
public ShaderMaterial Material { get; set; }Материал, относящийся к сетке Trail3D.MaterialMode это Line3D.MaterialModeEnum.Custom.
Совет: Для сохранения рекламного щита в качестве основания используйте следующий тень:
shader_type spatial;
render_mode blend_mix, depth_draw_never, unshaded, skip_vertex_transform, cull_disabled;
void vertex() {
// Billboarding code for trails
// CUSTOM0 contains the tangent of the trail and the width.
if (dot(CUSTOM0.xyz, CUSTOM0.xyz) > 0.0) {
vec3 p = (inverse(MODELVIEW_MATRIX) * vec4(0.0, 0.0, 0.0, 1.0)).xyz;
p = VERTEX - p;
vec3 t = CUSTOM0.xyz;
vec3 binormal = normalize(cross(p, t));
vec3 normal = normalize(cross(t, binormal));
vec3 tangent = normalize(cross(binormal, normal));
VERTEX += CUSTOM0.w * binormal;
NORMAL = normal;
TANGENT = tangent;
BINORMAL = binormal;
}
}
void fragment() {
ALBEDO = COLOR.rgb;
ALPHA = COLOR.a;
}MaterialModeСвойство
public Line3D.MaterialModeEnum MaterialMode { get; set; }Материальный режим для следа.
MaxLengthСвойство
public float MaxLength { get; set; }Максимальная длина следа, когда Trail3D.LimitMode это Trail3D.LimitModeEnum.MaxLength.
MeshAlignmentСвойство
public Line3D.MeshAlignmentEnum MeshAlignment { get; set; }Возможные варианты: Line3D.MeshAlignmentEnum.Local для 3D линии и Line3D.MeshAlignmentEnum.Billboard для рекламной линии.
MinSectionLengthСвойство
public float MinSectionLength { get; set; }Минимальное требуемое расстояние до добавления нового раздела.
PinUVСвойство
public bool PinUV { get; set; }Если true, прикрепляет УФ к их позициям в космосе.
TilingModeСвойство
public Line3D.TilingModeEnum TilingMode { get; set; }Как вырезать УФ по всей длине следа.
TilingMultiplierСвойство
public float TilingMultiplier { get; set; }Ультрафиолетовый мультипликатор по всей длине следа.
WidthСвойство
public float Width { get; set; }Протяженность следа.
WidthCurveСвойство
public Curve WidthCurve { get; set; }По всей длине следа.
Методы32
Clearvoid
public void Clear();Очистить след.
GetColorColor
public Color GetColor();ColorGetColorGradientGradient
public Gradient GetColorGradient();GradientGetCurrentLengthfloat
public float GetCurrentLength();Возвращает текущую длину следа.
floatGetLifetimefloat
public float GetLifetime();floatGetLimitModeTrail3D.LimitModeEnum
public Trail3D.LimitModeEnum GetLimitMode();Trail3D.LimitModeEnumGetMaterialShaderMaterial
public ShaderMaterial GetMaterial();ShaderMaterialGetMaterialModeLine3D.MaterialModeEnum
public Line3D.MaterialModeEnum GetMaterialMode();Line3D.MaterialModeEnumGetMaxLengthfloat
public float GetMaxLength();floatGetMeshAlignmentLine3D.MeshAlignmentEnum
public Line3D.MeshAlignmentEnum GetMeshAlignment();Line3D.MeshAlignmentEnumGetMinSectionLengthfloat
public float GetMinSectionLength();floatGetPinUVbool
public bool GetPinUV();boolGetTilingModeLine3D.TilingModeEnum
public Line3D.TilingModeEnum GetTilingMode();Line3D.TilingModeEnumGetTilingMultiplierfloat
public float GetTilingMultiplier();floatGetWidthfloat
public float GetWidth();floatGetWidthCurveCurve
public Curve GetWidthCurve();CurveIsEmittingbool
public bool IsEmitting();boolSetColorvoid
public void SetColor(Color color);| Имя | Тип | По умолчанию |
|---|---|---|
color | Color | — |
SetColorGradientvoid
public void SetColorGradient(Gradient gradient);| Имя | Тип | По умолчанию |
|---|---|---|
gradient | Gradient | — |
SetEmittingvoid
public void SetEmitting(bool emitting);| Имя | Тип | По умолчанию |
|---|---|---|
emitting | bool | — |
SetLifetimevoid
public void SetLifetime(float lifetime);| Имя | Тип | По умолчанию |
|---|---|---|
lifetime | float | — |
SetLimitModevoid
public void SetLimitMode(Trail3D.LimitModeEnum limitMode);| Имя | Тип | По умолчанию |
|---|---|---|
limitMode | Trail3D.LimitModeEnum | — |
SetMaterialvoid
public void SetMaterial(ShaderMaterial material);| Имя | Тип | По умолчанию |
|---|---|---|
material | ShaderMaterial | — |
SetMaterialModevoid
public void SetMaterialMode(Line3D.MaterialModeEnum materialMode);| Имя | Тип | По умолчанию |
|---|---|---|
materialMode | Line3D.MaterialModeEnum | — |
SetMaxLengthvoid
public void SetMaxLength(float maxLength);| Имя | Тип | По умолчанию |
|---|---|---|
maxLength | float | — |
SetMeshAlignmentvoid
public void SetMeshAlignment(Line3D.MeshAlignmentEnum alignment);| Имя | Тип | По умолчанию |
|---|---|---|
alignment | Line3D.MeshAlignmentEnum | — |
SetMinSectionLengthvoid
public void SetMinSectionLength(float minSectionLength);| Имя | Тип | По умолчанию |
|---|---|---|
minSectionLength | float | — |
SetPinUVvoid
public void SetPinUV(bool pinUV);| Имя | Тип | По умолчанию |
|---|---|---|
pinUV | bool | — |
SetTilingModevoid
public void SetTilingMode(Line3D.TilingModeEnum tilingMode);| Имя | Тип | По умолчанию |
|---|---|---|
tilingMode | Line3D.TilingModeEnum | — |
SetTilingMultipliervoid
public void SetTilingMultiplier(float tilingMultiplier);| Имя | Тип | По умолчанию |
|---|---|---|
tilingMultiplier | float | — |
SetWidthvoid
public void SetWidth(float width);| Имя | Тип | По умолчанию |
|---|---|---|
width | float | — |
SetWidthCurvevoid
public void SetWidthCurve(Curve curve);| Имя | Тип | По умолчанию |
|---|---|---|
curve | Curve | — |
Trail3D.LimitModeEnum
| Значение | Описание |
|---|---|
Lifetime = 0 | Ограничь длину следа во времени. |
Max = 2 | Представляет собой размер |
MaxLength = 1 | Ограничьте длину следа по размеру. |