-
Notifications
You must be signed in to change notification settings - Fork 5
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
spherical volume rendering refactored #159
base: main
Are you sure you want to change the base?
Conversation
…der functionality based on dataset geometry
for more information, see https://pre-commit.ci
merged! can now move all the geometry-specific calculations to pre-processor directives rather than uniforms. |
f6d1b76
to
db21fa6
Compare
pre-processor directives now working |
still do do:
|
@@ -38,18 +35,6 @@ def osmesa_empty(): | |||
rc.osmesa.OSMesaDestroyContext(rc.context) | |||
|
|||
|
|||
@pytest.fixture() | |||
def image_store(request, extras, tmpdir): |
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.
note: this is now in conftest.py
|
||
|
||
@pytest.fixture() | ||
def image_store(request, extras, tmpdir): |
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.
copied from test_yt_idv.py so it can be used in other test files
e948c30
to
d9e454f
Compare
Latest push includes some new logic to limit the options that show up in the GUI so that unsupported shaders and scene components are not shown. I also bumped the maximum sample factor when the data is in spherical coordinates. |
Working on docs now... |
So this is a verion of #64 that seems to work pretty well with a few caveats.
This version does 2 things differently:
The main caveat is that you need a fairly large number of sample points for the ray tracing since intersection with the cartesian bounding box does not guarantee intersection with the enclosed spherical element.
EDIT: cartsian bbox calculation now works with big elements (via a recursive division when its needed).
Also, at least one thing that should be fixed before this goes in is that the cartesian bounding box calculation was designed for fairly small spherical elements and breaks down when blocks span whole quadrants of the spherical coordinate system. e.g., the new example script usesload_uniform_grid
withnproc=128
, ifnproc
is smaller (less than 8 or so), the blocks get too big and the bounding box calculation breaks down and results start to get wonky (or nonexistant). So, should fix that...Finally -- I decided to go with a new PR rather than modifying #64 because I'm abandoning the complicated intersection checks with the underlying spherical element bounds. While I think that approach could work (and could be added on here...), I think it's worth getting the simpler version here merged first and wanted to preserve #64 in its current state to make that attempt easier in the future.