Software:LuxRender

From HandWiki
Revision as of 22:35, 3 March 2021 by imported>LinXED (update)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
LuxRender
Luxrender logo
Luxrender 0.7 Screenshot.png
A screenshot of Luxrender 0.7 Rendering a Desert Eagle
Developer(s)Jean-Philippe Grimaldi, Jean-Francois Romang, David Bucciarelli, Ricardo Lipas Augusto, Asbjorn Heid and others.[1]
Initial releaseJune 24, 2008; 16 years ago (2008-06-24)
Stable release
2.0[2] / May 18, 2018; 6 years ago (2018-05-18)
Written inC++, OpenCL
Operating systemCross-platform
Type3D computer graphics
LicenseGPLv3
Websitewww.luxcorerender.org

LuxRender was a free and open source software rendering system for physically correct image synthesis. The program runs on Linux, Mac OS X, and Microsoft Windows. The project changed name in the last part of 2017 and restarted with the name of LuxCoreRender.

Overview

LuxRender features a 3D renderer; it relies on other programs (3D modeling programs) to create the scenes to render, including the models, materials, lights and cameras. This content can then be exported from the application it was created in for rendering using LuxRender. Fully functional exporters are available for Blender, DAZ Studio; partially functional ones for Cinema 4D, Maya, SketchUp and XSI. Luxrender is also fully supported as production renderer in 3DS Max.[3] After opening the exported file, LuxRender renders the scene. Various tweaks to post processing settings can be set via graphical user interface and the scene control file.[4] A significant feature of LuxRender is, that the user is able to change the balance of different lights while the image is still being processed.

History

LuxRender is based on PBRT, a physically based ray tracing program.[5] Although very capable and well structured, PBRT focuses on academic use and is not easily usable by digital artists. As PBRT is licensed under the BSD License, it was possible to start a new program based on PBRT's source code. With the blessings of the original authors, a small group of programmers took this step in September 2007. The new program was named LuxRender and was to focus on artistic use. Since its initial stage, the program has attracted a small handful of various programmers around the world.[1]

On 24 June 2008, the first official release was announced.[6] This was the first release that is considered to be usable for the general public.

LuxCoreRender v2.x

The plan for LuxRender v2.0 has been defined during the 2013 summer and one of the major components is a new LuxRender C++ and Python API. The old C API suffers of many limitations when it comes to modern features like dynamic scene editing and interactive rendering so it has been decided to write a completely new API instead of improving the old one. LuxCore is the name of the new C++/Python API. It offers all the features shown by SLG (a.k.a. SmallLuxGPU) in the past (in terms of dynamic camera, textures, materials, objects, etc. editing) and more.

During the 2017 winter, LuxCoreRender v2.0 was defined as a LuxCore API focused render package, dropping any old code related to LuxRender v1.x. A new web site, forum, wiki, Blender exported, etc. were developed in order mark a new fresh project re-start.

Features

Rendering of a school interior with LuxRender. Modelled in Blender.

The main features of LuxRender as of version 0.8 include:[5][7]

  • Biased and unbiased rendering: Users can choose between physical accuracy (unbiased) and speed (biased).
  • Full spectral rendering: Instead of discrete RGB colour bands, full spectra are used for internal calculations.
  • Hierarchical procedural and image based texture system: Procedural and image based textures can be mixed in various ways, making it possible to create complex materials.
  • Displacement mapping and subdivision: Based on procedural or image textures, object surfaces can be transformed.
  • Network and co-operative rendering: Rendering time can be reduced by combining the processing power of multiple computers. IPv6 is also supported.
  • Perspective (including shift lens), orthographic and environment cameras
  • HDR output: Render output can be saved in various file formats, including .png, .tga and .exr.
  • Instances: Instancing significantly saves system resources, in particular memory consumption by reusing mesh data in duplicated objects.
  • Built in post-processing: While rendering, you can add post processed effects like bloom, glare, chromatic aberration and vignetting.
  • Motion blur, depth of field and lens effects: True motion blur, both for the camera and individual objects, and physically accurate Lens Effects, including Depth Of Field.
  • Light groups: By using light groups, one can output various light situations from a single rendering, or make adjustments to the balance between light sources in real time.
  • Tone mapping
  • Image denoising
  • Fleximage (virtual film): Allows you to pause and continue renders. The current state of the render can be written to a file, so that any system can continue the render at a later moment.
  • GPU acceleration for path tracing when sampling one light at a time.[8]
  • Film response curves to emulate traditional cameras color response (some curve are for black&white films too).
  • Volumetric rendering using Homogeneous volumes by defining an interior, and exterior volume.
  • Subsurface Scattering

References

External links