YafaRay 3.5.1

YafaRay is a free open-source physically based montecarlo raytracing engine released under the LGPL 2.1 license. Raytracing is a rendering technique for generating realistic images by tracing the path of light through a 3D scene. A render engine consists of a specialised computer program that interacts with a host 3D application to provide specific raytracing capabilities "on demand". The YafaRay engine can be used in the following 3D applications: Blender, Edificius, pCon-planner and Wings 3D.

Tags renderer raytracing cpp
License GNU LGPL
State stable

Recent Releases

3.5.116 Jul 2020 07:45 minor feature: YafaRay v3.5.1 (2020-07-13) MacOS: found/root cause of Blender python segfault 11 and ruby SketchUp Make 2017 "incompatible version" problems. MacOS: Qt5 menus. Toolbar not yet, hiding it for now. XML parser: build broken when XMLImport and XML Loader are disabled (and no dependencies on LibXML2/ZLib). Build info: made it less verbose (it was getting too long in some platforms) and added dash between platform and compiler when there is a platform (like MinGW). Logging: HTML log display of jpg and png images. Ruby Qt bindings: change name to avoid collisions in linux python "import yafqt" between yafqt.py and yafqt.so.
3.5.012 Jul 2020 06:05 minor feature: YafaRay v3.5.0 (2020-07-10) IMPORTANT: Removal of *all Boost dependencies. I've implemented new Unicode File management and new ImageFilm/PhotonMap saving/loading system. - All functionality depending on Boost has been rewritten from scratch to be able to remove Boost altogether. - Implemented Unicode UTF8/UTF16 conversions for strings in POSIX and Windows systems. - Implemented Unicode UTF8/UTF16 file handling classes for Unicode paths in POSIX and Windows systems. - In the process of that implementation I some that were pending for a long time: - Now almost all files (including logs) are handled with the new file_t interface, so all works when using Unicode paths (logs were not correctly saved sometimes in Windows). - No longer need for temporary files when using OpenEXR files with Unicode paths. - Implemented new system to save / load ImageFilm and Photon Maps. The files generated with previous versions of YafaRay are *no longer valid for this new method. - I think the new system is faster and generates smaller files (still big, depending on the amount of info). - Only drawback for now, when loading photon maps it has to regenerate the photon search KD tree, which is no longer saved in the photon map file. - No longer need to have a separate binary/text format for portability. In principle it should work the same in Linux/Windows, etc. - Endianness could be an for non-Intel/AMD platforms like ARM, to be investigated in the future, but that's a problem for another day. - Removed all SysInfo Boost code and replaced it by a "CMake-building" generation. Renamed sysinfo classes as build_info. IMPORTANT: CMake: made LibXML2 / ZLib optional. New CMake flag "WITH_XMLImport" to enable LibXML2. Now all the dependencies are finally optional and pure YafaRay library can be built without any dependencies. IMPORTANT: general header files de-coupling and cleanup, some old unused and broken code deleted. Changing documentation extension to Markdown *.md. B
3.4.413 May 2020 09:45 minor feature: YafaRay v3.4.4 (2020-05-09) Angular camera: modified to add several types of angular projections and to new ortographic calculations.
3.4.209 May 2020 10:25 minor feature: YafaRay v3.4.2 (2020-05-08) Added Equirectangular camera. Triangle: added "mesh- gt;normals_exported" condition to enable user. defined normals.
3.4.109 Apr 2020 20:25 minor feature: YafaRay v3.4.1 (2020-04-08) Changed documentation to state that any reporting and resolution will solely be done in the GitHub Project "" tab. in the old yafaray.org tracker will not be processed anymore. Added note about Blender-Exporter only working for Blender v2.7x versions.
3.4.029 Mar 2020 02:45 minor feature: YafaRay v3.4.0 (2020-03-22) Note: don't mind the release date, the project has been mostly inactive for a long time, so only a few (although significant) changes since v3.3.0, but it was about time to give the last changes a proper release version number. Feature changes/additions: New per-material transparency bias for Shiny Diffuse. When there are objects with many transparent surfaces stacked together (such as leaves in a tree) sometimes black artifacts appear if the ray reaches the maximum depth. This can be solved by increasing the maximum ray depth, but the render times increase. I've added two new parameters for the Shiny Diffuse material to try to achieve a "trick", which is not realistic and may cause other artifacts but that should prevent the black areas without having to increase the maximum ray depth so much. Dependencies changes: IMPORTANT: Migration from Qt4 to Qt5 as Qt4 reached End of Life. Dependency on meganz/mingw-std-threads made optional, because it's needed for old MinGW compilers but it causes conflicts with new MinGW compilers, so better to have it as an option in CMake. Compatibility for Python 3.8. Other changes: Silenced some warnings while building in recent versions of gcc.
3.3.025 Sep 2019 18:31 major bugfix: Feature changes/additions: -------------------------- * "Flat Material" option added to Shiny Diffuse, requested by a certain user. Flat Material is a special non-photorealistic material that does not multiply the surface color by the cosine of the angle with the light, as happens in real life. Also, if receive_shadows is disabled, this flat material does no longer self-shadow. For special applications only. Bug fixes: ---------- * Bidirectional: fixed transparent background not working, was causing the entire render to have transparent alpha. See: http://www.yafaray.org/community/forum/viewtopic.php?f=15 t=5236 * Bidirectional: fixes (horrible hacks in fact, but...) for unitialized values causing incorrect illumination in scenes * Fixed hang in Windows 7 when YafaRay is built using Visual Studio 2013. * Some building fixes