The System rollout gives you access to various parameters including those that controls control V-Ray's rendering regions (buckets). The bucket is an essential part of the distributed rendering system of V-Ray. A bucket is a rectangular part of the currently rendered frame that is rendered independently from other buckets. Buckets can be sent to idle LAN machines for processing and/or can be distributed between several CPUs. Because a bucket can be processed only by a single processor the division of the frame in too small a number of buckets can prevent the optimal utilization of computational resources (some CPUs stay idle all the time). However, dividing the frame between too many buckets can slow down the rendering because there is a some time overhead related with each bucket (bucket setup, LAN transfer, etc).
The System rollout also includes parameters that control V-Ray's Binary Space Partitioning (BSP) tree. One of the basic operations that V-Ray must perform is raycasting – determining if a given ray intersects any geometry in the scene, and if so - identifying that geometry. The simplest way to implement this would be to test the ray against every single render primitive (triangle) in the scene. Obviously, in scenes with thousands or millions of triangles, this is going to be very slow. To speed this process, V-Ray organizes the scene geometry into a special data structure, called a binary space partitioning (BSP) tree. The BSP tree is a hierarchical data structure, built by subdividing the scene in into two parts, then looking at each of those two parts and subdividing them in turn, if necessary and so on. Those "parts" are called nodes of the tree. At the top of the hierarchy is the root node - which represents the bounding box of the whole scene; at the bottom of the hierarchy are the leaf nodes – they contain references to actual triangles from the scene.
The following subsection in the System rollout deals with Distributed rendering. Distributed rendering is the process of computing a single image over several different machines. Note that this is different from distributing the frame over several CPU's in a single machine, which is called multithreading. V-Ray supports multithreading, as well as distributed rendering. Before you can use the distributed rendering option, you must determine the machines that will take part in the computations. Both 3ds Max and V-Ray need to be properly installed on those machines, although they don't need to be authorized. You must make sure that the V-Ray spawner application is running on those machines - either as a service , or as a stand-alone application. Refer to the Installation section for more details on configuring and running the V-Ray spawner. For additional information on distributed rendering, please refer to the dedicated Distributed Rendering section.
The next subsection deals with parameters for the V-Ray log. These parameters control the V-Ray messages window. During rendering, V-Ray writes various information in the file C:\VRayLog.txt. The messages window shows some of that information so that you can view it without the need to manually open that file. Each message can fall into one of four categories, which are colored in a different way in the messages window. Those catergories categories are errors (colored in red), warnings (colored in green), informative messages (colored in white) and debug messages (colored in black).
The following parameters are visible from the System rollout when set to the Default Render UI Mode.
Dynamic bucket splitting – When enabled, V-Ray automatically reduces the size of the render region as the rendering nears completion in order to use all available CPU cores.
Sequence – Determines the order in which the regions are rendered. Note that the default Triangulation sequence is best if you use a lot of dynamic geometry (displacement-mapped objects, VRayProxy or VRayFur objects) , since it walks through the image in a very consistent manner so that geometry that was generated for previous buckets can be used for the next buckets. The other sequences tend to jump from one end of the image to another which is not good with dynamic geometry.
Size –The Bucket width and Bucket height parameters are both measured in pixels.
Count – The Bucket width and Bucket height parameters specify how many buckets are necessary to cover the whole image.
Dynamic memory limit – The total RAM limit for the dynamic raycasters which store dynamic geometry like displacement, VRayProxy objects, VRayFur strands, etc. Note that the memory pool is shared between the different rendering threads. Therefore, if geometry needs to be unloaded and loaded too often, the threads must wait for each other and the rendering performance will suffer. In V-Ray 23.0 60.01 and later, you can set this to 0 to this is set to 0 by default to remove any limit, in that case, allowing V-Ray will take to work with as much memory as needed.
|%vrayversion||the current version of V-Ray|
|%filename||the name of the current scene file|
|%frame||the number of the current frame|
|%primitives *||the number of unique intersectable primitives generated for the current frame*|
|%rendertime||the render time for the current frame|
|%computername||the network name of the computer|
|%date||the current system date|
|%time||the current system time|
|%w||the width of the image in pixels|
|%h||the height of the image in pixels|
|%camera||the name of the camera for this frame (if rendering from a camera, empty string otherwise)|
|%"<maxscript parameter name>"|
the value of any V-Ray parameter, given its MaxScript name (see section on MAXScript). Note that you must enclose the parameter name in quotation marks ("). Also, note that this option only works when rendering to the 3ds Max frame buffer.
|%ram||the amount of physical memory (in KBytes) installed on the system|
|%vmem||the amount of virtual memory (in KBytes) available on the system|
|%mhz||the clock speed of the system CPU(s); note that this value may not always be reported correctly.|
|%os||the operating system|
|%numpasses||for progressive rendering, the number of rendering passes through the image|
|%numsubdivs||for progressive rendering, the maximum sampling rate among all pixels in the image|
|%noiseThreshold||the noise threshold reached (progressive sampler only)|
The following parameters are added to the list of visible settings available from the System rollout when set to the Advanced Render UI Mode.
Reverse bucket sequence – Reverses the region sequence order.
Previous (render) – Determines what should be done with the previous image in the virtual frame buffer when rendering starts. Note that this parameter has no effect on the final result of the rendering; it is implemented simply as a convenient way to distinguish between parts from of the current frame being rendered, and parts left over from the previous rendering. The possible values are:
Use Embree for hair – Enables the usage of embree the Embree library for hair. Embree library uses spline curves to model the hair (which differs from the classic model in V-Ray). The user may expect some minor differences between Embree hair model and V-Ray hair model. These differences become more obvious if hair strands are larger than one pixel in the final image.
Log window – Determines the conditions for showing the log.
Level Verbose level – Determines what kind of messages will be showed shown in the window:
1 – only error messages.
2 – error and warning messages.
3 – errors, warnings, and informative messages.
4 – all messages.
The following parameters are added to the list of visible settings available from the System rollout when set to the Expert Render UI Mode.
Min leaf size – The minimum size of a leaf node. Normally this is set to 0.0, which means that V-Ray will subdivide the scene geometry regardless of the scene size. By setting this to a different value, you can make V-Ray stop subdividing , if the size of a node is below a given value.
MAX-compatible ShadeContext in camera space – V-Ray carries all its computations in world space. However, some 3ds Max plugins (notably atmospherics) take it as granted that the renderer works in camera space , because this is what the default scanline renderer does. To preserve compatibility with such plugins, V-Ray emulates work in camera space by converting the various points and vectors passed to and from other plugins. In addition to slowing down V-Ray by forcing it to convert values all the time, working in camera space messes up with camera modifiers such as the Technical camera script. This why you have the option of turning off the camera-space emulation.