Diffuse objects that use textures must be UV-unwrapped and the diffuse color texture must be copied by hand to the corresponding caustic material.
Animation of caustics is possible, but needs a lot of memory and will create huge files.The algorithm to adaptively add more detail to caustics may fail, when complicated raypaths create holes in the caustic mesh (use Undo and try again with lower error threshold).Ray-tracing is single threaded and slow (because it's partly implemented in Python).Caustics may wrap poorly around curved objects (changing the offset parameter of the shrinkwrap modifier may help).with displace modifier), however smooth shading is supported. Bump mapping is not supported, all deformations must be part of the reflective/refractive/transparent mesh (e.g.Textures controlling reflection/refraction/transparency color are not supported.Roughness of reflective/refractive materials is not supported and their shader node tree must be relatively simple (output is connected to Transparent, Glossy, Glass or Principled BSDF or a Mix or Add Shader node with one of the preceding BSDFs as input), otherwise they are treated as diffuse.Smoothness of light sources is not supported (no area lamps, no mesh lights).This technique has been used before: Rendering Realtime Caustics in WebGL. The size of the new caustic face compared with the size of the original lightsheet face determines the caustic's brightness. These caustic vertices are connected by faces following the topology of the original sheet. It traces a ray for each vertex in the mesh, generating new vertices whenever a diffuse object gets hit. To model such a lightsheet the Add-on creates a mesh assigned to each given light. In places where the lightsheet gets stretched its intensity will be lower, where it gets squeezed together the intensity will be higher and where it's folded on top of itself the intensities add up. When it finally reaches a diffuse material, it becomes visible to the camera. Imagine a lamp sends out an elastic sheet made of light such that each point on the sheet travels along a ray of light.Īs the sheet moves through the scene and interacts with surfaces, it deforms due to reflection and refraction. There is a combination of settings where Blender 2.8 might crash! See Drawbacks. The operators will be placed in a new panel in the 3D-View sidebar, progress for long running operators is printed to the terminal window. In Blender's preferences window go to the Add-ons section and use the Install. The Add-on will create caustics before rendering, therefore they will be rendered quickly with EEVEE and provide indirect lighting with Cycles.ĭownload link (for Blender 2.83, 2.93 and 3.2): The caustics are transparent meshes that wrap around objects with a diffuse material and show up like a glowing decal. Lightsheet is a Blender Add-on for creating fake caustics that can be rendered with Cycles and EEVEE. However both render engines are not suitable for scenes where sharp reflections or refractions create caustics.
Lightsheet - Caustics for Cycles and EEVEEīlender is a free and open source 3D computer graphics software toolset.įor rendering images Blender includes a path-tracer called Cycles and a real-time renderer named EEVEE.