Final Project Proposal: Procedural Terrain Generation

Project Description

My main goal for this project is to utilize procedural terrain generation techniques, specifically using Perlin noise, to create a series of 3D-printed Minecraft-style biomes. These 10×10 cm blocks will encapsulate the unique characteristics of various biomes found in the Minecraft game, providing a physical and visually appealing representation of algorithmically generated landscapes.

Deliverables

Procedural Terrain Generation Script: A Python script that uses Perlin noise and other algorithms to generate terrain heightmaps for different biomes, taking into account features like mountains, rivers, forests, and deserts.

3D Models for 3D Printing: A collection of 3D models of Minecraft biomes (e.g., forest, desert, tundra) that can be 3D printed, each encapsulated in a 10×10 cm block. These models should reflect the terrain generated by the script.

Biome Documentation: A written document describing the algorithmic approach, parameters, and principles used for generating each biome, accompanied by illustrations and diagrams.

Printed Samples: Several 3D-printed prototype blocks representing different biomes, serving as a proof of concept before creating the final prints.

Reference Materials: Guides and documentation that explain the concept of procedural terrain generation, the role of Perlin noise, and how the Minecraft biomes were algorithmically created.

Timeline

  • November 1: Develop and fine-tune the procedural terrain generation script using Perlin noise.
  • November 15: Create 3D models of Minecraft biomes, integrating the generated terrain features in Rhyno
  • November 20: 3D print sample blocks for testing and validation.
  • November 27: Paint the 3D blocks add details etc.
  • November 30: Document the biome generation process and create the 10x10cm blocks.
  • December 1: Finalize the project, make any necessary adjustments, and prepare for presentation.

Related Work

Procedural terrain generation has been a prominent topic in both computer graphics and video game development. Researchers and developers have explored the use of Perlin noise and other noise functions extensively. Studying existing work on terrain generation algorithms will provide valuable insights into creating Minecraft-like biomes.

Of course, the main inspiration comes from the game Minecraft; Minecraft is a sandbox video game known for its open-world exploration, creative building, and resource management, allowing players to construct, survive, and embark on adventures in a pixelated, block-based universe.


The link below is a case study that explores the use of procedural content generation (PCG) for landscape generation in games, offering insights into value noise generation and the use of well-known noise generators like Perlin and Simple Noise. It introduces a novel algorithm designed to create varied island landscapes with different sizes and elevations, providing practical guidance on generating 3D terrain, realism enhancement, and texture application, applicable to a wide range of 3D engines
LINK: https://eds.s.ebscohost.com/eds/detail/detail?vid=10&sid=432887d9-5a1c-4e68-bfed-ab7405c39554%40redis&bdata=JnNpdGU9ZWRzLWxpdmUmc2NvcGU9c2l0ZQ%3d%3d#AN=edssjb.978.3.319.53088.8.8&db=edssjb

This study focuses on the application of procedural terrain generation, particularly using Perlin noise, to create 3D hexagonal tiled terrains, addressing the need for tiling support in terrain generation, with potential applications in strategy games and as a post-processing filter for existing terrains.
LINK: https://eds.s.ebscohost.com/eds/detail/detail?vid=10&sid=432887d9-5a1c-4e68-bfed-ab7405c39554%40redis&bdata=JnNpdGU9ZWRzLWxpdmUmc2NvcGU9c2l0ZQ%3d%3d#AN=edssjb.978.3.319.53088.8.8&db=edssjb

3 thoughts on “Final Project Proposal: Procedural Terrain Generation

  1. Hello Nathaniel, I really like your choice for the final project. Terrain generation is really fascinating because the randomness you can add to it, to make various “biomes”. I remember watching a lot of videos of people creating their on Minecraft world, and I am sure you can probably scale it down to create different biomes. Good Luck!

  2. Hey Nathaniel,
    I really love your idea and I think it has a lot of opportunity for variety! One thing that came to my mind when you said different biomes would be to physically SPLIT them apart into different prints of potentially different colors and materials. Maybe this could end up being an interesting puzzle game, or at the least an interesting building game harkening back to your Minecraft inspiration! Good luck!

  3. I love love love mapmaking and related terrain generators (having played D&D and various roleplaying games for many years), and I am also a published game cartographer. Using the logic behind how Minecraft generates their terrain is a great idea for this project (and one I have definitely considered for game maps). You may want to read this article about polygonal map generation here http://www-cs-students.stanford.edu/~amitp/game-programming/polygon-map-generation/ (which is where I first learned about Voronoi meshes) for ideas and inspiration.
    Oh, and as a pro tip for painting PLA, using auto primer as a base coat before painting helps paint stick better.

Comments are closed.