Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement Procedural Generator #210

Closed
thephox1982 opened this issue Sep 21, 2023 · 3 comments
Closed

Implement Procedural Generator #210

thephox1982 opened this issue Sep 21, 2023 · 3 comments
Labels
duplicate This issue or pull request already exists

Comments

@thephox1982
Copy link

This plugin is wonderful but I haven't seen anything in relation to procedural generation other than from a heightmap image based on ones location. What I am needing is the ability to generate terrain based on position via a seed system, so that the same geography is present whenever the player visits the area again in the future. The user must also be able to terraform the terrain and it be saved for later loading when they revisit the area.

This would be similar to say MapMagic 2 which is a Unity asset.

If this is possible by using another plugin along with Terrain3D, I'd like to hear about that!
Otherwise it might be something to consider adding to Terrain3D as a powerful feature for open worlds.

@TokisanGames
Copy link
Owner

TokisanGames commented Sep 22, 2023

You can generate your own terrain in code right now. There's even a demo for it. But the demo gets a default 8-bit image from the noise library and it looks terrible. But you can make your own 16-bit or 32-bit image from the noise library and use that to make your own maps. Whatever seed settings you put into the library will generate the same noise map.

We may include a generator in the UI to create a base for sculpting, but everything you need to do it in the editor or in game is there right now.

This system is entirely designed around heightmap images. The above lets you procedurally generate heightmaps in game. If you want procedural terrain that generates based upon algorithms only, this isn't the tool for you. Zylann has a voxel terrain for Godot that might be what you want.

@TokisanGames TokisanGames added the enhancement New feature or request label Sep 30, 2023
@TokisanGames TokisanGames added this to the Future milestone Sep 30, 2023
@TokisanGames TokisanGames changed the title Procedural / Seed Generation Implement Procedural Generator Nov 30, 2023
@TokisanGames
Copy link
Owner

The CodeGenerated Demo was updated to generate terrain 32-bit noise in 5aa71f5.

This ticket will track the possible inclusion of a terrain generation tool. Auburn offers his whole library in GLSL which could be included as a compute shader based terrain generator, which would depend on #174.
https://github.com/Auburn/FastNoiseLite/tree/master/GLSL

@TokisanGames
Copy link
Owner

Actually, contrary to the last comment, procedural generation is already tracked in #101. So with the codegenerated demo showing how to generate a noise image to create a terrain at runtime, and #101 providing more image generation options, this ticket is a duplicate. There are no plans to create terrains that are not based on a heightmap image, purely algorithmic, or runtime user modification. Zylann's voxel tools is the best system for those.

@TokisanGames TokisanGames closed this as not planned Won't fix, can't repro, duplicate, stale Jan 3, 2024
@github-project-automation github-project-automation bot moved this from Future Ideas to Done in Terrain3D Roadmap Jan 3, 2024
@TokisanGames TokisanGames removed this from the Future milestone Jan 3, 2024
@TokisanGames TokisanGames added duplicate This issue or pull request already exists and removed enhancement New feature or request labels Jan 3, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
duplicate This issue or pull request already exists
Projects
None yet
Development

No branches or pull requests

2 participants