-
-
Notifications
You must be signed in to change notification settings - Fork 253
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 Transparent/Translucent Voxels #69
Comments
Blocky Voxels already support multiple materials. Godot supports translucent materials. See #66. What else does this issue bring up that is not already supported? |
@tinmanjuggernaut The main issue is what I highlighted in the middle paragraph, the need for making sure that opaque voxels remain solid when viewed through a transparent section of mesh. The image below demonstrates what I'm talking about: Both spheres are the same: each is divided in half, with one half being opaque and the other being transparent. But the one on the right has an extra face against the transparent half, so that it is solid. |
It looks like this is exclusively for smooth voxels, since blocky meshing supports this already (see #66 (comment)). It could be interesting to use the I'm also not sure about the consequence on edition, considering that a single voxel cannot have multiple materials. I also realise that on your screenshot with the two spheres, you are showing a clean, sharp separation between the two parts. But marching cubes or transvoxel can't represent sharp features, so it's likely the result won't be as clean. |
One useful feature to have would be support for voxels that are transparent, translucent, etc. So, I'm creating an issue report for it.
In the context of implementing the geometry generation, it would be relatively simple. The mesh for opaque voxels would produce surface geometry along where opaque voxels border either transparent or empty voxels (instead of only empty voxels). As well, transparent voxels of differing materials (eg: water, ice, crystal, etc.) would generate as separate meshes.
In the context of rendering, that's a bit out of my ballpark.
The text was updated successfully, but these errors were encountered: