Ver 6.20.07, API Version 4.04.00

Date - Apr 11, 2024


Highlights




Features




Bugfixes




Ver 6.10.07, API Version 4.02.00

Date - Apr 26, 2023


Highlights




Features



V-Ray Proxies support

Experimental (subject to changes)

Bugfixes





Ver 6.00.30, API Version 4.00.00

Date - 2 Nov, 2022


Highlights



Features




Ver 5.20.20, API Version 3.10.00

Date - 3 Feb, 2022

Highlights



Features




Version 5.10.01, API Version 3.00.00

Date - 5 Mar, 2021


Highlights 



* New V-Ray VFB (codenamed VFB2).
* Share VRayRenderer instances among programming languages.
* [C++] Added move semantics to the Value type and the Plugin property setters.
C++11 is now required to use AppSDK in C++.
* Added Python 3.8 binding.
* Added .Net Core builds.



Features



* [VFB2] Added functions to get/set VFB2 settings as JSON.
* [VFB2] Added an update notification event/callback to VRayRenderer.
* [VFB2] Added LightMix Transfer To Scene event/callback to VRayRenderer.
* [VFB2] Added a flag to disable the VFB2 Transfer To Scene button to RendererOptions.
* [VFB2] Window handle functions:
- Added getNativeHandle(), getQWidget(), setNativeParentWindow(),
setQWidgetParent() and getMinimumSize();
- Marked getWindowHandle() and setParentWindow() as deprecated/obsolete.
* Added the ability to share the same VRayRenderer instance among different
programming languages:
- Added VRayRenderer.getInstanceHandle() method
(InstanceHandle read-only property in C#);
- Added VRayRenderer(instanceHandle) constructor.
* Added new checkDRHost(hostString) function that checks whether a VRayServer instance
is listening on a given host/port and returns info about it if it is.
* Filter the available CUDA and Optix devices in their corresponding get and set
functions;
* Exposed CUDA Compute Capability info.
* Added vfb.loadBackgroundImage() to load VFB CC background image.
* [Python] Completely removed old list wrapper type.
* denoiseNow() now accepts an optional "ready" callback function.
* [C++, .Net] Added two new methods get/setRenderSizes which get/set all ImageSize,
CropRegion and RenderRegion parameters and the state of the VFB region button state.
* Added VFB::clearImage() and VFB::resetState() methods.
* [C++] Added overloads with move semantics to loadAsText/appendAsText functions.
* [.Net] Added ToString() to Plugin and PluginRef.
* [.Net] Added GetHashCode() and Equals() methods, and operator== to PluginRef and PluginLink.
* Disallowed invalid characters in plugin names; Added allowInvalidCharactersInPluginNames
flag to RendererOptions to force old behavior and allow them.
* [.Net] Throw exception if creating a new plugin fails. In most cases it would happen
because of the new bad plugin name checks.
* [Node.js, Python] Changed vfb.saveImage to use the default ImageWriterOptions
if the user hasn't passed any options at all as it is in C++ and .Net
* Changed ImageWriterOptions in all languages to always set IWI_MULTI_CHANNEL
(i.e. produce a single multi-channel file if the file format supports it)
if the user hasn't passed any options at all as it is in C++ and .Net
* [Node.js, Python, Windows] Fixed setSDKLibraryPath() in Node.js and Python didn't work
with relative paths. Now it works with both absolute and relative paths.
Also full VRaySDKLibrary path is now returned by getSDKLibraryErrorString()
if the file has been found and loaded.
* Removed gpuPluginPath member from RendererOptions.
* [C++, .Net] Added callbacks for color corrections and compositing layer changes in VFB.
* [C++] Added the missing setValue(double) and getDouble methods to Plugin class.
* Added returning default values of TYPE_TEXTURE* plugin property types.
* Added Object Select render element.
* Added cameraName setters/getters to easily switch cameras which has the scene_name
property.
* [.Net] Replaced VRayImage.ToBitmapImage() with VRayImage.ToBitmapStream() in order
to avoid GDI+ dependency.
* Changed the current frame and time logic when rendering a sequence. Now the current
frame and time are changed before the wait for sequence continue is started.
VRayRenderer::getCurrentTime() and VRayRenderer::getCurrentFrame() now return
the time or frame number of the next frame that will be rendered in the sequence.
Also aborting the renderer while it is waiting to continue the sequence will
leave the next frame number as current time of the renderer.



Improved V-Ray Proxies support



* readFullData() and readPreviewData() added reading of the following data channels:
MeshObjectInfo, HairObjectInfo, ParticleObjectInfo, Hair geometry, Particle geometry,
GeometryVoxelsBBoxes, HairVoxelsBBoxes, ParticleVoxelsBBoxes
* New interfaces with ProxyReadParams input (which don't require creating a VRayRenderer)
for readFullData(), readPreviewData(), readPreviewGeometry(), readPreviewHair() and
readPreviewParticles()
* New interfaces with MeshFileData input (which don't require creating a VRayRenderer)
for createMeshFile() and createCombinedMeshFile()
* New interfaces with AnimatedTransform input for createMeshFile() and createCombinedMeshFile()
(transformations at corresponding keyframes which are written to the created file)
* readFullData() and readPreviewData() now contain start indices data,
indicating where the data belonging to the individual geometry / hair / particle voxel starts.
* readFullData() and readPreviewData() now return ObjectInfo containing the range of voxels
included in the corresponding geometry / hair / particle object.



Bugfixes



* [C++] Made callback setters and callback execution thread-safe.
* Fixed reading heterogeneous lists at different times when they were set from code.
* Fixed "progressiveImageUpdated" events not fired for lightcache updates in bucket
mode with render region set.
* When possible, preserve the type of plugin property numerical values
(bool/int/float/double) when they are set and read back from code.
* [.Net] Fixed a bug in Matrix.Transpose()
* [.Net] Fixed wrong output sizes of output downscaled images returned from some methods.