Namespace CarbideFunction.Wildtile
Classes
ArrayLookup
CollapseInfoLog
DetailedVectorString
DualGridVoxelMeshBackupTiles
Holds a single tile game object for each marching cube configuration
This is used by the
DualGridVoxelMeshPlaceholderTiles
Holds a single tile game object for each marching cube configuration.
This is intended to be used by user-code when creating level editors.
Edge
EmptyAsset
FaceDataSerialization
FlatArrayIndex
This extension class contains methods for interacting with a flat array as though it were a three dimensional array.
Unity-serializable arrays can only be 1 dimensional - this class allows the user to interact with them in a 3D context.
GenericInfoLog<SettingsGetter>
GridPlacer
This Unity component manages the grid placing during edit time and runtime.
It will automatically generate a mesh when the world starts, both in editor and in the game. It can also generate the mesh later by calling GenerateNow(Boolean).
Hash
This static class contains functions for calculating hashes from different Unity types.
All functions are deterministic and are well spread across the output range. This is not secure for cryptography.
Vectors are quantized before hashing - for each component of the vector, work out the closest fraction the number is and use that to seed the hashing algorithm. The size of the fraction is controlled by the quantizationResolution
parameter.
ImportInfoLog
InsidenessCalculator
This class contains functions for determining whether a point is within an open mesh.
It is intended for use with the corners of voxel cubes, as seen in Tileset.
LayerAttribute
Attribute to select a single layer.
MenuConstants
Module
NeighborConstraint
PositiveModuloLibrary
This extension class contains a function that returns the positive only modulo of a value.
Propagation
QuantizedVector
Slot
SlotEdge
SlotGrid
Tileset
TilesetImporter
This class is an editor-only asset that stores the import settings for a model, so that the model can be reliably reimported to modules in a marching cubes asset.
TilesetToWaveFunctionCollapser
TransformedModule
Triangle
This class contains three 3D vectors that comprise a triangle. It is bespoke for CarbideFunction.Wildtile and used in the insideness calculator.
VoxelGrid
VoxelMesher
This class manages a naive mesh for a voxel grid.
It can generate the naive mesh and can map any face index on the generated mesh to a voxel face. This is used by TileMapEditorTool to select which voxel to fill/clear when clicking on the voxel grid.
WaveFunctionCollapser
WildcardSlotReducer
Structs
CollapseInfoLogSettingsGetter
FaceData<ContainedData>
FaceDataSerialization.SerializationFace
FaceHash
ImportInfoLogSettingsGetter
Module.FaceHashes
Tileset.CubeConfiguration
Tileset.FaceHashToOppositeFaceHash
VoxelMesher.FaceData
This struct describes the voxel coordinates for a voxel face.
VoxelMesher.GeneratedMesh
Contains the output of a
Interfaces
IIsLogEnabledGetter
Handles log messages without costing lots of work if the logs are disabled by the user in their user preferences.
Example implementation of SettingGetter
:
public struct CustomLogGetter : IIsLogEnabledGetter
{
bool IIsLogEnabledGetter.IsEnabled(Editor.UserSettings userSettings)
{
// put your custom log setting here
return userSettings.reportCustomLogs;
}
}
Enums
CoroutineStatus
Face
GridPlacer.GenerateOnStartUp
InsidenessCalculator.LineIntersectionResult
Propagation.FullPropagationResult
Propagation.PropagationResult
WaveFunctionCollapser.CollapseResult
Delegates
GenericInfoLog<SettingsGetter>.GenerateMessage
GridPlacer.OnCollapseEvent
Called during collapse to report information to the calling code in a timely manner.
GridPlacer.OnGenerationComplete
This delegate is called when