Zigurous.Architecture
Classes
ArrayExtensions
Extension methods for arrays.
BehaviourExtensions
Extension methods for Unity Behaviors.
BoolReference
A reference to a boolean value, either a constant or BoolVariable.
BoolVariable
A boolean variable saved as a ScriptableObject.
BoundsReference
A reference to a Bounds value, either a constant or BoundsVariable.
BoundsVariable
A Bounds variable saved as a ScriptableObject.
ComparableExtensions
Extension methods for IComparable.
ConditionalAttribute
An attribute that shows or hides a field in the editor based on a condition.
ConditionalHideAttribute
An attribute that hides a field in the editor based on the state of another field.
ConditionalShowAttribute
An attribute that shows a field in the editor based on the state of another field.
CursorLockState
Sets the lock state of the cursor when the behavior is enabled and disabled.
CursorVisibility
Sets the visibility of the cursor when the behavior is enabled and disabled.
DictionaryExtensions
Extension methods for dictionaries.
DoubleAccumulator
Accumulates double values into a single total value.
DoubleReference
A reference to a double value, either a constant or DoubleVariable.
DoubleVariable
A double variable saved as a ScriptableObject.
EventReference
A reference to a UnityEvent or a GameEvent.
FixedUpdateStrategy
An update strategy executed during the fixed update loop.
FloatAccumulator
Accumulates float values into a single total value.
FloatReference
A reference to a float value, either a constant or FloatVariable.
FloatVariable
A float variable saved as a ScriptableObject.
GameEvent
A custom game event that can be saved as a project asset and referenced throughout the application.
GameEventListener
Listens for a custom game event to be raised and invokes a Unity event in response.
GameObjectExtensions
Extension methods for Unity GameObjects.
HashCode
Combines multiple hash codes into a single value.
HashSetExtensions
Extension methods for hash sets.
Identifier
Generates identifiers.
IntAccumulator
Accumulates int values into a single total value.
IntReference
A reference to an int value, either a constant or IntVariable.
IntVariable
An int variable saved as a ScriptableObject.
LateUpdateStrategy
An update strategy executed during the late update loop.
ListExtensions
Extension methods for lists.
LoadScene
Loads a scene using a specified set of options.
LongReference
A reference to a long value, either a constant or LongVariable.
LongVariable
A long variable saved as a ScriptableObject.
MonoBehaviourExtensions
Extension methods for Unity MonoBehaviors.
NormalUpdateStrategy
An update strategy executed during the normal update loop.
ObjectExtensions
Extension methods for Unity objects.
PathEscaper
Handles escaping and unescaping paths.
PercentageReference
A reference to a percentage value, either a constant or PercentageVariable.
PercentageVariable
A percentage variable saved as a ScriptableObject. Percentages are float values in the range [0..1].
QuaternionAccumulator
Accumulates Quaternion values into a single total value.
QuaternionReference
A reference to a Quaternion value, either a constant or QuaternionVariable.
QuaternionVariable
A Quaternion variable saved as a ScriptableObject.
ReadOnlyAttribute
An attribute that prevents a field from being modified in the editor.
RectReference
A reference to a Rect value, either a constant or RectVariable.
RectVariable
A Rect variable saved as a ScriptableObject.
Registry<T>
Manages a list of unique items and invokes callbacks when an item is added or removed from the list.
RenameAttribute
An attribute that renames a field in the editor.
RuntimeSet<T>
A ScriptableObject that stores a list of items. A project asset can be created for the runtime set so it can be referenced throughout the application, but the items are added and removed at runtime.
ScriptableVariable<T>
A variable type that derives from ScriptableObject.
ShortReference
A reference to a short value, either a constant or ShortVariable.
ShortVariable
A short variable saved as a ScriptableObject.
Singleton<T>
A singleton behavior that ensures only a single instance of a specified type is instantiated in the scene. The singleton will be destroyed when the scene is unloaded.
SingletonPersistent<T>
A singleton behavior that ensures only a single instance of a specified type is instantiated in the scene. The singleton will not be destroyed when changing scenes, thus making it persistent.
SortedSetExtensions
Extension methods for sorted sets.
StringExtensions
Extension methods for strings.
StringReference
A reference to a string value, either a constant or StringVariable.
StringVariable
A string variable saved as a ScriptableObject.
TargetFrameRate
Sets the target frame rate of the application.
TimedBehaviour
A behavior that invokes timed events at a set interval and/or duration.
TimerEvents
The events invoked for a timer.
TimerStats
The running stats for a timer.
TransformExtensions
Extension methods for Transform components.
UIntReference
A reference to a uint value, either a constant or UIntVariable.
UIntVariable
A uint variable saved as a ScriptableObject.
UpdateBehaviour
A behavior that can run in any update mode. The update mode can be changed as needed without incurring any additional performance cost.
UpdateStrategy
An update strategy that executes an update action.
ValueAccumulator<T>
Accumulates a set of stored values into a single total value.
ValueReference<TValue, TVariable>
A reference to a value of the specified type, either a fixed value or a variable.
Vector2Accumulator
Accumulates Vector2 values into a single total value.
Vector2IntAccumulator
Accumulates Vector2Int values into a single total value.
Vector2IntReference
A reference to a Vector2Int value, either a constant or Vector2IntVariable.
Vector2IntVariable
A Vector2Int variable saved as a ScriptableObject.
Vector2Reference
A reference to a Vector2 value, either a constant or Vector2Variable.
Vector2Variable
A Vector2 variable saved as a ScriptableObject.
Vector3Accumulator
Accumulates Vector3 values into a single total value.
Vector3IntAccumulator
Accumulates Vector3Int values into a single total value.
Vector3IntReference
A reference to a Vector3Int value, either a constant or Vector3IntVariable.
Vector3IntVariable
A Vector3Int variable saved as a ScriptableObject.
Vector3Reference
A reference to a Vector3 value, either a constant or Vector3Variable.
Vector3Variable
A Vector3 variable saved as a ScriptableObject.
Vector4Accumulator
Accumulates Vector4 values into a single total value.
Vector4Reference
A reference to a Vector4 value, either a constant or Vector4Variable.
Vector4Variable
A Vector4 variable saved as a ScriptableObject.
Yield
Caches yield statements to minimize garbage collection.
Structs
Bitmask
A bitmask representation that can be used for bitwise operations. A bitmask is a set of bits that can be set or cleared.
Bool3
Stores a tuple of 3 booleans.
ClampedRange
A range of values clamped between a lower and upper bound.
ColorRange
A range of Color values.
DoubleRange
A range of double values.
EulerRange
A range of euler values wrapped between -360 and +360.
FloatRange
A range of float values.
GridSize
Stores the size of a grid as rows and columns.
IntRange
A range of int values.
Quantity<T>
Stores a quantity of a given entity type.
Range<T>
A range of values of the given type.
Size
Stores the size of an entity as a width and height.
TimerSettings
The settings for a timer.
UIntRange
A range of uint values.
UnitIntervalRange
A range of values between zero and one.
Vector2IntRange
A range of Vector2Int values.
Vector2Range
A range of Vector2 values.
Vector3IntRange
A range of Vector3Int values.
Vector3Range
A range of Vector3 values.
Vector4Range
A range of Vector4 values.
Interfaces
INumberRange<T>
A generic interface for a range of number values.
IRange<T>
A generic interface for a range of values.
IScriptableObjectResettable
A type of ScriptableObject that can reset its values.
Enums
ConditionalAttribute.PropertyDrawer
A type of property drawer used to draw the field.
UpdateMode
An update mode a behavior can run with.
Delegates
ArrayExtensions.Reducer<TSum, TElement>
A function delegate that reduces an array into a single value.
ListExtensions.Reducer<TSum, TItem>
A function delegate that reduces a list into a single value.
UpdateStrategy.UpdateAction
A function delegate to execute an update action.