Show / Hide Table of Contents

    Class Buffer4Extension

    Buffer4 extension helper and utilities

    public static class Buffer4Extension
    Namespace Engine4.Internal
    Inheritance
    System.Object
    Buffer4Extension

    Methods

    AddBySequence(Buffer4, SequenceMode, VertexProfile[])

    Add by given sequence

    public static void AddBySequence(this Buffer4 buffer, SequenceMode mode, params VertexProfile[] v)

    AddBySequence(Buffer4, SequenceMode, Int32[])

    Add by given sequence

    public static void AddBySequence(this Buffer4 buffer, SequenceMode mode, params int[] v)

    AddCube(Buffer4, VertexProfile, VertexProfile, VertexProfile, VertexProfile, VertexProfile, VertexProfile, VertexProfile, VertexProfile)

    Helper to add a cube from 8 existing verts index. (profile)

    public static void AddCube(this Buffer4 buffer, VertexProfile v0, VertexProfile v1, VertexProfile v2, VertexProfile v3, VertexProfile v4, VertexProfile v5, VertexProfile v6, VertexProfile v7)

    AddPoint(Buffer4, VertexProfile)

    Add an artbitrary point. (profile)

    public static void AddPoint(this Buffer4 buffer, VertexProfile v0)

    AddPoint(Buffer4, Int32[])

    Add points.

    public static void AddPoint(this Buffer4 buffer, params int[] v)

    AddPolygon(Buffer4, Int32[])

    Add polygon points/wires/surfaces.

    public static void AddPolygon(this Buffer4 buffer, params int[] v)

    AddPrism(Buffer4, VertexProfile, VertexProfile, VertexProfile, VertexProfile, VertexProfile, VertexProfile)

    Helper to add a triangular prism from 6 existing verts index. (profile)

    public static void AddPrism(this Buffer4 buffer, VertexProfile v0, VertexProfile v1, VertexProfile v2, VertexProfile v3, VertexProfile v4, VertexProfile v5)

    AddProfile(Buffer4, VertexProfile, VertexProfile)

    Add new profiles to remaining indice

    public static void AddProfile(this Buffer4 buffer, VertexProfile v0, VertexProfile v1)

    AddProfile(Buffer4, VertexProfile, VertexProfile, VertexProfile)

    Add new profiles to remaining indice

    public static void AddProfile(this Buffer4 buffer, VertexProfile v0, VertexProfile v1, VertexProfile v2)

    AddProfile(Buffer4, VertexProfile, VertexProfile, VertexProfile, VertexProfile)

    Add new profiles to remaining indice

    public static void AddProfile(this Buffer4 buffer, VertexProfile v0, VertexProfile v1, VertexProfile v2, VertexProfile v3)

    AddPyramid(Buffer4, VertexProfile, VertexProfile, VertexProfile, VertexProfile, VertexProfile)

    Helper to add a pyramid from 5 existing verts index. (profile)

    public static void AddPyramid(this Buffer4 buffer, VertexProfile v0, VertexProfile v1, VertexProfile v2, VertexProfile v3, VertexProfile v4)

    AddQuad(Buffer4, VertexProfile, VertexProfile, VertexProfile, VertexProfile)

    Add a flat quad. (profile)

    public static void AddQuad(this Buffer4 buffer, VertexProfile v0, VertexProfile v1, VertexProfile v2, VertexProfile v3)

    AddQuad(Buffer4, Int32[])

    Add quads.

    public static void AddQuad(this Buffer4 buffer, params int[] v)

    AddSegment(Buffer4, VertexProfile, VertexProfile)

    Add a segment. (profile)

    public static void AddSegment(this Buffer4 buffer, VertexProfile v0, VertexProfile v1)

    AddSegment(Buffer4, Int32[])

    Add segments.

    public static void AddSegment(this Buffer4 buffer, params int[] v)

    AddTriangle(Buffer4, VertexProfile, VertexProfile, VertexProfile)

    Add a flat triangle. (profile)

    public static void AddTriangle(this Buffer4 buffer, VertexProfile v0, VertexProfile v1, VertexProfile v2)

    AddTriangle(Buffer4, Int32[])

    Add triangles.

    public static void AddTriangle(this Buffer4 buffer, params int[] v)

    AddTrimid(Buffer4, VertexProfile, VertexProfile, VertexProfile, VertexProfile)

    Add a trimid (triangle pyramid). (profile)

    public static void AddTrimid(this Buffer4 buffer, VertexProfile v0, VertexProfile v1, VertexProfile v2, VertexProfile v3)

    AddTrimid(Buffer4, Int32[])

    Add trimids.

    public static void AddTrimid(this Buffer4 buffer, params int[] v)

    AddVertex(Buffer4, Vector4[])

    Add multiple vertexes.

    public static int AddVertex(this Buffer4 buffer, params Vector4[] v)
    Remarks

    The returning value is the vertex index for the first vertex.

    Colorize(Buffer4, Color)

    Set a solid color (without uv) to remaining indices

    public static void Colorize(this Buffer4 buffer, Color color)

    CopyTo(Buffer4, Buffer4)

    Append buffer content to another buffer

    public static void CopyTo(this Buffer4 origin, Buffer4 dest)

    CopyTo(Buffer4, Buffer4, Boolean)

    Append or overwrite buffer content to another buffer

    public static void CopyTo(this Buffer4 origin, Buffer4 dest, bool overwrite)

    Sequence(Buffer4, SequenceMode)

    Automatically add vertices to indices buffer since last Align() using given sequencing preset.

    public static void Sequence(this Buffer4 buffer, SequenceMode mode)

    Sequence(Buffer4, SequenceMode, Int32, Int32)

    Automatically add vertices to indices buffer since last Align() using given sequencing preset.

    public static void Sequence(this Buffer4 buffer, SequenceMode mode, int start = 0, int count = -1)

    SequenceGrid(Buffer4, Int32, Int32, Int32, Int32)

    Special sequencing tool when dealing with 1D, 2D, 3D or 4D grid vertices.

    public static void SequenceGrid(this Buffer4 buffer, int x, int y = 1, int z = 1, int w = 1)
    Remarks

    Set the grid count in the parameter. The nested order is for(x) => for(y) => for(z) => for(w). the starting point is always from the last Align()

    Transform(Buffer4, Matrix4x5)

    Transform vertices since last Align()

    public static void Transform(this Buffer4 buffer, Matrix4x5 matrix)

    Transform(Buffer4, Matrix4x5, Vector4)

    Translate and Transform vertices since last Align()

    public static void Transform(this Buffer4 buffer, Matrix4x5 matrix, Vector4 center)
    ▲ Copyright © 2017 Wello Soft