Table of Contents

Namespace FluffyUnderware.Curvy.Generator

Classes

CGBounds

Bounds data class

CGBoundsGroup

Defines a group of items with placement rules (spacing, rotation, scale, translation) for modules like BuildVolumeSpots

CGBoundsGroupItem

An entry in a CGBoundsGroup, referencing an item by index with a weight for randomized selection

CGData

Data Base class

CGDataInfoAttribute

Additional properties for CGData based classes

CGDataReference

Class referencing a particular module's output slot

CGDataRequestMetaCGOptions

Additional Spline Request parameters

CGDataRequestParameter

Request Parameter base class

CGDataRequestRasterization

Rasterization Request parameters

CGDataRequestShapeRasterization

Shape Rasterization Request parameters

CGGameObject

GameObject data (Bounds + Object)

CGGameObjectProperties

Defines properties for game objects used within the Curvy Generator. This class allows for specifying transformations (translation, rotation, scale) to be applied to a game object when it is utilized by a generator module.

CGGameObjectResourceCollection

Collection of GameObject resources

CGGameObjectResourceLoader

GameObject resource loader class

CGMaterialSettings

UV and Material transformation settings

CGMaterialSettingsEx

Extended UV and Material transformation settings

CGMeshProperties

Helper class used by InputMesh module

CGMeshResource

Mesh Resource Component used by Curvy Generator

CGMeshResourceCollection

Collection of Mesh Resources

CGMeshResourceLoader

Mesh resource loader class

CGModule

Curvy Generator module base class

CGModuleInputSlot

Class defining a module's input slot

CGModuleLink

Class defining a linkage between two modules' slots

CGModuleOutputSlot

Class defining a module's output slot

CGModuleProperties

Stores the visual/UI properties of a CGModule in the Curvy Generator graph editor, such as position and size

CGModuleSlot

Class defining a module slot

CGPath

Path Data (Shape + Direction (Spline Tangents) + Orientation/Up)

CGResourceHandler

Manages resource creation and destruction for the Curvy Generator by delegating to registered ICGResourceLoader instances

CGShape

Rasterized Shape Data (Polyline)

CGShapeResourceLoader

Shape (2D spline) resource loader class

CGSplineResourceLoader

Spline resource loader class

CGSpotComparer

An IComparer that compares instances of CGSpot based on their Index

CGSpots

A collection of CGSpot

CGUtility

Curvy Generator Utility class

CGVMesh

Mesh Data (Bounds + Vertex,UV,UV2,Normal,Tangents,SubMeshes)

CGVSubMesh

SubMesh data (triangles, material)

CGVolume

Volume Data (Path + Vertex, VertexNormal, Cross)

CGWeightedItem

An item that has a weight associated to it

CurvyGenerator

Curvy Generator component

InputSlotInfo

Attribute to define input slot properties

ModuleInfoAttribute

Attribute defining basic module properties

OutputSlotInfo

Attribute to define output slot properties

SamplePointsMaterialGroup

A section of one or more patches, all sharing the same MaterialID

SamplePointsMaterialGroupCollection

List of Material Groups

ShapeOutputSlotInfo

An OutputSlotInfo preset for modules that output CGShape data. Allows modules to output a CGShape that varies along a shape extrusion. See also CGDataRequestShapeRasterization

SlotInfo

Attribute to define slot properties

SplineInputModuleBase

Base class for spline input modules

TRSModuleBase

Base class for TRS Modules

Structs

CGSpot

Spots are used to place objects (like meshes or Game Objects). A spot is defined by spatial coordinates (similar to Transform) and the index of the object to place

ControlPointOption

Rasterization helper

DuplicateSamplePoint

Data about duplicated points, meaning a couple of points sharing the same position. Such duplicated points are used to store different normals or different U coordinates at the same position

SamplePointUData

UV-related data associated with a sample point during mesh generation

SamplePointsPatch

A patch of vertices to be connected by triangles (i.e. same Material and no hard edges within a patch)

Interfaces

ICGResourceCollection

Resource Collection interface

ICGResourceLoader

Interface for creating and destroying resources managed by the CurvyGenerator.

IExternalInput

For modules that rely on external input (Splines, Meshes etc..)

INoProcessing

For modules that don't process anything

IOnRequestProcessing

For modules that process data on demand

IPathProvider

For modules that output instances of CGPath

Enums

CGBoundsGroup.RotationModeEnum

How the rotation axes are defined related to the Volume's data

CGColliderEnum

Types of colliders that can be generated by the Curvy Generator

CGDataRequestRasterization.ModeEnum
CGKeepAspectMode

Aspect Mode correction modes enum

CGReferenceMode

Which entity an operation refers to: either an object itself or its source

CGYesNoAuto

Three-state option for toggling between explicitly enabled, disabled, or automatic behavior

SlotInfo.SlotArrayType

Defines what type of Array is used