com.wallstop-studios.unity-helpers
Version:
Treasure chest of Unity developer tools
532 lines (338 loc) • 24.8 kB
Markdown
# Feature Index
Alphabetical index of all Unity Helpers features with quick links to documentation.
**Quick Navigation:** [A](#a) | [B](#b) | [C](#c) | [D](#d) | [E](#e) | [F](#f) | [G](#g) | [H](#h) | [I](#i) | [K](#k) | [L](#l) | [M](#m) | [N](#n) | [O](#o) | [P](#p) | [Q](#q) | [R](#r) | [S](#s) | [T](#t) | [U](#u) | [V](#v) | [W](#w) | [X](#x)
---
## A
**Animation Copier** - Sync AnimationClips between folders
→ [Editor Tools Guide](../features/editor-tools/editor-tools-guide.md#animation-copier)
**Animation Creator** - Bulk-create clips from sprite naming patterns
→ [Editor Tools Guide](../features/editor-tools/editor-tools-guide.md#animation-creator)
**Animation Event Editor** - Visual event editing with sprite preview
→ [Editor Tools Guide](../features/editor-tools/editor-tools-guide.md#animation-event-editor)
**AnimatedSpriteLayer** - Data structure for sprite animation layers
→ [Visual Components](../features/inspector/visual-components.md#animatedspritelayer)
**AnimatorEnumStateMachine** - Type-safe enum-based animator control
→ [Utility Components](../features/inspector/utility-components.md#animatorenumstatemachine)
**Async Extensions** - Await AsyncOperation with Task/ValueTask
→ [Math & Extensions](../features/utilities/math-and-extensions.md#asynccoroutine-interop)
**Attribute** - Dynamic numeric value with modifications
→ [Effects System](../features/effects/effects-system.md) | [Glossary](./glossary.md#attribute)
**Attribute Metadata Cache** - Pre-computed attribute reflection data
→ [Editor Tools Guide](../features/editor-tools/editor-tools-guide.md#attribute-metadata-cache-generator)
**AttributeEffect** - ScriptableObject for data-driven gameplay effects
→ [Effects System](../features/effects/effects-system.md)
**AttributesComponent** - Base class for modifiable attributes
→ [Effects System](../features/effects/effects-system.md) | [README](../readme.md#effects-attributes-and-tags)
---
## B
**Binary Heap** - Priority queue with O(log n) operations
→ [Data Structures](../features/utilities/data-structures.md#binary-heap-priority-queue)
**BitSet** - Compact boolean storage with bitwise operations
→ [Data Structures](../features/utilities/data-structures.md#bitset) | [README](../readme.md#data-structures)
**Buffering Pattern** - Reusable collections for zero-allocation queries
→ [README - Buffering Pattern](../readme.md#buffering-pattern) | [Glossary](./glossary.md#buffering-pattern)
**Buffers<T>** - Pooled collections (List/Stack/Queue/HashSet)
→ [README - Buffering Pattern](../readme.md#buffering-pattern)
---
## C
**Camera Extensions** - OrthographicBounds and helpers
→ [Math & Extensions](../features/utilities/math-and-extensions.md#unity-extensions)
**CenterPointOffset** - Define logical center points separate from transform pivot
→ [Utility Components](../features/inspector/utility-components.md#centerpointoffset)
**ChildComponent** - Auto-wire components from children
→ [Relational Components](../features/relational-components/relational-components.md) | [README](../readme.md#relational-components)
**ChildSpawner** - Conditional prefab instantiation with environment filtering
→ [Utility Components](../features/inspector/utility-components.md#childspawner)
**CircleLineRenderer** - Dynamic circle visualization synced to CircleCollider2D
→ [Utility Components](../features/inspector/utility-components.md#circlelinerenderer)
**CollisionProxy** - Event-based 2D collision detection without inheritance
→ [Utility Components](../features/inspector/utility-components.md#collisionproxy)
**Color Utilities** - Averaging (LAB/HSV/Weighted/Dominant), hex conversion
→ [Math & Extensions](../features/utilities/math-and-extensions.md#color-utilities)
**CoroutineHandler** - Singleton MonoBehaviour for coroutine hosting
→ [Utility Components](../features/inspector/utility-components.md#coroutinehandler)
**CosmeticEffectData** - Presenters for effect cosmetics
→ [Effects System](../features/effects/effects-system.md)
**Cyclic Buffer** - Fixed-capacity ring buffer
→ [Data Structures](../features/utilities/data-structures.md#cyclic-buffer-ring-buffer) | [README](../readme.md#data-structures)
---
## D
**Data Structures** - Heaps, tries, sparse sets, and more
→ [Data Structures Guide](../features/utilities/data-structures.md) | [README](../readme.md#data-structures)
**Deque** - Double-ended queue
→ [Data Structures](../features/utilities/data-structures.md#deque-double-ended-queue) | [README](../readme.md#data-structures)
**Dictionary Extensions** - GetOrAdd, GetOrElse, Merge, ContentEquals
→ [Math & Extensions](../features/utilities/math-and-extensions.md#collections)
**Disjoint Set** - Union-find for connectivity
→ [Data Structures](../features/utilities/data-structures.md#disjoint-set-union-find) | [README](../readme.md#data-structures)
**Douglas-Peucker** - Polyline simplification algorithm
→ [Math & Extensions](../features/utilities/math-and-extensions.md#geometry) | [Glossary](./glossary.md#douglas-peucker-algorithm)
**WReadOnly** - Read-only inspector display attribute
→ [Editor Tools Guide](../features/editor-tools/editor-tools-guide.md#wreadonly-property-drawer) | [README](../readme.md#relational-components)
---
## E
**Editor Tools** - 20+ tools for sprites, animations, validation
→ [Editor Tools Guide](../features/editor-tools/editor-tools-guide.md) | [README](../readme.md#editor-tools)
**EffectHandle** - Identifier for effect application instances
→ [Effects System](../features/effects/effects-system.md) | [Glossary](./glossary.md#handle-effect-handle)
**EffectHandler** - Component managing effect lifecycle
→ [Effects System](../features/effects/effects-system.md)
**Effects System** - Data-driven buffs/debuffs/status effects
→ [Effects System Guide](../features/effects/effects-system.md) | [README](../readme.md#effects-attributes-and-tags)
**EnhancedImage** - Unity Image with HDR color and shape masks
→ [Visual Components](../features/inspector/visual-components.md#enhancedimage-ugui) | [Editor Tools Guide](../features/editor-tools/editor-tools-guide.md#enhancedimage-editor)
**Enum Extensions** - Zero-allocation flag checks, cached names, display names
→ [Math & Extensions](../features/utilities/math-and-extensions.md#enum-helpers)
---
## F
**Failed Tests Exporter** - Capture and export failed test results to timestamped files
→ [Failed Tests Exporter](../features/editor-tools/failed-tests-exporter.md)
**Fit Texture Size** - Auto-adjust texture max size to source dimensions
→ [Editor Tools Guide](../features/editor-tools/editor-tools-guide.md#fit-texture-size)
**FlurryBurstRandom** - Six-word ARX generator (FlurryBurst32 port)
→ [README - Random Generators](../readme.md#random-number-generators) | [Random Performance](../performance/random-performance.md)
---
## G
**Gaussian Distribution** - Normal distribution random values
→ [README - Random Generators](../readme.md#random-number-generators)
**Geometry Helpers** - Lines, ranges, parabolas, convex hulls
→ [Math & Extensions](../features/utilities/math-and-extensions.md#geometry)
**Glossary** - Term definitions
→ [Glossary](./glossary.md)
---
## H
**Heap** - Binary heap for priority queues
→ [Data Structures](../features/utilities/data-structures.md#binary-heap-priority-queue) | [README](../readme.md#data-structures)
**Helpers Class** - General utilities (layers, sprites, components)
→ [Helper Utilities](../features/utilities/helper-utilities.md#gameplay-helpers) | [README](../readme.md#core-math-extensions)
**Hulls** - Convex vs concave hull algorithms
→ [Hulls Guide](../features/spatial/hulls.md)
---
## I
**IllusionFlow** - Default recommended PRNG
→ [README - Random Generators](../readme.md#random-number-generators) | [Random Performance](../performance/random-performance.md)
**Image Blur Tool** - Gaussian blur for textures
→ [Editor Tools Guide](../features/editor-tools/editor-tools-guide.md#image-blur-tool)
**Immutable Trees** - Spatial trees requiring rebuild on changes
→ [Spatial Trees 2D](../features/spatial/spatial-trees-2d-guide.md) | [Glossary](./glossary.md#immutable-tree)
**Inspector Settings** - Project-wide configuration for inspector features (pagination, colors, animations)
→ [Inspector Settings](../features/inspector/inspector-settings.md)
**Inspector Tooling Overview** - Complete guide to inspector attributes and serialization types
→ [Inspector Overview](../features/inspector/inspector-overview.md)
**IntDropdown** - Integer dropdown property drawer
→ [Editor Tools Guide](../features/editor-tools/editor-tools-guide.md#intdropdown-property-drawer) | [Inspector Selection Attributes](../features/inspector/inspector-selection-attributes.md#intdropdown)
**IRandom Interface** - Common interface for all RNGs
→ [README - Random Generators](../readme.md#random-number-generators)
---
## K
**KdTree2D** - 2D k-dimensional tree for nearest neighbors
→ [2D Spatial Trees](../features/spatial/spatial-trees-2d-guide.md) | [2D Performance](../performance/spatial-tree-2d-performance.md)
**KdTree3D** - 3D k-dimensional tree for nearest neighbors
→ [3D Spatial Trees](../features/spatial/spatial-trees-3d-guide.md) | [3D Performance](../performance/spatial-tree-3d-performance.md)
---
## L
**LayeredImage** - UI Toolkit element for composited sprite animations
→ [Visual Components](../features/inspector/visual-components.md#layeredimage)
**Line2D / Line3D** - Line segment operations
→ [Math & Extensions](../features/utilities/math-and-extensions.md#geometry)
**LineHelper** - Douglas-Peucker simplification
→ [Math & Extensions](../features/utilities/math-and-extensions.md#geometry) | [README](../readme.md#core-math-extensions)
**llms.txt** - LLM-friendly documentation for AI assistants
→ [llms.txt](https://github.com/wallstop/unity-helpers/blob/main/llms.txt)
**LoggingExtensions** - Color-coded, thread-safe logging utilities
→ [Logging Extensions](../features/logging/logging-extensions.md)
**LZMA Compression** - Compression utilities
→ [README - Serialization](../readme.md#serialization)
---
## M
**Math Helpers** - Positive modulo, wrapped arithmetic, geometry
→ [Math & Extensions Guide](../features/utilities/math-and-extensions.md) | [README](../readme.md#core-math-extensions)
**MatchColliderToSprite** - Sync collider shape to sprite
→ [Utility Components](../features/inspector/utility-components.md#matchcollidertosprite) | [Editor Tools Guide](../features/editor-tools/editor-tools-guide.md#matchcollidertosprite-editor)
**MatchTransform** - Follow another transform with offset and timing control
→ [Utility Components](../features/inspector/utility-components.md#matchtransform)
---
## N
**Noise Maps** - Perlin noise generation
→ [README - Random Generators](../readme.md#random-number-generators)
**WNotNull Attribute** - Inspector validation attribute
→ [README](../readme.md#relational-components)
**Numeric Helpers** - PositiveMod, Clamp, Approximately
→ [Math & Extensions](../features/utilities/math-and-extensions.md#numeric-helpers)
---
## O
**Oscillator** - Automatic circular/elliptical motion component
→ [Utility Components](../features/inspector/utility-components.md#oscillator)
**OctTree3D** - 3D spatial tree (octree)
→ [3D Spatial Trees](../features/spatial/spatial-trees-3d-guide.md) | [3D Performance](../performance/spatial-tree-3d-performance.md)
**Odin Inspector Migration** - Step-by-step guide for migrating from Odin Inspector
→ [Migration Guide](../guides/odin-migration-guide.md)
**Odin Compatibility** - Automatic Odin Inspector integration
→ [Singletons - Odin](../features/utilities/singletons.md#odin-compatibility) | [Glossary](./glossary.md#odin-compatibility)
---
## P
**Parabola** - Parabolic trajectory helper
→ [Math & Extensions](../features/utilities/math-and-extensions.md#geometry)
**ParentComponent** - Auto-wire components from parents
→ [Relational Components](../features/relational-components/relational-components.md) | [README](../readme.md#relational-components)
**PcgRandom** - High-quality PCG random generator
→ [README - Random Generators](../readme.md#random-number-generators) | [Random Performance](../performance/random-performance.md)
**PhotonSpinRandom** - SHISHUA-inspired bulk generator
→ [README - Random Generators](../readme.md#random-number-generators) | [Random Performance](../performance/random-performance.md)
**Point-in-Polygon** - 2D/3D containment tests
→ [Math & Extensions](../features/utilities/math-and-extensions.md#geometry)
**PolygonCollider2DOptimizer** - Simplify collider points
→ [Utility Components](../features/inspector/utility-components.md#polygoncollider2doptimizer) | [Editor Tools Guide](../features/editor-tools/editor-tools-guide.md#polygoncollider2doptimizer-editor)
**Predictive Aiming** - Calculate where to aim at moving targets
→ [Helper Utilities](../features/utilities/helper-utilities.md#predictive-aiming)
**Pooled Buffers** - Reusable memory allocations
→ [README - Buffering Pattern](../readme.md#buffering-pattern) | [Glossary](./glossary.md#pooled-buffers)
**Positive Modulo** - Non-negative modulo operation
→ [Math & Extensions](../features/utilities/math-and-extensions.md#numeric-helpers) | [Glossary](./glossary.md#positive-modulo)
**Prefab Checker** - Comprehensive prefab validation
→ [Editor Tools Guide](../features/editor-tools/editor-tools-guide.md#prefab-checker)
**PriorityQueue** - Min/max heap-based priority queue
→ [Data Structures](../features/utilities/data-structures.md#binary-heap-priority-queue) | [README](../readme.md#data-structures)
**PRNG.Instance** - Thread-local default random generator
→ [README - Random Generators](../readme.md#random-number-generators)
**Property Drawers** - Custom inspector rendering
→ [Editor Tools Guide](../features/editor-tools/editor-tools-guide.md#property-drawers--attributes)
**Protobuf Serialization** - Compact binary serialization
→ [Serialization Guide](../features/serialization/serialization.md) | [Glossary](./glossary.md#protobuf-protocol-buffers)
---
## Q
**QuadTree2D** - 2D spatial tree (quadtree)
→ [2D Spatial Trees](../features/spatial/spatial-trees-2d-guide.md) | [2D Performance](../performance/spatial-tree-2d-performance.md)
---
## R
**Random Extensions** - Random vectors, colors, weighted selection, subset sampling
→ [Random Generators Guide](../features/utilities/random-generators.md)
**Random Generators** - 15+ high-performance PRNG implementations
→ [Random Generators Guide](../features/utilities/random-generators.md) | [Random Performance](../performance/random-performance.md)
**Range<T>** - Inclusive/exclusive range helper
→ [Math & Extensions](../features/utilities/math-and-extensions.md#geometry)
**Rect/Bounds Extensions** - Conversions and aggregation
→ [Math & Extensions](../features/utilities/math-and-extensions.md#unity-extensions)
**RectTransform Extensions** - GetWorldRect and helpers
→ [Math & Extensions](../features/utilities/math-and-extensions.md#unity-extensions)
**Reflection Helpers** - High-performance cached reflection
→ [Reflection Helpers](../features/utilities/reflection-helpers.md)
**Relational Components** - Auto-wire hierarchy components
→ [Relational Components Guide](../features/relational-components/relational-components.md) | [Relational Component Performance Benchmarks](../performance/relational-components-performance.md)
**RTree2D** - 2D R-tree for bounding boxes
→ [2D Spatial Trees](../features/spatial/spatial-trees-2d-guide.md) | [2D Performance](../performance/spatial-tree-2d-performance.md)
**RTree3D** - 3D R-tree for bounding volumes
→ [3D Spatial Trees](../features/spatial/spatial-trees-3d-guide.md) | [3D Performance](../performance/spatial-tree-3d-performance.md)
**RuntimeSingleton<T>** - Component singleton pattern
→ [Singletons Guide](../features/utilities/singletons.md) | [Testing Patterns](../features/utilities/singletons.md#testing-patterns) | [README](../readme.md#singleton-utilities-odincompatible)
---
## S
**ScriptableObject Singleton** - Settings/data singleton pattern
→ [Singletons Guide](../features/utilities/singletons.md) | [Testing Patterns](../features/utilities/singletons.md#testing-patterns) | [README](../readme.md#singleton-utilities-odincompatible)
**ScriptableObject Singleton Creator** - Auto-create singleton assets
→ [Editor Tools Guide](../features/editor-tools/editor-tools-guide.md#scriptableobject-singleton-creator)
**Serialization** - JSON, Protobuf, BinaryFormatter support
→ [Serialization Guide](../features/serialization/serialization.md) | [README](../readme.md#serialization)
**SiblingComponent** - Auto-wire components on same GameObject
→ [Relational Components](../features/relational-components/relational-components.md) | [README](../readme.md#relational-components)
**SerializableDictionary** - Unity-friendly dictionary with key/value serialization
→ [Serialization Types](../features/serialization/serialization-types.md#serializabledictionary)
**SerializableHashSet** / **SerializableSortedSet** - Unity-friendly set collections
→ [Serialization Types](../features/serialization/serialization-types.md#serializablehashset--serializablesortedset)
**SerializableNullable** - Unity-friendly nullable value wrapper
→ [Serialization Types](../features/serialization/serialization-types.md#serializablenullable)
**SerializableType** - Type reference that survives refactoring
→ [Serialization Types](../features/serialization/serialization-types.md#serializabletype)
**Singletons** - Runtime and ScriptableObject singleton patterns
→ [Singletons Guide](../features/utilities/singletons.md) | [README](../readme.md#singleton-utilities-odincompatible)
**StormDropRandom** - Large-buffer ARX generator
→ [README - Random Generators](../readme.md#random-number-generators) | [Random Performance](../performance/random-performance.md)
**Sparse Set** - O(1) membership with dense iteration
→ [Data Structures](../features/utilities/data-structures.md#sparse-set) | [README](../readme.md#data-structures)
**Spatial Hash 2D/3D** - Grid-based spatial structure
→ [2D Spatial Trees](../features/spatial/spatial-trees-2d-guide.md) | [3D Spatial Trees](../features/spatial/spatial-trees-3d-guide.md)
**Spatial Trees** - Fast spatial queries (QuadTree, KdTree, RTree, OctTree)
→ [2D Guide](../features/spatial/spatial-trees-2d-guide.md) | [3D Guide](../features/spatial/spatial-trees-3d-guide.md)
**Spatial Tree Semantics** - Boundary behavior and edge cases
→ [Spatial Tree Semantics](../features/spatial/spatial-tree-semantics.md)
**Sprite Animation Editor** - Visual animation editing with preview
→ [Editor Tools Guide](../features/editor-tools/editor-tools-guide.md#sprite-animation-editor-animation-viewer-window)
**Sprite Atlas Generator** - Regex/label-based atlas creation
→ [Editor Tools Guide](../features/editor-tools/editor-tools-guide.md#sprite-atlas-generator)
**Sprite Cropper** - Remove transparent padding
→ [Editor Tools Guide](../features/editor-tools/editor-tools-guide.md#sprite-cropper)
**Sprite Label Processor** - Auto-cache sprite labels
→ [Editor Tools Guide](../features/editor-tools/editor-tools-guide.md#sprite-label-processor)
**Sprite Pivot Adjuster** - Alpha-weighted pivot adjustment
→ [Editor Tools Guide](../features/editor-tools/editor-tools-guide.md#sprite-pivot-adjuster)
**Sprite Settings Applier** - Batch sprite import settings
→ [Editor Tools Guide](../features/editor-tools/editor-tools-guide.md#sprite-settings-applier)
**Sprite Sheet Animation Creator** - Convert sprite sheets to clips
→ [Editor Tools Guide](../features/editor-tools/editor-tools-guide.md#sprite-sheet-animation-creator)
**SpriteRendererMetadata** - Stack-based color and material management
→ [Utility Components](../features/inspector/utility-components.md#spriterenderermetadata)
**SpriteRendererSync** - Mirror SpriteRenderer properties to another renderer
→ [Utility Components](../features/inspector/utility-components.md#spriterenderersync)
**StartTracker** - Track MonoBehaviour Start() lifecycle event
→ [Utility Components](../features/inspector/utility-components.md#starttracker)
**String Extensions** - Casing, encoding, Levenshtein distance, Base64, analysis
→ [Math & Extensions](../features/utilities/math-and-extensions.md#strings)
**StringInList** - String dropdown property drawer with search and pagination
→ [Inspector Selection Attributes](../features/inspector/inspector-selection-attributes.md#stringinlist) | [Editor Tools Guide](../features/editor-tools/editor-tools-guide.md#stringinlist-property-drawer)
---
## T
**Tag Handler** - Reference-counted string tags
→ [Effects System](../features/effects/effects-system.md) | [Glossary](./glossary.md#tag-handler)
**Texture Resizer** - Batch resize with bilinear/point filtering
→ [Editor Tools Guide](../features/editor-tools/editor-tools-guide.md#texture-resizer)
**Texture Settings Applier** - Batch texture import settings
→ [Editor Tools Guide](../features/editor-tools/editor-tools-guide.md#texture-settings-applier)
**Trie** - Prefix tree for autocomplete
→ [Data Structures](../features/utilities/data-structures.md#trie-prefix-tree) | [README](../readme.md#data-structures)
---
## U
**Unity Extensions** - Rect/Bounds, Camera, Rigidbody2D, Grid helpers
→ [Math & Extensions](../features/utilities/math-and-extensions.md#unity-extensions)
**UnityMainThreadDispatcher** - Execute work on main thread from background threads
→ [Threading Guide](../features/logging/unity-main-thread-dispatcher.md) | [Helper Utilities](../features/utilities/helper-utilities.md#threading)
---
## V
**ValidateAssignment** - Inspector validation attribute
→ [Relational Components](../features/relational-components/relational-components.md)
**Vector Extensions** - Random vectors, noise detection
→ [Math & Extensions](../features/utilities/math-and-extensions.md#random-generators)
---
## W
**WallMath** - Positive modulo, wrapped arithmetic
→ [Math & Extensions](../features/utilities/math-and-extensions.md#numeric-helpers)
**WallstopArrayPool<T>** - Pooled array rental
→ [README - Buffering Pattern](../readme.md#buffering-pattern)
**WallstopFastArrayPool<T>** - Fast array pool for short-lived arrays (`T : unmanaged`)
→ [README - Buffering Pattern](../readme.md#buffering-pattern)
**WButton** - Inspector method buttons with history, async support, cancellation
→ [Inspector Buttons](../features/inspector/inspector-button.md) | [Inspector Overview](../features/inspector/inspector-overview.md)
**WEnumToggleButtons** - Enum and flag enum toggle button toolbars
→ [Inspector Selection Attributes](../features/inspector/inspector-selection-attributes.md#wenumtogglebuttons)
**WGuid** - Immutable version-4 GUID using two longs for fast Unity serialization
→ [Serialization Types](../features/serialization/serialization-types.md#wguid)
**WGroup** / **WGroupEnd** - Boxed inspector sections with auto-inclusion, palette-driven styling, and optional collapsible headers
→ [Inspector Grouping Attributes](../features/inspector/inspector-grouping-attributes.md#wgroup--wgroupend)
**Weighted Random** - Weighted random selection
→ [README - Random Generators](../readme.md#random-number-generators)
**WInLineEditor** - Inline inspector for object references
→ [Editor Tools Guide](../features/editor-tools/editor-tools-guide.md#winlineeditor-property-drawer) | [README - Relational Components](../readme.md#relational-components)
**WShowIf** - Conditional field display attribute with comparison operators
→ [Inspector Conditional Display](../features/inspector/inspector-conditional-display.md) | [Editor Tools Guide](../features/editor-tools/editor-tools-guide.md#wshowif-property-drawer)
**WValueDropDown** - Generic dropdown for any type with fixed values or providers
→ [Inspector Selection Attributes](../features/inspector/inspector-selection-attributes.md#wvaluedropdown)
---
## X
**XorShift Random** - Fast XorShift PRNG
→ [README - Random Generators](../readme.md#random-number-generators) | [Random Performance](../performance/random-performance.md)
**XoroShiro Random** - Fast XoroShiro PRNG
→ [README - Random Generators](../readme.md#random-number-generators) | [Random Performance](../performance/random-performance.md)
---
**See Also:**
- [Glossary](./glossary.md) - Term definitions
- [Getting Started Guide](./getting-started.md) - Quick start guide
- [Main Documentation](../readme.md) - Main documentation