VRay Home ::
VRay Documentation Home
What's New in This Version
|
New builds
For up-to-date information about newer builds please see the changelog
that is supplied with the installation.
Build 1.47.03 - 16 May 2005:
Bug fixes:
- Multi/subobject materials caused increased CPU usage
and/or crashes in the Material Editor.
Build 1.47.02 - 11 May 2005:
Modified features:
- VRayProxy objects are now treated as bitmaps so that
they can be exported along with the rest of the scene.
- If the Secondary rays bias
is 0.0 in texture baking mode, VRay will automatically adjust this to 0.001
to avoid errors.
Extended features:
- New parameter Anisotropy
added to the
DOF
parameters. This allows the stretching of the bokeh effect horizontally
or vertically.
- Added a hidden parameter
system_vrayLog_ccToDebugger to allow redirecting the VRay log to the
3dsmax log file.
- Added a hidden parameter
system_vrayLog_numThreads for manual control of the number of
rendering threads.
- Added a new parameter Blur GI
to the
Irradiance map parameters with the purpose of reducing flickering of GI
in animations with moving objects.
Bug fixes:
- Hair in 3dsmax 7.5 in buffer mode did not render in
camera views.
- Complex materials (Blend,
Shellac) and the falloff map with shadow/light
mode did not work in path tracing mode.
- Highlights were not computed in the
Progressive path tracing Mode of the
Light cache.
- Zooming and panning in the 3dsmax VFB could crash
3dsmax.
- Multi/sub materials with some shader types could render
with wrong brightness.
- Interpolated glossy reflections didn't work with
Multi/sub material.
- Crashes with displacement and motion blur when the
displacement map used Object XYZ mapping.
- Crashes during building the irradiance map with
Overlapped Look-up mode
when Interp. samples not divisible by 4.
- When the Override mtl
button is clicked, the Material Browse dialog is opened twice in 3dsmax7.
- In track view, the parameter names for
VRayDisplacementMod were wrong.
- The Hilbert curve generator crashed if the region size
is larger than the rendered region.
- Rare crashes with dynamic geometry (displacement etc)
when it needed to be unloaded from memory.
- Objects with Visible to camera
off were visible in the z-buffer.
- Spots with back-facing UVW triangles in texture baking
mode.
- Planar from object XYZ mapping mode did not
work with motion blur enabled.
- The Ward BRDF in the VRayMtl
could cause red dots in the scene.
- Missing UVW coordinates could cause splotches in the
scene.
- The
VRayHDRI
map with Angular Mapping
type could produce invalid colors.
- Crashes with subdivision/displacement when they were
applied to both moving and static objects in a scene with motion blur on.
- The texture channel for anisotropy was not working.
- When Switch to saved map
is on, VRay switched to From file
Mode even when GI is off.
Build 1.46.15 - 10 March 2005:
Modified features:
- A new mode, Progressive path
tracing has been added to the light cache. See this
tutorial for a discussion.
Bug fixes:
- Glass with the Affect shadows
option on could cause splotches with
VRayLights.
- Skylight portals could hang with the light cache.
- Mapped IORs in the VRayMtl greater than 1.0 didn't
work.
- The VRay VFB didn't overwrite files when the
resolution of the existing file is different from the VFB resolution.
- Small memory leak for each rendered image (4-16Kb)
removed.
- Meshes with 0 faces and 0 vertices could cause problems
in Dynamic geometry mode.
- Increasing photon or light cache subdivs above
1100 did not have any visible effect.
- Crashes when the 3dsmax resolution is different from
the VRay one and saving to file is required.
- Crashes with dynamic geometry (VRayProxy, VRayFur,
displacement etc), especially on dual hyper-threading machines.
- Irradiance map very slow with motion blur and subdiv
surfaces.
Build 1.46.14 - 21 February 2005:
Bug fixes:
- Mixing dynamic and non-dynamic geometry with motion
blur could render incorrectly.
Build 1.46.13 - 17 February 2005:
Bug fixes:
- VRayMtl with fog on could cause splotches in the scene.
- Overlapped mode
for the irradiance map lookup could cause splotches with reflective objects
in the scene.
- VRayToon with world units could render incorrectly on
the background.
- Color mapping could produce severe color inversion with
very bright colors.
Build 1.46.12 - 10 February 2005:
Modified features:
- The light map has been renamed to "light cache" to
avoid confusion with traditional "light map" textures used in game engines
etc.
- Reduced memory usage with static non-motion blurred
geometry; some speed improvements as well.
- Reduced memory usage for dynamic instanced geometry as
well as for
VRayProxy objects.
- Reduced memory usage for static motion-blurred
geometry; more robust raycasting for motion-blurred geometry; faster motion
blur; faster multi-segmented motion blur.
- The Dome light will not produce highlights.
Extended features:
- An option Use light cache for
glossy rays has been added to the light cache parameters. This can
speed up greatly rendering of scenes with lots of glossy reflections (at the
expense of some accuracy).
- Added a parameter Number of
passes for the light cache; this allows to achieve the same light
cache on single- and multi-processor machines while keeping the advantage of
multithreading.
- The Trace diffuse & glossy together
parameter in the
VRayMtl
has been renamed to Treat glossy rays as GI rays
and has some extended values.
- A new option Time independent
had been added to the
QMC
Sampler parameters to allow changing the QMC pattern from frame to frame
in an animation.
- A Max density parameter
was added to the
Caustics parameters with the same meaning as that for the photon map.
Bug fixes:
- Flipped proxies rendered as black.
- VRayMtl with fog and glossy refraction was incorrect.
- VRayMtl didn't update in the Material Editor if maps
are dragged to the small map buttons.
- DOF/Moblur + irradiance map + high
Global subdivs multiplier could lead to
splotches.
- DOF/Moblur and the irradiance map pass take the full
amount of samples when the Global subdivs multiplier
is more than 1.0.
- VRayLightMtl did not generate a self-illumination
channel for the VFB.
- Mouse tracking in the VRay VFB and changing region
sequence was buggy.
- Crashes when the x/y regions count for the image are
explicitly specified and region sequence is set to
Triangulation.
- "Ink'N'Paint" material did not render correctly; "Adv.
raytraced" and "Area shadows" shadow types did not render correctly.
- RPC moving content did not update in animation.
- Spherical VRayLight could cause splotches.
- VRayBmpFilter did not update the button name when a
texmap is dragged onto it.
- The light cache could cause flickering in animations
with dual machines - a new parameter Number of
passes added to the light cache.
- Bump maps with glossy reflections for rays that fall
below the surface could slow down rendering a lot.
- Crashes when attempting to write to a GBuffer which
does not have any channels.
- The VRay messages window was displayed in server mode.
- Writing to a raw .vrimg file in animation could lead to
crashes.
- The VRay VFB didn't overwrite files.
- VRayToon did not work properly with transparent objects
and VRayLights.
- Falloff map as an environment override in a VRayMtl
could produce indeterminate results.
- Distributed rendering from MaxScript did not render the
correct view or crashed.
- Caustics with Max photons
set to 0 and Indirect
illumination off could crash while
calculating the caustics photon map.
Build 1.46.09 - 15 December 2004:
Extended features:
- An option to treat all glossy reflections/refractions
as non-glossy is added to the
Global Switches rollout.
- VRay will print a warning if the camera fov is too
small.
- VRay will print a warning if the scene bounding box is
too small/large or too far from the origin.
- Drag-and-drop support for the material override button
in the
Global Switches rollout.
- Drag-and-drop support for the small map buttons in
VRayMtl.
- Correct preview for the refraction of the vray material
in the viewports.
- A viewer for the .vrimg files produced by VRay is
included. The user can open and use .vrimg files in 3dsmax as all other
bitmap types. Currently only the RGBA channels are read and displayed from
the .vrimg files.
Bug fixes:
- Simbiont materials did not work.
- Artifacts with nested objects possible.
- VRayMtlWrapper did not produce a matte surface.
- VRayEdgesTex crashed with proxies.
- VRayLightMtl did not keep its name on file load/save.
- GI with transparent surfaces could cause a crash.
- Caustics with interpolated glossy reflections caused a
crash.
- Dome light darker with lightmap.
- Render-to-texture with lightmaps was problemmatic - too
few samples were taken.
- Crashes occured if rendering any gbuffer channels and
the Max resolution is different from the VRay VFB resolution.
- VRay VFB with save to raw file crashed.
- VRay VFB rendered out black in sequence.
- Alpha channel was inverted in the VRay VFB.
Build 1.46.08 - 26 November 2004:
Extended features:
- VRay will try to specifically point out if a crash has
occured due to insufficient memory.
- An option Save maps per frame
has been added to the GI parameters. This is On by default, in order to deal
with some problems under backburner in 3dsmax R7. See the
Indirect illumination section for more details.
- The Dynamic geometry option
should be a lot more memory efficient.
- VRayProxies are more memory-efficient, especially when
instanced many times.
Bug fixes:
- Degenerate faces on meshes could cause parts of
displacement-mapped objects to disappear.
- Materials with instanced bitmaps as diffuse/opacity
could render with weird colors.
Build 1.46.07 - 24 November 2004:
Bug fixes:
- Splotches with GI and VRayMtl with
Affect shadows option on.
Build 1.46.06 - 20 November 2004:
Bug fixes:
- The Affect alpha option
of VRayMtl didn't work. Note that the Affect alpha parameter only works for
clear (non-glossy) refractions.
- Fog color with internal reflections was incorrect.
- Precalc'd overlapping
lookup for the irradiance map was too blurry.
- Multipass camera effects didn't work (Multipass DOF).
- Ortho views were cut through the origin.
- True instance rendering returns in this build. Note
that currently instance rendering is not supported for moving geometry with
motion blur.
- Lights had caustics off by
default.
- Light maps and matte objects with Shadows on caused a
crash. Note: matte materials don't show up as mattes in the prepasses
(irradiance/light maps), but they do show in the final render.
- The default material did not produce correct lighting
with VRayLights.
- No GI on other mattes
didn't work.
- The Alpha contribution
parameter didn't work properly for fractional values.
- VRayLights produced an alpha channel even if invisible.
- Skew modifier on cameras was slow with
Adaptive subdivision image sampler with
Normal threshold on.
- VRay now prints out a warning if there is a camera
modifier, but the Max-compatible ShadeContext
option is on.
- Objects that are not visible to the camera showed up in
the alpha channel.
- Meta-Reyes not rendering in animation.
- Hidden faces showing up with Dynamic geometry.
- The image was always stamped when the VRay VFB was
saved/cloned.
- Lightmap could freeze with transparent materials.
- Lightmap could freeze with complex materials (like
Blend).
- VRayLights could produce noisier results than
necessary.
- VRay-specific materials and maps will not show up in
the materials/maps browser if the renderer is not VRay in 3dsmax 6 and
above, unless the Incompatible option in the
browser is selected.
Build 1.46.05 - 13 November 2004:
Bug fixes:
- QMC sampler behaves in a more similar way to the 1.45
versions without changes in settings. Note however, that the QMC is still
different from the 1.45 version, so differences in render times/quality are
possible.
- Lightmaps and photon maps will take more samples on
average compared to 1.45 versions which may lead to slightly longer render
times (although results may be cleaner). Reduce the subdivs to decrease the
render time.
- VRayProxies did not provide material id's properly (did
not work with multi/subobject materials) .
- Total internal reflections were not correct.
- Caustics photon map was used when present, even if
caustics are off.
- The "Sub-pixel weight" channel was incorrect (improved
compatibility with PSD manager).
- 2d displacement could cause infinite cycling on meshes
with degenerate faces.
- Better handling of opacity maps - both with VRay
materials and with Standard materials.
- Parts of VRayLights could disappear during rendering.
- Caustics did not appear on Standard materials.
- Photon mapping did not work properly with
VRayMtlWrapper with the Matte option turned
on.
- The exposure control peview in the Environment dialog
crashed with VRay.
- Thumbnails in the ME on multi/sub materials were not
rendered.
- In distributed rendering mode, VRay tries to delete
any temporary .max files after rendering is complete.
- The VRaySpawner attempts to delete any files left over
from previous sessions.
- 2d displacement did not work with motion blur.
- Added a section in the help with a list of 3dsmax
features which do not work or work only partially with VRay. See the
Unsupported 3dsmax features section.
- The mouse tracking mode of the VRay VFB did not work
properly when enabled at the start of the rendering.
Build 1.46.04 - 3 November 2004:
Extended features:
- Correct multi-layer GBuffer. See the
Notes in the
GBuffer section for more details.
- Some support for the Render-to-texture mode in 3dsmax.
At present, VRay can bake only the full object materials in this mode.
- These conclude the feature set for VRay 1.5. The next
several builds will include bug fixes only, until the final 1.5 version is
released.
Bug fixes:
- Fixed crashes with DreamScape in the Material Editor
- Crashes with the CAT plugin with motion blur.
- Slow rendering of blurry effects (area lights, glossy
reflections etc) due to problems with the QMC sampler.
- G-buffer channels requested by .rpf and .rla file
formats were not generated.
Build 1.46.01 - 13 October 2004:
Installation:
- This build requires a somewhat different setup for the
additional VRay plugins (VrayFur, VRayPlane, VRayToon), since now those
depend on the vrenderXX.dlr file as well. See the
Installation section for more details. Be sure
to delete any old remaining versions those plugins.
New features:
- Subdivision displacement (Catmull-Clark and Loop
schemes), see the VRayDisplacementMod section for more details.
- Distributed rendering - completely redesigned DR core
supporting distributed calculation of irradiance maps, see the sections on
Distributed Rendering and
Installation for details.
Extended features:
- Lightmaps work with standard materials
- Added autosave options for lightmaps
- Time-dependent irradiance map for a more precise
rendering of motion-blurred objects with GI.
- A new look-up method Density-based
added to the irradiance map; this is the new default method as it is
substantially better than all previous methods (reduces the ringing on sharp
boundaries and the artifacts due to low sampling).
- Better interpolation for the irradiance map and glossy
reflection/refraction maps.
- Reduced memory usage - all rendering threads share the
same dynamic geometry pool (for proxies, displacement, fur, subdivision),
thus drastically reducing memory usage on dual and/or hyperthreading
machines.
- Previews of irradiance and lightmap calculations are
available in the VRay VFB.
- Extended stamp in VFB allows changing the stamp text in
the VFB only - after the image has been rendered with improved user
interface.
Bug fixes:
- Fixed a problem when many machines try to access the
same irradiance map at once.
- Fixed problems with view-dependent meshes (nPower
booleans, specifically).
- Fixed incorrecft velocity channel with moving cameras.
- 2d displacement could produce degenerate normals on
degenerate faces leading to artifacts.
- Adaptive AA min rate limit is now set to -3 (lower
values caused RAM overflow and crashes).
- Fixed slowdown with irradiance map on some scenes with
varying camera scale.
- Lightmaps now render correctly in blowup renderings.
- Instanced 2d displacement should take less memory.
- Fixed faceting with VRayLights with the
Store to irradiance map option on.
- Fixed a slowdown when the VRay messages window is
closed.
- The QMC image sampler didn't antialias very well
against the background.
- Matte objects produced incorrect results with
opacity-mapped objects.
- Closing the VRay messages window introduced a major
slowdown.
- The VRay messages window did not show up when closed.
- The VRLServer could refuse to generate a license
request in some situations.
- Glossy reflections were incorrect or slow in some
cases.
- Fixed crashes occuring in certain situations when
objects depend on one another.
Build 1.45.70 - 1 July 2004:
- VFB - Bug fixes.
- New License server New licenses are required to be
issued to make VRay working. Start your license server and send us the
details. Make sure you read the license
agreement and the
license
authorization.
- Fixed the Browse button for
choosing .vrimg files.
- Fixed slowdown with lightmaps and bump-mapped
materials.
- Enabling the G-Buffer Object velocity channel made some
objects disappear
- Added world units in VRayLights, VRayShadows and for
the translucency Thickness in VRayMtl
- Caustics were displayed when set to
From file even if they we're turned off.
- Shadow maps were computed even with the
Shadows option off
in the Global Switches rollout.
- Added a parameter Secondary
rays bias in the Global Switches
rollout, which may be useful in scenes with overlapping faces.
- Added a button for locking the
Hilight glossiness to the Reflection
glossiness in VRayMtl.
- Added a button for locking the
Fresnel IOR to the Refraction IOR in
VRayMtl.
- The creation of VRayFur is fixed to display the
parameter of the newly created object.
- Fixed rare crashes with non-renderable objects in the
scene.
- Exporting meshes to .vrmesh files could produce memory
leaks.
- Some channels were garbage on matte objects.
- Alpha saved from the VRay VFB was inverted or missing.
- Fixed some bugs in the translucency algorithm of
VRayMtl; translucency now works with Refraction
glossiness of 1.0 and is about two times
faster than using lower glossiness values.
Build 1.45.65 - 9 June 2004:
- Dof rotation didn't work
- VRayMtl has opacity map
- A new button Show last VFB
added to the frame buffer rollout
- QMC GI settings were not converted properly from older
files
- The location of VRayLog.txt can be specified
- Shadow channel is generated
- Self-illumination channel is generated by VRayLight's
- The output settings for the Split G-Buffer channel
option are properly saved and loaded
Build 1.45.60 - 1 June 2004:
- VRayShadow produces correct results with direct lights.
- Added a separate Fresnel IOR parameter in VRayMtl.
- Diffuse color is now not dimmed when
Trace reflection is off
in VRayMtl.
- Fixed a bug in VRayMtl with texures with an alpha
channel.
- Degenerate faces could cause artifacts in rendering.
- Better interpolation of the light map with concave
surfaces.
- Added a Hidden lights
option in the
Global switches rollout.
- Photons from newly created rectangular VRayLights were
traced in the wrong direction.
- Fixed a crash with VRayPlane and shadow maps.
- Motion blurred objects didn't show up when their
visibility is 1.0.
- The AA filter params moved to the Image sampler
rollout.
- Fixed darker glossy reflections around object edges.
- Hilights are not computed for secondary GI bounces,
when Reflective GI caustics is
off.
- Relevant world-scale parameters show up in world scale
units.
- Added raw lighting and indirect illumination channels
to the VRay VFB.
- Fixed a crash with Weighted average
with Voronoi weights interpolation type for the irradiance map.
- Parameters from older scenes are transferred correctly.
- The .vrmesh export did not write smoothed surface
normals.
- The irradiance map and light map did not render
properly in orthographic views.
Build 1.45.50 - 19 May 2004:
- This version of VRay includes a nearly final version of the VRay
floating
license system.
- The VRay Frame Buffer (VFB) has been improved. Additional
support for extra channels and color corrections on the fly has been added.
Still a lot of improvements on the way.
- VRay now exports additional 11 G-buffer channels to the VRay
VFB (specular, reflection, refraction, GI etc). Most
of the them are supported only for VRay materials. All of these
channels can be saved to separate bitmap sequences for post-production
purposes.
- Some improvements in VRayMtl - separate control over
hilights and glossy reflections. In addition, glossy hilights and
reflections have been improved to act in a more physically accurate way.
- Parameters for controlling GI saturation and contrast.
- DOF and motion blur controls have been moved to the
Camera rollout. Some additional parameters (for example, aperture shape)
have been added. Note that at present DOF and motion
blur settings will not transfer from older scenes. This will be
corrected shortly.
- A new option, Visible to GI
has been added to the VRay Object settings dialog.
- VRayLights are oriented along the negative local z-axis
like standard 3dsmax lights. This affects only newly created lights. Lights
in older scenes will keep their orientation for compatibility.
- VRayMtl generates correct material (effects) G-Buffer
ID.
- VRayProxy objects automatically look for .vrmesh files
in the standard 3dsmax bitmap paths, if the file is not found at the
specified location.
- Newly created VRayProxy objects take the name of the
original object, prefixed with "VRayProxy_".
- Objects with Visibility=0 do not generate any geometry.
- Several new options were added to the
Global switches rollout.
- Many other bug fixes and improvements.
Build 1.45.42 - 20 April 2004:
- Changed the licensing system. We have introduced a new
floating
license system.
- The GI interface has been reogranized.
Note that irradiance map settings will not be loaded
properly from older files and will be reset to the defaults.
- A new GI engine -
light mapping, has been added.
- The Two-Level image sampler has been rewritten as an
adaptive quasi-monte carlo sampler.
- A new parameter Global subdivs
multiplier has been added to the QMC sampling parameters.
- A new parameter Bias has
been added to the motion-blur parameters.
- A lot of internal changes, improvements and minor
fixes.
Build 1.45.21:
- Fixed a bug in VRayMtl that caused black reflections at
grazing angles.
- Added a new keyword %primitives
to the possible
frame stamp keywords; this is replaced with the number of unique
intersectable primitives processed by VRay.
- Added an
example of different antialiasing filters.
- Added a new camera type - warped
spherical camera. This is the same as the old-style spherical camera,
which was present in the early versions of VRay.
- The VRayLight is now visible in the rendered image. It
is also properly displayed with motion blur.
- Some internal changes to the Geometry SDK.
- Fixed a bug in the Triangulation bucket sequence that
caused an incorrect region to be rendered if Region Rendering is enabled.
- Support for user-specified vertex normals in 3dsmax R6.
Build 1.45.20 - 8 January 2004:
- Fixed a bug with the ordering of render regions
(buckets) that could cause unexpected crashes and fast exits out of 3dsmax.
- Fixed a bug in VRayMtl that could cause crashes with
fog enabled.
- Fixed a bug that caused the irradiance map to always
use 1 interpolation sample in bucket mode.
- Some internal changes to the Geometry SDK.
- Improvements to displacement mapping - equalized
sampling of triangle edges to avoid cracks between triangles with different
tesselation and a new view-dependent tesselation algorithm that works for
objects behind the camera as well.
- The VRayPlane is fully mappable with any kind of
texture mapping.
- Added a new
tutorial on 3d displacement.
Build 1.45.10 - 28 December 2003:
- Fixed a bug with irradiance map and scaled objects (normals
for GI were not scaled correctly).
- Some internal changes to the Geometry SDK
Build 1.45.01 - 17 December 2003:
- VRay was compiled with an incorrect compiler version,
leading to very unstable behaviour. This build should be faster and more
stable.
- The VRay vfb and the new protection scheme were
omitted from the initial internal build. Those are added now. Please send
the auth requests to
vray@chaosgroup.com
Build 1.45.00 - 16 December 2003:
Note that this is an internal build. Many things over previous builds
have changed and some features are not yet fully implemented. VRay's
geometry pipeline has been rewritten from scratch to allow handling of
complex procedural geometry. Some of the more important changes are listed
below.
- There are several additional plugins found in the VRay
category of the Create panel in 3dsmax. Those include the
VRayFur,
VRayProxy and
VRayPlane. If you had a previous version of this internal build, please
remove the old files (InfinitePlane5.dlo and VRayFur5.dlo) since the file
names have changed and you may get a warning when 3dsmax starts.
- Distributed rendering is not included in this build.
You may get an error "VRayNet50.dlu failed to initialize". Rename or move
VRayNet50.dlu to a different folder if you want to get rid of this warning.
- The Instanciate option
in the System rollout has changed. Now you can choose the default type of
the geometry generated for scene objects - static (all of the scene geometry
is generated once at the start of a frame) and dynamic (the scene geometry
is generated on the fly). There is also a parameter for controlling the
memory limit for dynamic geometry. Note that the limit is approximate, VRay
may use slightly more memory.
- Displacement mapping (3d displacement in particular)
has been totally overhauled. In general, 3d displacement is much faster and
memory management is better. Motion blur for displacement is also
significantly faster. For more information, see
VRayDisplacementMod.
- The VRay frame buffer reappears in this version. See
the VRay
Frame Buffer section. There is still some work to be done in that area.
- QMC motion blur for objects that do not move and don't
change has been improved. They generate static geometry and render faster,
instead of the motion blurred geometry that was always generated before.
This means that scenes where motion blur is mostly due to camera motion will
render faster.
- This version requires additional authorization in order
to work. Your old authorization info will not be removed, should you decide
to revert to a previous version of VRay.
- As of this version, VRay has a Geometry SDK that allows the creation of
custom geometric primitives. The VRayFur, VRayProxy and VRayPlane plugins
all use this SDK.
Build 1.09.03n - 28 November 2003:
- This is just a recompile of the demo version with
extended trial preiod
Build 1.09.03m - 17 September 2003:
- Fixed a bug with interpolated glossy
reflections/refractions
Build 1.09.03k - 12 September 2003:
- Fixed a bug with Precalc'd overlapped irradiance map
lookup type that could cause crashes.
- Better bump mapping with the irradiance map.
- Some compression added to the irradiance map; as a
result the size of the irradiance map in memory and on disk is about 50%
smaller at the price of slightly longer render times and somewhat reduced
precision (not noticeable in most cases).
- The prepasses will not add detail to the irradiance map
for more than the specified Max rate when using the Incremental add mode.
Until now, rendering successive frames could add more and more detail in
some areas, leading to very large irradiance maps.
- Added parameters to the Global switches rollout to
control raytracing of transparencies. Until now those were hard-coded;
occasionally however they need to be changed (for example with lots of
overlapping transparent planes).
- Added a parameter to the Global switches rollout to
skip the rendering of the final image and to compute only the
irradiance/photon maps. This option is useful to speed up calculating
irradiance maps for fly-through animations.
Build 1.09.03j - 22 August 2003:
- Fixed the MaxScript parameters of the VRay material.
- In VRay Advanced for 3dsmax 5.x only, added a shortcut
to the quad menu for the VRay object properties dialog, as well as an
initial version of a scene converter that takes all Standard and finalRender
Stage-1 materials in the scene and converts them to VRay materials; also
converts raytraced shadows to VRay shadows. At this point, the conversion
is pretty basic, but can be quite useful.
Build 1.09.03i - 26 July 2003:
- Fixed a bug that could cause crashes when manipulating
objects in the viewports after rendering with VRay and other anomalies in
3dsmax.
- Added an Affect alpha parameter to VRayMtl; this will
cause the alpha channel to be taken from the things that are seen through
the material when using refraction. Note that this only works for non-glossy
refraction (refraction glossiness set to 1.0).
- Fixed a bug that caused objects excluded from
illumination by VRayLights to be illuminated when the lights' Store with
irradiance map option is on.
- Added another color mapping mode, called HSV
exponential; it is very similar to the Exponential color mapping mode, but
will preserve the hue and saturation of colors, and will only limit their
value.
Build 1.09.03g:
- Improved compatibility with Digimation's SpeedTree.
- The Fresnel option in the VRay material affects its
transparent shadows as well.
Build 1.09.03f - fixes a single bug:
- VRay did not display an authorization dialog (bug in
1.09.03e).
Build 1.09.03e:
- The VRayLight could crash if the user right-clicks
while creating it.
- Saved irradiance maps were not always loaded properly
(bug in 1.09.03a-d) causing excessive render times.
- VRay could crash sometimes while calculating
irradiance maps (bug in 1.09.03a-d).
- VRay could crash sometimes with VRayLights (bug in
1.09.03a-d).
- Files created with the beta versions of VRay (0.5x.xx)
will not load at all from this build onward.
- All of the renderer parameters are exposed through
MaxScript (in 3dsmax 5.x). Note that this may cause some incompatibilities
with existing MaxScripts - they will need to be updated.
The following methods of the renderer can be called from MaxScript:
<vray>.saveCausticsPhotonMap <fname>
<vray>.saveGlobalPhotonMap <fname>
<vray>.saveIrradianceMap <fname>
<vray>.loadIrradianceMap <fname>
<vray>.clearIrradianceMap()
All of those methods return 0 on success and a non-zero value if an error
occurs.
- The Bake3D plug-in file is named differently for each
3dsmax version (Bake3d31.dlu, Bake3d40.dlu and Bake3d50.dlu respectively).
Build 1.09.03d - fixes some bugs introduced in the 1.09.03a-c builds:
- The VRayDisplacementMod modifier had a bug that could
cause instabilities in Max when working with the modifier stack,
loading/saving files etc.
- VRay lights could cause crashes in some cases.
- Broadcasting of NOTIFY_RENDER_PREEVAL (Max 4 and above)
was disabled since it could cause the rendering to crash/hang.
Build 1.09.03c - bug fix:
(*) The irradiance map was not reset for every frame in Single frame mode.
Build 1.09.03c - two minor bug fixes:
(*) VRay did not load on Windows NT.
(*) Normal glossy reflections did not always render.
Build 1.09.03a
(*) The VRay material is re-organized and split into rollups.
(*) The VRay material supports anisotropy for glossy reflections.
(*) The min/max rate for interpolated glossy effects is decoupled from the
min/max rate of the irradiance map. Using interpolated glossy effects no longer
requires GI to be on or to be set to irradiance map. Note that old materials
using interpolated glossies need to be checked manually, since the interpolation
options will not be transferred.
(*) Improved compatibility with the finalToon render effect. The finalToon
shader does not work correctly, but lines should be rendered properly.
(*) Added an Exclude button to VRayLight.
(*) Added a messages window that outputs some (useful) information. The messages
are actually portions of the VRayLog.txt file. Messages are divided into four
categories: informative messages, warning messages, error messages and debug
messages. Warning messages are colored in greed, error messages are colored in
red. There are some options in the System rollout to control the output window.
(*) The Shift parameter in VRayDisplacementMod works both with 2d and 3d
displacement.
(*) Fixed a memory leak with 3d displacement in animation.
(*) GBuffer channels were not correct for objects behind other "Invisible to
camera" objects.
Build 1.09.02u
(*) This version of VRay includes separate builds for Max 5.x and Max 4.x;
you will have to delete the following files from previous builds in your Max5
installation to make the new ones work: VRay40.dll, VRender40.dlr and
VRayNet40.dlu (the new Max 5 files are called VRay50.dll, VRender50.dlr and
VRayNet50.dlu respectively).
(*) Greatly improved distributed rendering (DR) in terms of stability.
(*) DR now supports Max 5.x and Viz4
(*) A DR setup wizard has been added to the installation files to help set up
your render slaves for DR. Copy the DRWizard40.exe/DRWizard50.exe to the slave
Max root folder and double-click it. The wizard will ask you for the relevant
information and will write it in a configuration file.
(*) Some improvements to the VRaySpawner - it is no longer required to install
the spawner as a service to make it work at all. Also, when run in stand-alone
mode, the spawner will show an icon in the taskbar tray that allows you to close
it without resorting to Task Manager.
(*) The bucket-mode irradiance map has been enhanced to produce much less
obvious seams between the buckets (at the expense of some extra computations).
(*) Some problems with Falloff opacity/filter maps have been resolved.
(*) Horizontal and vertical flip parameters have been added to the irradiance
map.
(*) Fixed a bug in the Spherical camera that caused distortion of the image when
mapped back as a spherical environment.
(*) Max's own displacement mapping did not always work.
(*) Color mapping was incorrectly applied to the background as seen through
transparent objects when Affect background is unchecked.
(*) Some compatibility problems with AfterBurn3 have been resolved.
(*) Fixed a bug that could cause exceptions when building render normals.
(*) A new parameter was added to the global photon map parameters - Max density
allows you to limit the spatial resolution of the photon map thus saving memory
(and render time) while allowing many more photons to be shot (thus producing
smoother results). The value of this parameter represents a distance in world
space. Any photons that are closer to each other than this distance will be
merged into one photon with equal energy. This parameter is dependent on the
scale of your scene. Smaller values mean more detail in the photon map (and more
memory). Higher values mean less detail, but produce a smoother result and take
less memory. A tutorial on this is coming soon...
(*) The Delone triangulation method for irradiance map interpolation has been
slightly improved.
Build 1.09.02t
(*) Fixed the Max 5.1 "Missing map" warning when loading files containing the
VRayHDRI map.
(*) Added the capability for loading/saving the VRay parameters as presets.
There is a button named "Presets" in the VRay System roll-up; pressing it will
bring up a dialog box that allows to choose a preset name and the roll-ups that
need to be saved/loaded.
(*) The static boxes with the path to the loaded irradiance/photon map have been
turned into edit boxes, so that the user can directly enter a path, without
using the Browse button.
(*) Added the options of switching off reflective/refractive GI caustics (which
sometimes cause extra noise but have little contribution to the lighting).
(*) The option "No GI on other mattes" in the Matte settings of an object has
been extended to also disable shadows of matte objects onto other matte objects
(works only with VRay shadows and lights).
(*) When an exception occurs in network render mode, VRay will hand down the
exception to Max, instead of silently ignoring it; this will prevent VRay from
rendering the rest of the animation as black frames.
(*) Caustics on matte objects/materials did not show up unless GI is also
enabled
Build 1.09.02q
(*) Fixed (hopefully) most of the Material Editor crashes.
(*) Fixed some problems with Multi/Subobject materials.
(*) The "Don't affect GI on other mattes" option could not be unchecked; also
this is renamed to "No GI on other mattes".
(*) Added an initial version of the VRay VFB - see the notes below.
(*) Added "Exponential" color mapping mode. You can select this instead of the
default "Linear mapping". The exponential mode is targeted at preventing
burn-outs caused by very bright colors. The meaning of the Dark and Bright
multipliers is slightly altered in this mode. The Dark multiplier can again be
used to make the image darker/brighter. The Bright multiplier is not very
meaningful at this point and you should leave it to 1.0.
Notes on the VRay VFB
This is the first public build to include the new internal VRay Virtual
Frame Buffer. It is still in its infant stage and there is still a lot of cool
stuff to add. The built-in VFB has some advantages over the standard MAX VFB:
(*) Internal color corrections that allow to tweak the colors within MAX
without having to re-render again and again and without having to switch back
and forth to post-production applications in order make color corrections and
matching. The corrections include curve-based control of each channel as well as
overall color level re-mapping. Use the CTRL/SHIFT+MOUSE CLICK combinations to
add color control nodes in the Levels control.
(*) Mouse tracking that allows the user to control which parts of the image are
to be rendered first by simply moving the mouse over the desired area.
The new VFB is designed to be more interactive and stable. There should be no
problems tweaking the colors, zooming in and out changing the currently visible
channel etc while rendering. A lot of new features are on their way to be
introduced in the next build, taking full advantage of the VRay renderer
architecture.
Build 1.09.02p
(*) This version is just a recompile of 1.09.02n - fixes some messed up UI
stuff. Also tooltips are temporarily disabled, since it seemed they may be
causing problems.
Build 1.09.02n
(*) Fixes a single bug - irradiance maps were not saved properly to disc.
Build 1.09.02m
(*) Fixed a bug that would cause reflections/refractions not to show up on a
first frame or in network rendering.
(*) Better support for DreamScape plugin
(*) Better support for Shag:Hair velocity channel output
(*) Fixed a memory leak when the user cancels the rendering (especially obvious
in large scenes).
(*) Fixed a problem that could cause crashes when using any g-buffer channels
(*) Support for the VRay shading SDK - allows the creation of VRay specific
shaders, materials and atmospheric effects
(*) The irradiance map now supports GI on matte objects, making the calculations
of these much faster
(*) Improved combining of direct and GI shadows on matte objects
(*) Added an option "Don't affect other mattes" to the matte object properties,
which will prevent matte objects from affecting the each other's GI solution
Build 1.09.02g
(*) Fixed bugs in the 3d displacement modifier's accelerators
(*) Render region/blowup/crop did not work properly
(*) %camera keyword added to the frame stamp; this returns an empty string if
the rendered view is not a camera view
Build 1.09.02f
(*) A memory leak with VRayDisplacementMod was fixed
(*) Transparent objects did not render properly with GI
(*) Three new keywords supported in the frame stamp: %cpu %ram %vmem %mhz
(*) 3d displacement mapping added. VRayDisplacementMod has been reorganized and
includes support for both the old-style 2d mapping and a new 3d mapping
algorithms. Note the 2d displacement is much faster and should be used whenever
possible. The 3d displacement algorithm on the other hand supports all mapping
types (World XYZ/Object XYZ/Explicit map channel etc). In addition, the 3d
displacement algorithm can extract the displacement information from an object's
material, instead of a single texture map. Here is a short description of the
new parameters:
Face subdivs - this determines the number of subdivisions along a triangle's
edge. The 3d displacement works by subdividing an object's faces into tiny
sub-triangles, which are then displaced. Ideally the number of subdivisions
should be view-dependent; this is currently not implemented and faces are
uniformly subdivided. More subdivs mean more detail, but longer render times
(and more memory usage, if caching is used, see below).
Use object mtl - this will cause the displacement map to be taken from the
object's material instead of the map selected in VRayDisplacementMod. Note that
you will need to disable Max's own displacement mapping through the Displacement
checkbox in Max's Common parameters roll-out (not the VRay displacement option
in the Global switches roll-out which only disables VRay displacement).
Keep continuity - using this will try to produce a connected surface, without
splits, even between faces of different smoothing groups and/or material IDs.
Edge thresh - when Keep continuity is checked, this controls the extent to which
maps on faces with different material IDs will be blended.
3D mapping acceleration - None means no acceleration whatsoever, meaning that
the displacement map will be evaluated each time VRay needs to check its value;
this will not take any additional memory but usually will be very slow. Linear
cache will store the displacement values for the subtriangles of a face in a
cache, without organizing them in any special way; Quadtree cache also stores
these values, but organizes them in a quad tree, so that parts that are not
actually intersected by a ray can be skipped quickly. The quadtree cache takes
more memory than the linear cache, but is usually faster. Also, when using the
quadtree cache, the Face subdivs are internally rounded up to the nearest power
of two (2, 4, 8, 16, 32, 64, 128 etc).
Cache size - the maximum number of faces (of the original object, not displaced
sub-triangles) that can be stored in the cache. The actual memory used by the
cache depends both on this number, and the Face subdivs.
Precalc level - usually VRay will compute the displacement function for a
sub-triangle only when it needs its value; this can reduce the efficiency of the
quadtree cache. Therefore VRay can precompute the displacement function for a
larger part of the triangle, so that it is readily available later on.
(*) A new option Check sample visibility added to the irradiance map
parameters. This may be used to prevent light leaking from under thin walls etc
with the irradiance map.
(*) A new option Smooth surface shadows added to VRayShadow and VRayLight. This
is aimed at preventing self-shadowing artifacts resulting from low polygon
counts.
(*) VRay will now check for missing map files and will put up a dialog box
listing the missing files.
(*) VRayMtl has been added to the Basic version.
Build 1.09.02e
(*) The authorization dialog did not appear if VRay is not authorized.
(*) Some additional changes to the translucency algorithm.
(*) Additional parameter Energy preservation mode added to VRayMtl.The RGB mode
is the current method for balancing diffuse/reflected/refracted light (for
example green reflections would tint the diffuse color to magenta). The new
Monochrome mode preserves the color hue and only adjusts the intensity.
(*) Global switches roll-up added
(*) A new parameter Interval center was added to the motion blur parameters.
This defines where the center of the motion blur interval is (0.0 is the start
of a frame, 1.0 is the end of a frame).
(*) Photon maps did not work with VRay materials as submaterials (in a
Multi/Subobject material, for example)
Build 1.09.02d
(*) Fixes a single bug in 1.09.02x - the primary GI multiplier was squared by
mistake, leading to darker images if less than 1.0
Build 1.09.02c
(*) Fixes a single bug in 1.09.02b - caustics did not appear on VRay
materials.
Build 1.09.02b
(*) Fixes a single bug in 1.09.02a - simple two level AA did not work
properly.
Build 1.09.02a
(*) Spherical camera rendered very slowly with large FOV
(*) Receive shadows did not working properly on transparent objects
(*) When caustics/global photon maps were used, some photons remained trapped on
the light surface
(*) VRayLights with Store with irradiance map checked did not produce indirect
illumination with Direct GI
(*) VRayLights with Store with irradiance map now work much better with bump
maps
(*) VRayLights and shadows from other lights used to behave in an unpredictable
way
(*) Environment maps with Object XYZ/World XYZ/Explicit map channel mapping
types did not render
(*) VRayMtl did not respect the specular/diffuse settings of the light
(*) Fixed severe memory leak with instanced objects in animation
(*) Bug with matte objects when alpha contribution is different from -1.0 or 1.0
(bug in 1.09.x only)
(*) Caustics and photon maps did not work with Direct lights (Note: Direct
lights do NOT need inverse square fallof and high multipliers in order to
produce correct caustics and photon illumination)
(*) There were some differences in the GI produced with photon maps and with
irradiance maps
(*) VRayLights will take in account light brightness, size, distance and
material at the shaded point when determinig the number of samples (means that
dim, small and distant vraylights and dark vray materials will render faster).
This means scenes with multiple VRayLights will render faster on average.
(*) Objects with Visible to camera unchecked did not render properly with
atmospherics
(*) Sometimes VRMaxSpawner did not load its settings properly
(*) Optimized adaptive antialiasing - works better with fuzzy effects (dof,
moblur etc)
(*) Some bugs in the translucency algorithm were fixed
Interpolated glossy reflections/refractions/translucency
VRay is now capable of using interpolation for glossy reflections,
refractions and translucency. This means that you can create images using these
effects very quickly (although not as accurately). The interpolation method used
is very similar to VRay's irradiance map - it uses the same basic data
structure and sampling algorithms. The interpolation can be controlled by three
new parameters in VRayMtl:
Use interpolation - when this is on (the default is Off), VRay will use
interpolation for fuzzy material effects. Note that Irradiance map must be
turned on for this to work.
Color threshold - controls the sensitivity of the adaptive algorithm to changes
in the interpolated effect. This is similar to the color threshold for the
irradiance map
Interpolation samples - this controls how many samples will be taken in account
when interpolating. This is similar to the interpolation samples parameter of
the irradiance map.
Note: while the interpolation algorithm used can produce acceptable results
quite quickly, bear in mind that it is just a cheat. As such, it has some
disadvantages/limitations:
(*) it will blur the fuzzy effect more than it actually is
(*) it may miss small details in the fuzzy effect
(*) it will not work very well with extreme motion blur or DOF
(*) do not use interpolation with Bucket-mode irradiance map - you will get an
exception (we hope to have this fixed)
The interpolation will work best for images without DOF and motion blur, and
for large flat objects.
Build 1.09.01c
New features in VRay
(*) This version of VRay is compiled with the Intel C++ compiler; this
should increase the overall speed of VRay by a few percent; exact timings are
still to be performed. Important note: the .zip file contains libmmd.dll, a file
containing the Intel math library and required by programs compiled with the
Intel compiler; it must be copied to Max's ROOT folder. If you have Max 4.26 or
Max 5 you should already have this file and there is no need to copy it.
(*) Fixed some issues with displacement and irradiance maps
(*) Fixed some issues with instance rendering and motion blur/displacement
(*) A bug in VRayMap that caused weird effects when Reflect on back side was on
(*) The motion blur interval has been centered around the middle of the frames,
instead of being placed in the beginning
(*) The irradiance map calculation is displayed in the old bright/dark mode,
instead of marking the samples with red color
(*) The default value for the secondary GI multiplier is 0.5; this produces
images with more contrast.
(*) Fixed a potential memory leak in VRayShadow
(*) An option Show direct light has been added to the irradiance map to preview
the first-bounce direct light; this option is available only when "Show calc.
phase" is on; note that calculating direct light for first diffuse bounces is
not necessary and may slow things down - it was added simply as a preview
convenience.
(*) Some optimizations of VRayMtl to speed up photon tracing in the case of many
lights
(*) A presets list has been added to the irradiance map parameters; currently it
features the following presets - "Custom", "Very low", "Low", "Medium", "Medium
- animation", "High", "High - animation", "Very high". The default settings of
the irradiance map correspond to the "Medium" preset. The presets change the
following parameters: Min rate, Max rate, and Color/Normal/Distance thresholds.
If a preset other than "Custom" is selected, these parameters are greyed and
cannot be changed. The "Medium - animation" and "High - animation" presets are
useful for animations with moving objects. Note that for flicker-free animations
Hemispheric subdivs needs to be high enough to avoid noise.
(*) The Environment rollout has been split in two parts - a separate environment
for GI only (skylight) and a different environment for reflections/refractions
etc.
(*) The adaptive early termination algorithm of the QMC sampler has been
improved (the early termination algorithm allows VRay to take fewer samples
than the amount given by the user if that amount is too high for a given value);
a new parameter Min. samples was added to the QMC sampler roll-out. This
parameter sets the minimum number of samples before the adaptive early
termination algorithm kicks in (the algorithm needs a certain amount of samples
to work reliably, in previous builds too few samples could cause increased
noise). Also the default values were changed. The new defaults allow one to use
high subdivs for things like DOF, GI, glossy reflections etc; the early
termination algorithm will automatically reduce the number of samples where the
full amount is not required.
(*) MaxScript support was added to VRayMtl and VRayLight; to see the available
parameters type "showProperties x" in the MaxScript Listener, where "x" is any
vray material or light.
New features in Distributed Rendering - please read carefully
(*) New spawner.
(*) Added new feature that lets you enable/disable servers during the
distributed rendering process. All you have to do is just double-click or
right-click and enable or disable the server and it should run fine.
(*) More detailed information during the rendering process and some minor
interface fancies.
(*) Bug fixes.
The newest thing about this build is the new MAX spawner. The great thing
about it is that the same EXE file can now be run not only as a standard
application but it can be run as a Windows service. Another new thing about it
is the settings scheme is changed (.ini files are now used) and some of you may
need to manually tweak the settings.
Provided you will find the old spawner for those who may experience problems
running the new one. We would greatly appreciate if you report any such problems
to us at vray@chaosgroup.com <mailto:vray@chaosgroup.com>. There are also a few
batch files that will help you get the new spawner started. However, we will
cover manual installation as well for those who have problems.
Running the new spawner as a standalone application
First copy the VRaySpawner.exe and the batch files to your MAXROOT directory.
Run the VRaySpawner.exe without any parameters and it should run fine as a
standalone application. There is no interface in this “c” build so in order to
stop it you will have to kill it.
Running the new spawner as a windows service
First copy the VRaySpawner.exe and the batch files to your MAXROOT directory.
In order to use the spawner as a service you will need to first register it to
the windows service manager. This is done in a very simple way by running the
INSTALL_SERVICE.BAT file. What it does is it runs
VRaySpawner.exe -service
which registers it. But this is just registering - this does not start the
service. You need to go through this procedure only once. Now its time to start
the service. In order to start it you will have to go the Windows Service
manager through Start Menu/Settings/Control panel/Administrative tools/Services
. In the list of available services find the VRaySpawner service and start it.
Please note that you will not see the standard MAX application minimized as it
used to show up before, unless you enable the “Allow service to interact with
desktop” option in the Service Properties dialog. Now you can have your service
run automatically the moment the system boots up by selecting Automatic start up
type from the service properties.
Important note on file sharing: As most people use DR by sharing map files
across their local network it is important to change the default Log On settings
of the service. The default Log On is a “LocalSystem” user which usually does
not have any rights to access shared disks in the network. So it would be better
to change the Log On user to Administrator or whatever user you use to access
your shared disks with maps.
If for some reason you would like to remove the VRay service from your
system you can do so by running the UNINSTALL_SERVICE.BAT file. What it does is
it runs:
VRaySpawner.exe -unregserver
Tweaking the settings of the new spawner and VRayNet system
Settings are no longer read from the registry. They are now being read from
an INI file which can easily be copied across your network to all of your render
servers if they are setup up in a similar manner. If the INI file is missing,
the spawner and the VRayNet modules will attempt to generate and use default
settings that should run smoothly in most cases. In any case - you can see all
the spawner activity in the c:\VRSpawner.LOG file. The name of the INI file is
VRayNet.INI and it must be found in the MAXROOT directory.
Here is a step-by-step summary of what you need to do to make the new spawner
and VRayNet work.
Setting up your RENDER SERVERS:
1. Copy the VRaySpawner.exe and the batch files to your MAXROOT directory as
well as all the plugins to the appropriate places
(VRay40.DLL to the MAXROOT; VRender40.dlr and VRayNet40.dlu to the plugins
directory)
2. Register the spawner service by running INSTALL_SERVICE.BAT
3. Run the service from Start Menu/Settings/Control panel/Administrative
tools/Services
4. [Optional]Tweak the VRayNet.INI file which must be placed in the MAXROOT
directory.
Setting up your workstations
1. Copy the VRaySpawner.exe and the batch files to your MAXROOT directory as
well as all the plugins to the appropriate places
2. [Optional]Tweak the VRayNet.INI file which must be placed in the MAXROOT
directory.
Build 1.09.01b
(*) Sometimes with low settings the irradiance map could produce black spots
and faces.
(*) Sometimes VRay would crash with motion blur if objects depend on other
objects.
Build 1.09.01a
(*) True instance rendering is supported
(*) Global photon maps are supported
(*) Irradiance map algorithm has been improved
(*) VRayMtl has been optimized to handle secondary light bounces more
efficiently (by using Russian roulette rejection). When using VRayMtl, you can
use high values for the depth of secondary diffuse reflections for the fraction
of the time this took in previous builds.
(*) Distributed rendering has been improved
(*) Added the option to automatically save the irradiance/caustic/photon maps at
the end of rendering.
Additionally, some small bugs have been corrected and some interface
improvements were made (mostly in VRayLights).
There are a few sample files in this distribution. They are intended to
demonstrate the usage of the various parameters of VRay. Please do not
distribute these files. Although most can be downloaded freely from the
internet, they are for learning purposes only!
Purpose of this test build
In addition to testing the new features, the purpose of this build is make
sure all other features work as expected. Another important purpose of this
build is to determine suitable default values for the new parameters and those
with modified action. These are the settings of the irradiance map (color and
distance thresholds, min/max rate, randomized sampling, usage of current pass
samples, interpolation type).
Instance rendering
VRay now supports efficient rendering of instanced objects. Instead of
replicating all the face of these objects as render primitives, the instanced
objects themselves are treated as render primitves. Note that depending on the
scene complexity (the density and orientation of instances) rendering true
instances may be slower than replicating them. Use instance rendering only when
RAM is an issue and your scene will not otherwise fit in memory.
Instancing is supported for static, motion-blurred and displaced objects.
Instance rendering is controlled by the Instanced objects option in the
System roll-out.
Global photon mapping
Global photon mapping is intended mostly for interior or semi-interior
scenes, where there is a lot of light bouncing around. The global photon map is
a crude approximation of the global illumination in the scene, computed by
tracing rays from light sources and storing the hit points with the scene
geometry. Usually the photon map does not provide smooth enough approximation to
be displayed directly, however it can be used to accelerate GI by giving an
approximation for secondary diffuse bounces.
Currently the global photon map works only with VRay materials. Support for
Standard materials will be added shortly (although this will come at the cost of
increased rendering time).
In order to use the photon map, you must also tell the lights in your scene
to emit photons; this is done via the Light Settings dialog, in the same way as
with the caustics photon map.
There is an additional roll-up in VRay's parameters dedicated to the global
photon map. Normally the global photon map is disabled. You can enable it by
selecting the "Global photon map" option for first or secondary diffuse bounces
in the Indirect Illumination roll-out. If you select "Global photon map" for
first diffuse bounces, you will be able to see directly what the photon map
looks like. This is useful when tuning the parameters of the photon map. For the
final rendering, you should use Direct GI or Irradiance map with "Global photon
map" selected for secondary diffuse bounces.
Parameters of the global photon map:
Bounces - the number of light bounces approximated by the map
Auto search dist - when this is on, VRay will try to deduce a suitable value
for Search dist; currently this is not done in a very intelligent way and the
computed value may be too small to be useful
Search dist - this parameter is similar to the Search dist parameter of the
caustics photon map; it is the range in which VRay will look for photons when
evaluating the irradiance at a surface point.
Max photons - this parameter is similar to the Max photons parameter of the
caustic photon map; it is the maximum number of photons that VRay will look for
when evaluating irradiance at a surface point. Larger values will smooth out the
result from the global photon map, smaller values will produce noiser results.
Multiplier - a multiplier for the result, returned by the global photon map
Convert to irradiance map - when this is checked, VRay will precompute the
surface irradiance at the location of each photon; this allows only a small
number of photons (3-10) to be used later on when rendering
Interp samples - when the photon map is converted to an irradiance map, this
is the number of samples that will be used during rendering; this is similar to
the Interpolation samples parameter of the irradiance map
Convex hull area estimate - by default VRay will use a very simple rule to
deduce the area covered by nearby photons at a given point; while it is fast, it
produces inacurate results near edges and corners - GI will be incorrectly
darkened at these areas. Using the convex hull of the photons as an estimate of
the area covered by them produces much more pleasing results, although it is
somewhat slower.
Notes on photon map usage
Currently the irradiance map works only with VRay materials.
In addition to selecting the global photon map for primary or secondary
diffuse bounces, you must also select the lights that will emit photons. This is
controled from the Light settings dialog in VRay's System roll-out. The number
of emitted photons determine the detail captured by the photon map. Usually you
can get away with a low number of photons, since you only need a crude
approximation of GI for the secondary diffuse bounces. Also, VRayLights are more
handy to work with, since you don't need to work with super-high multipliers.
Currently, skylight cannot be simulated with global photon maps.
Irradiance map
The irradiance map algorithm has been improved and some new options have been
added.
The algorithm for detection of changes in irradiance as well as the distance
to other objects (the effect of Color and Distance thresholds) has been
improved, as well as the algorithm for interpolating the computed irradiance
map. This allows you to produce smooth images with much more detail for
significantly less rendering time.
There are now two separate values for the number of interpolation samples
used during the calculation of the irradiance map and the final rendering phase.
This allows to use a small number of samples when calculating the map (and thus
speeding the calculation process) and to use a larger number during rendering in
order to get a smoother result. The number of interpolation samples used when
calculating the irradiance map is set from the Advanced Irradiance Map
parameters roll-out.
The way GI samples are looked up during render has changed, so that "density
bias" is avoided. In previous versions, the nearest N samples were looked up
(where N is the value of the Interpolation samples parameter). This caused
problems in places where sample density changed abruptly - more samples would be
chosen on one side of the shaded point, thus producing an incorrect value. Now
VRay will try to locate samples in a more even manner around the shaded point.
This is somewhat slow, and at times can get excessively slow, if it is
impossible to find evenly distributed samples. This will probably get better in
next verisions, for now you have the option of going back to the original
sampling method by checking the Simple sample lookup option the Advanced
Irradiance map parameters.
In previous builds, the irradiance map was computed in several passes and
each pass had access to the GI samples collected during previous passes, but not
to samples collected earlier during the same pass. While this allows for easy
parallelization and guarantees that two renderings of the same frame always
produce the same result, it means that some parts of the image are sampled much
more densely than is strictly necessary. In this build, VRay can also use the
GI samples collected earlier during a given irradiance pass. This can
drastically reduce the number of GI samples (and hence the render time). There
are a few drawbacks however. On multiprocessor machines, several different
threads need to access and modify the same data structure (the irradiance map);
due to the asynchronous nature of this process, the samples may change their
places for each rendering of the image. Furthermore, the position of the GI
samples with respect to the image plane can change drastically from one frame to
another in animations, which can lead to excessive flickering with low settings.
That is why you have the option of turning this feature off by unchecking the
"Use current pass samples" option in the Advanced Irradiance Map parameters.
This feature combined with the new algorithm for sample placing allows you to
use high Max rate for the irradiance map without such a great performance hit.
The sample density will be automatically determined based on the Color, Normal
and Distance thresholds. Using Min Rate -3 and Max Rate 0 usually works well. We
have found that the resulting quality can be fine-tuned through the three
thresholds (the most important of which is the Color threshold) much more
effectively.
The Randomize samples parameters has been moved to the Advanced Irradiance
Map roll-out.
A new "bucketed" mode was added to the irradiance map. In this mode a new
irradiance map is computed for each separate bucket, as opposed to computing one
map for the entire image. The advantage of this is that it requires less memory
and allows GI calculations to be distributed across a network. A drawback is
that with low settings you may get different results on the two sides of bucket
edges. Since the map in each bucket is discarded after it is rendered, the
resulting irradiance map cannot be saved.
Some new options have been added to the irradiance map:
Show calc. phase - when this is unchecked, the calculation of the irradiance
map will not be visualized. It is recommended that you turn this off when using
the bucketed irradiance map mode. The way calculation is displayed has also
changed - newly added samples are colored in red. This means that the first
irradiance pass will look almost completely red - this is normal. Note that
displaying the irradiance map takes some time and can increase the rendering
time, especially for large-resolution images. You can use it while tuning the
parameters of the irradiance map and switch it off for the final rendering. Note
that the default value of this parameter is off.
Autosave on render end - when this is checked, the irradiance map will
automatically be saved to a file when rendering is complete. Click the Save As
button to set the file name.
Switch to saved map - when this is checked together with Autosave on render
end, the mode of the irradiance map will be automatically set to From file with
the source file name matching that of the newly saved irradiance map.
Use current pass samples - this will allow VRay to use GI samples computed
earlier during a given irradiance pass.
Simple sample lookup - this will cause VRay to use the method for sample
look-up used in previous versions. While it is fast, it can produce artifacts in
places where sample density changes abruptly. Use this if the new method is too
slow.
Notes on irradiance map usage
The default values for irradiance map parameters have changed. They have been
tuned to produce a good and fast rendering of a standard teapot on a ground
plane. The default values will produce relatively good results in many cases.
One of the purposes of this build is to find good default values; if you think
that other values would make more sense - please let us know.
At the default values for the Max rate (which is now 0), the irradiance map
will be able to pick up details with the size of less than or equal to one
pixel. If you have in your image finer features (less than one pixel wide), you
should increase this value. With VRay's new improved sampling, it is feasible
to set the Max Rate to 1 or 2 and get a super-detailed irradiance map in decent
time. On the other hand, if your scene does not contain a lot of detail, you can
decrease this value.
The most important parameters of the irradiance map are the Color threshold
and the Hemispheric subdivs. The color threshold defines the sensitivity to
changes in GI, while the hemispheric subdivs determine the quality of the GI
samples. In general, the hemispheric subdivs should be high enough to produce a
smooth (or only slightly noisy) image when the same number is used with Direct
GI. If this value is too low, the resulting GI samples will vary greatly, which
will confuse the adaptive irradiance map sampler and will cause it to take many
unnecessary samples.
Use the Normal and Distance thresholds when your scene has small details that
the Color threshold alone cannot detect properly. This can happen if you have a
small feature (a thin ledge or something similar) around which irradiance
changes abruptly, but only in a small region. We have found that these
parameters need to be changed only in a very few cases. You can however set the
Distance threshold to 0.0 to speed up the calculations; often the Color and
Normal thresholds alone are able to detect irradiance changes near corners and
edges so that the additional samples caused by the Distance threshold are often
unnecessary.
The lowest quality values for the thresholds are as follows: Color threshold
- 1.0, Normal threshold - 1.0, Distance threshold - 0.0
Using these settings will cause no (or only a very few) additional samples
beyond the first irradiance pass.
The highest quality settings are: Color threshold - 0.0, Normal threshold -
0.0, Distance threshold - 1.0
These settings will cause a new sample to be taken at every single point.
Distributed rendering
First, let's start by saying that DR engine (VRayNet) has been rewritten from
scratch. The protocol and approach totally redone. Here is the list of major
changes that concern the user-side.
- Much better and faster negotiations between client and server boxes. Things
have been optimized down to packet-level so control communication couldn’t
really be much faster. One can check this with a simple scene where there is
little rendering required and a lot of communication and compare the old and the
new version. Image updates have been gathered in bulks in order to optimize
better the flow of data. At first one may think that the refresh is slow but on
second thought the amount of refresh data is much bigger and faster than before.
- Auto-announce/include mechanism was added to add servers on the fly. Consider
rendering a heavy scene and you have 2 render servers. You can add a third
render server on the fly to the first 2 and it should be able to continue the
rendering process along with the first 2 servers. In order to use this one
should enable the “Promote new servers” checkbox in the SYSTEM settings of the
VRayNet rollup.
- Better handling of failed servers. A locking mechanism that prevents many
users from accessing a single render server. This is not really working well yet
as we are still working on it. Better support of servers during their loading.
Before there used to be problems if a render server has not fully loaded and we
would attempt to use it - it used to hang or crash. A locking mechanism now
prevents it from being used before it has fully and properly booted and if we
try to use it the user is being notified of the problem.
- Status update has been added during the first 2 phases (BeginSequence and
BeginFrame). This is when here VRay calculates Photon maps and Irradiance maps.
Now DR engine will transmit every now and then the status of each server and the
completion percent when possible. This would let you know how it is progressing
and if there are any problems.
- Ability to enable/disable render servers on the fly through the DR settings
interface. This is currently being disabled as we are resolving some problems
with MAX threads locking. Will be included in the next minor update.
- As you may know - a bucket irradiance map calculation support has been added.
This is especially useful for distribution of irradiance maps across render
servers. The technology, however, does not allow proper smoothing across buckets
so this is mainly for preview purposes. We will definitely add a mechanism to
distribute both irradiance maps and photon maps.
Coming soon!
- Much better and improved interface.
- First internal, then external DR queue manager for queuing jobs (mostly for
stills rendering) to be rendered with VRay DR.
- Tweaking, setting servers from client computer for easy maintenance
- Automatic texture upload of missing bitmaps on remote render servers.
- Last but not least - distributed calculations of irradiance maps and photon
maps
Sample files
Please do not distribute these example files. Use them to study VRay's
settings. Play with the various parameters of VRay's irradiance and photon
maps.
ex_sponza.max - this is the famous Sponza Atrium model by Marko Dabrovic,
which you can download from http://hdri.cgtechniques.com/~sponza/
The scene is set up to render with photon mapping. Once you render a single
image, you can save out the photon map and use the saved map to render other
views. There are several cameras in the scene looking at interesting places.
ex_cbox.max - this is a simple cornell box -like scene. It's purpose is to
demonstrate the ability of the irradiance map to pick up changes in irradiance.
The area light is set to store its illumination in the irradiance map. Suggested
experiments:
Change the Color threshold to different values (0.5, 0.6, 0.3, 0.2) and see the
result.
Select Global photon map for first diffuse bounces to see the photon map.
Turn on Show calc phase for the irradiance map to see the calculation passes
(notice the increased render time when this is on).
Check Simple sample lookup and notice the artifacts around shadow edges as well
as (a little) decreased render time.
Set the Max rate of the irradiance map to -1, -2, -3.
Set the irradiance map mode to Bucket mode to force a different irradiance map
for each bucket.
Change the Bounces parameter for the global photon map (5, 10, 15) and compare
rendering times and rendered result.
ex_winosi.max - this is the test scene from the WinOSI web site, which you
can download from http://www.winosi.onlinehome.de/
The scene is set up to render with photon mapping and caustics.
ex_shadows.max - other simple test scenes to show off the ability of the
irradiance map to pick up details.
|