UNPKG

com.wallstop-studios.unity-helpers

Version:

Treasure chest of Unity developer tools

532 lines (338 loc) 24.8 kB
# 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