Lighting a painting.

Here's a thing I'm trying to do... not sure how to do it...  Got some archviz I made in Sketchup and want to light some paintings, so I thought I'd do a wall lamp, art gallery style (in Sketchup) and make one of the surfaces emissive.

Sketchup Painting Light

Now from previous experience I know that IES profiles don't really work on arbitrary geometry (I tried one profile, but it seemed to be skewed off to the left so I gave up on that).  As you can see from the second image with a standard emissive, I'm simply getting over-exposed from the light against the top of the painting. 

Archviz

What I want to do is illuminate a whole area of the painting, as if it were coming from the lamps.  Here's a close-up of the lamp:

Lamp close-up

Are there any "tricks" I can use?  I tried a light plane with very low opacity, but of course it emits two sided so lights the entire room, which I don't really want.  Any ideas gratefully accepted.

Comments

  • Sven DullahSven Dullah Posts: 7,621

    First thought was the light is too small and too close to the painting, try scaling up the light and lower intensity?

  • FishtalesFishtales Posts: 6,104

    If using IES Profiles you need to remember two things.

    1) They are designed for specific Lights e.g uplighters, wall lights, street lights etc.

    2) When using them with geometry the faces have to be facing the proper way or the light shines in the wrong direction even if it is the proper IES Profile for the light.

  • RobinsonRobinson Posts: 751

    Sven Dullah said:

    First thought was the light is too small and too close to the painting, try scaling up the light and lower intensity?

    I think that'll just give me a wider highlight.  I think the trouble here is there's no way to set a FOV on an emissive light.   But it did give me an idea.  I could try a spotlight, cylinder emitter.  Hmmmmm.

  • Sven DullahSven Dullah Posts: 7,621

    Robinson said:

    Sven Dullah said:

    First thought was the light is too small and too close to the painting, try scaling up the light and lower intensity?

    I think that'll just give me a wider highlight.  I think the trouble here is there's no way to set a FOV on an emissive light.   But it did give me an idea.  I could try a spotlight, cylinder emitter.  Hmmmmm.

    Having a larger emitter further away from the surface would certainly help spreading the light more evenly.

  • PaintboxPaintbox Posts: 1,633

    It seems to me the scene is also too dark. If you can up the ambient exposure / light, you might get less of a hotspot effect. All lights have a squared fall-off, so you have to take distance into account.

  • RobinsonRobinson Posts: 751

    Paintbox said:

    It seems to me the scene is also too dark. If you can up the ambient exposure / light, you might get less of a hotspot effect. All lights have a squared fall-off, so you have to take distance into account.

    I just want mood lighting.  Working on some experiments.  Will post them up in a mo.

  • RobinsonRobinson Posts: 751

    So I made the lamps wider and further from the wall.  I dialled the luminance right back too.  I quite like it except as you can see, we get some white horizontal bars across the painting.  Think I'll try cheating with spotlights next.

     

  • RobinsonRobinson Posts: 751
    edited February 2021

    I get the same issue (white bars across the painting) with spotlights.  Must be doing something wrong here...

     

    Edit: My mistake, needed to set glossy layered weight to zero on the canvass.

    Post edited by Robinson on
  • RobinsonRobinson Posts: 751

    So apart from the lights being too close to the image, the other issue was the painting canvass material having the default Glossy Layered Weight (0.33).  Setting it to zero fixed the problem.  This is more or less the effect I was looking for.  Thanks all.

     

  • PaintboxPaintbox Posts: 1,633

    Robinson said:

    So apart from the lights being too close to the image, the other issue was the painting canvass material having the default Glossy Layered Weight (0.33).  Setting it to zero fixed the problem.  This is more or less the effect I was looking for.  Thanks all.

    Yup,  that looks a ton better!

  • FishtalesFishtales Posts: 6,104
    edited February 2021

    A bit late with this then :)

    By the time I found a picture light and went through all my IES Profiles it took longer than I thought :) I was going to show a few different ones for comparison.

    2021-02-14 15:03:42.277 Total Rendering Time: 2 minutes 40.46 seconds

    Click on image for full size.

    picture-light-copyright-001.jpg
    1000 x 1500 - 349K
    Post edited by Fishtales on
  • RobinsonRobinson Posts: 751
    edited February 2021

    Fishtales said:

    A bit late with this then :)

    No way, I'm always up for learning new things.  Tell me about it.  Also particularly how you setup the geometry so it has the correct orientation (I assume winding doesn't matter).  If you look at my emitter in my original post, the  emissive surface is all on one plane, not facing in some weird direction.

     

    Yours looks fantastic btw.

    Post edited by Robinson on
  • FishtalesFishtales Posts: 6,104

    The light and painting are from here https://www.daz3d.com/vaulted-hall-accessories. The bulb is a separate surface so I set it Emissive and added an IES Profile, I have hundreds of them so finding one took a while. The wall is just a Primitive Plane. It all worked without having to change the geometry.

  • AnimAnim Posts: 241

    @Robinson,

    if you are still trying out I would also suggest to have a look into IES profiles like Fishtales mentioned them. They are benfitial for work like yours.

    IES profiles are descriptions of the light characteristics of real world lights. Many companies provide those profiles for their products. One resource to find IES profiles is: https://ieslibrary.com (site could be slow sometimes) but google etc. will find many other sources.

    If a 3D software supports those profiles a user can utilize them to shape the software lights. The goal is to achiever a more realistic (or just better looking) lighting. Luckily Daz Studio supports IES for mesh lights as well as standard lights.

    To preview an IES profile before loading it into Studio there is a nice free tool called IESviewer which can be downloaded from http://photometricviewer.com

    PLEASE NOTE:

    The IES profiles use an internal coordinate system which means there is an up and down info encoded. This is especially relevant if we want to use a profile with a flat plane. The plane primitive needs to be created with "Primary Axis - Z negative" (that worked for me).

    In Studio the profile of choice goes into the "Emission Profile" parameter of the respective surface.

    And then it is time for the usual adjust values and test render smiley

     

    IESviewer.png
    1328 x 1016 - 486K
    Primary-Axis.png
    273 x 335 - 26K
    Primary-Axis2.png
    665 x 478 - 57K
    scene-setup.jpg
    1173 x 867 - 206K
  • AnimAnim Posts: 241
    edited February 2021

    Here is a render example:

    and here the scene without the bells and whistles:

    IES_2.jpg
    1200 x 1080 - 494K
    IES-scene.jpg
    818 x 736 - 62K
    Post edited by Anim on
  • RobinsonRobinson Posts: 751
    edited February 2021

    The plane primitive needs to be created with "Primary Axis - Z negative" (that worked for me).

     I don't know what you mean. I'm not using plane primitives, I'm assigning a material to some surfaces in the scene geometry.  IES profiles don't work correctly (in most cases) when you do that.

    Post edited by Robinson on
  • FishtalesFishtales Posts: 6,104

    Robinson said:

    The plane primitive needs to be created with "Primary Axis - Z negative" (that worked for me).

     I don't know what you mean. I'm not using plane primitives, I'm assigning a material to some surfaces in the scene geometry.  IES profiles don't work correctly (in most cases) when you do that.

    This is what I mentioned in my previous post. The surface normals of geometry for the surface have to be pointing in the right direction or the IES Profile wont work as intended. There was a wall light/street light in the store with an IES Profile already loaded that shone in the wrong direction, to the right instead of down, which had the normals facing the wrong way and had to be fixed. I did it myself by using the Geometry tool I think, it was a while ago so I can't remember exactly :)

  • RobinsonRobinson Posts: 751
    edited February 2021
    This is what I mentioned in my previous post. The surface normals of geometry for the surface have to be pointing in the right direction or the IES Profile wont work as intended. There was a wall light/street light in the store with an IES Profile already loaded that shone in the wrong direction, to the right instead of down, which had the normals facing the wrong way and had to be fixed. I did it myself by using the Geometry tool I think, it was a while ago so I can't remember exactly :)

    Sure, of course they are.  That's one of the great things about sketchup is a single surface will appear triangulated if the vertices aren't coplanar, and if they're pointing "away" from the viewpoint they appear with a blueish tint.  The issue is more subtle I think.  For example, I applied BEGA 2675 (from here) IES profile to my light material, with the following result:

    As you can see, the lighting is skewed to the right.  You would expect that simply choosing the first three vertices on the surface, assuming they're coplanar, would be enough to generate a basis for transforming the profile.  This is not the first time I've had trouble with IES profiles on surfaces.

    Note that normals don't have a helicity, so it's not clear from looking at the above what's "wrong" with the geometry (the geometry is fine, there's something wrong with the algorithm).

    Post edited by Robinson on
  • RobinsonRobinson Posts: 751

    Hmmmm, now I look at the geometry, I see the obj exporter has done some really weird tessellation on the light surface.  I expect that's the trouble...

     

  • FishtalesFishtales Posts: 6,104
    edited February 2021

    That Profile is for a pendant light.https://www.bega.com/en/search/?query=51010.4K3.

    This is the prop I used with the IES Profile you used. It isn't a good profile for that light but it isn't pointing to the left.

    Click on image for full size.

    picture-light-copyright-2.jpg
    1000 x 1500 - 469K
    Post edited by Fishtales on
  • RobinsonRobinson Posts: 751
    This is the prop I used with the IES Profile you used. It isn't a good profile for that light but it isn't pointing to the left.

    Click on image for full size.

    Yes, I'm remodelling the light.  There's something wrong with it.

  • SpaciousSpacious Posts: 481

    You're absolutely right about sketchup and the weird geometry sometimes.  Try running your object through this https://github.com/wjakob/instant-meshes .  I forget who to thank, but i found it on a forum thread here recently.  It will clean up your sketchup geometry and convert it to quads which will work better here in DAZ.

  • RobinsonRobinson Posts: 751
    edited February 2021

    Right, I remodelled the lampshade and I'm 100% certain the actual light surface is a single quad.  It comes in through the obj importer as two triangles however (checked with the geometry editor in Daz).  Anyway the end result is the same - it veers to the right.  Looking closer at the actual bulb (the two triangles), the effect is kind-of odd.

     

    Post edited by Robinson on
  • SpaciousSpacious Posts: 481

    It's not the obj importer thats doing that.  Sketchup just does that to pretty much any rectangular surface.  It's related to the way it also insists on closing everything up automatically and not really leaving wide open empty spaces inside objects.  Like you have to go back and delete planes that you never put there, but you can never get them all because it just keeps making more.  It's also related to how they achieved such an easy to learn, fun modeler that can also create really complex and amzing things.  Like everything about it is pretty much completely different than other programs, right?

    The tool I linked to will most likely make the model you already made work perfectly.

    Alternately just model the lamp hardware and use a DAZ primitive for the bulb.

  • AnimAnim Posts: 241
    edited February 2021

    Robinson said:

     I don't know what you mean. I'm not using plane primitives, I'm assigning a material to some surfaces in the scene geometry.  IES profiles don't work correctly (in most cases) when you do that.

    The z-negative rule is valid for DAZ primitives as well as imported geometry. According to my experiments the light geometry must be facing the z negative axis in order to be useful for IES profiles. So, if you import your light object take care that it faces the direction like shown in the screenshot. Once you got it in like this you can then place, rotate it as you like. Important is only that its initial direction is z-negative.

    IES_Z-minus-1.jpg
    1024 x 896 - 69K
    Primary-Axis3.png
    970 x 905 - 193K
    IES_Z-minus-2.jpg
    818 x 736 - 103K
    IES_Geo.jpg
    784 x 705 - 148K
    Post edited by Anim on
  • RobinsonRobinson Posts: 751
    The z-negative rule is valid for DAZ primitives as well as imported geometry. According to my experiments the light geometry must be facing the z negative axis in order to be useful for IES profiles. So, if you import your light object take care that it faces the direction like shown in the screenshot. Once you got it in like this you can then place, rotate it as you like. Important is only that its initial direction is z-negative.

    I have to say, this requirement seems to me to be somewhat absurd.

  • AnimAnim Posts: 241

    Absurd? Well, I dare to say that's sometimes the nature of the 3d beast. But anyway, with this information IES profiles are usable with planes.

    Just found something in a shader file:

    ]] = let {<br /> &nbsp;&nbsp;&nbsp; edf emission = df::measured_edf(<br /> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; profile: profile,<br /> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; global_distribution: true,<br /> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; global_frame: float3x3(float3(1,0,0), float3(0,1,0), float3(0,0,1))<br /> &nbsp;&nbsp;&nbsp; ); <span style="color:#0000FF">// orientation set to z (neuray area light geometry is oriented to -z</span>, but light profiles typically emit into z direction)

    Definitiion of global_frame in the MDL spec:

    global_frame:
    Orthonormal coordinate system that defines the orientation of the lightdistribution with respect to the object space. In other words, multiplyinga direction in the coordinate frame of the light distribution with this matrixtransforms it into object space.

    Seems so global_frame is setting the coordinate axis. A shader expert might be able to write a shader where this is a user controllable parameter - unfortunately I am not a shader expert sad

     

Sign In or Register to comment.