YafaRay 0.1.2 release notes

Automatic thread detection added (based on Blender's thread detection code)

Since CPU specifications all publicly available for all runnning services, a feaure has been added for YafaRay to detect and use the maximun number of threads available in a computer, which will equal to the number of cores available multiplied for the simultaneous multithreading per core, if your CPU happens to support this technology. You can still disable this feature and set manually the number of threads to run.

Removed "use background" button from settings tab and added ibl to all the backgrounds to reflect bgLight_t changes.

There are five types of backgrounds in YafaRay, which are Single Color, Gradient, Texture, Sunsky 1 and Sunsky 2 . A background has got two purposes: the first one is to map the background with colors. This colors will be seen by the camera and by reflective surfaces. The other purpose of backgrounds is to work as a light source. In fact, the background lights the scene as a spherical area light casting light inside. The main changes, related to the previous release of YafaRay, are:

  • Unlike in Yafaray 0.1.1, now all backgrounds can emit direct light in every lighting method, as long as 'Use IBL' tickbox is enabled in the background settings.
  • Besides, in Texture you can control whether to shot photons or not from the background, since HDR images are usually poor shooters of caustic photons. In this way you can use another light source for caustic effects while still getting direct lighting and reflections from the background.
  • In Photon mapping, if 'Use IBL' is enabled, the background with emit diffuse and caustic photons. In the Texture background you can control what kind of photons to shot or whether to use the background as a photons emitter at all. Remember that in photon mapping you need at least 1 diffuse photons emitter for YafaRay to work.
  • In sunsky models you need to enable 'Add Sun' and 'Skylight' for those models to work as direct lighting and photons emitters.
  • Samples settings in Single color and Gradient work as in any other area light source, the more samples the less noise but the longer render times.

Gradien background new settings (in green), common to Single color as well.

Background changes at code level:
- Fixes (no black dots and better photon shooting and sampling) for bgLight_t
- envLight_t removed (bgLight_t is the replacement for all the bg lightning)
- Changes on all backgrounds (bgLight_t added, also IBL on the Blender Exporter)
- Changes on sunlight_t pdf calculation

IES Lights.

IES stands for Illuminating Engineering Society. An IES file describes the physical distribution of light intensity from a lamp and it is an industry standard for lighting designers and manufacturers.You will be able to find photometric IES files on the web of any lighting solutions manufacturer. IES is now an independent light type in YafaRay. The photometric file is selected with the help of a files browser utility in the IES section of YafaRay. IES light type parameters are:

  • IES files: Selects an IES file from the hard disk.
  • IES Soft Shadows: Enables the IES light to cast soft shadows.
  • IES samples: Defines the amount of samples taken to calculate the soft shadows. The more samples, the less noisy the shadows but the longer it will take to render.
  • Color Picker: Selects the color of the IES light.
  • Power: Intensity multiplier for light color.

Bidirectional path tracer improvements.

Now area light surfaces (area, sphere, background sky) are rendered correctly in Bidirectional, although some issues remain, like overpowered pixels (outliers). Bidirectional is still a very experimental development in YafaRay.

Bidirectional pass with visible arealights and background colors correctly rendered.

Added "Photon Only" and softshadows to Spot Lamp.

Two new features have been implemented in the spot lamp. One of them is the ability to cast soft shadows. With this feature we can render shadows like an area light while keeping the directionality of a spot lamp. This feature could be useful to render more focused caustic photon maps. Generating soft shadows means that we need to generate and integrate several shadow rays, hence the Samples setting that appears when soft shadows is enabled. The more samples the less noise but the longer it will take to render.

The second feature is the ability to change the spot lamp into a photons lamp, for producing more dense caustic maps without adding more light sources, as in YafRay 0.0.9. With Photon only enabled, the light source will produce diffuse and caustics photons if the appropiate light method is enabled in the render settings, but it won't be able to cast direct lighting.

Refactor of glossy material (yet again) to fix blackdots.
Optimization and cleanup of direct light integrator.
Fixes and optimizations on glossy and coated glossy, shinydiff, sunlight and bglight.
Independent caustic controls in photonmap integrator.
Influence of absorption color in photonmap caustics.
Roughglass material enabled.

Particles rendering.
Added UV normalmap tangent space.
Addition of premultipy alpha option to create correct backgroundless images for compositing.



A Bgportal is a light source that inherits color parameters from the current background set. The main purpose of a Bgportal is to focus photons shooting onto a particular area in order to increase the quality of the photon map without increasing the photon count. This feature is mainly intended for indoors scenes that get photons from outside light sources, usually through a windows. In previous versions of YafaRay, users would place an arealight in front of every window in order to achieve the results of a Bgportal. This area light would usually be given the same color than the background. With Bgportal not only that is achieved automatically, but also we can set the Bgportal to shoot photons instead of the background doing it. Indeed, if you set the Bgportal to shoot photons and disable photons from the background set, you will get a much more dense photon map as the Bgportal will concentrate the flow of photons through the windows area. The main parameters of BGportal are:

  • Power: intensity multiplier for light color.
  • Samples: defines the amount of samples taken to calculate the soft shadows. The more samples, the less noisy the shadows but the longer it will take to render.
  • Caustic photons: Allows the Bgportal to shoot caustic photons.
  • Diffuse photons: Allows the Bgportal to shoot diffuse photons.
  • Photons only: Sets the BGportal to shoot not direct lighting but photons only. The purpose of this setting is that you can use the background as a source of direct lighting and a BGportal as a source of photons.

Oren-nayar BSDF for diffuse shading on glossy materials (glossy and coated glossy).

Oren-Nayar is a view dependent, physically-based microfacet model for diffuse reflections, which takes into account geometric optics and interaction at microfacet level produced by light sources. Oren-Nayar models the diffuse reflectance for rough surfaces more accurately than the Lambertian model. Sigma controls the roughness of the surface.

Lights selective photon shooting (caustics or/and diffuse)

Three light types implement now selective photon shooting, which are BGportal, IBL (texture) background and spot. The aim of this feature is to make photon mapping more flexible. For instance, you can set

DirectLight: Transparent Shadows are now taken into account by AO.

In the previous version of YafaRay, Ambient Oclussion rays weren't able to go through transparent surfaces, and the oclussión ray would return a black value if a transparent object was found within the oclussion distance. In YafaRay 0.1.2, oclussion rays are able to get through transparent surfaces if the surface consist in a shinydiffuse material with transparency or a glass material with fake shadows enabled. For this feature to work, Transparent Shadows must be enabled in the general render settings, with enough Shadows depth for the oclussion rays to get through all transparent surfaces.


Rewrite of Blend Material

Fixes on microfacet code and modifications on Glossy and Coated Glossy Materials.

Several changes on Qt interface.

Math optimizations.
Removed weighted use of caustics map in Pathtrace Integrator, if "Both" caustics methods are set, the full photon caustics map is built (fixes some weird artifacts when Both where selected).

Cmake migration

Changes on the "draw parameters" feature.XML supported and more flexible hadling in the QT UI.

Added XML support for volume regions.

Fixes on Sunlight (overpowered photons).
Bump mapping less sensitive to norm value so you can use higher values and get better results easier.

Fix on sun color calculation error for Sunsky.
Fixed sunlight caustics.PathTracer: Path caustics are now tinted by Beer-Law Absorption on materials.
PhotonMap: FinalGathering caustics (yes there are a few) are now tinted by Beer-Law Absorption.
Common to integrators: Caustic estimation is now more precise and a bit faster.
Common integrator utilities: Caustics map for PathTracer and DirectLight fixed to include reflected caustics from glossy materials.
PhotonMap: FinalGathering pathtraced caustics from background added.
Integrator now adds a black sample when camera wt == 0 instead of ommiting sampling, this allows for angular camera circular mask to be antialiased (needs thorough testing).
Zdepth pass suppported.
XML_Loader: GNU style arguments are now accepted, new options availabe, (for more info run yafaray-xml -h or --help argument).
Console text changes.
New image formats supported for render output and texture input.
16-bits greys and 48-bits color PNG and TIFF suppported for texture input.
EXR/HDR output refactor.
Other improvements, optimisations and fixes.