-
-
Notifications
You must be signed in to change notification settings - Fork 21.3k
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
Add NoiseTexture3D #76486
Add NoiseTexture3D #76486
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Tested locally (rebased on latest master
), it works for both FogVolume and GPUParticlesAttractorVectorField3D use cases.
Usage notes:
- You may have to increase the fog volume size and volume depth in the advanced Project Settings for noise in fog to be more noticeable. This has a performance impact.
- Remember to use a color ramp with GPUParticlesAttractorVectorField3D, so you can adjust each axis individually. Also increase its strength and increase particles damping, so direction changes are more noticeable on the particles themselves.
Testing project: test_noisetexture3d.zip
Thanks! And congrats for your first merged Godot contribution 🎉 |
sounds like voxel terrain generation will be slightly easier with NoiseTexture3D related: my first voxel terrain generation attempt in Godot (4.0 alpha 13) |
Using get_noise_3d will be a better option. |
i just looked through my voxel project that i mentioned, and i used Noise.get_noise_3dv() to determine if any coordinate should have a block at startup. |
Implements NoiseTexture3D resource based on existing NoiseTexture2D implementation scaled to third dimension, and modifies it to support custom depth coordinates when generating noise in 3D.
Supports seamless generation, modulation with gradient, and normalization. Lacks mipmap generation because of a bug in core #56066