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

[Rendering] Terrain Engine #38

Open
michaelsakharov opened this issue Nov 23, 2023 · 4 comments
Open

[Rendering] Terrain Engine #38

michaelsakharov opened this issue Nov 23, 2023 · 4 comments
Labels
enhancement New feature or request

Comments

@michaelsakharov
Copy link
Contributor

Terrain is gonna be an interesting topic for Prowl.

We want Voxel support however regular voxels can be quite expensive, and we also want regular Quadtree terrain for maximum performance.

The idea I'm thinking of now is a Regular quadtree terrain, But with a VoxelSystem that can complement it.
Kinda like Digger PRO for unity, but that can also work independently.

So Essentially two Independent systems but that can work seamlessly together.

Ideally, both systems are flexible and can be rotated/scaled and altered in all the ways you might expect.
It should be possible to do Planets for example with just the Quadtree, Just voxels, or both together.

For now, I think the voxel side should be more Scripting than In Editor, the Terrain will have support built-in you can toggle on.

@michaelsakharov michaelsakharov added the enhancement New feature or request label Nov 23, 2023
@michaelsakharov michaelsakharov moved this to Backlog in Prowl's Roadmap Sep 17, 2024
@michaelsakharov michaelsakharov added this to the 1.0 Release milestone Sep 17, 2024
@michaelsakharov michaelsakharov moved this to Backlog in Prowl's Roadmap Oct 19, 2024
@michaelsakharov michaelsakharov removed this from the 1.0 Release milestone Oct 19, 2024
@PaperPrototype
Copy link
Contributor

What about transvoxel? If you use purely an Octree then you could apply "height" based edits like a normal Quadtree terrain, but then seamlessly add caves, overhangs etc

@michaelsakharov
Copy link
Contributor Author

Yes but at a significant cost to performance.
Octree LOD is significantly more expensive than quadtree, and transvoxel is even more costly than just height on a plane.
We need something blazing fast by default, that can run on a mobile phone without many hiccups.

The completed terrain engine probably will allow for overhangs and caves, just not through having the entire terrain be voxels, but instead, a hybrid, where everything is quadtree until you edit an area, upon which that area turns to voxel chunks.
Though it probably won't be transvoxel and instead just regular marching cubes.

@PaperPrototype
Copy link
Contributor

PaperPrototype commented Oct 25, 2024

Alright, makes sense. In that case I'm gonna try and get heightmap terrain working in Prowl as a test.

@Shadowblitz16
Copy link

Shadowblitz16 commented Dec 21, 2024

Please don't force transvoxel, it would be nice to have cubic voxels.

I always thought it would be cool to have a 1/16 unit sized voxel engine with support for sloping and curves simular to how dual universe has it. starbound is 2d but kinda the same art style where in starbound's case there is tiles and furniture that has slopes and curves to it.

in starbounds case slopes don't nullify strait tiles. you only get slopes on sloped tiles if they are diagnal from each other, two tiles strait from each other still form a flat edge

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
Status: Backlog
Development

No branches or pull requests

3 participants