-
Notifications
You must be signed in to change notification settings - Fork 13
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
Added feature level-sets and dependencies #177
base: master
Are you sure you want to change the base?
Conversation
0941b92
to
98cc817
Compare
Cpp-Linter Report
|
Before I go, there is some code which I think would be nice to have available for the public. Unfortunately, I will not have time to put too much time into this so maybe we can make it a combined effort.
The code I added here includes some volume operations such as reduction, min/max, etc, implemented using compute shaders and the feature level-sets (FLS), also implemented using compute shaders.
Everything works well enough to use it for standard cases (floating-point input fields). There are some things though that might need some attention.
One things that comes to my mind is the injection of implicit functions into the shader code for FLS. Right now I have a number of placeholders and do a simple string replace. Maybe this is better done with Peter's new shader snippet thingy.
Another thing is that I have also not handled anything other than 32 bit floating point volumes as input since that is all I ever needed. Maybe dispatching should be added here.
In the shader code for volume reduction you can see that I tried using different samplers for different input data. The code compiles fine but the shader won't work for certain inputs (IIRC integer >16 bit).
I wrote a fair bit of documentation but I haven't checked for completeness.