Page 1 of 2

How do IES lights interact with geometry?

Posted: Sun Aug 21, 2011 10:07 am
by mvs
Can someone help me to understand a few things about IES lights?
IES lights are a text file that defines brightness at various angles relative to two axes, one being the direction the light is pointing, and the other an up-axis.
Therefore, it would make sense to locate IES lights using a transform matrix, or a point and two direction vectors.
But in Octane, IES lights are applied to geometry.

I was hoping someone could explain how the geometry (size, normals, mapping coordinates) interacts with the IES files to generate the lighting effect.


Paul

Re: How do IES lights interact with geometry?

Posted: Mon Aug 22, 2011 4:11 am
by roeland
Hi,

Octane uses the light distribution data in the IES file to change the intensity of a light source depending on the direction of the light ray leaving the emitter. This change does not depend on the normals, or UV on the mesh.

Using a mesh instead of a point light has two effects on the actual distribution emitted from the light:

First, because of the size, the distribution will get blurred a bit. This is because the direction of the light ray is slightly different depending on the position on the mesh. This blur becomes smaller if the emitter is smaller and further away.
Light rays with different direction
Light rays with different direction
direction.png (3.78 KiB) Viewed 4155 times
The second effect is due to the shape of the emitter. Point lights without a distribution emit the same intensity to all directions. For meshes the intensity is dependent on from which direction the mesh is viewed. The larger the cross-section of the mesh perpendicular to the light ray, the bigger the intensity. For example a plane emits the highest intensity along the normal. The intensity becomes smaller if the direction deviates further from the normal, and it becomes zero in directions parallel to the plane (the resulting pattern is called a cosine lobe). The distribution in the IES file will modify this pattern, instead of the uniform pattern from a point light.

A sphere has the same cross-section in all directions, and thus will not alter the emission pattern. A plane will attenuate the emission pattern for directions far away from the normal, but it should still be OK if the distribution is not too wide.
intensity.png
intensity.png (6.98 KiB) Viewed 4155 times
The total amount of emitted light from a mesh emitter doesn't depend on the size of the mesh.

An emission node has an input to change the orientation the light source. By default the source is pointing down (along the Y-axis). The orientation is always given in world space.

--
Roeland

Re: How do IES lights interact with geometry?

Posted: Tue Aug 23, 2011 1:05 am
by mvs
Hi Roeland,

Thanks for your response. I'm almost getting it!

So if I am understanding correctly:
>Mesh emitters behave as if each point on its surface emits light, with a cosine distribution around the normal of the surface at that point.
>Applying an ies file changes the cosine distribution for ALL points of the surface to a distribution defined by the IES.
>The power parameter of the light gives the TOTAL amount of light emitted by an entire surface, not light emitted per unit of area.
>The normal that determines the light direction is given by the underlying geometry of the mesh (though presumably interpolated?) but is not affected by any applied normals, normal maps etc.
>An IES light can only be approximated, because all mesh lights have some area, whereas IES assumes a point source. There will always be some degree blur.
>An IES makes most sense when applied to a planar surface, because all points on it have the same normal


Some additional questions:
>What determines the 'up' vector for the ies? It must be the u or v of the mapping coordinates, yes?
>One would be tempted to make small, bright, planar emitters to reduce blur. Do such sources render efficiently? Do they increase noise?

Paul

Re: How do IES lights interact with geometry?

Posted: Tue Aug 23, 2011 2:45 am
by roeland
mvs wrote:Hi Roeland,

Thanks for your response. I'm almost getting it!

So if I am understanding correctly:
>Mesh emitters behave as if each point on its surface emits light, with a cosine distribution around the normal of the surface at that point.
>Applying an ies file changes the cosine distribution for ALL points of the surface to a distribution defined by the IES.
>The power parameter of the light gives the TOTAL amount of light emitted by an entire surface, not light emitted per unit of area.
>The normal that determines the light direction is given by the underlying geometry of the mesh (though presumably interpolated?) but is not affected by any applied normals, normal maps etc.
>An IES light can only be approximated, because all mesh lights have some area, whereas IES assumes a point source. There will always be some degree blur.
>An IES makes most sense when applied to a planar surface, because all points on it have the same normal
The direction of the light ray in world space is used to sample the distribution, so parallel rays starting from anywhere on the mesh will use the same point in the distribution. This way distributions don't require flat emitters, but they also work with e.g. a sphere.

Every point on the mesh indeed emits light with a cosine lobe. The distribution doesn't replace this lobe, but it is multiplied with it, which will for most shapes distort the pattern a bit. A sphere gives the best reproduction of the distribution because of its symmetry, but other shapes can still look OK.
Some additional questions:
>What determines the 'up' vector for the ies? It must be the u or v of the mapping coordinates, yes?
>One would be tempted to make small, bright, planar emitters to reduce blur. Do such sources render efficiently? Do they increase noise?
Paul
The up vector is by default the world space Y axis, but it can be rotated with the 'orientation' input parameter.

And whether or not small emitters introduce noise depends strongly on the scene. You will need to experiment a bit to see what works best in your scene.

--
Roeland

Re: How do IES lights interact with geometry?

Posted: Wed Aug 24, 2011 11:28 pm
by mvs
Thanks Roeland,
I get it now.
Final queries:
The polar distribution of an IES around the principal axis is not necessarily uniform. What determines the 12oclock direction?
Would it make sense to have an option to turn off the multiplication of the IES with the cosine distribution to make it more accurate?
Paul

Re: How do IES lights interact with geometry?

Posted: Thu Aug 25, 2011 2:18 am
by roeland
Hi,

The 12 o'clock direction is fixed to the X axis.

The cosine distribution is the consequence of the way surfaces emit light, it is not something we can turn on or off. For the most accurate reproduction of the IES distribution, you can use a small sphere for the emitter.

--
Roeland

Re: How do IES lights interact with geometry?

Posted: Thu Aug 25, 2011 6:27 am
by bepeg4d
Hi roeland,
what is the minimum poly count for the sphere for a correct distribution of the IES light?
ciao beppe

Re: How do IES lights interact with geometry?

Posted: Thu Aug 25, 2011 7:53 am
by roeland
It depends, the more polygons, the more accurate the result will be. I think 500 polygons should definitely be enough. You may not even need an entire sphere, in the hallway demo scene half an ellipsoid is used.

--
Roeland

Re: How do IES lights interact with geometry?

Posted: Thu Aug 25, 2011 4:12 pm
by bepeg4d
ok, interesting, thanks roeland ;)
ciao beppe

Re: How do IES lights interact with geometry?

Posted: Thu May 07, 2020 10:09 am
by roy_orengo
Hi Roeland,
I'm studying the OCtane IES distribution but reading many posts in the forum I'm little bit confused because I can find a different opinion.
My issue is :
What polygon shape I must use with light with IES distribution?
Somewhere I find a Plane (but if I change the shape of the plane I have different results in the light distribution even with the IES applied).
It seems to me you suggest using a sphere (in this case can I use a Polysurface or I must use a mesh and the sphere dimension affect the result or is only a placeholder?)

The goal is to create a real light from some producer in the bast way in Octane.

Thanks,
Roy