Voxel Editor with Kitbashing

In recent years, voxel editors have established themselves as versatile tools for creating 3D models. Programs like MagicaVoxel or Goxel make it easy to create, edit and export voxel objects for games or visualizations. Especially in indie development and for stylized games, such editors are widespread and popular. Nevertheless, in practice, they repeatedly encounter limitations that significantly restrict the creative workflow and technical post-processing.

A central problem of classic voxel editors is the lack of support for modular, hierarchical structures. While creating individual objects usually works without issue, users quickly reach their limits as soon as more complex, composite models – such as multi-part characters or organic structures with clearly defined layers – are needed. Most editors treat models as monolithic blocks: there is no native way to flexibly combine, swap or edit different body parts, layers or components independently. So-called “kitbashing”, the modular assembly of new models from existing parts, is either not possible at all or only with cumbersome workarounds.

Additionally, layering in established editors usually takes place only at the visual level. Assigning areas to logical layers – such as bones, muscles or skin – is not supported. For example, anyone needing a model with multiple functional layers must either manage them in separate files or rely on external tools. This not only complicates editing but also makes reuse in games or simulations unnecessarily complex.

The management of metadata, transformations and integration into larger projects are also weak points of many existing solutions. Often, there are no options to precisely position, scale or enrich models with additional information. Especially for projects that depend on modularity, reusability and a clear data structure, the classic voxel model is not sufficient.

Data Management and Layer Structure

Data management forms the foundation for the flexibility and modularity of the editor. Unlike many existing voxel editors, which treat models as monolithic units, this editor follows an approach in which each model consists of several logically separated layers. These layers represent different functional or anatomical strata, such as bones, muscles or skin. The .mvox format is specifically designed to represent and store this layer structure.

In contrast to editors like MagicaVoxel, which do support layers but mostly use them only for visual separation, our system enables a deeper integration: each layer can be edited independently, generated automatically or adjusted manually. Layer thickness and other parameters such as material properties or color can be configured individually for each layer. This creates a flexible hierarchy that allows for the modeling of complex, modular organisms or objects.

The project file manages not only the individual .mvox models but also their layer information as well as their spatial transformations – position, rotation and scale. This data is essential for freely combining and arranging imported or self-created components in the editor. In this way, the user can assemble complex characters from modular body parts via a kitbashing workflow without losing the layer structure.

Import Module

The import module serves as the central interface between external voxel resources and the editor’s internal workspace. It is designed to transfer models from various formats into the .mvox system and optimally prepare them for further editing. Flexibility is paramount, enabling users to seamlessly integrate a wide variety of models.

Many common voxel formats such as .vox.qb or .gox lack a native layer structure, making direct adoption into a modular system difficult. To address this, the import module first converts the imported models into the .mvox format. The layer structure is not generated automatically, but is deliberately left to the user. This ensures maximum control and prevents misinterpretation of the original data.

To support this, the editor provides powerful selection tools that allow users to select areas based on color, shape or spatial position. These selections can then be defined as new layers, transforming simple models into complex, multi-layered objects. This manual layer construction is a conscious design decision that increases the flexibility and precision of modeling.

Metadata, if present and compatible in the source format, is retained during import. However, the import module focuses on core functionality and deliberately refrains from automatic conflict resolution or adjustments for incompatible structures. Responsibility for meaningful integration and post-processing thus lies with the user, who is optimally supported by the tools provided.

Polygonal 3D Formats

To expand creative possibilities and facilitate the integration of external resources, the editor supports importing common polygonal 3D formats such as .obj and .fbx. These formats often originate from CAD programs, 3D scans or traditional modeling tools and offer a wide range of existing models that can be made usable for voxel projects.

The import of these polygonal models is handled through automatic conversion into the voxel grid of the .mvox format. Users do not need to deal with the complex technology of voxelization, as the import module fully manages this process. The resolution and level of detail of the voxelization can be controlled via parameters to meet the requirements of different projects.

After conversion, the models are available as .mvox objects and can be further edited, layered and integrated into the modular workflow as usual. The layer structure is not generated automatically here either, but remains under the user’s control, who can use the available selection tools to define areas and assign layers as needed.

Metadata from the polygonal formats is retained and integrated into the .mvox system whenever technically possible. In this way, the editor serves as a universal bridge between polygonal and voxel-based worlds, enabling seamless combination of different 3D sources.

Layer Management

Layer management forms the core of the modular approach and fundamentally distinguishes this editor from classic voxel editors. While established programs like MagicaVoxel or Goxel mostly use layers as visual planes or for organizing workflow steps, this editor adopts a functional layer approach: each layer of a model has its own distinct meaning and can be specifically edited, generated or removed.

In the .mvox format, each layer is technically clearly delineated. A model consists of at least a “Base Layer”, which defines the basic structure. Additional layers – for example, for bones, muscles, skin or technical components – can be automatically generated based on existing layers. Generation always occurs individually to give the user maximum control over the composition and order of the layers. Parameters such as layer thickness, material properties or color are available for automatic layer creation and can be set individually.

A key feature of the editor is the ability to freely edit each layer after generation. Users can modify layers, add or remove details and benefit from extensive selection and editing tools. If a layer becomes unusable due to editing or a fundamental error occurs, the layer can be specifically deleted and regenerated based on the underlying layers – without losing the entire model.

The number of layers per model is not limited. To maintain clarity and facilitate later processing, it is advisable to use a naming or ID system for layers. The specific implementation remains open to give developers and users the greatest possible freedom.

Object and Asset Management

A powerful object and asset management system is essential for a modular editor focused on reusability and efficient workflows. While many established voxel editors concentrate on editing individual models and offer few tools for managing larger collections, this editor relies on a central library that clearly organizes all imported, generated and edited models.

Each object – whether imported, newly created or assembled from existing parts – is managed as an independent asset in the project library. The library serves not only as a storage location but also as an organizational hub: users can browse models, filter by properties, group them or add metadata. This simplifies the management of extensive collections of components and especially supports kitbashing, where new, complex structures are created from existing assets.

The integration of transformation data – position, rotation and scale – is another important aspect of asset management. Unlike many classic editors, where models are usually stored only in their original orientation, the project file stores the current transformation parameters for each asset. This allows objects to be arranged, oriented and precisely placed in space as needed. This flexibility is indispensable, especially when building hierarchical structures such as characters with multiple body parts.

The management of the asset library is intentionally kept open to support both simple and complex workflows. Developers can expand the structure of the library, introduce additional metadata fields or implement their own organizational principles. This makes the editor not just a tool for individual projects, but also a platform for building and maintaining extensive, reusable asset collections.

Workflow

The workflow of this editor is designed to flexibly and transparently map the entire lifecycle of modular voxel models. From the moment a new model is created or external data is imported, the layer structure is established as a central design element. Unlike classic voxel editors, where layers mostly serve as an organizational aid added later, here they are an integral part of the model from the very beginning. Users can create layers intentionally, generate them automatically or extract them from imported models using selection tools. The layers always remain independent of one another and can be edited, removed or rebuilt at any time without affecting other layers or the overall construct.

As the process continues, asset management moves to the forefront. The central library ensures clear organization of all components, models and layers. Here, models can not only be saved and loaded, but also combined with each other. The system’s strength is especially evident in kitbashing – the modular assembly of individual parts into new, complex objects: each asset remains independent but can be seamlessly integrated into larger structures. Layer information is preserved, enabling targeted further editing of individual components.

Model editing is carried out with tools specifically tailored to layers and modular structures. Selection and transformation functions allow users to target, edit or rearrange specific areas. The workflow is non-destructive: adjustments to layers or models do not irreversibly affect the original data. Instead, editing steps are stored as independent states or variants. This makes it possible to manage, compare or restore different development stages of a model in parallel. This approach supports an experimental, iterative process and ensures that creative decisions can always be traced and undone without loss.

The workflow concludes with the export process. The final model can be output as a .mvox file, including all layer information. Alternatively, models can be merged into a single structure for use in other applications. The project file remains as a working foundation, allowing users to return to the editing process at any time.

Each step of the workflow – from model creation, asset management and kitbashing to editing and export – interlocks seamlessly. Together, they form a system that supports the creative process and places technical post-processing and the reusability of modular voxel models at the center.

Extensibility and Openness

A central goal in the conception of this editor is openness to future developments and individual customization. While many established voxel editors rely on closed systems and allow extensions only to a limited extent or not at all, this editor has been designed from the ground up with a modular, well-documented approach. As a result, it is not just a tool for individual projects, but a platform that can be further developed and expanded by a broader base of developers and users.

The editor’s architecture is designed so that new functions, tools or even entire workflows can be added with ease. This applies both to the internal data structure – such as the introduction of additional layer parameters or new selection and editing tools – and to interfaces with external applications. The specification of the .mvox format is openly documented, allowing users to create their own extensions or customizations without losing compatibility with the core system.

Another aspect of openness is reflected in the integration of external resources and formats. The editor is prepared to support additional import and export formats, making it flexible enough to fit into existing pipelines and workflows. Integration with automation tools, version control systems or collaborative platforms is also planned to meet the requirements of modern development environments.

Openness also extends to the user interface and interaction concept. Developers can integrate their own modules, panels or tools, adapting the editor precisely to specific requirements or workflows. This adaptability makes the editor attractive not only for individual users but also opens up the possibility for teams and larger projects to develop tailored solutions on a shared platform.

Overall, the editor is not conceived as a rigid product, but as a dynamic ecosystem that grows with the needs of its users. The combination of open architecture, clearly documented interfaces and the ability for individual extension forms the foundation for sustainable, future-proof development.

Export and Integration

The export process of the editor is focused on the .mvox format as the core and primary standard for storing modular, multi-layered voxel models. This format preserves all layer information, metadata and transformations in full, enabling lossless further processing within the editor or compatible applications. The .mvox format is deliberately designed to be open and extensible, optimally capturing the innovative concepts of modular layer structure and flexible data management.

Editing states, versioning or intermediate steps are not stored in the .mvox format, but remain in the project file or the editor’s internal state. This clearly separates the permanent model structure from temporary work states, allowing for streamlined and efficient file management.

Other export formats, such as polygonal meshes (.obj.fbx) or classic voxel formats (.vox.qb), are offered only as secondary options to ensure interoperability with existing tools. However, these formats cannot fully represent the complex layer structures and modular properties of the .mvox format. They should therefore be understood as simple, mostly destructive exports that do not reflect the editor’s innovative capabilities. Providing these additional export options is entirely optional.

For integration into larger production environments, the editor provides open interfaces and automation options specifically tailored to the .mvox format. This allows models to be directly incorporated into version control systems, integrated into build processes or further processed in custom pipelines – always preserving the complete layer and metadata structure.

With this clear focus on the .mvox format, the editor sets a new standard for modular voxel models, fully leveraging the advantages of innovative layer management and modularity, while enabling sustainable, future-proof integration into a wide range of workflows.


31.05.2025

Published

Published the concept on this website.

30.01.2026

Shared

Proactively shared the concept on the Missing Deadlines / IOLITE Voxel Engine Discord server.

14.02.2026

Shared

Proactively shared the concept on the Avoyd Voxel Editor and Renderer / enkisoftware Discord server.