System Overview


In this section you can adjust a variety of V-Ray parameters related to the overall operation of the renderer.

Raycaster Parameters


Here you can control various parameters of 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 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.

Max tree depth - the maximum depth of the tree. Larger values will cause V-Ray to take more memory, but the rendering will be faster - up to some critical point. Values beyond that critical point (which is different for every scene) will start to slow things down. Smaller values for this parameter will cause the BSP tree to take less memory, but rendering will be slower.

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 to quit subdividing, if the size of a node is below a given value.

Face/level coef - controls the maximum amount of triangles in a leaf node. If this value is lower, rendering will be faster, but the BSP tree will take more memory - up to some critical point (which is different for every scene). Values below that critical point will make the rendering slower.

Dynamic memory limit - the total RAM limit for the dynamic raycasters which store dynamic geometry like displacement and VRayProxy objects. 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 2.0 and later, you can set this to 0 to remove any limit in that case, V-Ray will take as much memory as needed.

Render Region Division


Here you can control various parameters of 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 the division of the frame in too many buckets can slow down the rendering because there is a some time overhead related with each bucket (bucket setup, LAN transfer, etc).

X - determines the maximum region width in pixels (Region W/H is selected) or the number of regions in the horizontal direction (when Region Count is selected)

Y - determines the maximum region height in pixels (Region W/H is selected) or the number of regions in the vertical direction (when Region Count is selected)

Region 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, and VRayProxy 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.

Reverse sequence - reverses the region sequence order. 

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. V-Ray will 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. 

Distributed rendering - this checkbox specifies whether V-Ray will use distributed rendering.

Host... - this button opens the V-Ray distributed rendering settings dialog. See the Distributed Rendering section for more information.

Don't use local machine - this checkbox specifies if V-Ray will render on the local machine V-Ray distributed rendering settings dialog. See the Distributed rendering section for more information.