Project Title: CRAFTORIA: Development of a 3D Voxel Game with OpenGL ES Interface for Programming Mobile Applications
Author: Blaž Jerman
Undergraduate Thesis: https://repozitorij.upr.si/IzpisGradiva.php?id=20799&lang=slv
Download CRAFTORIA for Android: 16 and 32 chunk size versions are available at https://drive.google.com/drive/folders/1m-siCHoLzjm8XcqAXzoaX0RIWiby1kNz?usp=sharing
This project focuses on the development of a three-dimensional voxel-based game for mobile platforms using the OpenGL ES interface, with the primary goal of creating a highly optimized and user-friendly gaming experience. Motivated by the developer’s encounters with poorly designed and unoptimized mobile voxel games, the implementation emphasizes efficient rendering, fast voxel loading, and smooth gameplay performance. Throughout the development process, key technical challenges such as rendering inaccuracies and multithreading optimization were addressed to enhance stability and responsiveness. Performance analysis shows that the applied techniques successfully ensure smooth and consistent game operation on mobile devices. Overall, the project demonstrates the effectiveness of targeted optimization strategies in improving user experience and highlights opportunities for future enhancements, including further performance tuning and expanded functionality.
Key features
Dynamic lighting
A glowstone light interacts with multiple outer sources of different colors blending together accurately, producing the correct mixed illumination.

Biomi support
Biome is a distinct environmental region within the game world, characterized by its own visual style, terrain features, vegetation, climate, and sometimes unique gameplay elements. Biomes help make large worlds feel diverse and dynamic by changing how the terrain looks and behaves in different areas.
Various objects, such as trees, appear throughout the terrain, and multiple biomes are generated with their properties smoothly interpolated at the boundaries. Elements like grass, water, and leaves dynamically change color based on the biome they belong to. The currently implemented biomes include mountains, abandoned fields, simple valleys, a simple desert, a test biome featuring purple grass and leaves, and hill regions shaped by water-driven erosion.

Caves generation
Two types of test caves are currently implemented: Red glowstone caves located beneath mountain biomes.

Stalactite-filled caves in hilly regions (the fire shown in the image is included only for lighting purposes)

Visual and Physical Elements
- Basic particle physics are implemented (visible on tree leaves).
- Flowing water behaves similarly to Minecraft.
- Sand is affected by gravity.
- TNT explodes on contact; each block has its own resistance and explosions can chain.
- Sugar cane grows on the ground (growth accelerated for testing).
- Several moving cubes spawn at startup for collision testing.
- Items are automatically picked up when the player is close.
Inventory and Crafting
Item Crafting
- Crafting is shown on the right side of the screen.
- The top area displays the selected item and required materials.
- Each item requires multiple clicks to craft.
- All test items use two placeholder cubes.
Inventory Management
- Opened by tapping the circle at the bottom right.
- Items can be dragged onto the floor.
- Split items by holding one finger and tapping with another.
- Combine items by double-clicking.
Cube Interaction
- Items can be dragged from the player’s inventory into interactive cubes (e.g., tape, divider).
- Additional systems include cables and a simple fan powered by electricity.
Further Development
- More blocks with unique interactions are planned.
- Current textures (temporary Minecraft assets) will be replaced.
Follow HICUP Lab in its official channels for more updates: