Stride

OPEN / CLOSE
  • Features
  • Blog
  • Documentation
  • Community
(icon) Download

  • Discord
  • Facebook
  • Twitter
  • YouTube

LANGUAGE

OPEN / CLOSE
  • English
  • 日本語
    Show / Hide Table of Contents

    ShapeBuilderOrientedQuad Class

    Namespace: Stride.Particles.ShapeBuilders
    Assembly: Stride.Particles.dll

    Shape builder which builds each particle as a non-uniform quad oriented along an axis

    System.Object → ShapeBuilder → ShapeBuilderCommon → ShapeBuilderOrientedQuad
    Derived from ShapeBuilderOrientedQuad:

    [DataContract("ShapeBuilderOrientedQuad")]
    [Display("Direction Aligned Sprite", null)]
    public class ShapeBuilderOrientedQuad : ShapeBuilderCommon
    Name Description
    Properties
    LengthFactor

    Length will be modified with this factor

    QuadsPerParticle

    Returns the number of quads required per particle to draw all particles. Assuming 1 Quad = 4 Vertices = 6 Indices

    ScaleLength

    If true, length will scale with particle size

    Methods
    BuildVertexBuffer(ref ParticleBufferState, Vector3, Vector3, ref Vector3, ref Quaternion, Single, ref ParticleList, ref Matrix)
    | Improve this Doc View Source

    Properties


    LengthFactor

    Length will be modified with this factor

    [DataMember(310)]
    [Display("Length factor", null)]
    public float LengthFactor { get; set; }
    Property Value
    Type Description
    System.Single

    QuadsPerParticle

    Returns the number of quads required per particle to draw all particles. Assuming 1 Quad = 4 Vertices = 6 Indices

    public override int QuadsPerParticle { get; protected set; }
    Property Value
    Type Description
    System.Int32
    Overrides
    ShapeBuilder.QuadsPerParticle

    ScaleLength

    If true, length will scale with particle size

    [DataMember(300)]
    [Display("Size to Length", null)]
    public bool ScaleLength { get; set; }
    Property Value
    Type Description
    System.Boolean
    | Improve this Doc View Source

    Methods


    BuildVertexBuffer(ref ParticleBufferState, Vector3, Vector3, ref Vector3, ref Quaternion, Single, ref ParticleList, ref Matrix)

    public override int BuildVertexBuffer(ref ParticleBufferState bufferState, Vector3 invViewX, Vector3 invViewY, ref Vector3 spaceTranslation, ref Quaternion spaceRotation, float spaceScale, ref ParticleList sorter, ref Matrix viewProj)
    Parameters
    Type Name Description
    ParticleBufferState bufferState
    Vector3 invViewX
    Vector3 invViewY
    Vector3 spaceTranslation
    Quaternion spaceRotation
    System.Single spaceScale
    ParticleList sorter
    Matrix viewProj
    Returns
    Type Description
    System.Int32
    Overrides
    ShapeBuilderCommon.BuildVertexBuffer(ref ParticleBufferState, Vector3, Vector3, ref Vector3, ref Quaternion, Single, ref ParticleList, ref Matrix)

    Inherited Members

    ShapeBuilderCommon.PreUpdate()
    ShapeBuilderCommon.SamplerPosition
    ShapeBuilderCommon.SamplerSize
    ShapeBuilderCommon.GetParticlePosition(Particle, ParticleFieldAccessor<Vector3>, ParticleFieldAccessor<Single>)
    ShapeBuilderCommon.GetParticleSize(Particle, ParticleFieldAccessor<Single>, ParticleFieldAccessor<Single>)
    ShapeBuilder.VertexLayoutHasChanged
    ShapeBuilder.PrepareVertexLayout(ParticlePoolFieldsList)
    ShapeBuilder.UpdateVertexBuilder(ParticleVertexBuilder)
    ShapeBuilder.SetRequiredQuads(Int32, Int32, Int32)
    ShapeBuilder.Circumcenter(Vector3, Vector3, Vector3)

    Extension Methods

    ComponentBaseExtensions.DisposeBy<T>(T, ICollectorHolder)
    ComponentBaseExtensions.RemoveDisposeBy<T>(T, ICollectorHolder)
    • Improve this Doc
    • View Source
    In This Article

    Back to top

    Copyright © 2019-2021 .NET Foundation and Contributors
    Supported by the .NET Foundation