Changelog#
The format is based on Keep a Changelog.
[2.35.1]#
Added#
Added optional USD property delegate callbacks for transferring authored property modifications to another layer.
Fixed#
Centered USD property modification menu images vertically.
[2.35.0]#
Added#
Added pre-open callbacks for USD curve and gradient editors
Fixed#
USD property value models now coalesce refresh notices across active edits, direct writes, relationships, gradient edits, and curve edits
Reloaded USD gradient values before opening editor popups after pre-open callbacks
Cleared edit-group references when resetting USD attribute items
Aligned USD curve editor buttons and gradient fields with standard property field insets
Removed#
Removed the public
BoundsValueexport in favor of shared scalar typing
[2.34.2]#
Fixed#
Made hardcoded light and Aperture PBR drag-field bounds explicit so soft ranges and typed clamps stay separate
[2.34.1]#
Fixed#
REMIX-4585: Fixed property copy/paste so multichannel transforms and unresolved asset paths (e.g. textures pending ingestion) round-trip to the target prim
[2.34.0]#
Added#
Added a shared conditional visibility orchestrator for safe enable-if parsing, binding, and value-model driven row updates
[2.33.2]#
Added#
Add missing
tests/unit/__init__.pyto expose unit test classes for extension test discovery
[2.33.1]#
Fixed#
Deferred viewport manipulator and camera property refreshes until release so property panels rebuild once after drag or navigation instead of every frame
[2.33.0]#
Fixed#
REMIX-5039: USD property input tooltips now include the field display name and vector channel when applicable
[2.32.1]#
Fixed#
Mixed USD value models now keep the last selected attribute as the displayed baseline while still marking differing selections as mixed
[2.32.0]#
Changed#
Reworked USD bounds metadata flow around a canonical adapter contract so
USDAttributeItemconsumes normalized bounds/step from one adapter source provided by particle, logic, generic USD, and materials producers
[2.31.1]#
Fixed#
Fixed property panel undo/redo by flushing drag edits on release and purging stale USD listeners so active panels refresh correctly
[2.31.0]#
Fixed#
REMIX-5210: Fixed significant viewport FPS drop when dragging float/int sliders in the property panel by throttling USD writes to at most once per application frame during a drag interaction
[2.30.1]#
Changed#
Default integer and float field builders now use
USDIntDragField/USDFloatDragFieldso thatui_metadatabounds defined onUSDAttributeItem(including hard limits) are wired to drag widgets; this affects all float/int USD attributes across all property panels — any attribute withcustomData.rangeorcustomData.limitsin its schema will now have hard-bound clamping applied to typed input
[2.29.0]#
Changed#
REMIX-5117: Consolidated
USDFloatField/USDIntFieldandUSDFloatSliderField/USDIntSliderFieldinto a singleUSDFloatDragField/USDIntDragFieldwith unified bounds handlingREMIX-5117: Simplified OGN builder routing – removed fully-bounded vs. unbounded bifurcation; all float/int OGN attributes now use
USDFloatDragField/USDIntDragFieldREMIX-5117: Removed
USDFloatField,USDIntField(internal-only, replaced byUSDFloatDragField/USDIntDragField)
[2.28.0]#
Added#
UsdColorGradientWidgetRAII subclass with automatic USD listener management on popup open/closePer-curve bounds reading from USD schema
customData.limitsfor curve editorE2E tests for gradient command undo/redo with simulated UI interactions
Curve editor field builders now read per-attribute time and value bounds from USD schema
Fixed#
Gradient undo now produces a single undo entry per drag instead of duplicates
[2.27.0]#
Added#
Added color gradient field builder that wires
ColorGradientFieldto USD:values/:timesattribute pairs with undo grouping
[2.26.1]#
Changed#
Renamed override context menu labels from “Delete” to “Revert” for clearer user intent
[2.26.0]#
Changed#
REMIX-1088: Default float and int field builders now use
ui.FloatDrag/ui.IntDrag, enabling drag-to-scrub on all numeric property fields including transforms
[2.25.0]#
Fixed#
REMIX-3411: Fixed
FileTexturePickeraccepting files with unsupported extensions; unsupported selections now show a prompt dialog listing valid texture formats
[2.24.1]#
Changed#
Applied new lint rules
[2.24.0]#
Added#
REMIX-5012: USD float/int field delegates for attributes with partial bounds (only min or only max)
Changed#
REMIX-5012: Bounds resolution now supports partial and hard bounds, routing fully-bounded attributes to sliders and partially-bounded attributes to input fields
[2.23.0]#
Added#
Added
ui_metadatadict parameter toUSDAttributeItemfor passing OGN-sourced UI hints (hard_min, soft_min, hard_max, soft_max, ui_step) to slider and other UI delegatesAdded
has_bounds_dataproperty onUSDAttributeItemto indicate when min/max bounds are available (fromui_metadataor USD attributecustomData)Added
get_min_max_bounds()andget_step_value()public methods onUSDAttributeItemfor reading bounds and step fromui_metadatawith fallback to USD attributecustomDataAdded
USDIntSliderFielditem delegate for bounded integer attributes (mirrorsUSDFloatSliderField)Added OGN field builders for bounded float and bounded int attributes: OGN node attributes with min/max metadata now get float or int slider widgets automatically
Exposed
FLOAT_TYPESandINT_TYPESinmappingmodule for type checks in field builders
Changed#
USDFloatSliderFieldandUSDIntSliderFieldnow delegate bounds and step resolution toUSDAttributeItemviaget_min_max_bounds()andget_step_value(), instead of reading USDcustomDatadirectlyBounds resolution checks
ui_metadata(hard then soft) first, then falls back to USD attributecustomData.range.min/maxfor backward compatibility
[2.22.3]#
Changed#
Modernize python style and enable more ruff checks
[2.22.2]#
Changed#
Switched to ruff for linting and formatting
[2.22.1]#
Fixed#
Fixed virtual attribute default values being overwritten during initialization
[2.22.0]#
Added#
Added
default_valueparameter toUSDAttributeItemfor external default value override
Changed#
Disabled override deletion menu for OmniGraph node attributes
Fixed#
Fixed
is_defaultcheck to handle None attribute valuesFixed override detection to check for authored time samples
[2.21.2]#
Changed#
Configured
inputs:configPathOGN field builder to use relative paths
[2.21.1]#
Changed#
Code formatting improvements
[2.21.0]#
Added#
Added USD relationship support with USDRelationshipItem and UsdRelationshipValueModel classes
Added utils for relationship detection and access (is_property_relationship, get_item_relationships)
[2.20.0]#
Added#
Added OGN field builders for OmniGraph node property widgets
Changed#
Improved type handling for value type names throughout property widget models
[2.19.5]#
Changed#
Use Flux Pip Archive instead of Kit Pip Archive
[2.19.4]#
Fixed#
REMIX-4288: Adding a check for uncaught TypeError when converting values to property panel attributes.
[2.19.3]#
Fixed#
REMIX-4246: Preventing vector property widgets trying to convert values to python native types like float and resetting the property to the default value by calling the correct method.
[2.19.2]#
Fixed#
REMIX-4253: Fixed crash when previewing normal maps (or any non-RGBA textures)
[2.19.1]#
Fixed#
Fixed Test assets too large to work without LFS
[2.19.0]#
Changed#
Update the documentation for Pydantic V2 compatibility
[2.18.1]#
Fixed#
Changed to using a ImageWithProvider to better display single channel textures
[2.18.0]#
Added#
Added the ability to left-align property names
[2.17.1]#
Fixed#
Virtual attr should display default until they are set
[2.17.0]#
Added#
Add support for non-xform stub attributes
Added slider widget for material attribute subsurface_radius_scale
[2.16.0]#
Changed#
Update to Kit 106.5
property widget tree: support virtual attribute items
simplified and refactored property tree items and value models
[2.15.0]#
Added#
Added slider widget for material attribute displace_out
[2.14.0]#
Added#
Added support for multi-edit and displaying “mixed” values
Changed#
Refactored value model classes to clarify and share more code
[2.13.1]#
Fixed#
Fixed material property builder string field tooltip and copy menus
[2.13.0]#
Added#
Added identifier for UI elements
[2.12.0]#
Changed#
Use centralized LayerTree widget
[2.11.7] - 2024-07-12#
Added#
Full file path hover tooltip for material string field properties
Copy file path menu for material string field properties
Fixed#
Now the fallback texture preview window title doesn’t break when there are multiple assets selected
[2.11.6] - 2024-06-26#
Fixed#
Texture preview windows sharing the same UI instance
[2.11.5]#
Fixed#
Fixed issue resetting color widget to default value
[2.11.4]#
Changed#
Updated default values for material attribute displace_in
[2.11.3]#
Changed#
Use updated
SUPPORTED_TEXTURE_EXTENSIONS
[2.11.2]#
Changed#
Update deps
[2.11.1] - 2024-04-12#
Fixed#
Fix property editor crash for unknowns widget builders
[2.11.0] - 2024-04-02#
Added#
Rework how all the per-item UI building works with new
FieldBuildersystemImplemented a USD specific
FieldBuilderRegistryto simplify registeringFieldBuilderforUSDItemAdded
USDFloatSliderFieldwhich can adjust min/max range of slider using USD metadata
Changed#
Updated Field widget builder objects to adopt updates from
omni.flux.property_widget_builder.delegates-1.3.0Updated many float attributes to use sliders
[2.10.5]#
Changed#
Set Apache 2 license headers
[2.10.4] - 2024-03-25#
Changed#
Update color types to use a single value model to hold the Gf.Vec* value
Add clipboard serializer for Gf.Vec* types
[2.10.3] - 2024-02-21#
Fixed#
Reverted a change which made file texture widgets update before editing was complete
[2.10.2] - 2024-02-09#
Changed#
Renamed Delegate
set_selected_itemstoselected_items_changedImplemented abstract method
ItemModel.get_valueused for serialization in copy/pasteAdded serializer hooks to handle serialization of
Sdf.AssetPath
[2.10.1] - 2024-01-19#
Changed#
Keep widget focus when editing a value
Modify how “virtual” attributes are presented
[2.10.0] - 2024-01-13#
Changed#
Allow setting asset path items’
file_extension_optionsproperty
[2.9.3] - 2023-12-01#
Fixed#
Fixed a bug when previewing single channel textures
[2.9.2] - 2023-11-15#
Fixed#
“reset_default_value” should always set a value and ignore
block_set_value
[2.9.1] - 2023-11-14#
Fixed#
Fix undo that was still “open” when the delegate was refreshing
[2.9.0] - 2023-10-26#
Added#
Added
display_attr_names_tooltip
[2.8.0] - 2023-10-05#
Changed#
Use renamed
DefaultFielddelegate
[2.7.0] - 2023-09-05#
Changed#
Don’t allow deleting overrides on locked layers
[2.6.2] - 2023-08-02#
Fixed#
Optimization
[2.6.1] - 2023-07-24#
Fixed#
Check for a valid stage before using it
[2.6.0] - 2023-06-01#
Added#
Pre and post callback during
set_valuefor itemsExpose
utilsmodule
Changed#
centralize the default
build_branch()creation in the delegatefile_texture_pickerdelegate set the texture only at the end of the field edit
[2.5.2] - 2023-05-10#
Fixed#
Fix for 105
[2.5.1] - 2023-05-02#
Changed#
Close button on the texture preview window
[2.5.0] - 2023-03-13#
Changed#
The property tree will only update the delegates after the values stop changing for 0.25s. This greatly reduces the number of UI update calls and makes the UI a lot smoother.
Fixed#
Fixed nullref exception on destroy
[2.4.2] - 2023-03-10#
Fixed#
Fixed xform attribute undo grouping
Fixed xform attribute refreshing when ending edit with default value
[2.4.1] - 2023-01-13#
Fixed#
Fixed material target layer for undo (new SDK)
[2.4.0] - 2022-12-05#
Added#
Added the ability for Virtual Attributes to be created
[2.3.5] - 2023-01-10#
Fixed#
Remove fixed material target layer for undo (because Kit team said it was merged, but it wasn’t)
[2.3.4] - 2023-01-09#
Fixed#
Fixed material target layer for undo
[2.3.3] - 2022-11-28#
Changed#
Added a callback for layer events in the base widget
[2.3.2] - 2022-11-22#
Fixed#
Fix the default value for scale
[2.3.1] - 2022-11-04#
Fixed#
Fix empty paths for textures
[2.3.0] - 2022-11-02#
Changed#
Added layer override indicators
[2.2.1] - 2022-11-02#
Fixed#
Added missing extension dependency
[2.2.0] - 2022-10-28#
Fixed#
Hierarchy attribute items didn’t call
supress_usd_events_during_widget_edit
[2.1.0] - 2022-10-07#
Changed#
Improved texture picker delegate to preview the images + show file attributes
[2.0.0] - 2022-09-19#
Changed#
Use context name
Use
omni.flux.property_widget_builder.delegatesadd_model_and_delegate()renamed toadd_model()(and it only takes a model as input)remove_model_and_delegate()renamed toremove_model()(and it only takes a model as input)USDAttributeItemtakes the context name as input (not the stage anymore)
Added#
set_display_attr_names()toUSDAttributeItemUSDMetadataListItemto be able to set USD metadata of an attributeUSDAttrListItemto be able to set USD attribute with multiple value choice (like enums)USDDelegateuses some delegates fromomni.flux.property_widget_builder.delegatesUsdListModelBaseValueModelto read and set a metedata of an USD attributeUsdListModelAttrValueModelto read the value of an attribute with multiple value choice (like enums)FileTexturePickerdelegate derived fromomni.flux.property_widget_builder.delegates, to show texture paths of USD attributesComboboxdelegate derived fromomni.flux.property_widget_builder.delegates, to show multiple value choice (like enums) of USD attributes
[1.0.0] - 2022-07-08#
Added#
Init commit.