GlowSticks is a post-effect component that allows you to render glowing 3d line-shaped lights.
It calculates the distance from a ray to the light source, to create a volumetric feeling.
How to use
The component works similar to instancing. It reads the glowstick data from different channels
in a specific CHOP. By default an example CHOP is selected to describe which channels can be used.
r[xyz] - rotation angles in degrees
radius - inner radius of the light (thickness of the stick)
length - length of the glow stick
intensity - brightness of the light (can exceed 1)
[rgb] - Color of the light
The "Camera COMP" parameter is required to orientate the rendering. The "Render depth TOP" is
optional however. If this TOP is supplied, GlowSticks will only render the lights when they are
not occluded by other geometry. When supplying a component input TOP, GlowSticks will composite
the light over this TOP.
GlowSticks works best when using some tone mapping. By default ACES is implemented and can be switched
on using the toggle.
Changing the "Max light distance" will clamp the maximum distance the light can travel, keeping this
high (>=20), will gives the illusion of volumetric fog.
The component is calculating the intersection of a ray, originated from the camera position, and a
capsule (tube with 2 half-spheres as caps). Then by integrating the inverse squared law, it finds
the total light contribution for that ray. Instead of raymarching though the area, it just have
to evaluate 3 integrals, which makes it relatively fast.
Bugs / support
GlowSticks is built and tested in version 2020.27390 on a Windows machine with an Nvidia videocard.
If you encounter any problems or bugs, please let me know. (forum/discord/email)