Updates for 24.03 release notes
authorpixar-oss <pixar-oss@users.noreply.github.com>
Fri, 16 Feb 2024 17:02:37 +0000 (09:02 -0800)
committerpixar-oss <pixar-oss@users.noreply.github.com>
Fri, 16 Feb 2024 17:25:14 +0000 (09:25 -0800)
(Internal change: 2316703)

CHANGELOG.md

index 5e88843e1d97660777ddafde6fcfc2bb35ca0c90..72c03c0b189bf2c95a7dcc4be7c1a9784c0a9d91 100644 (file)
@@ -1,5 +1,637 @@
 # Change Log
 
+## [24.03] - 2024-02-23
+
+### Build
+
+- Added support for Python 3.11. 
+  (PR: [#2742](https://github.com/PixarAnimationStudios/OpenUSD/pull/2742))
+
+- Various fixes and changes to build_usd.py:
+  - Updated OpenSubdiv version to 3.6.0.
+  - --ignore-paths and --ignore-homebrew options added to command line to help 
+    solve problems where CMake picks up unwanted sources for dependencies. 
+    (PR: [#2873](https://github.com/PixarAnimationStudios/OpenUSD/pull/2873))
+
+- Builds on macOS now avoid hard-coding specific SDK versions for system library 
+  dependencies. 
+  (Issue: [#2771](https://github.com/PixarAnimationStudios/OpenUSD/issues/2771), 
+   PR: [#2772](https://github.com/PixarAnimationStudios/OpenUSD/pull/2772))
+
+- Updated CMakeLists for usdImaging tools (usdrecord and usdBakeMtlx) to skip 
+  building if GPU and/or OpenGL are unavailable. 
+  (PR: [#2468](https://github.com/PixarAnimationStudios/OpenUSD/pull/2468))
+
+- CMake fixes to find OpenImageIO and OpenEXR when building for debug. 
+  (PR: [#2079](https://github.com/PixarAnimationStudios/OpenUSD/pull/2079))
+
+- Made build of extras/imaging/examples conditional on PXR_BUILD_EXAMPLES.
+  (PR: [#2630](https://github.com/PixarAnimationStudios/OpenUSD/pull/2630))
+
+- Improved error message when uic is not found during the build. 
+  (Issue: [#2582](https://github.com/PixarAnimationStudios/OpenUSD/issues/2582))
+
+### USD
+
+- Added support for Unicode identifiers. UTF-8 encoded characters may now be 
+  used in prim, property, and variant names, and dictionary keys. Support for 
+  serializing these identifiers has been added to the .usda and .usdc (crate) 
+  file formats. Note that files containing UTF-8 identifiers are not 
+  backwards-compatible with older versions of OpenUSD. See the 
+  [proposals](https://github.com/PixarAnimationStudios/OpenUSD-proposals/tree/main/proposals/tf_utf8_identifiers) 
+  page for more details. 
+  (PR: [#2378](https://github.com/PixarAnimationStudios/OpenUSD/pull/2378), 
+   [#2673](https://github.com/PixarAnimationStudios/OpenUSD/pull/2673), 
+   [#2751](https://github.com/PixarAnimationStudios/OpenUSD/pull/2751),
+   [#2788](https://github.com/PixarAnimationStudios/OpenUSD/pull/2788), 
+   [#2830](https://github.com/PixarAnimationStudios/OpenUSD/pull/2830), 
+   [#2848](https://github.com/PixarAnimationStudios/OpenUSD/pull/2848),
+   [#2855](https://github.com/PixarAnimationStudios/OpenUSD/pull/2855), 
+   [#2856](https://github.com/PixarAnimationStudios/OpenUSD/pull/2856),
+   [#2857](https://github.com/PixarAnimationStudios/OpenUSD/pull/2857),
+   [#2858](https://github.com/PixarAnimationStudios/OpenUSD/pull/2858), 
+   [#2867](https://github.com/PixarAnimationStudios/OpenUSD/pull/2867), 
+   [#2883](https://github.com/PixarAnimationStudios/OpenUSD/pull/2883), 
+   [#2888](https://github.com/PixarAnimationStudios/OpenUSD/pull/2888),
+   [#2889](https://github.com/PixarAnimationStudios/OpenUSD/pull/2889),
+   [#2890](https://github.com/PixarAnimationStudios/OpenUSD/pull/2890),
+   [#2906](https://github.com/PixarAnimationStudios/OpenUSD/pull/2906)) 
+
+- Added initial version of Ts library. This will be the open-source version of 
+  Presto's libAnim. It implements animation splines. For details, see the 
+  [Spline Animation proposal](https://github.com/PixarAnimationStudios/OpenUSD-proposals/blob/main/proposals/spline-animation/README.md).
+  This version builds, but isn't used by anything yet. It's a first milestone 
+  that will allow us to begin co-developing with external partners and 
+  collecting public feedback. Much work remains, see ts/README.md for a rough 
+  list of tasks.
+
+- Add initial version of UsdNamespaceEditor. This object supports basic prim and 
+  property edits, with property target path fixing, in the local layer stack 
+  only. This is a work-in-progress, future releases will provide more complete 
+  functionality and documentation.
+
+- Fixed broken validation of allowed characters in Ar URI resolver schemes. 
+  (PR: [#2859](https://github.com/PixarAnimationStudios/OpenUSD/pull/2859))
+
+- Refactored Arch_ComputeNanosecondsPerTick to empirically calculate nanoseconds 
+  per tick.
+  (Issue: [#2719](https://github.com/PixarAnimationStudios/OpenUSD/issues/2719))
+
+- Added thread-safety, size, and performance improvements to TfRefBase, 
+  TfRefPtr, and TfToken.
+
+- Updated DoubleConversion version to v3.3.0 in Tf. 
+  (Issue: [#2218](https://github.com/PixarAnimationStudios/OpenUSD/issues/2218))
+
+- Fixed bugs not properly decrementing Python exception state reference counts,
+  and not properly saving/restoring exception state in some corner cases.
+
+- Added workaround for "insufficient permissions" errors that occurred on 
+  Windows when saving files to a network drive. By default, filesystem 
+  permissions are no longer checked before saving files on Windows. This avoids 
+  cases where permissions are incorrectly reported by the system. On Linux and 
+  macOS permissions are still checked, maintaining previous behavior.
+  This behavior can be overridden by setting the environment variable
+  `TF_REQUIRE_FILESYSTEM_WRITE_PERMISSION`. This setting defaults to
+  `true` on Linux and macOS, and `false` on Windows.
+  (Issue: [#849](https://github.com/PixarAnimationStudios/OpenUSD/issues/849))
+
+- Fixed Python DLL loading order on Windows
+  (PR: [#2595](https://github.com/PixarAnimationStudios/OpenUSD/pull/2595))
+
+- Numerous changes to remove boost usage. 
+  (PR: [#2353](https://github.com/PixarAnimationStudios/OpenUSD/pull/2353), 
+   [#2681](https://github.com/PixarAnimationStudios/OpenUSD/pull/2681), 
+   [#2682](https://github.com/PixarAnimationStudios/OpenUSD/pull/2682), 
+   [#2684](https://github.com/PixarAnimationStudios/OpenUSD/pull/2684),
+   [#2701](https://github.com/PixarAnimationStudios/OpenUSD/pull/2701), 
+   [#2707](https://github.com/PixarAnimationStudios/OpenUSD/pull/2707), 
+   [#2709](https://github.com/PixarAnimationStudios/OpenUSD/pull/2709), 
+   [#2711](https://github.com/PixarAnimationStudios/OpenUSD/pull/2711), 
+   [#2714](https://github.com/PixarAnimationStudios/OpenUSD/pull/2714),
+   [#2715](https://github.com/PixarAnimationStudios/OpenUSD/pull/2715), 
+   [#2718](https://github.com/PixarAnimationStudios/OpenUSD/pull/2718), 
+   [#2748](https://github.com/PixarAnimationStudios/OpenUSD/pull/2748), 
+   [#2750](https://github.com/PixarAnimationStudios/OpenUSD/pull/2750), 
+   [#2752](https://github.com/PixarAnimationStudios/OpenUSD/pull/2752), 
+   [#2754](https://github.com/PixarAnimationStudios/OpenUSD/pull/2754), 
+   [#2761](https://github.com/PixarAnimationStudios/OpenUSD/pull/2761), 
+   [#2763](https://github.com/PixarAnimationStudios/OpenUSD/pull/2763), 
+   [#2764](https://github.com/PixarAnimationStudios/OpenUSD/pull/2764), 
+   [#2765](https://github.com/PixarAnimationStudios/OpenUSD/pull/2765), 
+   [#2778](https://github.com/PixarAnimationStudios/OpenUSD/pull/2778), 
+   [#2781](https://github.com/PixarAnimationStudios/OpenUSD/pull/2781), 
+   [#2785](https://github.com/PixarAnimationStudios/OpenUSD/pull/2785), 
+   [#2786](https://github.com/PixarAnimationStudios/OpenUSD/pull/2786), 
+   [#2802](https://github.com/PixarAnimationStudios/OpenUSD/pull/2802), 
+   [#2810](https://github.com/PixarAnimationStudios/OpenUSD/pull/2810),
+   [#2811](https://github.com/PixarAnimationStudios/OpenUSD/pull/2811), 
+   [#2823](https://github.com/PixarAnimationStudios/OpenUSD/pull/2823), 
+   [#2831](https://github.com/PixarAnimationStudios/OpenUSD/pull/2831), 
+   [#2833](https://github.com/PixarAnimationStudios/OpenUSD/pull/2833), 
+   [#2834](https://github.com/PixarAnimationStudios/OpenUSD/pull/2834), 
+   [#2835](https://github.com/PixarAnimationStudios/OpenUSD/pull/2835), 
+   [#2842](https://github.com/PixarAnimationStudios/OpenUSD/pull/2842), 
+   [#2843](https://github.com/PixarAnimationStudios/OpenUSD/pull/2843), 
+   [#2864](https://github.com/PixarAnimationStudios/OpenUSD/pull/2864), 
+   [#2874](https://github.com/PixarAnimationStudios/OpenUSD/pull/2874))
+
+- Various fixes and changes for SdfPathExpression:
+  - Fixed a bug in the SdfPathExpression parser: only allow the pattern chars 
+    '-', '!', and ']' once an initial '[' has been seen. Previously a case like
+    /foo//-/foo/bar// which should parse as a set-difference ('/foo// -
+    /foo/bar//') would parse as a single path pattern with a '-' element.
+  - Fixed a bug where SdfPathExpression was searching for wildcard matches 
+    anywhere in path components rather than matching components in full.
+  - Fixed logic bugs in the incremental search implementation for
+    SdfPathExpressionEval. Added debug output, and improved test coverage for
+    incremental searches in testSdfPathExpression.
+  - Fixed a bug where SdfPathExpression evaluation would incorrectly report a
+    constant false when the query path was a prefix of a pattern prefix.
+  - Added compile-time-enabled TF_DEBUG code for SdfPathExpressionEval.
+
+- SdfChangeList now provides a more precise list of layer edits.
+  - Changes to composition-related fields like "references" and "inherits" are 
+    now listed as info changes so they can be handled generically. 
+  - Some changes are now split into multiple entries for the same prim or 
+    property when needed to provide clients an unambiguous order of operations.
+  - The previous path for re-parented prims is now captured. 
+
+- Added exception throwing and handling to avoid corrupted file reads during 
+  SdfLayer setup. 
+  (PR: [#2552](https://github.com/PixarAnimationStudios/OpenUSD/pull/2552))
+
+- Ensured that SdfAbstractData::HasDictKey returns false if the provided value's 
+  type does not match the valueType. 
+
+- Fixed bug in SdfBatchNamespaceEdit where certain sequences of operations would 
+  erroneously be flagged as invalid.
+
+- Initial work on reimplementing the .usda parser to remove dependencies on flex 
+  and bison.
+  (PR: [#2822](https://github.com/PixarAnimationStudios/OpenUSD/pull/2822), 
+   [#2819](https://github.com/PixarAnimationStudios/OpenUSD/pull/2819))
+
+- Fixed an issue in SdfAssetPath::_ReadUTF8 where certain multibyte unicode 
+  characters would not be decoded correctly.
+  (Issue: [#2560](https://github.com/PixarAnimationStudios/OpenUSD/issues/2560))
+
+- Increased default version for newly created crate files to 0.9.0.
+  (PR: [#2838](https://github.com/PixarAnimationStudios/OpenUSD/pull/2838))
+
+- Updated SdrShaderProperty to support int2, int3, and int4, which conforms to
+  SdfValueTypeNamess->int2, SdfValueTypeNames->int3, SdfValueTypeNames->int4. 
+  Users do not have to specify sdrUsdDefinitionType for int2, int3, and int4 
+  SdrShaderProperties now.
+
+- Added the ability to pass a traversal predicate to UsdStage attribute 
+  connection/relationship target finders, and UsdStage::ExpandPopulationMask().
+
+- Made "kind" a disallowed field for metadata in schemas.
+
+- Changed UsdCollectionMembershipQuery behavior to use either the path expansion
+  rule map form, or the membership expression form, preferring the rule map form
+  if authored. Provided a way for callers to determine whether or not the
+  expression form was used to match. Also fixed some API export tag names.
+
+- UsdFlattenLayerStack now handles add/reorder statements as described in the 
+  docs for the case where there's only one opinion.
+
+- Added guard to gracefully handle NULL stage pointers.
+  (Issue: [#2721](https://github.com/PixarAnimationStudios/OpenUSD/issues/2721))
+
+- Fixed unnecessary VtArray copy-on-writes during attribute creation. 
+  (PR: [#2816](https://github.com/PixarAnimationStudios/OpenUSD/pull/2816))
+
+- Validate UsdCollectionAPI before accessing in 
+  UsdShadeMaterialBindingAPI::ComputeBoundMaterial.
+  (PR: [#2501](https://github.com/PixarAnimationStudios/OpenUSD/pull/2501))
+
+- Improved performance for computing variant selections during prim composition. 
+  For example, in a synthetic test case involving a prim with 1000 references, 
+  adding 500 variant sets to that prim previously took ~25.5 seconds; it now 
+  takes ~6.8 seconds. 
+  (Issue: [#1957](https://github.com/PixarAnimationStudios/OpenUSD/issues/1957), 
+   [#2010](https://github.com/PixarAnimationStudios/OpenUSD/issues/2010))
+
+- Fixed bug where variant selections authored at implied sites would be ignored 
+  when composing prims with composition arcs pointing to subroot prims.
+
+- Fixed bug where incorrect sites would be checked for opinions during dynamic 
+  payload argument composition.
+
+- Fixed bug where the wrong inclusion state for ancestral payloads would be 
+  computed when composing prims with composition arcs pointing to subroot prims.
+
+- Fixed bugs in UsdInherits::GetAllDirectInherits where the results would be 
+  incomplete or include paths in non-local layer stacks.
+
+- Added UsdGeomTetMesh schema.
+
+- Added support for elementTypes "point", "edge", and "tetrahedron" in 
+  UsdGeomSubset.
+
+- Added single precision `orientationsf` to UsdGeomPointInstancer, which, if 
+  authored, takes precedence over half-precision `orientations`.
+  (Issue: [#2529](https://github.com/PixarAnimationStudios/OpenUSD/issues/2529))
+
+- Deprecated UsdGeomSubset::ValidateSubsets in favor of ValidateFamily.
+
+- Added change to avoid de-referencing iterators of an empty set when validating 
+  UsdGeomSubset families with no indices.
+  (PR: [#2733](https://github.com/PixarAnimationStudios/OpenUSD/pull/2733))
+
+- Updated UsdGeomPrimvar::ComputeFlattened() to consider elementSize.
+
+- Added a null pointer check in UsdGeomBBoxCache::_Resolve. This brings behavior 
+  in line with other UsdGeomBBoxCache operations and prevents crashing in 
+  certain multi-threaded situations. 
+  (PR: [#2905](https://github.com/PixarAnimationStudios/OpenUSD/pull/2905))
+
+- Improved the UsdObj handling of .obj files with 'g' statements. 
+  (PR: [#2092](https://github.com/PixarAnimationStudios/OpenUSD/pull/2092))
+
+- Updated usdRiPxr codeless schemas with updated concepts from RenderMan 25.
+
+- Updated UsdShadeOutput::GetAttr to return const reference for consistency. 
+  (Issue: [#2617](https://github.com/PixarAnimationStudios/OpenUSD/issues/2617))
+
+- Updated UsdShadeOutput::IsOutput to check attribute validity, to match
+  UsdShadeInput::IsInput behavior.
+  (Issue: [#2876](https://github.com/PixarAnimationStudios/OpenUSD/issues/2876),
+   PR: [#2877](https://github.com/PixarAnimationStudios/OpenUSD/pull/2877))
+
+- Added a new method UsdUtilsLocalizeAsset which will localize an asset to a 
+  directory on disk. It also introduces the concept of a user processing 
+  function which allows users to provide a function which can modify asset paths 
+  and dependencies while leveraging built in asset discovery and traversal code.
+
+- Added an optional UsdUtilsProcessingFunc parameter to 
+  UsdUtilsComputeAllDependencies. This allows users to inject custom logic into 
+  asset discovery.
+
+- Updated NormalMapTextureChecker to use GetValueProducingAttributes.
+  (PR: [#2885](https://github.com/PixarAnimationStudios/OpenUSD/pull/2885))
+
+- Updated ARKit conformance checks to match spec from WWDC 2023.
+  (https://developer.apple.com/documentation/realitykit/validating-usd-files)
+  (PR: [#2863](https://github.com/PixarAnimationStudios/OpenUSD/pull/2863),
+   [#2875](https://github.com/PixarAnimationStudios/OpenUSD/pull/2875))
+
+### UsdImaging
+
+- Replaced use of GetValueProducingAttribute() API, which had been deprecated
+  and was emitting warnings.
+
+- Added imaging support for UsdGeomTetMesh in Hydra 1.0.
+
+- Added support for Material Nodegraph edits when using the stage SceneIndex.
+
+- Added DataSourceAttributeColorSpace to lazily populate the color space 
+  metadata in Hydra 2.0.
+
+- Added forceDirtyingTimeDeps flag to UsdImagingStageSceneIndex::SetTime(). This 
+  can be used to force render delegates into resampling all primvars in response 
+  to, e.g., the camera and thus the shutter interval changing.
+
+- Fixed a bug where time-sampled attributes on lights, light filters, and 
+  cameras were not detected as time-varying. 
+  (PR: [#2734](https://github.com/PixarAnimationStudios/OpenUSD/pull/2734))
+
+- Added support for asynchronous Hydra processing in UsdImagingGLEngine and 
+  usdview, activated with the --allow-async flag in usdview.
+
+- Added support for asset[]-valued attribute data sources.
+
+### Storm
+
+- Removed include of dispatcher.h in public header to reduce transitive includes 
+  of TBB headers.
+  (PR: [#2616](https://github.com/PixarAnimationStudios/OpenUSD/pull/2616))
+
+- Published HdSt and Hdx tests, available on Linux. 
+
+- Enabled Hgi resource generation for non-HgiGL Hgi backends by default.
+
+- Fixed a bug where creation of HgiSampler in various backends will always 
+  enable anisotropy.
+  (PR: [#2492](https://github.com/PixarAnimationStudios/OpenUSD/pull/2492))
+
+- Fixed a typo in hgiInterop CMakeLists.txt.
+  (PR: [#2641](https://github.com/PixarAnimationStudios/OpenUSD/pull/2641))
+
+- Added ability to support both HgiGL and HgiVulkan in single build.
+  (PR: [#2564](https://github.com/PixarAnimationStudios/OpenUSD/pull/2564))
+
+- Added new unit test for HgiGL and HgiVulkan.
+  (PR: [#2851](https://github.com/PixarAnimationStudios/OpenUSD/pull/2851))
+
+- Added memory barrier between CPU-GPU copy and GPU-GPU copies in 
+  HdStStagingBuffer::Flush.
+
+- Various correctness and stability improvements to HgiVulkan, including:
+  - Added implementation for HgiVulkanBlitCmds::FillBuffer.
+  - Improved clearing logic of HgiVulkanGraphicsCmds such that we only clear a 
+    VkRenderPass when it's used for the first draw batch in graphics cmds 
+    submission.
+  - Fixed visualization of Embree normals AOV when using HgiVulkan.
+  - HgiVulkan now uses validation layer VK_LAYER_KHRONOS_validation instead of 
+    deprecated VK_LAYER_LUNARG_standard_validation.
+  - Removed incorrect use of indexBufferByteOffset when binding index buffer.
+  - Added env var HGIVULKAN_ENABLE_MULTI_DRAW_INDIRECT, mirroring HgiGL version.
+  - Added support for builtin barycentric coordinates.
+  - Enabled alphaToOne, allowing its use in the 
+    VkPipelineMultisampleStateCreateInfo setup.
+  - Added codepath for clearing attachments in HgiVulkanGraphicsCmds without 
+    beginning a render pass.
+  - Added method Hgi::SubmitLayoutChange, allowing user to request texture 
+    layout changes. Used this method to fix color correction task when using 
+    HgiVulkan.
+  - Many validation layer error fixes.
+  (PR: [#2852](https://github.com/PixarAnimationStudios/OpenUSD/pull/2852))
+
+- Enabled multi-threaded buffer source resolve to improve performance when 
+  executing buffer source computations during resource commit.
+
+- Updated to use improved OpenSubdiv shader source mixins to reduce shader 
+  source size and improve compatibility when compiling GLSL to SPIR-V for Vulkan.
+
+- Updated to include implementations of SPIRV-Reflect and VMA (Vulkan Memory 
+  Allocator) directly from the Vulkan SDK instead of maintaining copies of these 
+  within the hgiVulkan implementation.
+  (PR: [#2563](https://github.com/PixarAnimationStudios/OpenUSD/pull/2563))
+
+- Added a version guarded workaround to avoid a performance regression when 
+  rendering order independent transparency (OIT) on some recently released Metal 
+  devices.
+
+- Removed the use of CoreVideo texture caches from hgiMetal to simplify the 
+  implementation and fix a memory leak.
+  (PR: [#2828](https://github.com/PixarAnimationStudios/OpenUSD/pull/2828))
+
+- Added change to support float type matrix (GfMatrix4f) for instance transforms. 
+  (PR: [#2724](https://github.com/PixarAnimationStudios/OpenUSD/pull/2724))
+
+- Added support to provide visual feedback for broken material shaders.
+
+- Fixed determination of screen space point size when using authored widths.
+
+- Improved the performance of shader generation when certain non-standard 
+  primvar names are present.
+
+- Refactored HdSt_CodeGen to take metaData as constructor arg. This allows us to 
+  delay the construction of the codeGen object since the hash can be computed 
+  from the constructor args. With this change there is approx 50% speedup in 
+  HdStExtCompGpuComputation::Execute.
+
+### Hydra
+
+- Fixed a bug that could lead to crashes in HdsiPrimTypePruningSceneIndex.
+
+- Hydra now supports inserting asset names into material networks.
+
+- Made HdImageShaderSchema constants return a schema instead of a container data 
+  source.
+
+- Made HdSceneIndexAdapterSceneDelegate handle image shaders correctly.
+
+- Made HdImageShaderSchema filePath a string, not an asset path.
+
+- Moved material node sampler parameter extraction into the standalone function 
+  HdGetSamplerParameters.
+
+- Added disableDepthOfField bool to RenderSettings.
+
+- Included <optional> to fix external build error. 
+  (PR: [#2907](https://github.com/PixarAnimationStudios/OpenUSD/pull/2907))
+
+- Changed Metal's swizzle so single channel texture reads follow the 
+  UsdPreviewSurface spec of repeating the single channel on the r, g, and b 
+  channels with 1.0 in the alpha channel. 
+  (Issue: [#2731](https://github.com/PixarAnimationStudios/OpenUSD/issues/2731))
+
+- Updated color correction task to support building against OpenColorIO 2.3.0. 
+  (PR: [#2651](https://github.com/PixarAnimationStudios/OpenUSD/pull/2651))
+
+- Updated DataSourceMaterial and added HdMaterialNodeParameterSchema for 
+  colorspace handling in both Hydra 1.0 and 2.0.
+
+- Added UnderlyingDataSource to HdSchema and HdVectorSchema. This allows folding 
+  HdVectorSchemaBasedContainerSchema into HdSchemaBasedContainerSchema.
+
+- Deprecated hd/vectorSchemaTypeDefs.h in favor of the more generic 
+  hd/schemaTypeDefs.h
+
+- Deprecated BuildRetained Hydra schema in favor of Builder.
+
+- Added more typing to Hydra schemas by replacing container/vector data sources 
+  with appropriate schemas. This was done for HdMaterialBindingsSchema, 
+  HdMaterialSchema, HdMaterialNetwork, HdMaterialNode, 
+  HdRenderProductVectorSchema, and HdRenderVarVectorSchema.
+
+- Added GetFlattenedPrimvarValue for HdPrimvarSchema.
+
+- HdGeomSubsetsSchema::GetIds is now GetGeomSubsetNames.
+
+- Fixed implementation of GetContributingSampleTimesForInterval in 
+  HdDataSourceLegacyPrim to include the samples just before or just after the 
+  given shutter interval.
+
+- Added HdRenderDelegate::GetCapabilities, used to indicate motion blur support.
+
+- Introduced HdsiPrimTypeNoticeBatchingSceneIndex and 
+  HdsiPrimManagingSceneIndexObserver. Future render delegates can be implemented 
+  by observing the terminal scene index (HdRenderDelegate::SetTerminalSceneIndex) 
+  and providing an appropriate prim factory.
+
+- HdRenderPassState::SetOverrideWindowPolicy now takes std::optional instead of 
+  std::pair (similar for related classes).
+
+- Improved loading of multichannel OpenEXR files.
+
+- Enabled decompression of dwaa and dwab OpenEXR files.
+
+- OpenEXR code is now MinGW and Neon compatible.
+
+- Added support for monochrome OpenEXR images and swizzling for luminance 
+  channels.
+  (Issue: [#2800](https://github.com/PixarAnimationStudios/OpenUSD/issues/2800))
+
+- Added utility to write out scene index to file.
+
+- Removed 'bindingStrength' from HdMaterialBindingSchema.
+
+- Added support for asynchronous processing in Hydra generative procedurals, 
+  through the new SystemMessage scene index API. Procedural implementations need 
+  to implement the new asynchronous API to take advantage of this, and the host 
+  application will need to send periodic asyncPoll messages.
+
+- Added Hydra schema support for public interface mappings on material prims.
+
+- Prims with self-dependencies will no longer be signaled as dirty after they 
+  are removed.
+
+- Fixed a situation where both smooth and flat normals were being computed for 
+  HdMeshes for representations where only one of the two was needed. This is 
+  expected to remove about 10ms per unintended invocation.
+
+- Added multithreaded sync for HdExtComputations. Added a work parallel loop in 
+  Hd_PrimTypeIndex::SyncPrims enabled only for Prim types that opt-in. Opted 
+  "extComputation" into threaded prim sync by default. With this there is an 
+  order of magnitude performance improvement for use cases which have a 
+  significant number of HdExtComputations.
+
+- Added Hydra schemata to transport direct and collection-based material 
+  bindings, and a scene index to compute the resolved binding. Current support 
+  is limited to direct material bindings.
+
+### RenderMan Hydra Plugin
+
+- LPE AOV's now use the RenderVar name rather than the LPE expression as the 
+  channel name. This both gives expected output names in EXR channels, and fixes 
+  name collisions when the same LPE is used with multiple summary statistics, 
+  such as variance and mse.
+
+- Fixed crash when UsdRenderProduct's orderedVars points at a target prim that 
+  does not exist.
+
+- HdPrman now supports TfToken-typed parameters.
+
+- HdPrman now has a scene index filter, HdPrman_UpdateObjectSettingsSceneIndex,
+  that will upgrade certain attributes used in older RenderMan versions to their 
+  modern representation.
+
+- Reduced overhead of portalLightResolvingSceneIndexPlugin.
+
+- Fixed handling of coordinate systems for light filters, which would give 
+  incorrect results in some circumstances.
+
+- Added support for single precision rotations for point instancers in HdPrman. 
+  Note that half precision rotations are still supported but are cast to floats.
+  (Issue: [#2529](https://github.com/PixarAnimationStudios/OpenUSD/issues/2529))
+
+- Added PxrMesh adapter to help mesh lights work on older versions of USD which 
+  do not have scene index support.
+
+- Added change to use the 'disableDepthOfField' RenderSettings option in HdPrman.
+
+- Added change to query and use shutter curve parameters if available.
+
+- Made various improvements to enable usage of a render settings prim to drive 
+  render pass execution. Current support is limited to generation of multiple 
+  render product artifacts in batched (i.e., non-interactive) mode.
+
+- Improved determination of the Riley shutter interval and its use for motion 
+  blur.
+
+- Improved instancing stability & performance.
+
+- All motion blur handling has been consolidated into a single scene index. 
+  Motion blur is now more consistently supported across the entire scene.
+
+- Motion blur will better respect the shutter settings of the active camera.
+
+- ExtComp is now compatible with motion blur.
+
+### usdview
+
+- Replaced deprecated QFontMetrics.width with horizontalAdvance.
+  (PR: [#2625](https://github.com/PixarAnimationStudios/OpenUSD/pull/2625))
+
+- Updated usdview selection processing to maintain correct selection 
+  highlighting after switching variants or prim activation and avoid some errors 
+  that could occur at startup when using PySide6 on Linux or Windows.
+
+### usdrecord
+
+- Updated camera transforms for usdrecord to make sure small objects are not 
+  unexpectedly culled by the clipping planes. 
+  (Issue: [#2556](https://github.com/PixarAnimationStudios/OpenUSD/issues/2556))
+
+- Updated CMakeLists for usdrecord to skip building if GPU and/or OpenGL are 
+  unavailable. 
+  (PR: [#2468](https://github.com/PixarAnimationStudios/OpenUSD/pull/2468))  
+
+### usdcat
+
+- Fixed issues with usdcat --flattenLayerStack argument.
+  (PR: [#2832](https://github.com/PixarAnimationStudios/OpenUSD/pull/2832))
+
+### MaterialX
+
+- Fixed name collision with MaterialX inputs and built-in uniforms in Storm. 
+  (PR: [#2807](https://github.com/PixarAnimationStudios/OpenUSD/pull/2807))
+
+- Fixed OIT issues for MaterialX when using Metal. 
+  (PR: [#2614](https://github.com/PixarAnimationStudios/OpenUSD/pull/2614))
+
+- Added HdMtlxGetStdLibraries to cache the MaterialX::LoadLibraries step. 
+  (PR: [#2666](https://github.com/PixarAnimationStudios/OpenUSD/pull/2666))
+
+- Added change to allow matrix33 default values in UsdMtlx. 
+  (PR: [#2554](https://github.com/PixarAnimationStudios/OpenUSD/pull/2554))
+
+- Fixed testUsdImagingGLMaterialXCustomNodes_customColor failure. 
+  (PR: [#2728](https://github.com/PixarAnimationStudios/OpenUSD/pull/2728))
+
+- Fixed Tangent vector calculation for MaterialX NormalMaps. 
+  (Issue: [#1585](https://github.com/PixarAnimationStudios/OpenUSD/issues/1585))
+
+- Updated MaterialXMatfilt to handle normalMaps with PreviewSurface Materials. 
+  (Issue: [#1585](https://github.com/PixarAnimationStudios/OpenUSD/issues/1585))
+
+- Fixed shader compile error when using MaterialX's :heighttonormal nodes. 
+  (Issue: [#2281](https://github.com/PixarAnimationStudios/OpenUSD/issues/2281), 
+   PR: [#2474](https://github.com/PixarAnimationStudios/OpenUSD/pull/2474))
+
+- Fixed a bug where the "fileprefix" attribute was not being applied to 
+  filenames. 
+  (Issue: [#974](https://github.com/PixarAnimationStudios/OpenUSD/issues/974), 
+   PR: [#2660](https://github.com/PixarAnimationStudios/OpenUSD/pull/2660))
+
+- Updated CMakeLists for usdBakeMtlx to skip building if GPU and/or OpenGL are 
+  unavailable. 
+  (PR: [#2468](https://github.com/PixarAnimationStudios/OpenUSD/pull/2468))   
+
+### Documentation
+
+- Fixed various documentation issues.
+  (PR: [#2565](https://github.com/PixarAnimationStudios/OpenUSD/pull/2565),
+   [#2779](https://github.com/PixarAnimationStudios/OpenUSD/pull/2779))
+
+- Updated doc for UsdStage::Traverse() comments regarding PrimRange.
+  (Issue: [#222](https://github.com/PixarAnimationStudios/USD/issues/222))
+
+- Updated UsdPreviewSurface Specification, added information about transparent 
+  black for texture wrap mode border color, clarified clearcoat inputs.
+  (Issue: [#2659](https://github.com/PixarAnimationStudios/OpenUSD/issues/2659),
+   [#2770](https://github.com/PixarAnimationStudios/OpenUSD/issues/2770))
+
+- Updated "Products Using USD" docs page with new Unity packages.
+  (PR: [#2884](https://github.com/PixarAnimationStudios/OpenUSD/pull/2884))
+
+- Updated UsdSkel documentation with fixed examples.
+  (Issue: [#2621](https://github.com/PixarAnimationStudios/OpenUSD/issues/2621),
+   PR: [#2697](https://github.com/PixarAnimationStudios/OpenUSD/pull/2697))
+
+- Updated Python docstring generation scripts: 
+   - Added fix to ignore previously generated __DOC.py files.
+   - Fixed building docstrings on Windows.
+   - Improved conversion of C++ types.
+   - Added ability to build docstrings without having to first build HTML docs, 
+     using new CMake build options PXR_BUILD_PYTHON_DOCUMENTATION and 
+     PXR_BUILD_HTML_DOCUMENTATION.
+  (PR: [#2574](https://github.com/PixarAnimationStudios/OpenUSD/pull/2574), 
+   [#2575](https://github.com/PixarAnimationStudios/OpenUSD/pull/2575),
+   [#2578](https://github.com/PixarAnimationStudios/OpenUSD/pull/2578),
+   [#2581](https://github.com/PixarAnimationStudios/OpenUSD/pull/2581))
+
+- Fixed UsdShadeMaterialBindingAPI example.
+  (PR: [#2726](https://github.com/PixarAnimationStudios/OpenUSD/pull/2726))
+
+<details open>
+  <summary><b>Previous Releases</b></summary>
+
 ## [23.11] - 2023-10-26
 
 ### Build
 
 - Improved cmake performance when performing a monolithic build.
 
+- Made 12.6.3 as the minimum macOS requirement (with compatible Xcode version 
+  being 13.3) we test against.
+
 ### USD
 
 - Fixed VtArray declarations of extern template instantiations. 
@@ -7784,3 +8419,5 @@ See documentation in [BUILDING.md](BUILDING.md#c-namespace-configuration) for mo
 ## [0.7.0] - 2016-08-01
 
 Initial release
+
+</details>
\ No newline at end of file