VRay SDK for C#
Loading...
Searching...
No Matches
VRay.VRayRenderer Class Reference

This class controls the native V-Ray renderer and manages scene contents. More...

Inherits IDisposable.

Classes

class  ProfilerMethods
 

Public Types

enum  AddHostsResult
 Result of AddHosts method
 
enum  DefaultsPreset
 Global settings presets used with VRayRenderer.SetImprovedDefaultSettings().
 
enum  RendererState
 Enumeration used by the StateChanged event and returned by VRayRenderer.GetState() for the current asynchronous renderer state. Use the static helpers IsInactiveState and IsActiveState to check for multiple values.
 
enum  WaitTime
 Used with waitForRenderEnd()
 

Public Member Functions

 VRayRenderer ()
 Creates a new VRayRenderer using the default rendering options. The default render mode is Interactive.
 
 VRayRenderer (IntPtr instanceHandle)
 Creates a new shared VRayRenderer from an instance handle. This allows sharing a VRayRenderer instance among different programming languages and/or shared libraries in the same process. Use with extreme caution! Do not use unless you know exactly what you're doing! More...
 
 VRayRenderer (RendererOptions rendererOptions)
 Creates a new VRayRenderer using the specified options. The default render mode is Interactive. More...
 
void Abort ()
 Flags to stops the current rendering without waiting for the render thread to finish.
 
AddHostsResult AddHosts (string hosts)
 Adds hosts to the renderer for distributed rendering. More...
 
bool AddVRayProfilerMetadata (string category, string key, string value)
 Add a key-value pair to VRay Profiler metadata under a specific category (key). Should be called as early as possible before SetVRayProfiler, otherwise it will have no effect. More...
 
void Append (FileInfo sceneFile, bool drSendNameOnly=false)
 Appends a V-Ray scene from a .vrscene file. More...
 
void Append (params FileInfo[] sceneFiles)
 Appends the specified scene files data to the currently loaded scene without wiping it. This treats all files as one. More...
 
void Append (params string[] sceneFileNames)
 Appends the specified scene files data to the currently loaded scene without wiping it. This treats all files as one. More...
 
void Append (string sceneFileName, bool drSendNameOnly=false)
 Appends a V-Ray scene from a .vrscene file. More...
 
void AppendAsText (params string[] sceneTexts)
 Appends V-Ray scenes from text data array in the format of a .vrscene files. More...
 
void AppendAsText (string sceneText)
 Appends a V-Ray scene from text data in the format of a .vrscene file. More...
 
void AppendAsTextFiltered (OnPluginFilter onPluginFilter, params string[] sceneTexts)
 Appends a V-Ray scene from text data in the format of a .vrscene file using a plugin filtering callback. More...
 
void AppendAsTextFiltered (string sceneText, OnPluginFilter onPluginFilter)
 Appends a V-Ray scene from text data in the format of a .vrscene file using a plugin filtering callback. More...
 
void AppendAsTextFiltered (string[] sceneTexts, OnPluginFilter onPluginFilter)
 Appends a V-Ray scene from text data in the format of a .vrscene file using a plugin filtering callback. More...
 
void AppendFiltered (FileInfo sceneFile, OnPluginFilter onPluginFilter)
 Appends a V-Ray scene from a .vrscene file using a plugin filtering callback. More...
 
void AppendFiltered (FileInfo[] sceneFiles, OnPluginFilter onPluginFilter)
 Appends V-Ray scenes from a .vrscene files array using a plugin filtering callback. This treats all files as one. More...
 
void AppendFiltered (OnPluginFilter onPluginFilter, params FileInfo[] sceneFiles)
 Appends V-Ray scenes from a .vrscene files array using a plugin filtering callback. This treats all files as one. More...
 
void AppendFiltered (OnPluginFilter onPluginFilter, params string[] sceneFileNames)
 Appends a V-Ray scene from a .vrscene file array using a plugin filtering callback. This treats all files as one. More...
 
void AppendFiltered (string sceneFileName, OnPluginFilter onPluginFilter)
 Appends a V-Ray scene from a .vrscene file using a plugin filtering callback. More...
 
void AppendFiltered (string[] sceneFileNames, OnPluginFilter onPluginFilter)
 Appends a V-Ray scene from a .vrscene file array using a plugin filtering callback. This treats all files as one. More...
 
void BucketRenderNearest (int x, int y)
 In Production mode the method provides the coordinates for a nearby bucket to be rendered. If the selected bucket has already been rendered, a closest bucket will be picked with a minimum distance to the specified coordinates. The coordinates must be within the dimensions of the currently rendered image, otherwise the method has no effect. The method has also no effect in progressive modes. More...
 
bool ClearAllPropertyValuesUpToTime (double time)
 Removes all keyframe values of animated properties up to the given time. More...
 
void ClearLastError ()
 Clear the last error.
 
bool ClearPropertyValuesUpToTime (double time, PluginCategories categories)
 Removes all keyframe values of animated properties up to the given time only from plugins of the given categories. More...
 
bool ClearScene ()
 Stops any ongoing rendering and clears the scene contents.
 
long Commit ()
 Commits any accumulated scene changes. This is necessary if the AutoCommit flag is set to false. More...
 
void ContinueSequence ()
 Starts the rendering of an animation sequence in a separate thread using the default animation sequence from the vrscene file.
 
bool DeletePlugin (Plugin plugin)
 Delete the plugin from the scene and remove any references to it from other plugins. More...
 
bool DeletePlugin (string pluginName)
 Delete the plugin from the scene and remove any references to it from other plugins. More...
 
bool DeletePlugins (IEnumerable< Plugin > plugins)
 Delete multiple plugins from the scene and remove any references to them from other plugins. More...
 
bool DeletePlugins (IEnumerable< string > pluginNames)
 Delete multiple plugins from the scene and remove any references to them from other plugins. More...
 
bool DenoiseNow (OnManualDenoiseFinished userCallback=null, bool shouldPassImage=true)
 Explicitly starts the denoiser. Requires a RenderChannelDenoiser instance in the scene. This can be run while rendering is ongoing or when it's paused or after it is stopped. Denoising parameters are taken from the RenderChannelDenoiser plugin. The denoising is run asynchronously, so this function will return as soon as the thread is started. When denoising is done the PostEffectsUpdated callback will be called. More...
 
void DisableDRClient ()
 Toggles off the current VRayRenderer to act as a DR2 client. More...
 
void Dispose ()
 Releases internal resources held by the current renderer. The renderer becomes unusable after calling Dispose().
 
void EnableDRClient (EnableDRClientParams enableParams)
 Toggles on the current VRayRenderer to act as a DR2 client. More...
 
void EnableLiveLinkClient (EnableLiveLinkClientParams enableParams)
 Toggles on the current VRayRenderer to act as a DR2 LiveLink client. More...
 
bool Export (FileInfo file)
 Exports the currently loaded scene to the specified text file. The export serializes all plugins in text format. More...
 
bool Export (string filePath, ExportSettings settings=null)
 Exports the currently loaded scene to the specified text file. The export serializes all plugins in text format. More...
 
string ExportToBuffer (ExportSettings settings=null)
 Exports and return the currently loaded scene as a string instance. The export serializes all plugins in text format. More...
 
AutoExposureResult GetAutoExposureResult ()
 Gets the auto-exposure and auto-white balance values computed during the last light cache calculation. More...
 
Plugin GetCamera ()
 Returns the current camera. More...
 
GetCamera< T > ()
 Returns the current camera. More...
 
long GetChangeIndex ()
 Returns the last change index for interactive changes on the renderer instance. More...
 
ComputeDeviceInfo[] GetComputeDevicesCUDA ()
 Returns a list of all devices available for use by the CUDA engine. The "CUDA CPU" device uses the CUDA engine code compiled for the x86-64 architecture. It is not the CPU V-Ray engine. It is disabled by default but you can enable it for faster "hybrid" rendering. More...
 
ComputeDeviceInfo[] GetComputeDevicesCurrentEngine ()
 Returns a list of all devices available for use by the current engine (Optix, CUDA, Metal). More...
 
ComputeDeviceInfo[] GetComputeDevicesDenoiser ()
 Returns a list of all devices available for denoising. More...
 
ComputeDeviceInfo[] GetComputeDevicesMetal ()
 Returns a list of all devices available for use by the Metal engine. macOS only. More...
 
ComputeDeviceInfo[] GetComputeDevicesOptix ()
 Returns a list of all devices available for use by the Optix engine. Compute capability >= 5.2 is required to use Optix. All unsupported devices will be ignored. More...
 
CropRegion GetCropRegion ()
 Gets the virtual crop region (RgnLeft, RgnTop, RgnWidth, RgnHeight) within a virtual source image space with sizes SrcWidth, SrcHeight. More...
 
bool GetDREnabled ()
 Return whether distributed rendering is currently enabled or not. More...
 
VRayImage GetImage (GetImageOptions options=null)
 Gets the latest rendered image. This can return intermediate results while rendering. WARNING: If Nvidia AI upscaling is enabled, then the returned image/data will have even dimentions. More...
 
bool GetImageSize (out int width, out int height)
 Gets the rendering width and height. (There're also properties Width and Height.) More...
 
Plugin GetInstanceOf (string pluginClassName)
 Returns the latest instance of a given plugin type if any exist. Should be used for singleton plugins. Most settings plugins are singletons. More...
 
GetInstanceOf< T > ()
 Returns the latest instance of a given plugin type if any exist. Should be used for singleton plugins. Most settings plugins are singletons. More...
 
Plugin GetInstanceOrCreate (string pluginClassName, string pluginName=null)
 Returns an existing instance (the last one) of a given plugin type or creates a new instance otherwise, using the given instance name. Should be used for singleton plugins. Settings plugins are singletons. More...
 
GetInstanceOrCreate< T > (string pluginName=null)
 Returns an existing instance (the last one) of a given plugin type or creates a new instance otherwise, using the given instance name. Should be used for singleton plugins. Settings plugins are singletons. More...
 
InteractiveStatistics GetInteractiveStatistics ()
 
Plugin GetOrCreatePlugin (string pluginClassName, string pluginName)
 Returns an existing plugin instance with the given instance name and of the given type. A new instance is created if one does not exist with the given name. This behaves like getInstanceOrCreate if no instance name is given (empty/null), i.e. returns any instance of this type as long as one exists. For singleton plugins like the settings plugins use getInstanceOrCreate() to avoid inadvertently creating more than one instance. More...
 
GetOrCreatePlugin< T > (string pluginName)
 Returns an existing plugin instance with the given instance name and of the given type. A new instance is created if one does not exist with the given name. This behaves like getInstanceOrCreate if no instance name is given (empty/null), i.e. returns any instance of this type as long as one exists. For singleton plugins like the settings plugins use getInstanceOrCreate() to avoid inadvertently creating more than one instance. More...
 
Plugin GetPlugin (string pluginName)
 Searches the current scene for the plugin with the specified name. More...
 
GetPlugin< T > (string pluginName)
 Searches the current scene for the plugin with the specified name. More...
 
PluginMeta GetPluginMeta (string pluginClassName)
 Gets the meta info for the plugin of the given type. More...
 
Plugin[] GetPlugins ()
 Returns an array with all Plugin instances contained in the scene. More...
 
Plugin[] GetPlugins (string pluginClassName)
 Returns an array with Plugin instances of the specified type. More...
 
T[] GetPlugins< T > ()
 Returns an array with Plugin instances of the specified type. More...
 
Plugin[] GetPluginsOfCategories (IEnumerable< PluginCategories > categories)
 Returns an array of all plugin instances that belong to all passed categories in categories[0] or all in categories[1], etc. More...
 
Plugin[] GetPluginsOfCategories (PluginCategories categories)
 Returns an array of Plugin instances that belong to all passed categories. More...
 
string[] GetPluginTypesOfCategory (PluginCategory category)
 Returns the class names of all available V-Ray plugin classes loaded from dynamic libraries which belong to the specified category. More...
 
RenderRegion GetRenderRegion ()
 Gets the rendering region within the image Width and Height. Width and Height are the rendering sizes set but other methods or constructors, etc. More...
 
RenderSizeParams GetRenderSizes ()
 Gets the frame buffer width and height, the rendering region and the crop region. More...
 
RenderSizeParams GetRenderSizes (out bool regionButtonState)
 Gets the frame buffer width and height, the rendering region and the crop region. More...
 
RendererState GetState ()
 Returns the current state of the renderer. The state could change asynchronously as rendering occurs in another thread. More...
 
bool GetVFBContextMenuItemValue (int commandID, out int value)
 Get the value from a VFB context menu checkbox item More...
 
bool IsDRClientEnabled ()
 Returns whether the current VRayRenderer acts as a DR2 client or not. More...
 
bool IsRenderingInHalfResolution ()
   True if V-Ray is rendering internally half resolution (the images/data returned are upsampled to full resolution).   False if V-Ray is rendering in full resolution.
 
void Load (FileInfo sceneFile)
 Loads a V-Ray scene from a .vrscene file. More...
 
void Load (string sceneFileName)
 Loads a V-Ray scene from a .vrscene file. More...
 
void LoadAsText (string sceneText)
 Loads a V-Ray scene from text data in the format of a .vrscene file. More...
 
void LoadAsTextFiltered (string sceneText, OnPluginFilter onPluginFilter)
 Loads a V-Ray scene from text data in the format of a .vrscene file using a plugin filtering callback. More...
 
void LoadFiltered (FileInfo sceneFile, OnPluginFilter onPluginFilter)
 Loads a V-Ray scene from a .vrscene file using a plugin filtering callback. More...
 
void LoadFiltered (string sceneFileName, OnPluginFilter onPluginFilter)
 Loads a V-Ray scene from a .vrscene file using a plugin filtering callback. More...
 
void LockScene ()
 Locks the scene for writing and reading. This will block until rendering stops and will not resume until unlockScene is called. This method is usefull when there are a batch of changes to be made while interactive rendering is running. Locking scene before all changes and then unlocking after finished updating, may increase performance significantly when there are many changes.
 
Plugin NewPlugin (string pluginClassName, string pluginName=null)
 Creates an instance of a Plugin class with the specified name and of the given type. More...
 
NewPlugin< T > (string pluginName=null)
 Creates an instance of a Plugin class with the specified name and of the given type. More...
 
delegate void OnManualDenoiseFinished (VRayImage image)
 
delegate string OnPluginFilter (string type, string name)
 A user callback which is called for each plugin instance read from a .vrscene-file. The user should return the desired new plugin name or null to skip creating the plugin. More...
 
void Pause ()
 Pauses Interactive rendering.
 
Plugin PickPlugin (int x, int y, int timeout=-1)
 Returns the first scene Node object intersected at the given pixel. More...
 
PickedPluginInfo[] PickPlugins (double x, double y, int maxcount=0, int timeout=-1)
 Returns the scene Node objects intersected at the given pixel. More...
 
bool RemoveHosts (string hosts)
 Removes hosts to the renderer for distributed rendering. More...
 
void RenderSequence ()
 Starts the rendering of an animation sequence in a separate thread using the default animation sequence from the vrscene file.
 
void RenderSequence (SubSequenceDesc[] ss)
 Starts the rendering of an animation sequence in a separate thread using the frames sequence described by SubSequenceDesc[] array.
 
bool ReplacePlugin (Plugin oldPlugin, Plugin newPlugin)
 Replaces all references (in the scene) of oldPlugin with newPlugin. More...
 
bool ResetHosts (string hosts=null)
 Resets the renderer host list used for distributed rendering. Removes all if null is passed. More...
 
void Resume ()
 Resumes Interactive rendering.
 
bool SaveCausticsFile (string fileName)
 Saves the caustics to a file. More...
 
bool SaveIrradianceMapFile (string fileName)
 Saves the irradiance map to a file. More...
 
bool SaveLightCacheFile (string fileName)
 Saves the light cache to a file. More...
 
bool SavePhotonMapFile (string fileName)
 Saves the photon map to a file. More...
 
bool SerializeScene ()
 Serializes the whole scene (plugins with their property values) contained in the renderer into a single memory stream no matter if they originate from a loaded or appended vrscene file or are created by code. The whole stream will be always transferred when DR hosts are connected. No DR hosts should have been connected before serialization. (Currently only one type of serialization is supported but other types may be added in the future.) This method is here mainly for debug purposes but it can be helpful in some other cases as well. Do not use it unless you know exactly what you're doing.
 
bool SetBitmapCache (bool onOff)
 Enable or disable bitmap caching between renders. If enabled, bitmap textures will be stored in memory and won't be unloaded / loaded again on the next render. This may save a lot of time loading heavy textures before every render. More...
 
bool SetCamera (Plugin plugin)
 Sets the current camera. More...
 
bool SetComputeDevicesCUDA (IList< int > indices)
 Set which devices to use for rendering with the CUDA engine. More...
 
bool SetComputeDevicesCurrentEngine (IList< int > indices)
 Set which devices to use for rendering with the current engine (Optix, CUDA, Metal). More...
 
bool SetComputeDevicesDenoiser (IList< int > indices)
 Set which devices to use for denoising, when GPU denoiser is selected. More...
 
bool SetComputeDevicesEnvironmentVariable ()
 Set the user environment to the currently selected devices for each engine. Note that this will affect other V-Ray products as well. More...
 
bool SetComputeDevicesMetal (IList< int > indices)
 Set which devices to use for rendering with the Metal engine. macOS only. More...
 
bool SetComputeDevicesOptix (IList< int > indices)
 Set which devices to use for rendering with the Optix engine. Optix requires compute capability >= 5.2. All unsupported devices will be ignored. More...
 
bool SetCropRegion (CropRegion cropRegion)
 Sets a virtual crop region (RgnLeft, RgnTop, RgnWidth, RgnHeight) within a virtual source image space with sizes SrcWidth, SrcHeight. The output image pixel width and height do not change. More...
 
bool SetCropRegion (int SrcWidth, int SrcHeight, float RgnLeft, float RgnTop)
 Sets a virtual crop region (RgnLeft, RgnTop, Width, Height) within a virtual source image space with size SrcWidth, SrcHeight. This (creates if necessary and) changes SettingsOutput in the scene. The region is reset after clearing the scene or loading another scene file. More...
 
void SetDebugShadingSelection (IEnumerable< Plugin > plugins)
 Selection for Debug Shading Isolate Selected mode. More...
 
bool SetDREnabled (bool drEnabled, bool withBroadcastListener=true)
 Toggles distributed rendering on or off. This can only be done when the renderer is idle. When this is disabled (default) it saves some memory. When it is enabled remote render machines added with addHosts() will be connected and contribute to the render. More...
 
bool SetImageSize (int width, int height)
 Sets a new rendering width and height at once. Crop and renderer region are reset. This (creates if necessary and) changes SettingsOutput in the scene. The size is reset after clearing the scene or loading another scene file. More...
 
bool SetImageSize (int width, int height, bool resetCropRegion, bool resetRenderRegion)
 Sets a new rendering width and height at once. This (creates if necessary and) changes SettingsOutput in the scene. The size is reset after clearing the scene or loading another scene file. More...
 
bool SetImprovedDefaultSettings (DefaultsPreset preset=DefaultsPreset.Medium)
 Initializes some settings plugins to recommended values. Call on an empty scene before your own changes. More...
 
void SetIncludePaths (string includePaths, bool overwrite=true)
 Set search paths for scene include files. More...
 
bool SetInteractiveNoiseThreshold (float threshold)
 Set noise threshold for a frame when using interactive mode. Value 0 means unlimited. This (creates if necessary and) changes SettingsRTEngine in the scene. The setting is reset after clearing the scene or loading another scene file. More...
 
bool SetInteractiveSampleLevel (int sampleLevel)
 Set the maximum camera samples per pixel when using interactive mode. Value 0 means unlimited. This (creates if necessary and) changes SettingsRTEngine in the scene. The setting is reset after clearing the scene or loading another scene file. More...
 
bool SetInteractiveTimeout (int timeout)
 Set a timeout value (in milliseconds) for a frame when using interactive mode. Value 0 means unlimited. This (creates if necessary and) changes SettingsRTEngine in the scene. The setting is reset after clearing the scene or loading another scene file. More...
 
bool SetRenderRegion (int left, int top, int width, int height)
 Sets the rendering region within the image Width and Height. This (creates if necessary and) changes SettingsOutput in the scene. The region is reset after clearing the scene or loading another scene file. More...
 
bool SetRenderRegion (RenderRegion renderRegion)
 Sets the rendering region within the image Width and Height. This (creates if necessary and) changes SettingsOutput in the scene. The region is reset after clearing the scene or loading another scene file. More...
 
bool SetRenderSizes (RenderSizeParams sizes, bool regionButtonState)
 Sets the frame buffer width and height, the rendering region and the crop region. More...
 
bool SetResumableRendering (bool enable, ResumableRenderingOptions options)
 Toggles resumable rendering and sets optional parameters. Call before rendering. More...
 
void SetVFBContextMenuItems (IList< VFBContextMenuItem > menuItems)
 Set menu items for the VFB's context menu More...
 
bool SetVFBContextMenuItemValue (int commandID, int value)
 Set the value of a VFB context menu checkbox item. More...
 
void SetVRayProfiler (VRayProfilerSettings settings)
 Sets up the VRay Profiler. Should be called as early as possible(e.g.before rendering start), otherwise it will have no effect. More...
 
void Start ()
 Starts rendering the loaded V-Ray scene in a separate thread.
 
void StartSync ()
 Starts rendering the loaded V-Ray scene in a separate thread but blocks until rendering actually started.
 
void Stop ()
 Stops the current rendering.
 
bool TryLockScene ()
 Attempts to lock the scene, without blocking, for writing and reading. If scene is locked, rendering stops and will not resume until UnlockScene() is called, LockScene This is usefull when changes can be done only from the UI thread of the application. If locking fails then it can be attempted at a later time allowing the UI thread to not block the UI. More...
 
void UnlockScene ()
 Unlocks previously locked scene. This must be called after the scene has been locked with LockScene() or TryLockScene().
 
bool UpdateLightAnalysis ()
 Invokes an update to the lighting analysis render element. Requires RenderChannelLightingAnalysis to be present in the scene. This can be run while rendering is ongoing or when it's paused or after it is stopped. Lighting analysis parameters are taken from the RenderChannelLightingAnalysis plugin. The update is asynchronous, so the funtion will return as soon as the thread is started. When the channel is updated the postEffectsUpdated callback will be called. More...
 
bool WaitForRenderEnd (int timeout)
 Waits for the final image to become ready. This is a blocking call that waits for the corresponding render call to finish. More...
 
bool WaitForRenderEnd (WaitTime time=WaitTime.AwaitingOrIdle)
 Waits for the final image to become ready. This is a blocking call that waits for the corresponding render call to finish. More...
 
bool WaitForSequenceEnd (int timeout=-1)
 Waits for rendering of an animation sequence to finish. This is a blocking call. More...
 
bool WaitForVFBClosed ()
 Waits for the VFB window to be closed or hidden. More...
 
bool WaitForVFBClosed (int timeout)
 Waits for the VFB window to be closed or hidden. More...
 

Static Public Member Functions

static int[] EncodeScannedMaterialParams (ScannedMaterialParams mtlParams)
 Encodes the parameters for the BRDFScanned::param_block plugin property More...
 
static bool IsActiveState (RendererState value)
 Convenience function for checking if a state value is in the rendering subset (including preparing).
 
static bool IsInactiveState (RendererState value)
 Convenience function for checking if a state value is in the idle subset (including IDLE_FRAME_DONE awaiting continue command).
 

Properties

string ActiveHosts [get]
 Gets a colon separated string of ip:port pairs for the active rendering hosts.
 
EventHandler< VFBAddRenderElementToSceneEventArgsAddRenderElementToScene
 The event is sent when the Add 'Render Element' to the scene button in V-Ray VFB is pressed. The button doesn't do anything by default.
 
string AllHosts [get]
 Gets a colon separated string of ip:port pairs for all active and inactive rendering hosts.
 
string[] AllPluginTypes [get]
 Gets the class(type) names of all available V-Ray plugins.
 
bool AutoCommit [get, set]
 When true, every parameter change is applied immediately. Otherwise you have to call Commit() yourself to apply changes. 'false' allows you to batch changes together for efficiency.
 
EventHandler< BucketRegionEventArgsBucketFailed
 The event is sent when rendering a bucket has failed.
 
EventHandler< BucketRegionEventArgsBucketInit
 The event is sent when a bucket has been initialized for rendering and has been assigned to a render host.
 
EventHandler< BucketImageEventArgsBucketReady
 The event is sent when a bucket image has been rendered.
 
bool BucketReadyHasBuffer [get, set]
 Sets if an image passed in the BucketReady event parameters is needed. If not, no unnecessary copies would be made.
 
string CameraName [get, set]
 Camera name override. Current camera is selected internally using the scene_name property of the camera plugins.
 
double CurrentEventTime [get]
 Get the current value (in seconds) of the relative time used in event callbacks
 
int Frame [get, set]
 The frame number to be rendered. Makes sense only if the scene supports animation. Setting it during sequence rendering will not work. This setter will also calculate and set the time (see the time property) for setting animated property values. This would only be possible if an instance of SettingsOutput plugin is available. Getting it during sequence rendering will return the of the frame number that will be rendered after the call to continueSequence().
 
EventHandler< HostConnectedEventArgsHostConnected
 The event is sent when a DR host is connected.
 
EventHandler< HostDisconnectedEventArgsHostDisconnected
 The event is sent when a DR host is disconnected.
 
string InactiveHosts [get]
 Gets a colon separated string of ip:port pairs for the inactive rendering hosts.
 
bool InProcess [get, set]
 Specifies whether the executing process participates in the rendering (when true, default) or whether the rendering is executed entirely by V-Ray DR render slaves (when false). Setting is only allowed while the renderer is idle, otherwise an exception is thrown. More...
 
IntPtr InstanceHandle [get]
 Returns a handle which allows sharing a VRayRenderer instance among different programming languages and/or shared libraries in the same process. Use with extreme caution! Do not use unless you know exactly what you're doing! More...
 
bool IsFrameSkipped [get]
 Checks if an the last rendered frame was skipped (e.g. resuming and already complete frame). More...
 
bool IsRenderEnded [get]
 Checks if an image has been rendered. More...
 
bool IsSequenceEnded [get]
 Checks if an anim sequence has been finished. More...
 
bool KeepInteractiveRunning [get, set]
 When set to true V-Ray won't quit interactive rendering even if timeout or noise threshold are reached. Defaults to false. If a noise/time limit is reached, the render engine will become idle, but it will not unload and it will restart sampling when a scene change is applied. The only way to end the render is to explicitly stop() it.
 
Error LastError [get]
 Gets the last error.
 
ParserError LastParserError [get]
 Gets the last parser error.
 
EventHandler< LightMixTransferToSceneEventArgsLightMixTransferToScene
 The event is sent when the Light Mix "Transfer to scene" button is pressed
 
EventHandler< MessageEventArgsLogMessage
 The event is sent when the render status has been updated. A text message with its log level type is returned.
 
int NumThreads [get, set]
 Gets or sets the number of rendering threads (default is 0 - all CPU logical threads). Setting is only allowed while the renderer is idle, otherwise an exception is thrown.
 
EventHandler< LicenseErrorEventArgsOnLicenseError
 The event is sent when renderer receives a license error. An error code with a text message and the current user log-in status are returned.
 
RendererOptions Options [get]
 Renderer options that were passed to the VRayRenderer constructor.
 
EventHandler< VRayEventArgsPostEffectsUpdated
 The event is sent when a new post-processed (denoised, lens effects) image is available.
 
ProfilerMethods Profiler [get]
 Contains methods for the VRay Profiler, such as manual initializations, custom events and writing output
 
EventHandler< ProgressEventArgsProgress
 The event is sent to indicate the progress of the current operation.
 
EventHandler< VRayImageEventArgsProgressiveImageUpdated
 The event is sent when V-Ray produces a new progressively updated image (when not using buckets).
 
bool ProgressiveImageUpdatedHasBuffer [get, set]
 Sets if an image passed in the ProgressiveImageUpdated event parameters is needed. If not, no unnecessary copies would be made.
 
float ProgressiveImageUpdateDifference [get, set]
 Gets or sets the maximum difference threshold between two intermediate images returned by V-Ray progressive during rendering so that it can be used as a criterion when to send the current image in the callback event. The parameter works in a combination with ProgressiveImageUpdateInterval and has no effect if ProgressiveImageUpdateInterval is 0.
 
long ProgressiveImageUpdateTimeout [get, set]
 Sets the maximum timeout interval during V-Ray progressive rendering to send the current image in the callback even if the difference criterion is not met. Works in a combination with ProgressiveImageUpdateDifference.
 
RenderElements RenderElements [get]
 Get RenderElements wrapper class.
 
RenderMode RenderMode [get, set]
 The setter changes the render mode if the renderer is in an idle state. If a rendering is in process, it will not be affected. You can switch between Production and Interactive mode with this without clearing the scene.
 
EventHandler< RenderViewChangedEventArgsRenderViewChanged
 The event is sent when the RenderView is changed internally.
 
EventHandler< StateChangedEventArgsStateChanged
 The event is sent when the renderer state changes. This is used to detect image completion/failure etc. See the RendererState enum for what the values mean.
 
double Time [get, set]
 The current time. All subsequent plugin property sets will set the values at the given time if animation has been enabled (see useAnimatedValues). This will also calculate and set the current rendering frame (see the frame property) if possible. Setting it during sequence rendering will not work. Getting it during sequence rendering will return the time of the next frame that will be rendered after the call to continueSequence().
 
EventHandler< UploadToCollaborationEventArgsUploadToCollaboration
 The event is sent when an upload to collaboration is requested
 
bool UseAnimatedValues [get, set]
 Enables or disables property value animation when setting property values. Affects only subsequent plugin property sets.
 
VFB Vfb [get]
 Get a VFB wrapper class.
 
EventHandler< VRayEventArgsVFBClosed
 The event is sent when the VFB window has been closed (hidden).
 
EventHandler< VFBContextMenuSelectedEventArgsVFBContextMenuSelected
 The event is sent when a custom context menu item is selected
 
EventHandler< VRayEventArgsVFBCopyToHostFrameBuffer
 The event is sent when the "Duplicate to host frame buffer" VFB button is pressed.
 
EventHandler< VRayEventArgsVFBLayersChanged
 The event is sent when VFB color corrections or compositing layers have changed. Note that this callback may be called multiple times in short time period, when a parameter is changed by a slider.
 
EventHandler< VRayEventArgsVFBOpenUpdateNotify
 The event is sent when the user clicks the update available notification in VFB.
 
EventHandler< VFBPauseIPRNotifyEventArgsVFBPauseIPR
 The event is sent when the Pause IPR button in V-Ray VFB is pressed. The button pauses the rendering by default.
 
EventHandler< RenderInteractiveEventArgsVFBRenderInteractive
 The event is sent when the Render Interactive button in V-Ray VFB is pressed.
 
EventHandler< RenderLastEventArgsVFBRenderLast
 The event is sent when the RenderLast button in V-Ray VFB is pressed.
 
EventHandler< VRayEventArgsVFBSaveSettingsNotify
 The event is sent when some settings have been changed from VFB UI.
 
EventHandler< VRayEventArgsVFBShowMessagesWindow
 The event is sent when the message window button in the VFB is clicked.
 
EventHandler< VFBUpdateIPRNotifyEventArgsVFBUpdateIPR
 The event is sent when the Update IPR button in V-Ray VFB is pressed. The button restarts the rendering by default.
 
bool VisualDebuggerEnabled [get, set]
 Enabled/disable the Visual Debugger functionality
 
EventHandler< VRayProfilerWriteEventArgsVRayProfilerWrite
 The event is sent when the V-Ray Profiler has finished writing the file
 

Detailed Description

This class controls the native V-Ray renderer and manages scene contents.

  • Rendering is always started in a separate thread. In Interactive mode changes to the scene are disabled for the period between calling start and receiving the 'started' event. After that changes can be made. They get applied asynchronously to the V-Ray engine in its own threads.
  • VRayRenderer callbacks are emitted from their own separate dedicated thread where events are queued and dispatched. This means that they may be seen later than the precise time they occurred and in some cases the state of the renderer could have changed meanwhile. The callbacks that you attach should be fast because their execution blocks any other queued event callbacks.

Constructor & Destructor Documentation

◆ VRayRenderer() [1/2]

VRay.VRayRenderer.VRayRenderer ( RendererOptions  rendererOptions)

Creates a new VRayRenderer using the specified options. The default render mode is Interactive.

Parameters
rendererOptionsThe instance holding the immutable render options.

◆ VRayRenderer() [2/2]

VRay.VRayRenderer.VRayRenderer ( IntPtr  instanceHandle)

Creates a new shared VRayRenderer from an instance handle. This allows sharing a VRayRenderer instance among different programming languages and/or shared libraries in the same process. Use with extreme caution! Do not use unless you know exactly what you're doing!

Parameters
instanceHandleAn instance handle received from the InstanceHandle property or getInstanceHandle() from other languages.

Member Function Documentation

◆ AddHosts()

AddHostsResult VRay.VRayRenderer.AddHosts ( string  hosts)

Adds hosts to the renderer for distributed rendering.

Parameters
hostsIp:port pairs as String delimited by ',' or ';'.
Returns
See AddHostsResult enum for details

◆ AddVRayProfilerMetadata()

bool VRay.VRayRenderer.AddVRayProfilerMetadata ( string  category,
string  key,
string  value 
)

Add a key-value pair to VRay Profiler metadata under a specific category (key). Should be called as early as possible before SetVRayProfiler, otherwise it will have no effect.

Parameters
categoryA key to which the key-value pair will be added
keyA preferably unique identifier. If duplicated the last value entry will be set to correspond to this key
valueThe value to the corresponding key
Returns
True if the key-value pair has been successfully added and false if there was a problem.

◆ Append() [1/4]

void VRay.VRayRenderer.Append ( FileInfo  sceneFile,
bool  drSendNameOnly = false 
)

Appends a V-Ray scene from a .vrscene file.

Parameters
sceneFileThe .vrscene file info.
drSendNameOnlyIndicates whether the whole file should be sent to the DR hosts or the name only.

◆ Append() [2/4]

void VRay.VRayRenderer.Append ( params FileInfo[]  sceneFiles)

Appends the specified scene files data to the currently loaded scene without wiping it. This treats all files as one.

Parameters
sceneFilesThe file info array to the .vrscene files which will be appended. The files are interpreted as one. If one fails, they all fail.

◆ Append() [3/4]

void VRay.VRayRenderer.Append ( params string[]  sceneFileNames)

Appends the specified scene files data to the currently loaded scene without wiping it. This treats all files as one.

Parameters
sceneFileNamesThe file paths array to the .vrscene files which will be appended. The files are interpreted as one. If one fails, they all fail.

◆ Append() [4/4]

void VRay.VRayRenderer.Append ( string  sceneFileName,
bool  drSendNameOnly = false 
)

Appends a V-Ray scene from a .vrscene file.

Parameters
sceneFileNameThe full path to the .vrscene file including its name.
drSendNameOnlyIndicates whether the whole file should be sent to the DR hosts or the name only.

◆ AppendAsText() [1/2]

void VRay.VRayRenderer.AppendAsText ( params string[]  sceneTexts)

Appends V-Ray scenes from text data array in the format of a .vrscene files.

Parameters
sceneTextsThe scene text data array. The texts are interpreted as one. If one fails, they all fail.

◆ AppendAsText() [2/2]

void VRay.VRayRenderer.AppendAsText ( string  sceneText)

Appends a V-Ray scene from text data in the format of a .vrscene file.

Parameters
sceneTextThe scene text data. The texts are interpreted as one. If one fails, they all fail.

◆ AppendAsTextFiltered() [1/3]

void VRay.VRayRenderer.AppendAsTextFiltered ( OnPluginFilter  onPluginFilter,
params string[]  sceneTexts 
)

Appends a V-Ray scene from text data in the format of a .vrscene file using a plugin filtering callback.

Parameters
onPluginFilterThe plugin filtering user callback method.
sceneTextsThe scene text data array. The texts are interpreted as one. If one fails, they all fail.


◆ AppendAsTextFiltered() [2/3]

void VRay.VRayRenderer.AppendAsTextFiltered ( string  sceneText,
OnPluginFilter  onPluginFilter 
)

Appends a V-Ray scene from text data in the format of a .vrscene file using a plugin filtering callback.

Parameters
sceneTextThe scene text data.
onPluginFilterThe plugin filtering user callback method.

◆ AppendAsTextFiltered() [3/3]

void VRay.VRayRenderer.AppendAsTextFiltered ( string[]  sceneTexts,
OnPluginFilter  onPluginFilter 
)

Appends a V-Ray scene from text data in the format of a .vrscene file using a plugin filtering callback.

Parameters
sceneTextsThe scene text data array. The texts are interpreted as one. If one fails, they all fail.
onPluginFilterThe plugin filtering user callback method.

◆ AppendFiltered() [1/6]

void VRay.VRayRenderer.AppendFiltered ( FileInfo  sceneFile,
OnPluginFilter  onPluginFilter 
)

Appends a V-Ray scene from a .vrscene file using a plugin filtering callback.

Parameters
sceneFileThe .vrscene file info.
onPluginFilterThe plugin filtering user callback method.

◆ AppendFiltered() [2/6]

void VRay.VRayRenderer.AppendFiltered ( FileInfo[]  sceneFiles,
OnPluginFilter  onPluginFilter 
)

Appends V-Ray scenes from a .vrscene files array using a plugin filtering callback. This treats all files as one.

Parameters
sceneFilesThe file info array to the .vrscene files which will be appended. The files are interpreted as one. If one fails, they all fail.
onPluginFilterThe plugin filtering user callback method.

◆ AppendFiltered() [3/6]

void VRay.VRayRenderer.AppendFiltered ( OnPluginFilter  onPluginFilter,
params FileInfo[]  sceneFiles 
)

Appends V-Ray scenes from a .vrscene files array using a plugin filtering callback. This treats all files as one.

Parameters
onPluginFilterThe plugin filtering user callback method.
sceneFilesThe file info array to the .vrscene files which will be appended. The files are interpreted as one. If one fails, they all fail.


◆ AppendFiltered() [4/6]

void VRay.VRayRenderer.AppendFiltered ( OnPluginFilter  onPluginFilter,
params string[]  sceneFileNames 
)

Appends a V-Ray scene from a .vrscene file array using a plugin filtering callback. This treats all files as one.

Parameters
onPluginFilterThe plugin filtering user callback method.
sceneFileNamesThe file paths array to the .vrscene files which will be appended.


◆ AppendFiltered() [5/6]

void VRay.VRayRenderer.AppendFiltered ( string  sceneFileName,
OnPluginFilter  onPluginFilter 
)

Appends a V-Ray scene from a .vrscene file using a plugin filtering callback.

Parameters
sceneFileNameThe full path to the .vrscene file including its name.
onPluginFilterThe plugin filtering user callback method.

◆ AppendFiltered() [6/6]

void VRay.VRayRenderer.AppendFiltered ( string[]  sceneFileNames,
OnPluginFilter  onPluginFilter 
)

Appends a V-Ray scene from a .vrscene file array using a plugin filtering callback. This treats all files as one.

Parameters
sceneFileNamesThe file paths array to the .vrscene files which will be appended. The files are interpreted as one. If one fails, they all fail.
onPluginFilterThe plugin filtering user callback method.

◆ BucketRenderNearest()

void VRay.VRayRenderer.BucketRenderNearest ( int  x,
int  y 
)

In Production mode the method provides the coordinates for a nearby bucket to be rendered. If the selected bucket has already been rendered, a closest bucket will be picked with a minimum distance to the specified coordinates. The coordinates must be within the dimensions of the currently rendered image, otherwise the method has no effect. The method has also no effect in progressive modes.

Parameters
xThe x coordinate for a nearby bucket. Must be between 0 and ImageWidth inclusive.
yThe y coordinate for a nearby bucket. Must be between 0 and ImageHeight inclusive.

◆ ClearAllPropertyValuesUpToTime()

bool VRay.VRayRenderer.ClearAllPropertyValuesUpToTime ( double  time)

Removes all keyframe values of animated properties up to the given time.

Parameters
timeThe time value that determines which values to remove.
Returns
True on success, False otherwise(check LastError).

◆ ClearPropertyValuesUpToTime()

bool VRay.VRayRenderer.ClearPropertyValuesUpToTime ( double  time,
PluginCategories  categories 
)

Removes all keyframe values of animated properties up to the given time only from plugins of the given categories.

Parameters
timeThe time value that determines which values to remove.
categoriesThe categories of plugins from which to remove values.
Returns
True on success, False otherwise(check LastError).

◆ Commit()

long VRay.VRayRenderer.Commit ( )

Commits any accumulated scene changes. This is necessary if the AutoCommit flag is set to false.

Returns
The new change index if the changes were successfully committed, 0 otherwise. See the ProgressiveImageUpdated event.

◆ DeletePlugin() [1/2]

bool VRay.VRayRenderer.DeletePlugin ( Plugin  plugin)

Delete the plugin from the scene and remove any references to it from other plugins.

Parameters
pluginThe plugin instance to be removed.
Returns
True on success.

◆ DeletePlugin() [2/2]

bool VRay.VRayRenderer.DeletePlugin ( string  pluginName)

Delete the plugin from the scene and remove any references to it from other plugins.

Parameters
pluginNameThe name of the plugin to be removed.
Returns
True on success.

◆ DeletePlugins() [1/2]

bool VRay.VRayRenderer.DeletePlugins ( IEnumerable< Plugin plugins)

Delete multiple plugins from the scene and remove any references to them from other plugins.

Parameters
pluginsThe plugin instances to be removed.
Returns
True if all removals succeed, False otherwise.

◆ DeletePlugins() [2/2]

bool VRay.VRayRenderer.DeletePlugins ( IEnumerable< string >  pluginNames)

Delete multiple plugins from the scene and remove any references to them from other plugins.

Parameters
pluginNamesThe names of the plugins to be removed.
Returns
True if all removals succeed, False otherwise.

◆ DenoiseNow()

bool VRay.VRayRenderer.DenoiseNow ( OnManualDenoiseFinished  userCallback = null,
bool  shouldPassImage = true 
)

Explicitly starts the denoiser. Requires a RenderChannelDenoiser instance in the scene. This can be run while rendering is ongoing or when it's paused or after it is stopped. Denoising parameters are taken from the RenderChannelDenoiser plugin. The denoising is run asynchronously, so this function will return as soon as the thread is started. When denoising is done the PostEffectsUpdated callback will be called.

Parameters
userCallbackOptional callback function to be called when denoising finishes.
shouldPassImageOptional boolean, whether to pass the denoised image to the callback.
Returns
true if the denoising thread is started successfully and false if there is a problem with the parameters or renderer state

◆ DisableDRClient()

void VRay.VRayRenderer.DisableDRClient ( )

Toggles off the current VRayRenderer to act as a DR2 client.

Available in DR2 only

Disabling is only allowed while the renderer is idle, otherwise an exception is thrown.

◆ EnableDRClient()

void VRay.VRayRenderer.EnableDRClient ( EnableDRClientParams  enableParams)

Toggles on the current VRayRenderer to act as a DR2 client.

Available in DR2 only

Parameters
enableParamsThe necessary parameters.

Disabling is only allowed while the renderer is idle, otherwise an exception is thrown.

◆ EnableLiveLinkClient()

void VRay.VRayRenderer.EnableLiveLinkClient ( EnableLiveLinkClientParams  enableParams)

Toggles on the current VRayRenderer to act as a DR2 LiveLink client.

Available in DR2 only

Parameters
enableParamsPre-configured parameters to enable livelink

Enabling is only allowed while the renderer is idle, otherwise an exception is thrown.

◆ EncodeScannedMaterialParams()

static int[] VRay.VRayRenderer.EncodeScannedMaterialParams ( ScannedMaterialParams  mtlParams)
static

Encodes the parameters for the BRDFScanned::param_block plugin property

Parameters
mtlParamsthe parameters to be encoded
Returns
The binary encoded parameters. Throws on error.

◆ Export() [1/2]

bool VRay.VRayRenderer.Export ( FileInfo  file)

Exports the currently loaded scene to the specified text file. The export serializes all plugins in text format.

Parameters
fileThe path to the file where the scene will be exported. The file path must contain the name of the destination file. The export will not add a ".vrscene" extension to the file name if it is missing.
Returns
True if the export operation finished successfully and false otherwise.

◆ Export() [2/2]

bool VRay.VRayRenderer.Export ( string  filePath,
ExportSettings  settings = null 
)

Exports the currently loaded scene to the specified text file. The export serializes all plugins in text format.

Parameters
filePathThe path to the file where the scene will be exported. The file path must contain the name of the destination file. The export will not add a ".vrscene" extension to the file name if it is missing.
settingsThe settings for the export operation. The settings specify how and what type of scene elements are exported.
Returns
True if the export operation finished successfully and false otherwise.

◆ ExportToBuffer()

string VRay.VRayRenderer.ExportToBuffer ( ExportSettings  settings = null)

Exports and return the currently loaded scene as a string instance. The export serializes all plugins in text format.

Parameters
settingsThe settings for the export operation. The settings specify how and what type of scene elements are exported.
Returns
A string instance holding the serialized vrscene output.

◆ GetAutoExposureResult()

AutoExposureResult VRay.VRayRenderer.GetAutoExposureResult ( )

Gets the auto-exposure and auto-white balance values computed during the last light cache calculation.

Returns
An AutoExposureResult structure containing all applicable values.

◆ GetCamera()

Plugin VRay.VRayRenderer.GetCamera ( )

Returns the current camera.

Returns
The camera plugin.

◆ GetCamera< T >()

Returns the current camera.

Template Parameters
TThe type (class) of returned plugin.
Returns
The camera plugin.
Type Constraints
T :Plugin 

◆ GetChangeIndex()

long VRay.VRayRenderer.GetChangeIndex ( )

Returns the last change index for interactive changes on the renderer instance.

Returns
The last applied change index. Should be equal to result from the last commit() call, if there are no pending changes.

◆ GetComputeDevicesCUDA()

ComputeDeviceInfo[] VRay.VRayRenderer.GetComputeDevicesCUDA ( )

Returns a list of all devices available for use by the CUDA engine. The "CUDA CPU" device uses the CUDA engine code compiled for the x86-64 architecture. It is not the CPU V-Ray engine. It is disabled by default but you can enable it for faster "hybrid" rendering.

Returns
If the list is empty, check LastError for failure.

ComputeDeviceInfo

◆ GetComputeDevicesCurrentEngine()

ComputeDeviceInfo[] VRay.VRayRenderer.GetComputeDevicesCurrentEngine ( )

Returns a list of all devices available for use by the current engine (Optix, CUDA, Metal).

Returns
If the list is empty, check LastError for failure. The list will be empty without error if the current render mode is CPU.

ComputeDeviceInfo

◆ GetComputeDevicesDenoiser()

ComputeDeviceInfo[] VRay.VRayRenderer.GetComputeDevicesDenoiser ( )

Returns a list of all devices available for denoising.

Returns
If the list is empty, check LastError for failure.

ComputeDeviceInfo

◆ GetComputeDevicesMetal()

ComputeDeviceInfo[] VRay.VRayRenderer.GetComputeDevicesMetal ( )

Returns a list of all devices available for use by the Metal engine. macOS only.

Returns
If the list is empty, check LastError for failure.

ComputeDeviceInfo

◆ GetComputeDevicesOptix()

ComputeDeviceInfo[] VRay.VRayRenderer.GetComputeDevicesOptix ( )

Returns a list of all devices available for use by the Optix engine. Compute capability >= 5.2 is required to use Optix. All unsupported devices will be ignored.

Returns
If the list is empty, check LastError for failure.

ComputeDeviceInfo

◆ GetCropRegion()

CropRegion VRay.VRayRenderer.GetCropRegion ( )

Gets the virtual crop region (RgnLeft, RgnTop, RgnWidth, RgnHeight) within a virtual source image space with sizes SrcWidth, SrcHeight.

Returns
The crop region.

◆ GetDREnabled()

bool VRay.VRayRenderer.GetDREnabled ( )

Return whether distributed rendering is currently enabled or not.

Available in DR1 only

◆ GetImage()

VRayImage VRay.VRayRenderer.GetImage ( GetImageOptions  options = null)

Gets the latest rendered image. This can return intermediate results while rendering. WARNING: If Nvidia AI upscaling is enabled, then the returned image/data will have even dimentions.

Parameters
optionsOptions that may differ from the default parameterless GetImage()
Returns
An image produced by rendering so far or null.

◆ GetImageSize()

bool VRay.VRayRenderer.GetImageSize ( out int  width,
out int  height 
)

Gets the rendering width and height. (There're also properties Width and Height.)

Parameters
widthoutput param width
heightoutput param height
Returns
True if ok.

◆ GetInstanceOf()

Plugin VRay.VRayRenderer.GetInstanceOf ( string  pluginClassName)

Returns the latest instance of a given plugin type if any exist. Should be used for singleton plugins. Most settings plugins are singletons.

Parameters
pluginClassNameThe class name of the plugin.
Returns
An instance of the plugin type or null if there are no instances available.

◆ GetInstanceOf< T >()

Returns the latest instance of a given plugin type if any exist. Should be used for singleton plugins. Most settings plugins are singletons.

Template Parameters
TThe type (class) of the plugin.
Returns
An instance of the plugin type or null if there are no instances available.
Type Constraints
T :Plugin 

◆ GetInstanceOrCreate()

Plugin VRay.VRayRenderer.GetInstanceOrCreate ( string  pluginClassName,
string  pluginName = null 
)

Returns an existing instance (the last one) of a given plugin type or creates a new instance otherwise, using the given instance name. Should be used for singleton plugins. Settings plugins are singletons.

Parameters
pluginClassNameThe name of the plugin class/type.
pluginNameThe plugin instance name if it has to be created.
Returns
The plugin instance. Throws on error (e.g. when the plugin type is not available).

◆ GetInstanceOrCreate< T >()

T VRay.VRayRenderer.GetInstanceOrCreate< T > ( string  pluginName = null)

Returns an existing instance (the last one) of a given plugin type or creates a new instance otherwise, using the given instance name. Should be used for singleton plugins. Settings plugins are singletons.

Template Parameters
TThe type (class) of the plugin.
Parameters
pluginNameThe plugin instance name if it has to be created.
Returns
The plugin instance. Throws on error (e.g. when the plugin type is not available).
Type Constraints
T :Plugin 

◆ GetOrCreatePlugin()

Plugin VRay.VRayRenderer.GetOrCreatePlugin ( string  pluginClassName,
string  pluginName 
)

Returns an existing plugin instance with the given instance name and of the given type. A new instance is created if one does not exist with the given name. This behaves like getInstanceOrCreate if no instance name is given (empty/null), i.e. returns any instance of this type as long as one exists. For singleton plugins like the settings plugins use getInstanceOrCreate() to avoid inadvertently creating more than one instance.

Parameters
pluginClassNameThe class name of the plugin.
pluginNameThe plugin instance name. If empty, any existing plugin might be returned.
Returns
The plugin instance. Throws on error (e.g. when the plugin type is not available).

◆ GetOrCreatePlugin< T >()

T VRay.VRayRenderer.GetOrCreatePlugin< T > ( string  pluginName)

Returns an existing plugin instance with the given instance name and of the given type. A new instance is created if one does not exist with the given name. This behaves like getInstanceOrCreate if no instance name is given (empty/null), i.e. returns any instance of this type as long as one exists. For singleton plugins like the settings plugins use getInstanceOrCreate() to avoid inadvertently creating more than one instance.

Template Parameters
TThe type (class) of the plugin.
Parameters
pluginNameThe plugin instance name. If empty, any existing plugin might be returned.
Returns
The plugin instance. Throws on error (e.g. when the plugin type is not available).
Type Constraints
T :Plugin 

◆ GetPlugin()

Plugin VRay.VRayRenderer.GetPlugin ( string  pluginName)

Searches the current scene for the plugin with the specified name.

Parameters
pluginNameThe name of the plugin.
Returns
The current scene plugin which has the specified name.

◆ GetPlugin< T >()

T VRay.VRayRenderer.GetPlugin< T > ( string  pluginName)

Searches the current scene for the plugin with the specified name.

Parameters
pluginNameThe name of the plugin.
Returns
A concrete Plugin subtype which resides in the scene and has the specified name.
Type Constraints
T :class 
T :IPluginRef 

◆ GetPluginMeta()

PluginMeta VRay.VRayRenderer.GetPluginMeta ( string  pluginClassName)

Gets the meta info for the plugin of the given type.

Parameters
pluginClassNameThe type of the plugin.
Returns
The PluginMeta info object.

◆ GetPlugins() [1/2]

Plugin[] VRay.VRayRenderer.GetPlugins ( )

Returns an array with all Plugin instances contained in the scene.

Returns
An array of plugins.

◆ GetPlugins() [2/2]

Plugin[] VRay.VRayRenderer.GetPlugins ( string  pluginClassName)

Returns an array with Plugin instances of the specified type.

Parameters
pluginClassNameThe type of the plugin.
Returns
An array of plugins.

◆ GetPlugins< T >()

Returns an array with Plugin instances of the specified type.

Template Parameters
TThe type of the plugins.
Returns
An array of plugins.
Type Constraints
T :Plugin 

◆ GetPluginsOfCategories() [1/2]

Plugin[] VRay.VRayRenderer.GetPluginsOfCategories ( IEnumerable< PluginCategories categories)

Returns an array of all plugin instances that belong to all passed categories in categories[0] or all in categories[1], etc.

Parameters
categoriesAn array or list of plugin category sets.
Returns
An array of plugins.

◆ GetPluginsOfCategories() [2/2]

Plugin[] VRay.VRayRenderer.GetPluginsOfCategories ( PluginCategories  categories)

Returns an array of Plugin instances that belong to all passed categories.

Parameters
categoriesA set of plugin categories.
Returns
An array of plugins.

◆ GetPluginTypesOfCategory()

string[] VRay.VRayRenderer.GetPluginTypesOfCategory ( PluginCategory  category)

Returns the class names of all available V-Ray plugin classes loaded from dynamic libraries which belong to the specified category.

Parameters
categoryPlugin category
Returns
Array of class names

◆ GetRenderRegion()

RenderRegion VRay.VRayRenderer.GetRenderRegion ( )

Gets the rendering region within the image Width and Height. Width and Height are the rendering sizes set but other methods or constructors, etc.

Returns
The rendering region.

◆ GetRenderSizes() [1/2]

RenderSizeParams VRay.VRayRenderer.GetRenderSizes ( )

Gets the frame buffer width and height, the rendering region and the crop region.

Returns
"Structure" of all applicable parameters and flags indicating which ones have been set.

◆ GetRenderSizes() [2/2]

RenderSizeParams VRay.VRayRenderer.GetRenderSizes ( out bool  regionButtonState)

Gets the frame buffer width and height, the rendering region and the crop region.

Parameters
regionButtonStateThe state of the VFB's region button.
Returns
"Structure" of all applicable parameters and flags indicating which ones have been set.

◆ GetState()

RendererState VRay.VRayRenderer.GetState ( )

Returns the current state of the renderer. The state could change asynchronously as rendering occurs in another thread.

Use the static helpers IsInactiveState and IsActiveState to check for multiple values.

◆ GetVFBContextMenuItemValue()

bool VRay.VRayRenderer.GetVFBContextMenuItemValue ( int  commandID,
out int  value 
)

Get the value from a VFB context menu checkbox item

Parameters
commandIDId of the menu item
valueoutput parameter for the value
Returns
false if the menu item does not exist or is not a checkbox

◆ IsDRClientEnabled()

bool VRay.VRayRenderer.IsDRClientEnabled ( )

Returns whether the current VRayRenderer acts as a DR2 client or not.

Available in DR2 only

◆ Load() [1/2]

void VRay.VRayRenderer.Load ( FileInfo  sceneFile)

Loads a V-Ray scene from a .vrscene file.

Parameters
sceneFileThe .vrscene file info.

◆ Load() [2/2]

void VRay.VRayRenderer.Load ( string  sceneFileName)

Loads a V-Ray scene from a .vrscene file.

Parameters
sceneFileNameThe full path to the .vrscene file including its name.

◆ LoadAsText()

void VRay.VRayRenderer.LoadAsText ( string  sceneText)

Loads a V-Ray scene from text data in the format of a .vrscene file.

Parameters
sceneTextThe scene text data.

◆ LoadAsTextFiltered()

void VRay.VRayRenderer.LoadAsTextFiltered ( string  sceneText,
OnPluginFilter  onPluginFilter 
)

Loads a V-Ray scene from text data in the format of a .vrscene file using a plugin filtering callback.

Parameters
sceneTextThe scene text data.
onPluginFilterThe plugin filtering user callback method.

◆ LoadFiltered() [1/2]

void VRay.VRayRenderer.LoadFiltered ( FileInfo  sceneFile,
OnPluginFilter  onPluginFilter 
)

Loads a V-Ray scene from a .vrscene file using a plugin filtering callback.

Parameters
sceneFileThe .vrscene file info.
onPluginFilterThe plugin filtering user callback method.

◆ LoadFiltered() [2/2]

void VRay.VRayRenderer.LoadFiltered ( string  sceneFileName,
OnPluginFilter  onPluginFilter 
)

Loads a V-Ray scene from a .vrscene file using a plugin filtering callback.

Parameters
sceneFileNameThe full path to the .vrscene file including its name.
onPluginFilterThe plugin filtering user callback method.

◆ NewPlugin()

Plugin VRay.VRayRenderer.NewPlugin ( string  pluginClassName,
string  pluginName = null 
)

Creates an instance of a Plugin class with the specified name and of the given type.

Parameters
pluginClassNameThe class name of the new plugin.
pluginNameThe name of the new plugin.
Returns
An instance of the newly created plugin if the creation was successful. Throws on error.

◆ NewPlugin< T >()

T VRay.VRayRenderer.NewPlugin< T > ( string  pluginName = null)

Creates an instance of a Plugin class with the specified name and of the given type.

Template Parameters
TThe type (class) of the new plugin.
Parameters
pluginNameThe name of the new plugin.
Returns
An instance of the newly created plugin if the creation was successful. Throws on error.
Type Constraints
T :Plugin 

◆ OnPluginFilter()

delegate string VRay.VRayRenderer.OnPluginFilter ( string  type,
string  name 
)

A user callback which is called for each plugin instance read from a .vrscene-file. The user should return the desired new plugin name or null to skip creating the plugin.

Parameters
type
name
Returns
The new plugin name or null.

◆ PickPlugin()

Plugin VRay.VRayRenderer.PickPlugin ( int  x,
int  y,
int  timeout = -1 
)

Returns the first scene Node object intersected at the given pixel.

Parameters
xCoordinate X.
yCoordinate Y.
timeoutOptional maximum time to perform the intersection.
Returns
Returns the intersected plugin or null.

◆ PickPlugins()

PickedPluginInfo[] VRay.VRayRenderer.PickPlugins ( double  x,
double  y,
int  maxcount = 0,
int  timeout = -1 
)

Returns the scene Node objects intersected at the given pixel.

Parameters
xCoordinate X.
yCoordinate Y.
maxcountOptional - The maximum number of plugins to obtain (0 - no limitation)
timeoutOptional - The maximum time to perform the intersection.
Returns
An PickedPluginInfo array consisting of a Plugin instance (of type Node), a distance from the camera and a mtlID (if MtlMulti is applied to the plugin).

◆ RemoveHosts()

bool VRay.VRayRenderer.RemoveHosts ( string  hosts)

Removes hosts to the renderer for distributed rendering.

Parameters
hostsIp:port pairs as String delimited by ',' or ';'.
Returns
True if the hosts were successfully removed.

◆ ReplacePlugin()

bool VRay.VRayRenderer.ReplacePlugin ( Plugin  oldPlugin,
Plugin  newPlugin 
)

Replaces all references (in the scene) of oldPlugin with newPlugin.

Parameters
oldPluginThe plugin whose references are to be replaced.
newPluginThe plugin which will replace the old one. If null, all references to oldPlugin will be removed.
Returns
True on success.

◆ ResetHosts()

bool VRay.VRayRenderer.ResetHosts ( string  hosts = null)

Resets the renderer host list used for distributed rendering. Removes all if null is passed.

Parameters
hostsIp:port pairs as String delimited by ',' or ';'.
Returns
True on success, False on error.

◆ SaveCausticsFile()

bool VRay.VRayRenderer.SaveCausticsFile ( string  fileName)

Saves the caustics to a file.

Parameters
fileNameDestination caustics file
Returns
false if an error ocurred or there is no data to save. Check LastError for additional info.

◆ SaveIrradianceMapFile()

bool VRay.VRayRenderer.SaveIrradianceMapFile ( string  fileName)

Saves the irradiance map to a file.

Parameters
fileNameDestination irradiance map file
Returns
false if an error ocurred or there is no data to save. Check LastError for additional info.

◆ SaveLightCacheFile()

bool VRay.VRayRenderer.SaveLightCacheFile ( string  fileName)

Saves the light cache to a file.

Parameters
fileNameDestination light cache file
Returns
false if an error ocurred or there is no data to save. Check LastError for additional info.

◆ SavePhotonMapFile()

bool VRay.VRayRenderer.SavePhotonMapFile ( string  fileName)

Saves the photon map to a file.

Parameters
fileNameDestination photon map file
Returns
false if an error ocurred or there is no data to save. Check LastError for additional info.

◆ SetBitmapCache()

bool VRay.VRayRenderer.SetBitmapCache ( bool  onOff)

Enable or disable bitmap caching between renders. If enabled, bitmap textures will be stored in memory and won't be unloaded / loaded again on the next render. This may save a lot of time loading heavy textures before every render.

Parameters
onOffEnable or disable bitmap caching. Disabling cache will clear cached data

◆ SetCamera()

bool VRay.VRayRenderer.SetCamera ( Plugin  plugin)

Sets the current camera.

Parameters
pluginThe camera plugin.
Returns
True if successfully set.

◆ SetComputeDevicesCUDA()

bool VRay.VRayRenderer.SetComputeDevicesCUDA ( IList< int >  indices)

Set which devices to use for rendering with the CUDA engine.

Parameters
indicesThe indices of the devices to use as returned by GetComputeDevicesCUDA
Returns
false if an error occurred. Check LastError for additional info.

◆ SetComputeDevicesCurrentEngine()

bool VRay.VRayRenderer.SetComputeDevicesCurrentEngine ( IList< int >  indices)

Set which devices to use for rendering with the current engine (Optix, CUDA, Metal).

Parameters
indicesThe indices of the devices to use as returned by GetComputeDevicesCurrentEngine
Returns
false if an error occurred. Check LastError for additional info. This will fail without error if the current render mode is CPU.

◆ SetComputeDevicesDenoiser()

bool VRay.VRayRenderer.SetComputeDevicesDenoiser ( IList< int >  indices)

Set which devices to use for denoising, when GPU denoiser is selected.

Parameters
indicesThe indices of the devices to use as returned by GetComputeDevicesDenoiser
Returns
false if an error occurred. Check LastError for additional info.

◆ SetComputeDevicesEnvironmentVariable()

bool VRay.VRayRenderer.SetComputeDevicesEnvironmentVariable ( )

Set the user environment to the currently selected devices for each engine. Note that this will affect other V-Ray products as well.

Returns
false if an error occurred. Check LastError for additional info.

◆ SetComputeDevicesMetal()

bool VRay.VRayRenderer.SetComputeDevicesMetal ( IList< int >  indices)

Set which devices to use for rendering with the Metal engine. macOS only.

Parameters
indicesThe indices of the devices to use as returned by GetComputeDevicesMetal.
Returns
false if an error occurred. Check LastError for additional info.

◆ SetComputeDevicesOptix()

bool VRay.VRayRenderer.SetComputeDevicesOptix ( IList< int >  indices)

Set which devices to use for rendering with the Optix engine. Optix requires compute capability >= 5.2. All unsupported devices will be ignored.

Parameters
indicesThe indices of the devices to use as returned by GetComputeDevicesOptix.
Returns
false if an error occurred. Check LastError for additional info.

◆ SetCropRegion() [1/2]

bool VRay.VRayRenderer.SetCropRegion ( CropRegion  cropRegion)

Sets a virtual crop region (RgnLeft, RgnTop, RgnWidth, RgnHeight) within a virtual source image space with sizes SrcWidth, SrcHeight. The output image pixel width and height do not change.

Parameters
cropRegionthe crop region
Returns
True if ok.

Set to an invalid size, like (0, 0, 0, 0), to reset the region and render the whole image.

◆ SetCropRegion() [2/2]

bool VRay.VRayRenderer.SetCropRegion ( int  SrcWidth,
int  SrcHeight,
float  RgnLeft,
float  RgnTop 
)

Sets a virtual crop region (RgnLeft, RgnTop, Width, Height) within a virtual source image space with size SrcWidth, SrcHeight. This (creates if necessary and) changes SettingsOutput in the scene. The region is reset after clearing the scene or loading another scene file.

Parameters
SrcWidthVirtual image width
SrcHeightVirtual image height
RgnLeftLeft horizontal crop limit. The right limit is RgnLeft + image width (not SrcWidth)
RgnTopTop horizontal crop limit. The bottom limit is RgnTop + image height (not SrcHeight)
Returns
True if ok.

Set to an invalid size, like (0, 0, 0, 0), to reset the region and render the whole image.

◆ SetDebugShadingSelection()

void VRay.VRayRenderer.SetDebugShadingSelection ( IEnumerable< Plugin plugins)

Selection for Debug Shading Isolate Selected mode.

Parameters
pluginsThe plugin instances to be selected.

◆ SetDREnabled()

bool VRay.VRayRenderer.SetDREnabled ( bool  drEnabled,
bool  withBroadcastListener = true 
)

Toggles distributed rendering on or off. This can only be done when the renderer is idle. When this is disabled (default) it saves some memory. When it is enabled remote render machines added with addHosts() will be connected and contribute to the render.

Available in DR1 only

Parameters
drEnabledTrue to enable the DR subsystem.
withBroadcastListenerOnly when drEnabled=true: Whether a socket will be created to listen for remote machine broadcast messages over LAN.
Returns
False if this failed, e.g. when a render is already running or V-Ray failed to initialize its DR subsystem.

◆ SetImageSize() [1/2]

bool VRay.VRayRenderer.SetImageSize ( int  width,
int  height 
)

Sets a new rendering width and height at once. Crop and renderer region are reset. This (creates if necessary and) changes SettingsOutput in the scene. The size is reset after clearing the scene or loading another scene file.

Parameters
widthnew width
heightnew height
Returns
True if ok.

◆ SetImageSize() [2/2]

bool VRay.VRayRenderer.SetImageSize ( int  width,
int  height,
bool  resetCropRegion,
bool  resetRenderRegion 
)

Sets a new rendering width and height at once. This (creates if necessary and) changes SettingsOutput in the scene. The size is reset after clearing the scene or loading another scene file.

Parameters
widthnew width
heightnew height
resetCropRegionspecifies whether the crop region should be reset to the new width and height
resetRenderRegionspecifies whether the render region should be reset to the new width and height
Returns
True if ok.

◆ SetImprovedDefaultSettings()

bool VRay.VRayRenderer.SetImprovedDefaultSettings ( DefaultsPreset  preset = DefaultsPreset.Medium)

Initializes some settings plugins to recommended values. Call on an empty scene before your own changes.

Parameters
presetAmount of sampling to perform - tradeoff between render time and noise

This should be done before applying your own settings and before starting a render. The values are better than the defaults. The defaults remain as they are for compatibility reasons. To see what got changed, export the scene after that to a file and inspect it.

Returns
True on success

◆ SetIncludePaths()

void VRay.VRayRenderer.SetIncludePaths ( string  includePaths,
bool  overwrite = true 
)

Set search paths for scene include files.

Parameters
includePathsString that looks like "assets;assets/meshes;assets/textures". These are relative paths where the parser looks in when including files.
overwriteIndicates whether to overwrite the existing search paths with the given string or to add it to them.

◆ SetInteractiveNoiseThreshold()

bool VRay.VRayRenderer.SetInteractiveNoiseThreshold ( float  threshold)

Set noise threshold for a frame when using interactive mode. Value 0 means unlimited. This (creates if necessary and) changes SettingsRTEngine in the scene. The setting is reset after clearing the scene or loading another scene file.

Parameters
thresholdEnd sampling when the noise is at or below this level for all pixels (value 0.001 or higher)

◆ SetInteractiveSampleLevel()

bool VRay.VRayRenderer.SetInteractiveSampleLevel ( int  sampleLevel)

Set the maximum camera samples per pixel when using interactive mode. Value 0 means unlimited. This (creates if necessary and) changes SettingsRTEngine in the scene. The setting is reset after clearing the scene or loading another scene file.

Parameters
sampleLevelMaximum samples to take per pixel before render ends

◆ SetInteractiveTimeout()

bool VRay.VRayRenderer.SetInteractiveTimeout ( int  timeout)

Set a timeout value (in milliseconds) for a frame when using interactive mode. Value 0 means unlimited. This (creates if necessary and) changes SettingsRTEngine in the scene. The setting is reset after clearing the scene or loading another scene file.

Parameters
timeoutRendering will end after this time elapses

◆ SetRenderRegion() [1/2]

bool VRay.VRayRenderer.SetRenderRegion ( int  left,
int  top,
int  width,
int  height 
)

Sets the rendering region within the image Width and Height. This (creates if necessary and) changes SettingsOutput in the scene. The region is reset after clearing the scene or loading another scene file.

Returns
True if ok.

Set to an invalid size, like (0, 0, 0, 0), to reset the region and render the whole image.

◆ SetRenderRegion() [2/2]

bool VRay.VRayRenderer.SetRenderRegion ( RenderRegion  renderRegion)

Sets the rendering region within the image Width and Height. This (creates if necessary and) changes SettingsOutput in the scene. The region is reset after clearing the scene or loading another scene file.

Parameters
renderRegionthe rendering region
Returns
True if ok.

Set to an invalid size, like (0, 0, 0, 0), to reset the region and render the whole image.

◆ SetRenderSizes()

bool VRay.VRayRenderer.SetRenderSizes ( RenderSizeParams  sizes,
bool  regionButtonState 
)

Sets the frame buffer width and height, the rendering region and the crop region.

Parameters
sizes"Structure" of all applicable parameters and flags indicating which ones to be set.
regionButtonStateregionButtonState the new state of the VFB's region button if applicable.

◆ SetResumableRendering()

bool VRay.VRayRenderer.SetResumableRendering ( bool  enable,
ResumableRenderingOptions  options 
)

Toggles resumable rendering and sets optional parameters. Call before rendering.

Parameters
enableWhether resumable rendering should be enabled.
optionsOptional additional parameters
Returns
False if settings couldn't be applied

◆ SetVFBContextMenuItems()

void VRay.VRayRenderer.SetVFBContextMenuItems ( IList< VFBContextMenuItem menuItems)

Set menu items for the VFB's context menu

Parameters
menuItemsList of the menuitems

◆ SetVFBContextMenuItemValue()

bool VRay.VRayRenderer.SetVFBContextMenuItemValue ( int  commandID,
int  value 
)

Set the value of a VFB context menu checkbox item.

Parameters
commandIDId of the menu item
valueValue to set. 0 means cleared and 1 means ticked.
Returns
False if the menu item does not exist or is not a checkbox

◆ SetVRayProfiler()

void VRay.VRayRenderer.SetVRayProfiler ( VRayProfilerSettings  settings)

Sets up the VRay Profiler. Should be called as early as possible(e.g.before rendering start), otherwise it will have no effect.

Parameters
settingsThe settings, which contain the requested VRayProfiler operational mode, outputDirectory, max depth and other metadata

◆ TryLockScene()

bool VRay.VRayRenderer.TryLockScene ( )

Attempts to lock the scene, without blocking, for writing and reading. If scene is locked, rendering stops and will not resume until UnlockScene() is called, LockScene This is usefull when changes can be done only from the UI thread of the application. If locking fails then it can be attempted at a later time allowing the UI thread to not block the UI.

Returns
True if the scene is locked, false otherwise.

◆ UpdateLightAnalysis()

bool VRay.VRayRenderer.UpdateLightAnalysis ( )

Invokes an update to the lighting analysis render element. Requires RenderChannelLightingAnalysis to be present in the scene. This can be run while rendering is ongoing or when it's paused or after it is stopped. Lighting analysis parameters are taken from the RenderChannelLightingAnalysis plugin. The update is asynchronous, so the funtion will return as soon as the thread is started. When the channel is updated the postEffectsUpdated callback will be called.

Returns
true if the thread is started successfully and false if there is a problem with the parameters or renderer state

◆ WaitForRenderEnd() [1/2]

bool VRay.VRayRenderer.WaitForRenderEnd ( int  timeout)

Waits for the final image to become ready. This is a blocking call that waits for the corresponding render call to finish.

Parameters
timeoutThe timeout in milliseconds after which the waiting terminates if the image has not become ready in the meantime.
Returns
True if image has been rendered, False if timeout or error occurred.

◆ WaitForRenderEnd() [2/2]

bool VRay.VRayRenderer.WaitForRenderEnd ( WaitTime  time = WaitTime.AwaitingOrIdle)

Waits for the final image to become ready. This is a blocking call that waits for the corresponding render call to finish.

Parameters
timeIf the keepInteractiveRunning flag is set and WaitTime.AwaitingOrIdle is passed (default) this event may occur without ending the render session (when the renderer state becomes RENDERING_AWAITING_CHANGES or any of the idle states).
Returns
True if image has been rendered, False if timeout or error occurred.

◆ WaitForSequenceEnd()

bool VRay.VRayRenderer.WaitForSequenceEnd ( int  timeout = -1)

Waits for rendering of an animation sequence to finish. This is a blocking call.

Parameters
timeoutThe timeout in milliseconds after which the waiting terminates if the sequenced is not finished in the meantime. The default value of -1 means infinity.
Returns
True if the sequence has been finished, False if timeout or error occurred.

◆ WaitForVFBClosed() [1/2]

bool VRay.VRayRenderer.WaitForVFBClosed ( )

Waits for the VFB window to be closed or hidden.

Returns
True if VFB has been closed, False if timeout or error occurred.

◆ WaitForVFBClosed() [2/2]

bool VRay.VRayRenderer.WaitForVFBClosed ( int  timeout)

Waits for the VFB window to be closed or hidden.

Parameters
timeoutThe timeout in milliseconds after which the waiting terminates even if VFB is not closed.
Returns
True if VFB has been closed, False if timeout or error occurred.

Property Documentation

◆ InProcess

bool VRay.VRayRenderer.InProcess
getset

Specifies whether the executing process participates in the rendering (when true, default) or whether the rendering is executed entirely by V-Ray DR render slaves (when false). Setting is only allowed while the renderer is idle, otherwise an exception is thrown.

Available in DR1 only

◆ InstanceHandle

IntPtr VRay.VRayRenderer.InstanceHandle
get

Returns a handle which allows sharing a VRayRenderer instance among different programming languages and/or shared libraries in the same process. Use with extreme caution! Do not use unless you know exactly what you're doing!

Returns

◆ IsFrameSkipped

bool VRay.VRayRenderer.IsFrameSkipped
get

Checks if an the last rendered frame was skipped (e.g. resuming and already complete frame).

Returns
True if rendering of a sequence has finished, Flase otherwise.

◆ IsRenderEnded

bool VRay.VRayRenderer.IsRenderEnded
get

Checks if an image has been rendered.

Returns
True if an image rendering has finished, Flase otherwise.

◆ IsSequenceEnded

bool VRay.VRayRenderer.IsSequenceEnded
get

Checks if an anim sequence has been finished.

Returns
True if rendering of a sequence has finished, Flase otherwise.

The documentation for this class was generated from the following file: