Wish: Displaymode shadow density, not only color

Hi Jarek,

Yes, your post clearly proofs that Rhino is not applying the shadow past in multiply mode, instead it is using the shadows past as a mask, why? that doesn’t makes any sense to an user like me, with no understanding of programming or any knowledge about how the Rhino graphic engine works.

Why Rhino can’t just apply the shadow past as multiply, even if the shadow is not black. You can easily do that in Photoshop for any color

What is different in Rhino pipeline that this can not be achieved? I hope Jeff can clarify why all of this is happening and hopefully he can find a solution to this limitation and give us the expected results.

Thanks,
José

I think Jeff mentioned for one reason it would be limiting for users going after not realistic effect where brigh color shadow may look like a cool glow. I am all for that, the more customizations available, the better! I just never though much about how it’s done to accommodate all settings and how to approach the “shadow intensity” in the current scenario.
I can see how the non-realistic color shadows can be good for stylized-looking illustrations, but also OPs site plan image shows how black shadows with transparency would play better than just flat med-gray. We are after the shadow Goldilocks condition in Rhino :slight_smile:

I’m also interested in not realistic effect, I think the more flexible the tool the better for everyone. Maybe adding a check box next to the shadow colour indicating realistic and applying multiply mode then? don’t know… IMO the current behaviour is sacrificing to much, I think most users will benefit from the ability to modify the intensity and color of the shadow while still being a shadow, darker than the original.

Also, now that I remember, when Steve Baer announced that transparent hatches were coming to V7 I asked him If he could implement blend modes into hatches, just for the same reason we are talking now, to be able to create 2D shadows easily no matter how colourful your facades are. I made a quick illustration to explain the issue. I think the same applies here but in 3D.

I am all for even more settings and certainly having control over shadows blending mode, on top of transparency, would be very nice, but I would be afraid to ask for too many things at once. Intensity for starters…

Also I am not sure if your study is correct.
If your shadow is 100% black, then if you just make it 70% transparent, it will look the same no matter if you are using Normal or Multiply blending mode. This is only true for 100% black, other colors have different results between these modes:

1 Like

First of all, thank you all for putting so much effort into this topic!
A lot of interesting aspects were high lighted.

First of all, I must say I am with Jarek on this one, but I respect that those who like light pink shadows should be respected!:

So could Rhino have a toggle to choose how to handle the shadows?
Option one would be handel shadows as multiply and the other as overlay.
Both should have color option, but the intensity/opacity slider would affect it slightly differently.

I don’t think we need both options merged into one.

1 Like

I may have been approaching this discussion from the wrong direction…but that’s because I have been assuming that everyone here knows and understands that Rhino already has a “Shadow Intensity” setting… Given that assumption, I was coming at this “request” from a “Shadow Color” perspective, and that what was being asked had to do with modifying the shadow color in some way.

The concept of “shadow intensity” is considered a light property, and therefore, every light object in Rhino has a “Shadow intensity” slider (select a light object and go into Object Properties). This has been in Rhino for as long as I can remember.

That being said, changing a light’s shadow intensity impacts the shadow map, and thus the shadows it creates. So, forgetting about “color” for the moment, I’m assuming that slider gives you what you’re looking for ??? No? Do a simple test… Draw a box, place a directional or spot light so that the box casts a nice shadow onto the ground plane. Select the light, go to Object Properties, and start playing with the “Shadow intensity” slider, and note the changes in the viewport (note: this does work with colored shadows as well, but let’s not go there yet).

Given that, what is still missing?

Note @Jarek: That’s really the setting you keep eluding to with the Sun (which should have made me realize earlier that I was coming at this from the wrong direction, but I was being thick). The Sun UI doesn’t provide such a slider, but internally the Sun is just a Rhino Directional Light object, which contains all the same properties as a normal light, including “Shadow intensity”.

-J

Hi Jeff, thanks - looks like we are getting somewhere with understanding what we are after and what needs some improvement still.

A bit of background info - we use Sun for shadows and as primarily light source (along with Skylight) about 99% of the time. So while I was aware of the additional settings other Rhino lights have, I did not make a connection since we rarely if ever have models with multiple Rhino lights, and not just Sun.
So the request may boil down to fine-tuning a few things that are already in Rhino but not exposed to users in UI. And a possible cherry on top:

  1. After years of asking for it, in WIP we finally got the Sun Intensity setting which is a much needed improvement. That’s great. But we also need the same Shadow Intensity setting for Sun (just like you noted the script does, but with proper UI exposed)

  2. Skylight could also use the same Shadow Intensity setting. In this case I would argue it should be allowed to go past 100% (or 1) - in many cases the skylight shadows are too blown out on bright scenes, so values above 1 could help to remedy that problem

  3. The Lights panel is missing the Shadow Intensity parameter, which makes it less discoverable. Can this be added there, too, instead of having to go and select light-by-light? Sun and Skylight intensity and shadow intensity should be there, too.

  4. Lastly, I think the original wish for “Shadow Intensity” as a global display mode parameter would be handy as well. It will control the total combined shadow map intensity regardless of individual light settings. Kind of global override which is quick to access and gives another layer of control.

Seems like it is all in place in Rhino but not exposed to UI. Hope it can all come together.

–jarek

There is an “Intensity” setting in TestSSAOOptions that does what you’re talking about…and it definitely goes past 1.0 (100%)…in fact, I believe the default is 250% (2.5)… But again, no UI for that specific setting.

-J

1 Like

Indeed! This testcommand is a gem. I don’t understand half of the parameters (just played with all of them) but my undestanding is the quality is connected to Shadow Quality (which hopefully is getting exposed separately from Cast Shadows in V7). So can we expose the “Intensity” of Skylight in Skyligth UI? Cool to have it as test command and I could live with that, but many users will never know it exists.

I may be getting carried away here, but here is another thing that always baffled me a bit with Skylight Shadows : the “Radius”/intensity changes depending on the camera lens - the wider lens, the smaller radius - so if you take the same model with Skylight and do DollyZoom, you will see the radius changes. Obviously this is not a desired effect from the user’s point of view. So now in the testcommand I see you have Radius Multiplier which addresses this exact issue. Did you consider making this parameter “smart” and auto-adjust with lens change so the look is consistent regardless of the lens?
( @DavidEranen in case you are interested in that aspect…)

1 Like

Most likely has to do with changes in the depth buffer… SSAO is very dependent on depth buffer values… Run ShowZBuffer, and then run your camera changes… My guess is that the depth results will vary as well…but that’s just a WAG atm…

-J

1 Like

Can’t tell just by looking at it, I’m sure there is a good reason.
Testing it seems like with higher radius multiplier the effect is more consistent and less dependent on lens length… OK I digress, don’t want to hijack this post. But it’s in the same genre of cool display features not exposed to us mortals… :slight_smile:

1 Like

By all means, carry on! I just wanted to raise the topic that we wish for more shadow control, and not just color. And you guys took this to a new level, so you can turn this thread in any direction you want. Better that it stays active and alive than a silent death :slight_smile:

To me shadow intensity is the most setting a display mode shadow can have since it is important for me to get light shadows with out adding more lights or ambient light to the scene (Mainly since Rhino doesn’t have a viewport exposure… hark hark, hint hint :wink: ). So keeping a scene with few lights is important to acchieve true material colors without over exposure.

2 Likes

Really interesting to see this thread from a user perspective.
When reading @Holo s request, I knew within seconds what he was looking for.
Whoever has used screenshots from Rhino as a quick substitute for a rendering and wanted to tweak the shadow intensity knows that his request is exactly on point.

1 Like

So why don’t the light properties work for you? Is it because that would also impact the final rendering and you really only want the viewport to change?

-J

1 Like

Ya, this was a bad test (sorry)… I map min and max values to 0.0 and 1.0 (black and white) for that command…so seeing any “changes” in depth isn’t going to happen… You really need a way to visualize raw depth values, which I can do here but it’s not something you can currently do on your end.

-J

Here I am after a simple displaymode with default light that ignores the scene lights.

Also the Sun shadows cannot be controlled, :slight_smile:

That’s a different issue…although it actually can be controlled doing something like Jarek does above…but I understand it needs to have UI somewhere…which again is a different issue and something Andy needs to address…as well as the Skylight.

-J

Well you asked… :smile:

But really, what I truly need is a displaymode that shows light shadows and true material colors with out having to tweak stuff in every Rhino file regardless of how lights are set up or how the environment is tweaked.

By the way… The default light in the display already has its shadow intensity scaled back…compare its shadow to a placed directional light… I think you’re the one who asked for that :wink:

-J

1 Like