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

[Hydra] Changing primvars always causes a full prim resync #1078

Closed
marktucker opened this issue Jan 3, 2020 · 1 comment
Closed

[Hydra] Changing primvars always causes a full prim resync #1078

marktucker opened this issue Jan 3, 2020 · 1 comment

Comments

@marktucker
Copy link
Contributor

Description of Issue

Changing a primvar in any way (adding or removing a primvar, changing a primvar value, changing primvar interpolation, changing a primvar value or interpolation of an inherited primvar, etc) all cause a full hydra resync of the prim and all its children (because of possible primvar inheritance). Instead, a simple DirtyPrimvar change should be enough to resync the prim(s).

This change will likely cause problems for some render delegates that currently rely on a full resync when primvars are added or removed (and note the persistent nature of the primvar descriptors in the value cache - there is no way to remove a primvar from the desriptors stored in the cache). I would prefer if it were up to the render delegate to handle the adding/removal of a primvar without a full resync, even if this did require updating some delegates...

Steps to Reproduce

  1. Set TF_DEBUG=USDIMAGING_CHANGES
  2. Load the attached file into usdview:
    sphere.zip
  3. In the interpreter run the following code to change a primvar value:
    a = usdviewApi.stage.GetObjectAtPath("/geo.primvars:foo")
    a.Set(1.0)
  4. Notice the messages about repopulating /geo/sphere/mesh_0. Ideally this would just cause a DirtyPrimvar change notification sent to the Sync function for the rprim. See the discussion on https://groups.google.com/forum/#!topic/usd-interest/vdCorI2iFuI

Package Versions

USD 19.11

@jilliene
Copy link

jilliene commented Jan 6, 2020

Filed as internal issue #USD-5775

pixar-oss pushed a commit that referenced this issue Mar 9, 2020
- Adds and removes a primvar that is consumed by the material (using a fallback value).
- Adds/removes primvars that aren't used by the material.

See #1078

(Internal change: 2047501)
(Internal change: 2047897)
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