
Daedalus
What is it?
Daedalus is an Unreal Engine editor plugin that provides a dedicated sub-editor for visually editing modular structures. Users can build their own structures with reusable modules, which define the occupied space and the meshes used within that space.
The goal of Daedalus is to provide an intuitive and visual workflow for designing and editing modular structures. Once completed, structures can be placed into a level for use in the game world.

How it works?
Daedalus is built around two main concepts: Modules and Structures. A Module defines a reusable building block, including its occupied space and the meshes used to represent it. A Structure is a collection of Modules arranged together to define a larger spatial layout, while recording the location of each module within the structure.
Users can configure modules in the Module Builder and assemble them in the Structure Editor.
Module Builder
In the Module Builder, users can define and configure reusable modules. They can specify the size of the occupied space, select the meshes that make up the module, and define the location of each mesh within that space. Once the module is fully configured, users can save it as a reusable module for use in the Structure Editor.

Structure Editor
In the Structure Editor, users can place predefined modules at grid-aligned coordinates to build a structure. The placement system maintains the spatial relationship between modules using a grid with a user-defined unit size. Once a module is placed, its defined meshes are displayed within its occupied space. Modules can be placed individually or arranged using predefined patterns. Once the structure is complete, users can spawn it into a level for use in the game world.

Upcoming Features
-
More User-Friendly Module Placement & Editing
Improve module selection, placement, and editing interactions to make structure creation more intuitive and efficient. -
Expanded Viewport Controls
Add more viewport commands and options for controlling the editing view and improving navigation. -
Module Type-Based Random Generation
Allow users to select multiple modules or an entire layer and assign a module type. The system can then randomly populate the selected area with modules that match the specified type. -
Dynamic Foundation & Sidewalk Generation
Automatically generate foundations and sidewalks based on the structure's layout and module arrangement. -
Nested Modules
Support modules that contain other modules, allowing more complex structures to be built from reusable components.