forked from PixarAnimationStudios/OpenUSD
-
Notifications
You must be signed in to change notification settings - Fork 0
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
[pull] release from PixarAnimationStudios:release #1
Open
pull
wants to merge
5,544
commits into
antonyggvzvmnxxcx:release
Choose a base branch
from
PixarAnimationStudios:release
base: release
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
I believe it's potentially problematic to declare an HdStRenderDelegate or HdStResourceRegistrySharedPtr as static in the way some of these tests did. The _HgiToResourceRegistryMap is a static singleton that includes a custom deleter for HdStResourceRegistry. If _HgiToResourceRegistryMap is deleted first, the custom deleter for HdStResourceRegistry might do a heap-use-after-free as the deleter modifies a member of _HgiToResourceRegistryMap. (Internal change: 2346349)
…d produce data sources even though the input container data source has no data source for that key. (Internal change: 2346648)
SdfAttributeSpec only would incur the additional performance overhead of GetAttributeAtPath anywhere an SdfAttributeSpec handle doesn't already exist (many of the cases exist). (Internal change: 2346655)
…::GetTimeSampleMap (Internal change: 2346656)
(Internal change: 2346685)
and track allocations. These match the same options as provided in usdview, and provide instrumentation for batch rendering. (Internal change: 2346702)
…ers. - If the visibility or filterLink collection on the filter is invalidated, we forward the invalidation to the light prim. (Internal change: 2346736)
valid interpolation values. (Internal change: 2346787)
Pcp_ComposeExpressionVariables should always return a pointer to a PcpExpressionVariables object whose lifetime is managed externally. This is checked via a TF_VERIFY, but if that failed due to a bug this function could return a pointer to a temporary instead. This change avoids that by making that temporary static. This allows client code to recover gracefully if the TF_VERIFY is tripped. It also avoids a return-local-addr warning that is emitted under gcc11. (Internal change: 2346790)
…re-factoring. Bugs fixed: 1. The dependencies were only added if it had a path data source for the all-purpose material binding. This meant that if a prim started off without such a data source and then added it, the scene index do not pick up the new dependency. 2. If a material binding data source returned an empty path, the scene index was trying to call GetPrim for the empty path on the input scene index and added an unnecessary self-dependencies. There is one (hopefully reasonable) assumption that that the new implementation makes (for performance): if we got a null pointer for material bindings, no dependencies are created (for performance) and if a client adds a material bindings data source later, it won't be picked up. We also simplified the code using: 1. _GetInputSceneIndex() is never null. 2. The helper HdOverlayContainerDataSource::OverlayedContainerDataSources. (Internal change: 2346826)
… This amortizes the high cost of computing instancer information when generating pick hit information for multiple hits with one function call.
…var reader is changed. (Internal change: 2346866)
- usdchecker.py has been removed and converted to usdchecker.cpp, which currently just forwards to the existing UsdUtils.ComplianceChecker python utility. - A subsequent change adds an option to use the new Usd Validation Framework instead, which will run ALL available UsdValidators, via UsdValidationContext, and report appropriate warnings/errors. Note that as all UsdUtilsCompliant tests are ported over to the new framework, this option will be the default. (Internal change: 2346881)
1. Adding a dependency of the material binding of a prim on the material's data source of the bound material. 2. Fixing a bug where HdContainerDataSourceEditor::Overlay was called twice for the dependencies locator. This resulted in the data source given in the second call to be overlayed over the the dependencies of the input container data source and the data source given in the first call to be ignored. 3. Removing dependencies that are already added by the HdsiMaterialPrimvarTransferSceneIndex. (Internal change: 2346925)
Note that usdchecker as of right now depends on calling UsdUtils.ComplianceChecker python module, which are not build in static builds. In a subsequent change, usdchecker will be updated to also work with the new validation framework, which will remove this dependency on ComplianceChecker and make it work with static builds. (Internal change: 2346963)
…cpCacheChanges for storing specs whose children also changed in order to limit the growth of the _didChangeSpecsInternal container resulting in a performance gain. In the initial implementation, processing of this container was identical to that of _didChangeSpecsInternal. The existing updateSpecStacks function contains code paths which may modify the state of the prim index cache during invocation. Since the index cache is used for processing of _didChangeSpecsAndChildrenInternal, this could result in errors during iteration and processing if one of those branches were to ever be followed. This change provides and more applicable name to this container and streamlines the processing of the items in _didChangePrimSpecsAndChildrenInternal to include only logic which ensures that prim stacks are updated. Relevant property and target path caches are updated due to their parent paths having signficiantly changed due to addional / removal. (Internal change: 2347031)
check for a 'primvars' token first, avoiding unnecessary computation. (Internal change: 2347061)
… We should refresh view settings at AppController initialization so that the actual "display purposes" selection is propagated to the BBoxCache. This fixes a bug where some bboxes are not displayed on usdview startup when "display purpose Render" is set by default. (Internal change: 2347104)
including materials and coordinate systems. The new codepath sites behind the HD_PRMAN_ENABLE_PARALLEL_PRIM_SYNC feature flag, which is enabled by default. (Internal change: 2347140)
in common workflows, HdPrman now only deletes the light instance in the case that the light either was or is visible to camera. Also, remove a stray TODO that no longer applies. (Internal change: 2347265)
…t-HgiVulkanBlitCmds-CopyBufferCpuToGpu Autodesk: Vulkan Bugfix - HgiVulkanBlitCmds offset (Internal change: 2347311)
legacyGeomSubsetSceneIndex was not properly cleaning up its cache of subsets upon ancestor removal. (Internal change: 2347373)
HdPrman_UpdateObjectSettings_DataSource. This avoids the need to do the same check in the new data source. - In _UpdatePrimvars(), we don't need to check the result of primvars.GetPrimvar(), which removes one level of nesting. (Internal change: 2347503)
ImageIOParameter has been a simple alias for ParamValue since at least OpenImageIO 2.0.
(Internal change: 2352397)
testUsdReferenceAssemblySelection crashes due to the nullptr hgi instance. The test is likely creating an unsupported HgiGL instance due to a lack of proper GL context, which needs further investigation to fix. A ticket will be filed for this issue. (Internal change: 2352432)
Restored the earlier behavior of allocating textures with MTLResourceStorageModePrivate. This is the preferred mode for best performance and compatibility across different Metal implementations. This regression had been introduced inadvertently as part of enabling imaging for Apple embedded systems. Fixes #3470 (Internal change: 2352441)
…material overrides selected (Internal change: 2352469)
(Internal change: 2352477)
Conditional jump or move depends on uninitialised value(s) at: HdPrman_RenderPass::_RestartRenderIfNecessary(HdRenderDelegate*) (renderPass.cpp:769) (Internal change: 2352493)
(Internal change: 2352547)
…ds on the tutorialPlugin/ path itself being in PYTHONPATH. (Internal change: 2352552)
In 2351859, we added the HD_PRMAN_ALL_LIGHTS_FIXED_SAMPLE_COUNT environment variable to allow overriding fixedSampleCount on all lights hdPrman sends to RenderMan. But that parameter is only valid on a subset of lights. To avoid warnings when the parameter is set on ineligible lights, we now check whether the light supports the parameter before setting it whenever the environment variable is set. (Internal change: 2352652)
(Internal change: 2352674)
…anded and doubleSided to true (Internal change: 2352722)
Per boostorg/boost#996, boost releases are no longer hosted at JFrog. This change updates build_usd.py to download boost from SourceForge instead. If this fails the script will fall back to the "official" (but slower) host at archives.boost.io. This change also verifies the SHA256 checksum for the downloaded archive file to ensure we get the expected file regardless of host. (Internal change: 2352768)
(Internal change: 2352849)
(Internal change: 2352869)
(Internal change: 2353120)
When the environment variable is set, only set fixedSampleCount on visible lights. fixedSampleCount conflicts with lighting:mute, which is set from visibility. The conflict arises because lighting:mute needs to be very fast, so it's implemented as a zeroing-out of the light's importance. fixedSampleCount bypasses importance sampling, (Internal change: 2353124)
(Internal change: 2353142)
This was for a studio-specific workflow and not intended to be supported in OpenUSD. (Internal change: 2353214)
Besides being recommended practice, this avoids a hang on Windows that could occur when the static UsdStageCache member was destroyed during process teardown. The UsdStage objects stored in the cache would try to use TBB in their d'tors after the TBB library had been unloaded and its worker threads destroyed, leading to odd deadlocks. This most recently showed up in testUsdChecker* but also affected imaging tests, which were disabled primarily because of this issue. (Internal change: 2353331)
…ly, the emulated scene index driven by legacy scene delegates. This fixes the crash reported in #3471 caused by change 2351061. The problem was that the HdxTaskController added a task without going through emulation. But when we received a removed notice (in this case UsdImagingStageSceneIndex removing /), we removed the task without re-adding it. That is, the merging scene index is removing and re-adding prims. But because the task was not properly emulated, it was never re-added when the merging scene index send the prims added notice. Fixes #3471 (Internal change: 2353415)
(Internal change: 2353502)
(Internal change: 2353635)
(Internal change: 2353764)
…ointer in MaterialX 1.39
…sublayer results in a cycle. In order to prevent this, a cache of visited layer/sublayer path pairs is used to terminate recursive processing of sublayer paths. Fixes #3493 (Internal change: 2355098)
Alembic requires ZLIB, but only in the case that HDF5 support is enabled. Since we are selectively adding zlib as a dependency, we need to append zlib to `requiredDependencies` if HDF5 is enabled in the build context. This fixes alembic build failures on Windows. Closes #3501 (Internal change: 2355438)
…sublayer operation on a layer whose file format is a package. The current implementation which generates fine grained change lists makes use of an anonymous layer to compute a diff against. It is an error to create such a layer with a package file format. To workaround this limitation with the current implementation, we send packages down the "big bang" invalidation path. (Internal change: 2355629)
(Internal change: 2355759)
upload-artifacts@v3 had previously been deprecated and was disabled as of January 30th per: https://github.blog/changelog/2024-04-16-deprecation-notice-v3-of-the-artifact-actions/ The bug that prevented us from using v4 earlier on Windows appears to have been fixed. (Internal change: 2355870)
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
See Commits and Changes for more details.
Created by
pull[bot]
Can you help keep this open source service alive? 💖 Please sponsor : )