Blender QLE (Quick Lighting Environment) – Free Addon

I’m new to Python, but I’ve made my first Blender addon.

It’s called Blender-QLE (Quick Lighting Environment), and it drops three area lights into a new collection in a scene. You can add/remove the collection as many times as you like.

Download Blender QLE v1.5.5

Github repo

I hacked it together from what I’ve gleaned from the built-in templates, YouTube tutorials, and threads on Stack Exchange, but I’m sure it could be improved. :soap:

I’d love to get some feedback, especially in regard to a bug I can’t seem to get a handle on: If I manually delete one of the lights, then it breaks the add/remove collection function.

I’m thinking that I might need to purge all three area lights from the file before re-adding the collection, or maybe I just need to move the existing objects back to the scene and reconnect them. Or maybe it’s an issue with how I’m instancing the objects in the first place? As I said, I’m new to Python and coding Blender, so perhaps I’m missing something obvious.

Anyway, I’d love some feedback, and if anyone has any suggestions for improving or optimizing it, or an idea on how to fix the add/remove bug, I’d be grateful for your help.

9 Likes

That’s cool! What’s the difference with the built-in addon Tri-Lighting?

1 Like

Good point. I don’t consider this a replacement for Tri-Lighting, but I was regularly making a different lighting setup (similar to what I saw on Chris Prenninger’s Youtube), so I made this addon as a way to learn about using Python to manipulate Blender.

The main differences are:

  • The light intensity is much higher (300w vs 1.5w)
  • The shape of the lights are rectangular rather than square
  • The surface area is much larger
  • The color is set to “natural” light using a Blackbody node
  • They are constrained to a target, so moving (or animating) one target redirects all three lights.
  • They’re gathered in a Collection so showing/hiding them is one-click
  • One button click to clear the setup

I think Tri-Lighting positions the lights better, so I might eventually adopt those coords. :shushing_face:

4 Likes

Nice, thanks for sharing.

If you select one or more objects before adding the built-in Tri-Lighting lights, the lights will be targeted at the object selection with a TrackTo constraint.

Maybe you could add an option to QLE for a procedural softbox gradient texture, so the lights will not be unrealistically harsh in reflections.

It would also be great if you could select a light, then activate a function to click on an object and have the light positioned in a straight line towards the clicked spot, keeping the same distance.

Thanks.

3 Likes

Great to know, thanks! I like @Metin_Seven suggestions, if you want to consider them :wink:

1 Like

I hadn’t dug into Tri-Lighting, so I took another look, and it’s pretty great. I can learn a lot from the code.

For example, I’m thinking I can put the common light settings into a variable and reduce the number of lines of code.

Road not take, but looking at that script, I wonder if forking Tri-Lighting and adding my features might have been a better path. Anyway…

“Procedural softbox gradient texture” is a new thing to me. Sound worth learning about, so I’ll do some googling.

And click-targeting is also an interesting idea. Once again, I think Tri-Lighiting has some code that I might be able to adapt for the function.

Thanks for the suggestions. I appreciate the feedback. I’ll add them to the roadmap, but my current task at hand is figuring out how to fix the error when re-adding a setup after deleting a single light.

2 Likes

Version 1.5.3

I found an obvious mistake in the code: Clear Environment would also delete any objects already selected in scene. :man_facepalming:

  • Now it only deletes QLE objects, and also does an orphans_purge() to remove deleted objects from file
  • Also, miscellaneous code cleanup, slimming, and function-izing

Github: Blender QLE 1.5.3

Gumroad (Free): Blender QLE (Quick Lighting Environment) v1.5.3

I’m still dealing with the bug that hits when you manually delete a light and click Add Environment again.

Frustrating, but I see now that its an issue with how I’m creating collections. It works fine on a fresh scene, but if any of the previous objects exist, it errors out.

Still looking for help with that if anyone has any ideas

1 Like

Updated to v1.5.4 (bug fixes)

2 Likes

Updated to v1.5.5

  • Fixed error if scene.world.name is not named “World”
  • Creates new World named “QLE World” and swaps it with existing World on Add/Delete
2 Likes

Updated to 1.6.0

It’s been a while since I touched this add-on, so I gave it some holiday love.

  • Added new Light Area_Back
  • Set Area_Left blackbody to 3800 (orange tint)
  • Set Area_Right blackbody to 8800 (blue tint)
  • Adjusted light positions
  • Added Backdrop object to scene
  • Bugfixes and tweaks
4 Likes

Updated to 1.6.1

  • Bugfix Clear Collection
3 Likes

Blender QLE Updated to 1.6.2

1.6.2

  • Change QLE World, Area Fill, and Area Back blackbody from 5800 to 5454 (equal energy)
  • Change QLE World strength from 0 to 0.25
  • Change Backdrop color to #808080 (neutral gray)
  • Adjust light positions
3 Likes

Blender QLE Updated to 1.6.3

1.6.3

  • Change Area_Fill light shape to DISK and location Z to 8
  • Change Area_Left and Area_Right light dimensions to 2 x 6
  • Change Backdrop roughness to 1
3 Likes

Blender QLE Updated to 1.6.4

1.6.4

  • Bugfix: If you launch Blender and open a file with an existing QLE collection, deleting the collection sets the World to null, and causes an error when adding the collection again
5 Likes