<p>I am wondering how professional light visualizer software (like Capture Argo - WYSIWYG - Realizzer - LightConverse) project the lights on the objects (like stage, floor, people), even projecting the various <a href="https://en.wikipedia.org/wiki/Gobo_%28lighting%29" rel="nofollow" title="a physical stencil or template slotted inside, or placed in front of, a lighting source, used to control the shape of emitted light.">gobos</a> (shapes).</p>

<p>Here are some screenshots:</p>

<p><a href="http://www.diversitronics.de/tl_files/Bilder/Produkte/Capture/renderings/capture1.jpg" rel="nofollow">http://www.diversitronics.de/tl_files/Bilder/Produkte/Capture/renderings/capture1.jpg</a></p>

<p><a href="http://www.selightingdesign.co.uk/images/portfolio/capture%20hairspray/production%20photos/fullscreen/01.jpg" rel="nofollow">http://www.selightingdesign.co.uk/images/portfolio/capture%20hairspray/production%20photos/fullscreen/01.jpg</a></p>

<p>How do they calculate the various intersections, and project beams for so many light sources in an efficient way? What's the simplest way?</p>

<p>I assume they are projecting a texture but how?</p>

CC BY-SA 3.0
2016-01-03T13:13:00.867Z
These "textures" are called light cookies, which essentially is a texture which shows the strength of light on the projected area. This is actually really simple to implement. When the light attenuation is calculated in the shader, it looks up the cookie texture and returns the strength (which can be stored in the R, G, B, or A channels).
EvilTak
CC BY-SA 3.0
2016-01-06T10:13:16.560Z
I'm not really sure what part of this you don't understand. It's a relatively simple lighting environment and doesn't present any problems for a real-time renderer. Is it the way lights overlap that seems hard, or the shapes of the lights, or something else completely?
Dan Hulme
CC BY-SA 3.0
2016-02-17T17:28:01.917Z
The problem for me is projecting the actual beam, like if the light is passing through fog, from the source to the floor... The simplest way i think would be "projecting" a fake beam, a cone of a fixed lenght, made of triangles, from the lens of the light, towards the direction in which the light is facing, with some alpha blending.
Freddy Violato
CC BY-SA 3.0
2016-02-17T17:34:00.240Z
But this way the beam would pass through the objects, so i need a way to stop it at the first intersection... a very simple way would be raytracing the distance from the center of the lens to the floor, and then making the cone of that lenght. but its not a good way...
Freddy Violato
<opengl><rendering><texture><performance><real-time>
Projecting light shapes
Freddy Violato
# Projecting light shapes

(Asked by: username_0 on 2016-01-02)

I am wondering how professional light visualizer software (like Capture Argo - WYSIWYG - Realizzer - LightConverse) project the lights on the objects (like stage, floor, people), even projecting the various [gobos](https://en.wikipedia.org/wiki/Gobo_%28lighting%29 "a physical stencil or template slotted inside, or placed in front of, a lighting source, used to control the shape of emitted light.") (shapes).

Here are some screenshots:

<http://www.diversitronics.de/tl_files/Bilder/Produkte/Capture/renderings/capture1.jpg>

<http://www.selightingdesign.co.uk/images/portfolio/capture%20hairspray/production%20photos/fullscreen/01.jpg>

How do they calculate the various intersections, and project beams for so many light sources in an efficient way? What's the simplest way?

I assume they are projecting a texture but how?

**Tags:** opengl, rendering, texture, performance, real-time

> **Comments:**
> **username_1**: These "textures" are called light cookies, which essentially is a texture which shows the strength of light on the projected area. This is actually really simple to implement. When the light attenuation is calculated in the shader, it looks up the cookie texture and returns the strength (which can be stored in the R, G, B, or A channels).  
> **username_2**: I'm not really sure what part of this you don't understand. It's a relatively simple lighting environment and doesn't present any problems for a real-time renderer. Is it the way lights overlap that seems hard, or the shapes of the lights, or something else completely?  
> **username_0**: The problem for me is projecting the actual beam, like if the light is passing through fog, from the source to the floor... The simplest way i think would be "projecting" a fake beam, a cone of a fixed lenght, made of triangles, from the lens of the light, towards the direction in which the light is facing, with some alpha blending.  
> **username_0**: But this way the beam would pass through the objects, so i need a way to stop it at the first intersection... a very simple way would be raytracing the distance from the center of the lens to the floor, and then making the cone of that lenght. but its not a good way...  

---

## 0 answers

