Kit 110.4 Release Highlights#
Release Date: October 2026
Kit 110.4 is a feature branch release focused on expanding point cloud and virtual factory integration workflows, introducing video texture support, broadening USD and MDL material compatibility, and delivering broad reliability improvements across rendering, physics, and the Kit SDK.
Point Cloud Streaming and Virtual Factory Integration#
Kit 110.4 significantly advances point cloud streaming capabilities for large-scale industrial digital twin workflows. This release adds generative meshing, CUDA meshing, and a public storage and authentication API — forming a complete foundation for virtual factory integration applications.
Generative Meshing#
Generative Meshing converts point cloud regions into textured 3D meshes. The workflow renders a snapshot of the selected region, applies image-to-image and image-to-mesh AI models, converts the resulting output to USD, and aligns it back to the original stage region. Configurable paths enable custom model integrations.
GPU-Accelerated Meshing for Point Clouds#
Point clouds can now be converted to meshes within selection box bounds using GPU-accelerated processing. This gives developers programmatic mesh generation from live or cached point cloud sources, with UI tools for generating and placing mesh objects in the scene.
Public Storage and Authentication API#
Point cloud streaming now supports custom storage and authentication backends through the public Storage/Auth API, making it straightforward to connect point cloud workflows to enterprise storage systems.
For a full list of changes, refer to the Kit 110.4 Release Notes.
Video Textures#
Kit 110.4 introduces native video texture support, enabling GPU-accelerated video playback as a texture source in Kit applications. Previously, there was no official path for hardware-accelerated video decoding in Kit; the most efficient workarounds relied on NvJPEG scripts and could not natively decode video files or web streams.
GPU-Accelerated Video Decoding#
Video files and RTSP web streams can now be loaded and decoded on the GPU using the DeepStream library, with the decoded frames made available as textures. Video textures integrate with the timeline widget for synchronized playback, with Movie Capture for frame-accurate offline rendering, and with OmniGraph for controlled playback timing. Colorimetry metadata is used to select sRGB or linear backing texture formats for color-accurate results.
Dome Light Video Texture Support#
Dome Lights can now use video texture files as their texture source, enabling animated environment lighting workflows that were previously blocked.
For a full list of changes, refer to the Kit 110.4 Release Notes.
USD and MDL Material Compatibility#
Kit 110.4 delivers a broad set of material compatibility improvements, with particular focus on MDL-in-USDZ support, MaterialX performance, and USD material correctness.
MDL Materials in USDZ Packages#
USDZ packages now fully support MDL materials and resources, including UDIM tiled texture resources, MDL modules loaded from memory blobs through the USD Asset API, and MDL modules and resources in arbitrarily nested USDZ packages. These capabilities resolve failures that previously caused materials to render incorrectly or not at all when MDL content was packaged inside USDZ archives.
MaterialX and OpenPBR Warm Load Performance#
Warm MaterialX and OpenPBR material loading is significantly faster through stable content-based UJITSO cache reuse. Previously, the rtx.materialx system regenerated MaterialX-derived MDL and rebuilt binding metadata on every process run, adding approximately three seconds to warm RTX startup even when materials had not changed.
UsdPreviewSurface and MDL Correctness#
USD 25.11 UsdPreviewSurface materials now support the opacityMode input. MDL compiler warning C183 (unused parameter) is suppressed by default for MaterialX-generated materials and is configurable through /rtx/mdl/compilerWarningOptions. MaterialX Standard Surface thin-walled glass materials now refract interior geometry correctly, and normal maps rotate correctly in the hex tile MDL node.
OpenUSD Upgrade#
OpenUSD packages are upgraded to a 25.11 build in omni.usd_libs, improving USD asset loading stability.
For a full list of changes, refer to the Kit 110.4 Release Notes.
Rendering#
Kit 110.4 brings rendering quality and reliability improvements across RTX Real-Time 2.0, sensor simulation, geometry streaming, and large-scene workflows.
RTX Real-Time 2.0#
Real-Time 2.0 rendering mode receives several quality fixes: bright blue light bleed with caching enabled is resolved, shadow artifacting is addressed, DLSS smearing artifacts with bright emissions are fixed, and ambient illumination through transparent surfaces in low-light scenes is restored. Light photometric accuracy is also improved in RGB rendering mode.
Sensor Simulation#
RTX LiDAR secondary returns now render correctly for mirror reflections when using idealized rays. RTX LiDAR can now handle valid multi-state solid-state OmniLidar configurations with serialized emitter-state payloads larger than 5 MiB, which previously produced no sensor output and blocked simulation of sensors such as the Livox Mid-360. TargetMotionSD now correctly includes per-vertex motion vectors for UsdGeom.Mesh primitives with GPU-animated points attributes, and transform motion on frame 1 after render history initialization is no longer missed.
Non-visual material prim properties are now live-updateable for sensor material responses on open stages, removing the previous requirement to reopen the stage to see material property changes take effect. Sample ISP programs in omni.sensors.nv.camera are now available on Windows x64 and Linux ARM64, in addition to the previously supported Linux x86.
Scene Partitioning for Large Multi-Environment Workloads#
Scene partitioning now supports up to 32K partition indices, enabling 16,384-environment workloads such as those used in large-scale Isaac Lab training runs. Previously, the limit was 15,625.
Geometry Streaming#
Geometry Streaming AutoLoD selection no longer makes certain scenes unworkable when LODAutogenerate is enabled. GPU-updated deformable meshes now correctly recompute smooth normals after positions-only updates under default TBN Auto mode. RTX sensor render-graph batching is enabled for multi-sensor workloads, reducing synchronization and submission overhead.
Direct Tessellation for USD Geometric Primitives#
Setting --/rtx/geometricPrims/useLegacySubdivision=false enables direct tessellation of USD geometric primitives (cylinders, spheres, and similar shapes), rendering them at their exact authored dimensions instead of as subdivision surfaces, which previously caused visible gaps in pipe visualization workflows.
For a full list of changes, refer to the Kit 110.4 Release Notes.
Fabric Scene Delegate#
Fabric Scene Delegate (FSD) receives several correctness fixes in Kit 110.4. Inherited primvars now render correctly on all meshes per prototype in natively instanced scenes with multiple meshes per prototype. Sparse primvar interpolation updates no longer read another prim’s interpolation data, which previously caused changed meshes to keep stale or incorrect primvar interpolation. Instance-root primvar overrides are now applied to all child gprims in a prototype, not only the first. Stale PointInstancer transforms are no longer left visible when all instances of a prototype are hidden and then re-added. Switching USD variants that contain Point Instancers no longer leaves stale geometry from previous variants visible. FSD now correctly reflects material changes on open stages. Scenes with more than 8,000 lights no longer cause existing lights to stop illuminating the scene when additional lights are enabled.
For a full list of changes, refer to the Kit 110.4 Release Notes.
Live Session and USD Storage#
Live session join performance is improved for large datasets over variable-bandwidth network connections. USD stage load times no longer regress due to Live Edit session list and logged-user info queries blocking the main thread. Content Browser now refreshes correctly after create, copy, rename, and file-creation operations. Newly created USD files now appear immediately for other users viewing the same directory, and file renames appear without requiring manual folder navigation. Third participant selection icons now display correctly in Live sessions.
For a full list of changes, refer to the Kit 110.4 Release Notes.
CAD Converter and USD Exchange#
CAD Converter 209.7 ships with Kit 110.4, including several geometry fidelity improvements. DGN-to-USD conversion now correctly handles geometry on the Default level when levelNamePatterns is set to *, and 3D objects represented by proxy curve subtypes are no longer omitted. DGN 2D shape curve objects now convert correctly to USD 2D shapes. CAD Converter now supports converting 2D DWG geometry to USD BasisCurves, including DWG data embedded in Revit files. FBX NurbsCurve data is now preserved during USD conversion instead of being silently dropped. The omni.kit.converter.jt_core extension is upgraded to JT Open Toolkit 12.1.
For a full list of changes, refer to the Kit 110.4 Release Notes.
Kit SDK#
Commands and Undo System#
Several correctness issues in omni.kit.commands are resolved in Kit 110.4. Failed commands are no longer pushed to the redo stack, preventing broken or partially unwound operations from being re-executed. Undo and redo stacks no longer grow without bound during long sessions. An abandoned begin_group() call no longer permanently corrupts undo system state. Grouped command undo no longer continues after a child undo() raises an exception.
Extensions Manager#
The Extensions Manager receives a comprehensive set of reliability and usability improvements. The AUTOLOAD checkbox can now be unchecked for extensions with unsatisfied dependencies. The UPDATE button correctly transfers the autoload preference to the latest version. Clearing a user extension search path in the Properties editor no longer silently removes the path on the next save. Cache cleanup no longer stops after the first deletion failure. Documentation availability checks no longer stop after an unavailable URL raises AttributeError. The Extensions window no longer shows an empty failure message when another version of the same extension is enabled, and it no longer raises AttributeError when the community tab is disabled.
Viewport and Raycast#
Orthographic cameras no longer show unexpected rotation behavior when orbiting. The Teleport tool now moves the camera to the correct picked surface point when the stage uses non-default metersPerUnit values. Measurement labels and draw lines are now hidden after deactivating the omni.kit.tool.measure tool. The omni.kit.raycast.query extension now supports USD pickable prim flags to exclude specific prims from raycast hit results, making it possible to prevent helper geometry or non-interactive prims from interfering with pick operations.
Selection and Stage Window#
The Stage window now identifies USD abstract and instance-proxy prims, enabling selection and inspection of prototype geometry in instanced assemblies. omni.usd.Selection.select_all_prims now returns all descendant prims as documented. FramePrimsCommand no longer produces oversized margins or clips model edges at certain viewport aspect ratios.
Property Window and Material Library#
Property window performance is improved for large prim selections, including UI construction and value changes. MaterialUtils.get_materials_from_stage() now returns an empty list before the first USD stage exists instead of raising AttributeError. Markup thumbnails now display at correct positions with appropriate quality in clash detection and markup workflows.
OmniGraph#
OmniGraph receives multiple correctness fixes: OmniAttribute.value now returns falsy local values instead of runtime attribute values; Bundle.clear() now correctly removes runtime-resident bundle attributes; BundleContents.attributes setter no longer clears bundle contents before raising “not implemented”; DataWrapper.__getitem__ no longer produces float memory addresses; UInt type conversions no longer silently truncate to 8 bits; and DisconnectAttrsCommand.do() now correctly validates destination attributes before proceeding.
Tracy Profiler#
omni.kit.profiler.tracy now uses Tracy 0.13.1 and exposes server, GUI, capture, and csvexport binaries, providing access to the latest profiling tools and workflow integrations.
Selected Prim Export#
Selected prims can now be exported from a larger stage with their dependencies as self-contained assets using omni.kit.tool.collect.
For a full list of changes, refer to the Kit 110.4 Release Notes.