Dreaming in Voxels: AI Learns to Generate Minecraft Worlds with VQ-VAE and Transformers
A recent breakthrough in generative artificial intelligence has demonstrated the capability to create intricate, three-dimensional world segments that are virtually indistinguishable from the procedurally generated landscapes of the popular sandbox game, Minecraft. This innovative project, spearheaded by an independent researcher, leverages advanced machine learning techniques, specifically Vector Quantized Variational Autoencoders (VQ-VAE) and Transformers, to "dream" in voxels, offering a glimpse into the future of procedural content generation in gaming and beyond.
The project stems from a deep personal connection to Minecraft, a game that has accompanied the researcher from elementary school to the cusp of college graduation. The enduring charm of Minecraft lies in its infinitely replayable worlds, a feature powered by sophisticated procedural generation algorithms. In its current iterations, the game employs a complex interplay of noise functions to generate worlds in discrete units called chunks, measuring blocks. These algorithms are meticulously designed to create natural-looking terrain, forming a core element of the game’s immersive experience. The goal of this ambitious project was to transcend the limitations of hard-coded noise functions and instead train an AI model to generate these environments organically.
The overarching objective was to develop a pipeline capable of generating 3D world slices that capture the essential structural characteristics of Minecraft’s landscapes. Specifically, the project aimed to produce outputs consisting of four chunks, arranged in a grid, that faithfully replicate the visual and structural logic of the game’s terrain. It is worth noting that this endeavor is not entirely unprecedented, with prior research such as ChunkGAN offering alternative approaches to similar generative challenges.
The Steep Climb of 3D Generative Modeling
The inherent difficulties in 3D generative modeling were highlighted in a January 2026 Computerphile video featuring Lewis Stuart, which articulated several key challenges. Foremost among these is the scarcity of high-quality 3D datasets. Unlike the abundance of 2D image datasets, curated and labeled 3D data is exceptionally rare, making the training of generative models a significantly more arduous task. Adding a third dimension of freedom, as illustrated by the analogy to the complex "three-body problem" in physics, exponentially increases the computational complexity and the potential for unpredictable outcomes. While the Computerphile video specifically addressed diffusion models, which often require labeled data, many of the fundamental issues extend to the broader field of 3D generation.
Another significant hurdle is the sheer scale of 3D data. A image, considered low-resolution by today’s standards with pixels, would translate to a staggering voxels at equivalent fidelity in three dimensions. This exponential increase in data points necessitates vastly greater computational resources, often rendering such tasks infeasible with current hardware capabilities.
To circumvent the critical issue of 3D data scarcity, the researcher turned to Minecraft itself, identifying it as an unparalleled source of voxel data for terrain generation. By employing a script to automate traversal through a pre-generated in-game world, the game engine was prompted to load and render thousands of unique chunks. A separate script then extracted these chunks directly from the game’s region files. This method yielded a dataset with remarkable semantic consistency. Unlike collections of disparate 3D objects, these extracted chunks represented a cohesive, flowing landscape where the underlying "logic" of terrain formation – such as the gradual slope of a riverbed or the peak of a mountain – was preserved across chunk boundaries.

Bridging the gap between the immense complexity of raw 3D voxels and the practical limitations of available hardware required a more nuanced approach than simply feeding unprocessed chunks into a model. The core challenge was to condense the information contained within millions of blocks into a meaningful, compressed representation. This led to the development of a two-stage generative pipeline: the first stage focuses on learning to "tokenize" 3D space, and the second stage learns to "speak" this compressed language.
Data Preprocessing: Refining the Voxel Palette
A crucial, though perhaps not immediately obvious, observation during data collection was the significant proportion of "air" blocks within Minecraft chunks. Air, in this context, is not a tangible block that can be placed or removed like others; rather, it represents the absence of a block. In modern Minecraft, the majority of a chunk’s vertical space is occupied by air. Consequently, instead of processing the full height levels, the researcher opted to restrict the vertical span to . It’s important to acknowledge a limitation stemming from this decision: Minecraft’s world generation extends to negative -values, down to . While the implemented architecture could readily accommodate a broader vertical range, this oversight means the presented results are derived from a constrained block span.
Further refinement involved restricting the set of block types considered. Many blocks appear infrequently and do not significantly contribute to the overall terrain shape, though they are essential for player immersion. For this project, the decision was made to focus on the top 30 most frequent block types that constitute the majority of chunk composition. This pruning of the "vocabulary" of blocks, while beneficial, addressed only one aspect of data imbalance.
A more pervasive issue was the extreme class imbalance within the dataset, largely due to the prevalence of "air" and "stone." Without mitigation, a generative model would likely default to predicting empty space or common blocks, achieving low loss values without capturing the nuanced structural diversity of the terrain. To counter this, a Weighted Cross-Entropy loss function was implemented. By scaling the loss based on the inverse log-frequency of each block type, the VQ-VAE was incentivized to prioritize the prediction of less common but structurally significant blocks, such as grass, water, and snow. The formula for this weighting is as follows:
In essence, this mechanism ensures that rarer block types, like a patch of snow or the edge of a riverbed, are treated with the same importance as the vast expanses of stone and air that dominate most chunks, forcing the model to learn a more representative distribution of terrain features.
Architecture Overview: A Two-Stage Generative Pipeline
The project’s architecture can be broadly divided into two synergistic stages: a VQ-VAE for encoding and decoding 3D voxel data into a compressed latent space, and a Transformer (GPT) for learning the sequential dependencies and generating novel latent representations.
sequenceDiagram
participant Data as Raw Voxel Data (Chunks)
participant VQVAE_Enc as VQ-VAE Encoder
participant VQ as VectorQuantizer
participant VQVAE_Dec as VQ-VAE Decoder
participant Transformer as Transformer (GPT)
participant Output as Generated Chunks
Data->>VQVAE_Enc: Input 3D Chunks
VQVAE_Enc->>VQ: Quantized Latent Representation
VQ->>VQVAE_Enc: Latent Tokens
VQVAE_Enc-->>VQVAE_Dec: Reconstructed Chunks (for training)
VQVAE_Enc->>Transformer: Latent Tokens
Transformer->>Transformer: Learn Spatial Grammar
Transformer->>Transformer: Generate New Latent Tokens
Transformer->>VQVAE_Dec: New Latent Tokens
VQVAE_Dec->>Output: Generated 3D Chunks
The Raw Voxel Problem and Tokenizing 3D Space
A direct, block-by-block generative approach to creating 3D chunks would be computationally prohibitive and structurally unsound. Imagine constructing a complex LEGO model by only using individual bricks. While feasible, this process would be exceedingly slow and lack inherent structural integrity; connections between horizontally adjacent pieces would be tenuous, leading to a collection of disjointed towers. LEGO overcomes this by introducing larger, pre-formed bricks, such as the iconic brick, which occupy space that would otherwise require multiple smaller units. This not only accelerates construction but also imbues the model with greater structural coherence.

In this project, these larger LEGO bricks are analogous to "codewords" learned by the VQ-VAE. The primary objective of the VQ-VAE is to build a codebook—a collection of learned structural signatures that can be used to reconstruct complete chunks. These signatures represent common patterns, such as a flat expanse of grass or a distinct geological formation like diorite. The researcher configured the VQ-VAE with a codebook comprising unique codes.
The implementation of this process relies on 3D convolutions. While 2D convolutions are standard in image processing, their 3D counterparts enable kernels to slide across the X, Y, and Z axes simultaneously. This capability is paramount for Minecraft, where the vertical relationship between blocks (e.g., support for gravity) is as critical as their horizontal adjacency.
Key Component: The VectorQuantizer
The VectorQuantizer layer is the linchpin of this stage, acting as the network’s "bottleneck." It compels continuous neural signals to align with a fixed "vocabulary" of learned 3D shapes. A significant challenge encountered during VQ-VAE training is the phenomenon of "dead" embeddings—codewords that the encoder rarely, if ever, selects. This effectively wastes the model’s capacity. To address this, a mechanism was introduced to "reset" these underutilized codewords. If a codeword’s usage drops below a predefined threshold, it is forcefully re-initialized by "stealing" a vector from the current input batch, ensuring that the codebook remains dynamic and representative.
Brick by Brick: Assembling Worlds with Transformers
While a diverse array of block types is essential, their effective arrangement is equally crucial for meaningful world generation. To leverage the learned codewords, a Transformer model, specifically a GPT (Generative Pre-trained Transformer), was employed. The latent grid produced by the VQ-VAE was transformed into a sequence of tokens, effectively flattening the 3D world representation into a 1D language. The GPT was then trained on sequences representing approximately eight chunks’ worth of tokens. This allowed it to learn the intricate spatial grammar of Minecraft, thereby ensuring the generation of semantically consistent terrain.
The training utilized Casual Self-Attention, a mechanism inherent to Transformer architectures that enables the model to attend to previous tokens in the sequence when predicting the next one. This is vital for capturing the sequential nature of world generation.
During inference, the model employs top-k sampling, coupled with a temperature parameter to control the balance between predictable output and creative exploration, thereby mitigating overly erratic generation while fostering a degree of artistic flair.
Upon completion of this generative sequence, the GPT produces a structural blueprint of tokens. These tokens are then fed back through the VQ-VAE decoder to manifest a grid of recognizable Minecraft terrain.

Tangible Results: AI’s Minecraft Dreams Manifested
The generative model has produced several impressive results that showcase its learned understanding of Minecraft’s world generation principles.
One notable render demonstrates the model’s ability to cluster leaf blocks effectively, mimicking the natural growth patterns of trees within the game. This indicates a grasp of localized structural dependencies and common environmental features.
Another output showcases the model’s application of snow blocks to cap stone and grass formations, mirroring high-altitude or tundra biomes present in the training data. Crucially, this render also reveals the model’s capacity to generate subterranean features, such as contiguous cave systems, a testament to its understanding of three-dimensional structure.
A particularly compelling example illustrates the model’s internalization of hydrological logic. Water blocks are placed within depressions, bordered by sand, demonstrating a learned understanding of coastline formation rather than a random scattering of water elements across the landscape.
Perhaps the most significant achievement is the model’s ability to generate coherent internal structures within chunks. The combination of 3D convolutions and the weighted loss function has enabled the generation of features like contiguous caves, natural overhangs, and cliffs, reflecting a sophisticated understanding of the underlying geological processes simulated in Minecraft.
While the generated landscapes are remarkably recognizable, they are not exact replicas of the game’s procedurally generated worlds. The VQ-VAE’s "lossy" compression can sometimes result in a subtle "blurring" of block boundaries or the occasional appearance of floating blocks. However, considering the model operates within a highly compressed latent space and successfully maintains structural integrity across a chunk grid, these results represent a substantial success in the field of 3D generative modeling.
Reflections and Future Horizons
Although the model has demonstrated a remarkable ability to "dream" in voxels, there remains significant scope for further development and expansion. Future iterations could revisit the full vertical span of , which would enable the generation of the dramatic jagged peaks and expansive "cheese" caves characteristic of modern Minecraft versions.

Expanding the codebook beyond its current entries would empower the system to tokenize more complex and niche structures, such as villages, desert temples, or even intricate cave systems with unique formations. Perhaps the most exciting avenue for future work lies in conditional generation, or "biomerizing" the GPT. This would allow users to guide the architectural process with specific prompts, such as "Mountain" or "Ocean," transforming a random generative dream into a powerful, directed creative tool.
The project’s code and weights are publicly available on GitHub, inviting further research and experimentation by the wider AI and gaming communities. The dataset used for training was meticulously generated by the author using a local instance of Minecraft Java Edition, with chunks extracted from procedurally generated world files via a custom script. This ensures that no third-party datasets were involved, and consequently, no external licensing restrictions apply to its use within this research context.
This pioneering work not only pushes the boundaries of AI-driven content creation but also offers a compelling case study in leveraging existing, rich digital environments as fertile ground for machine learning innovation. The ability to procedurally generate complex, semantically coherent 3D worlds holds immense implications for game development, virtual reality environments, and even scientific visualization.