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

Displacement in Storm leads to cracked surface #3248

Open
hybridherbst opened this issue Aug 23, 2024 · 2 comments
Open

Displacement in Storm leads to cracked surface #3248

hybridherbst opened this issue Aug 23, 2024 · 2 comments

Comments

@hybridherbst
Copy link
Contributor

hybridherbst commented Aug 23, 2024

Description of Issue

I believe this is a regression if this related issue actually was fixed in the past:

When using a file with displacement, while the result looks correct when tesselation is set to "Low", the result does not look correct anymore when tesselation is set to "Medium", "High", "Very High".

| Complexity | Result |
| - | – |
| Low | image |
| High | image |

Steps to Reproduce

  1. Download displacement_plane.zip (extracted from the other issue)
  2. Open in usdview
  3. Set viewport complexity to "Low" or "High"
  4. Note on "High" the individual faces crack apart
@jesschimein
Copy link

Filed as internal issue #USD-10020

@davidgyu
Copy link
Member

davidgyu commented Sep 7, 2024

@hybridherbst You're correct that we did fix this for HgiGL (and it still works correctly there), but there are additional fixes needed for HgiMetal which has a different shading pipeline than GL and Vulkan.

pixar-oss pushed a commit that referenced this issue Sep 14, 2024
The PTVS shaders process a triangulated quad as a six vertex patch
representing the vertices of the original quad split into two triangles
with a vertex sequence of v0,v1,v2, v2,v3,v0. To correctly interpolate
vertex and varying primvar we need to sample primavar values at the
corners of the quad which correspond to the triangulated quad vertices
with indices: 0,1,2,4.

Also, fixed the order in which vertices are passed to the PTVS
quad and tri-quad primvar interpolation methods.

Fixes #3248

(Internal change: 2340457)
pixar-oss pushed a commit that referenced this issue Sep 14, 2024
Added tests for vertex and varying texture coordinates being used
for displacement along with updated baseline images for faceVarying.

The handling of primvar data used to access displacement can be
different than the handling of primvar data used to access other
material parameters because displacement is executed upstream of
rasterization, i.e. in the GS or PTVS shader stages while other
material parameters are typically accessed in the FS.

Also, adjusted the lighting used in the tests so that the baseline
images are not as dark as they have been previously.

Fixes #3248

(Internal change: 2340461)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants