All-in-one super spawner for Unity.The demo materials can be converted for all pipelines.Minimum Unity Version 2022.3 LTS +Documentation | Discord | ContactSpawn Machine is a multi-functional spawning solution, offering both procedural generation and the ability to create detailed, handcrafted environments quickly and easily. It works in the Editor, at runtime, and optionally integrates with the ECS/DOTS framework and the addressable asset system.Whether you are a designer or a programmer, you will find it easy to leverage the tool for your needs and speed up your work.HOW IT WORKSYou add a 'Spawn Machine' component to a GameObject and build your own spawner within the inspector by adding and configuring modules to your liking. All you need is a Spawn Type module, such as 'Editor Prefabs' or 'DOTS', and Transform modules, which specify the quantity and locations, such as 'Raycast' or 'Mesh'.HIGHLIGHTS⭐ Modular Feature SetSpawn anything you need: from editor prefabs to pooled objects, Addressables, and DOTS Entities.Apply powerful configurations: editor physics simulation, splines, texture projection, and many more.Build your own library and reuse your spawners, supercharging your workflow when creating scenes or adding new runtime logic.✅ ExtensibleEasily integrate your own modules.For example, you can provide a simple list of positions to spawn prefabs in DOTS, without any additional system code.✈ Lightning-Fast PerformanceJob System & Burst Compilation.Any genre and platform, incl. Mobile and VR.🔉Integrated SystemsSave System.Gizmos System.Event System.Runtime Profiler.API.☝ SupportUp-to-date Online Documentation.Helpful Tooltips.Demo Scenes.Active Support (Discord, Email).Any feature missing? Please don't hesitate to reach out!REQUIREMENTSMinimum Unity Version 2022.3 LTS +DEPENDENCIESunity.burstunity.splinesunity.addressables (optional)unity.entities (optional)SPAWN TYPESEditor Prefabs - Can be used as a classic prefab spawner while working in the editor. Supports physics simulation and spawning via hotkey or mouse click.GameObjects - Instantiates Unity GameObjects at runtime.Pool - Utilizes the internal pooling solution, allowing prefabs to be shared among multiple components conveniently.ECS (DOTS) Entities - Spawns entities into a sub-scene while the Spawn Machine component and its execution remain in the classic scene.Addressables - Uses the addressables package to spawn GameObjects marked as addressables into the scene.MODULESTransform ModulesOne module is required for each component.Circle - Generates spawning data within a circle shape or on the circle's circumference.Cube - Generates spawning data on a cubic shape.Grid - Creates a 3-dimensional grid.Manual - Manually specifies spawn transform data.Mesh - Spawns on mesh vertices.Reference - Uses one or more scene references to generate transform data.Skinned Mesh - Spawns on skinned mesh vertices.Sphere - Generates spawning data within a spherical shape or on its surface.Spline - Generates spawning data on a Unity spline.Terrain - Generates spawning data on a Unity terrain.Modify ModulesOptional modules to modify existing transform data.Change Order - Changes the order of the transform data.Distance Filter - Filters data based on distance, such as a height filter.Method - Retrieves data from a method (e.g., OnCollisionEnter) to alter data.Noise Texture - Uses a Texture2D to generate noise.Offset - Offsets the current data.Offset Sum - Offsets the current data additively.Raycast - Raycasts the spawns to the ground.Reference - Uses one or more scene references to generate transform data.Remove - Removes items from the transform data.Remove Overlap - Removes overlapping items using either mesh or collider bounds.Rotate Around - Rotates items around a pivot point.Slope Filter - Filters data based on slope.Terrain Texture - Filters data based on a terrain texture.Void - Creates a void area from colliders.SYSTEMSSave System - Save and load your spawns at runtime with a simple method call, including a slot ID parameter.Gizmos System - Specify gizmo settings for each spawn type on each component individually, for example, to draw certain shapes, collider or mesh bounds, or simply the mesh of the prefab.Event System - Choose from a set of Unity Events which you can add modularly in the inspector or subscribe to an associated Unity Action via script. These include, for example, 'OnExecutionStart', 'OnTimePassed', or 'OnDestroy'.Runtime Profiler - An optional GameObject that displays information about active Spawn Machines in the scene, such as the type of objects being spawned.API - Please refer to this page for the full API.