Feature suggestion: sun visualisation

I have a feature suggestion.

I love that you can now customise the “Light Rotation” in visualisation, however I wonder if you could extend that to include “Light Height”, or even better a system to simulate sun movement given your location and time of year?

Would others like to see this?

Yes! That would be great.Coming from Rhino (as well as having been a lighting engineer in another life), I’m used to having perhaps too much commands and options, hehe.

Well, here are a few ideas I have about light in general:

• Specifying light type (omnidirectional, directional, conical, spherical, “from view”, etc.) is a must-have!
• Intensity, hue, saturation, black/white point, etc. is not only for Photoshop or Lightroom users!
• Obvious: natural (including what some insects and animals emit, not sun only) lighting or artificial lighting? Presets like sun, lightbulb, bonfire, candlelight, crystalfly (animal/insect) could help, but they first have to be defined.
• Light orientation: think of any light source like any other object, that is having a sphere core (it’s not physically exact, but I won’t develop) moving in space with the same XYZ axises we know.
• Number and type of light sources.

That’s a quick tour.

What I would like to point out is that any light could be considered as being a sphere radiating everywhere around (omnidirectional), but in order to achieve some specific lighting type, combining the core lighting sphere and obstructing the path of light where we do not want it. I’m using an old “orb light” trick here. It’s not about where it goes, but about where it doesn’t. Reverse engineering the way we think about light can’t harm.

Plus, if you think beyond obstructing, you can create “obstructing patterns and structures”… I would like to show you with some custom environment, but one of the best ways of thinking of all of the above would be to ask yourselves what happens when you put a light bulb into a colander (strainer, sieve, you get the idea)…
I once had to create some custom lighting with only one thing to do: “use any closed geometric shape, drill holes of different shapes, sizes, diameters in it, and put an omnidirectional light in. Next, label it as being an object like any other one”. That’s quite overkill, but it works wonders.
Sorry for the lengthy reply. I am not much into words in a thread, rather into real-life practice.

Our first source of light is a star, hence my emphasis on light being omnidirectional and spherical (plus, we only see the part of the sun we’re facing. The other side(s) are hidden/ obstructed/ dark for us. We only see a part of the sun’s light, but that’s no news.

My go-to system is made of two different objects, one being the model and the other being the light source. Their relationship in terms of height, angle, way of facing each other define the outcome.

It’s only my belief, but a realistic and user-friendly lighting system would be made according to the relationship between two objects. Yup. The lighting source hasn’t more importance than the object it lightens (the opposite being true). Both the object and the light source have properties making an end result. You can even use Booleans with lights!

I’m developing a bit more since a light ray is far from being a simple thing. When it hits an object, the object reacts by making all or part of the ray “bounce back”. This reflected ray may have been reflected any number of times before hitting our previously mentioned object or not have been reflected at all, and every object or surface it has “bounced on”. Now, those objects and surfaces may or may not absorb the light ray (partly, entirely, or not at all)… and that’s for a single light ray. Imagine the ripple effects of billions of rays!
There’s one thing I need to mention, but I trust you know that light intensity (and other properties) diminish proportional to the distance. Also, is it air, oil, gas, water this light ray flies through? Parameters, parameters galore.

Apologies for the bonus headache. I’m thinking about all of this very loud :slight_smile:

Next up: using prisms for lighting? It’s a natural phenomenon (prisms are everywhere, we’re not well aware of it) and if we want true-as-life renders, it’s something we can’t disregard. I’m not making it all much more complex than it is. Light is a fascinating topic, and a thorny one too!

Enough words, time to create! Have fun everyone!

1 Like

Awesome addition Loki.

Would anyone else like to see a virtual sun in visualisation, to help predict light and shadows in a house for example?

1 Like

Glad you liked it!

I had to write all of this… because half-baked stuff is not my thing :slight_smile:
However, I would not sound like a “teacher”. Knowledge is power, sure… and no matter how powerful, it’s nothing if it’s kept secret. Sharing is as important as learning.

What I call “Artificial Sun Projection” is already in the works (still WIP, since I’m working solo there) and should be available as an universal plug-in soon, but it would be better as an integrated system functionality, that is “software-bound”.

Emphasis on ease of use is not only a lot more comfy, but also avoids having to switch back and forth between two, three or more apps. Maintaining a smooth workflow is necessary.

Ben, I still have a lot of stuff to share, but it’s going to clutter this thread. Would you like to go on? If yes, I think it’s best if we move to private messaging. Seems like we have to develop, each in our own way, and synthesize the whole.

What I’d like to tackle is the “quantum photodynamic” aspect of sun lighting. Out of our earthly, Euclidean world, what happens (beyond earth) is radically different. How a quantum system morphs into another one is impacting light in many ways…

Once again, I’m not boasting (disclaimer big time)) It’s only sharing decades worth of study and practice.
Knowledge kept for myself is worth nothing, and I trust you already know about much of what I’m thinking and writing about. Before moving further, shall we discuss and focus on what’s going to be useful right now for Shapr3D ?

I’m sure we can contribute a lot. Let’s do it, then.

Oh, a last thing: sun lighting evolving in real-time is used a lot in some video games, and the algorithms are not awfully difficult to implement. However, copy, reverse-engineering and so on are risky business. What I’d suggest is to get inspiration from graphical powerhouses like Unreal Engine 4. There’s a lot of C++ involved, but… merging part of UE4 and part of Shapr3D is not a problem.

Whew. Time to move to private messaging!

I provided a simple suggested MVP for this over here: