Find GPU raytracing, scripting, OpenXR, annotation, and material improvements, such as the new Ignore Inactive Properties option, support for different brushed metal mapping types, and new glass projections. Plus, we added 14 translucent and opaque AxF materials from Covestro to the VRED Library and Covestro Web Shop.
We added the Anchor to Node option that determines whether or not an annotation moves with the changing relative position of its associated Scenegraph node. Therefore, if the node is transformed, the position of the annotation adapts accordingly (as the annotation's position is always calculated in world coordinates). Find it in the Annotation module's Size and Position section.
We also added an Expansion Column to the right of the List View, which displays an icon , visually indicating a Live Reference node. Double-clicking the icon opens the Live Reference module with the node selected.
We added to Edit > Selection > Adjacency for accessing the Adjacency Settings dialog and choosing between the following to specify the angle to the normal:
Picked Normal - Selects all components/geometries that are neighboring the selected geometry and are within the specified angle to the picked normal are selected.
Neighbor Normal - Selects all components/geometries that are neighboring the selected geometry and are within the specified angle to its neighbor are selected.
To improve the spectral representation during spectral raytracing Carpaint, we added full spectrum support for AxF Carpaint.
For GPU Raytracing, we have added support for compressing baked lightmaps. Use Visualization > Baked Render Options > Separate Illumination > GPU Texture Compression to enable GPU texture compression for lightmaps to reduce memory consumption on the GPU.
Find the following brushed metal improvements:
We removed the Size U and Size V options from the Bump Texture section. Brushed metal now supports texture-specific projections and different mapping types for each texture, independent of the brush orientation. Now, Mapping Type only controls how the highlight is generated, not how the texture is applied.
For Brush Mapping to apply to how the texture orientation is mapped, use Bump Texture > Use Structure. This is still connected to the brush orientation.
Choose from the UV, Planar, or Triplanar Mapping Type option for setting the type of per-texture mapping used in the various texture section. See the General Truelight Material Settings Bump Texture section for more information.
Autodesk and Covestro joined forces to provide Covestro AxF photo-realistic measured materials. Find these in the VRED Library, under Materials.
Click a thumbnail image to open a panel displaying a larger detailed image, description of the file, and a download link. For how to load these materials, see Loading Covestro AxF Materials.
To download further AxF materials for purchase, select Web Shops > Covestro to access the new Covestro web shop.
Find the following improvements to the tire material:
We've made two changes to the tire material Texture Settings. First, we added a Custom option to the Rotation Axis dropdown menu. When selected, the following options appear for transforming the placement of the material.
Rotate - Sets the custom rotation of the tire projection. To select a standard projection axis automatically, select an object and click Get From Object. To display a rotation manipulator for adjusting the rotation of the tire material, in the toolbar, enable Texturing.
To customize a tire material's texture settings, use the options in the Texture Settings section and input different values or use the rotation manipulator. Both methods can be used to adjust the rotation of the tire material.
In the toolbar, enable (Texturing).
In the Scenegraph, select the wheel geometry.
In the Material Editor, select the Tire material.
In the Texture Settings section, click Get from Object and set Rotation Axis to Custom.
Shift-click and drag the manipulator to edit the texture placement.
To widen the tread, Shift-click and drag the green indicators.
To repeat the tire profile, Shift-click and drag the pink indicators.
Here are some general improvements found in VRED 2026.1:
Find the following improvements to the Glass material:
We added Use Texture Size to provide a texture-specific projection mode. This makes materials more flexible for use, now that there is real-world texture scaling. Find Use Texture Size in the Exterior Transparency Texture, Bump Texture, Displacement Texture, and Roughness Texture sections.
Glass now supports planar and triplanar projections. Find options in the Exterior Transparency Texture section for setting the mapping type for each texture. This is independent; therefore, bump mapping can be set to UV, while color mapping can be set to triplanar.
Choose from:
We replaced global texture and transform settings with per-texture settings, making this like other materials. Existing scripts need to be adjusted to set per-texture settings.
We added the following options to the Glass Material section:
Select Medium - Offers a wide selection of refraction indices based on materials existing in reality. Choose from a custom medium, acrylic glass, water at various temperatures, and so many other real-world materials. With a selection other than custom medium, the Refraction Index is automatically set. For a custom medium, it will need to be set.
Refraction Index - Only available in Raytracing rendering mode. Sets the material's refraction index.
Screen Space Refractions - Only available in Vulkan rendering mode. Enables real-time screen space refractions.
Find the following Live Reference improvements:
To help visually identify Live Reference nodes, we added a Live Reference column to the Expansion Column of most modules or editors. Double-clicking the icon opens the Live Reference module with the node selected. Click to access a menu for displaying or hiding this.
Users running Alias and VRED on different machines or with data stored on a network drive will see a noticeable improvement in update performance.
We also improved the styling of the Create Live Reference dialog by changing button names to more accurately reflect what they do, added a prompt to indicate the action to be taken, a loading indication and status information, a more helpful error message status, and a tooltip hinting to enable Live Reference in Alias that contains the paths VRED has searched.
Find the following improvement for merging materials:
To improve material merging, we added the option, Ignore Inactive Properties, to the Merge Duplicate Materials dialog.
When disabled (default), materials are compared and only merged if all properties match. When enabled, inactive properties (the property has no effect as it is switched off in the material) are skipped during comparison, allowing materials with different inactive properties to be merged. Irrelevant fields are now skipped to enable the merge of materials. Also, non-asset materials can be merged with ones with an asset, as long as they are identical, otherwise. But, if the assets have different UUIDs, they cannot be merged.
For example, with Ignore Inactive Properties enabled:
For Python API v2, to merge certain options only on specific materials, we added an overload of vrMaterialService.mergeDuplicateMaterials that takes a list of materials and merges only the materials in that list with each other, instead of on all materials.
For the Optimize Module's Merge Materials option, inactive properties are now ignored, as well as material names. It changes the material assignments in the selected subtree, points to the same "identical" material, and removes all unused materials from the scene. It does not replace sub-materials in multi-materials, such as switch materials. This is what makes it a bit different from the Material Editor merge function.
We improved hand-tracking precision and added support for the following:
class VRDeviceTrackingMatrixUpdater:
def __init__(self):
self.left_controller = vrDeviceService.getVRDevice("left-controller")
self.right_controller = vrDeviceService.getVRDevice("right-controller")
if self.right_controller:
self.right_controller.signal().moved.connect(self.update_right_controller_matrix)
self.block_signal = False
def update_right_controller_matrix(self):
if self.block_signal:
return
self.block_signal = True
right_matrix = QMatrix4x4(1.0,0,0,100, 0,1.0,0,100, 0,0,1.0,100, 0,0,0,1.0)
self.right_controller.setTrackingMatrix(right_matrix)
self.block_signal = False
trackingMatrixUpdater = VRDeviceTrackingMatrixUpdater()
We also added support for VR menu Flashlight and Measurement tools; however, this currently only works for controllers and not tracked hands.
We changed the behavior of the Visualization > Rasterization Settings menu option boxes (). They now behave consistently with others in VRED.
For Raytraced Reflections, we added an Enable Raytraced Reflections option to the settings dialog for enabling and disabling raytraced reflections. When enabled, the Raytraced Reflections menu option appears checked.
For Realtime Environment Shadows, we added an Enable Realtime Environment Shadows option to the settings dialog for enabling and disabling realtime environment shadows. When enabled, the Realtime Environment Shadows menu option appears enabled.
To make it easy to find a reference node, we added Show in Reference Editor to the Scenegraph > References context menu. This opens the Reference Editor with the file selected and highlighted. Use this when troubleshooting an issue with a file.
Find the following scripting improvement:
We added Python commands for setting the DLSS phase count to a higher accumulation phase count and reset DLSS history. Now, when switching variants, the colors of the two variants won't mix and result in an incorrect result, instead the DLSS accumulation history is reset.
setDLSSMaxPhaseCount(framecount)
- Sets the number of frames DLSS renders before going idle. The minimum frame count is 72.
getDLSSMaxPhaseCount()
- Returns the max phase count.
resetDLSSHistory()
- Resets the DLSS accumulation history and starts over. Calling this function might be necessary when switching color variants, in order to get the correct colors and reduce artifacts due to the accumulation history.
For example,
setDLSSMaxPhaseCount(279)
print getDLSSMaxPhaseCount()
To improve scene loading performance, we optimized texture update computations.
setSnapshotNoSound
and getSnapshotNoSound
functions to setSnapshotNoShowImage
and getSnapshotNoShowImage
.To select the startup renderer, we added a new command line parameter, --renderer
. It will override the default rasterizer or raytracer set in the preferences. These are the available options:
gl
for the OpenGL rasterizer = --renderer gl
vk
for the Vulkan rasterizer = --renderer vk
cpurt
for the CPU raytracer = --renderer cpurt
gpurt
for the GPU raytracer = --renderer gpurt
For example: VREDPro.exe --renderer vk
For XR users, we added the Python the getTrackingMatrix()
function to vrdCameraNode
for querying the HMD tracking matrix.
Returns: | The HMD tracking matrix. |
Return type: | QMatrix4x4 |
We added the following options to configure idle detection:
render()
), Add to Cluster Queue (sendToClusterQueue()
), and Add to Render Queue (addToRenderQueue()
), at the bottom of Render Settings to start offline rendering to the vrRenderSettingsService interface.In 2026.1, we have made the texture compression process much faster, so pre-calculations are no longer required. Previously, compressing a texture was time consuming and required a pre-process and the uploading of the final compressed data to the GPU.
We improved performance when compressing textures on CUDA-capable systems using the vrMaterialService.compressTextures() Python command or enabling the Use GPU Texture Compression option in the preferences.