{"id":19081487,"url":"https://github.com/droduit/procedural-terrain-generation","last_synced_at":"2025-07-09T01:42:40.609Z","repository":{"id":56734003,"uuid":"83481181","full_name":"droduit/procedural-terrain-generation","owner":"droduit","description":"Procedural terrain generator recreating the Swiss topology","archived":false,"fork":false,"pushed_at":"2019-06-25T21:12:51.000Z","size":52372,"stargazers_count":19,"open_issues_count":0,"forks_count":3,"subscribers_count":4,"default_branch":"master","last_synced_at":"2024-10-29T16:32:35.537Z","etag":null,"topics":["cpp","epfl","fogs","generation","noise","opengl","perlin","procedural","shadows","texturing","water"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/droduit.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-02-28T21:30:30.000Z","updated_at":"2024-02-22T12:04:44.000Z","dependencies_parsed_at":"2022-08-16T00:50:24.749Z","dependency_job_id":null,"html_url":"https://github.com/droduit/procedural-terrain-generation","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/droduit%2Fprocedural-terrain-generation","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/droduit%2Fprocedural-terrain-generation/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/droduit%2Fprocedural-terrain-generation/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/droduit%2Fprocedural-terrain-generation/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/droduit","download_url":"https://codeload.github.com/droduit/procedural-terrain-generation/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":223780182,"owners_count":17201283,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cpp","epfl","fogs","generation","noise","opengl","perlin","procedural","shadows","texturing","water"],"created_at":"2024-11-09T02:36:13.872Z","updated_at":"2025-04-30T07:44:15.302Z","avatar_url":"https://github.com/droduit.png","language":"C++","readme":"# Procedural Terrain Generator @ EPFL\n\n\u003cp\u003e\u003cimg src=\"https://ttreyer.github.io/procedural-terrain-generation/images/image3.png\" /\u003e\u003c/p\u003e\n\u003cp\u003e\u003cimg src=\"https://ttreyer.github.io/procedural-terrain-generation/images/image1.png\" /\u003e\u003c/p\u003e\n\u003cp\u003e\u003cimg src=\"https://ttreyer.github.io/procedural-terrain-generation/images/image2.png\" /\u003e\u003c/p\u003e\n\n## Introduction\nProcedural terrain generator written from scratch using various procedural technics to reproduce the Swiss topology.\nThe topology is a 3D mesh made of triangles. Among the various methods applied, we find in particular:\n- Noise algorithms to create the height map (Perlin noise, Fractal Brownian motion, Swiss turbulence)\n- Camera modes (Free navigation in the space, FPS like mode, Camera following Bezier curves)\n- Water in motion \n- Reflexion of the landscape in the water\n- Fogs\n- SkyBox\n- Day cycles\n- Snow \n- Shadows of the mountains\n- Texture mapping\n\nThe infinite map is fully explorable in 3D and every parameter are adjustable.\n\n## How to use\n- Clone the repository in your local workspace\n- Open a terminal at the root folder (the folder containing the whole repo)\n- `mkdir build`\n- `cd build`\n- `cmake ..`\n- `make`\n- `cd project`\n- `./project`\n\n## Authors\n- Dominique Roduit ([@droduit](https://github.com/droduit))\n- Thierry Treyer ([@ttreyer](https://github.com/ttreyer))\n- Romain Gehrig ([@RomainGehrig](https://github.com/RomainGehrig))\n\n## Note\nThis is the result of a team project for the [Introduction to Computer Graphics](http://edu.epfl.ch/coursebook/fr/introduction-to-computer-graphics-CS-341?cb_cycle=min_\u0026cb_section=min_sc) course taught at [EPFL](https://epfl.ch).\n\nThe project took 7 weeks and was divided into 3 parts:\n- Part I: Procedural generation of terrain (2 weeks)\n- Part II: Advanced rendering (2 weeks)\n- Part III: Animation / Interaction (3 weeks)\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdroduit%2Fprocedural-terrain-generation","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdroduit%2Fprocedural-terrain-generation","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdroduit%2Fprocedural-terrain-generation/lists"}