Author Topic: Masks in reflection/refraction playgound!  (Read 18592 times)

2020-05-30, 13:28:55
Reply #15

Alex Kondratev

  • Active Users
  • **
  • Posts: 6
    • View Profile
How can this be turned off globally in the whole scene? When there is a large amount of material in a complex scene, it is impossible to disable it all over the scene to get a "clean" mask. Is it possible to add this option to system settings or converter?

2020-06-02, 16:01:32
Reply #16

maru

  • Corona Team
  • Active Users
  • ****
  • Posts: 12711
  • Marcin
    • View Profile
How can this be turned off globally in the whole scene? When there is a large amount of material in a complex scene, it is impossible to disable it all over the scene to get a "clean" mask. Is it possible to add this option to system settings or converter?

Try the attached script.
Yes, we are planning to add this to the converter script.
Marcin Miodek | chaos-corona.com
3D Support Team Lead - Corona | contact us

2020-06-03, 11:22:57
Reply #17

Rhodesy

  • Active Users
  • **
  • Posts: 553
    • View Profile
Life saver with that script, thanks! Yes some sort of global control would be good. Or a way not to get the noise in the passes, if that is at all possible.

2020-06-03, 11:55:05
Reply #18

maru

  • Corona Team
  • Active Users
  • ****
  • Posts: 12711
  • Marcin
    • View Profile
We still do not know how people end up with all scene materials with the option enabled. If you are able to reproduce this behavior, please let us know.
So far it seems that it is related to opening older scenes and re-saving them. But like I said, no way to reproduce it on our end so far...
Marcin Miodek | chaos-corona.com
3D Support Team Lead - Corona | contact us

2020-06-03, 12:05:21
Reply #19

Rhodesy

  • Active Users
  • **
  • Posts: 553
    • View Profile
Hmm annecdotally from me. The noisy materials in this scene are new materials created with v6 alpha and the clean ones are old ones. I have run the script and that has fixed all my materials, thank you.

Any new material I am creating now with Alpha 15-05 seems to have it set to NEVER as intended so I'm not sure how this has happened as it wasnt actively changed by me to always - which is what it was set to before I ran the script. Perhaps it was accidentially changed in the previous build?
Hopefully its a passing glitch. Glad to know its intended to be off as default.

Thanks

2020-07-17, 14:04:23
Reply #20

GeorgeK

  • Corona Team
  • Active Users
  • ****
  • Posts: 838
  • George
    • View Profile
Hello all, we would love to hear your thoughts and receive some feedback regarding the changes in Masks/propagation for Corona version 6.

1) Should we include a Hidden option for CoronaMtl, that would hide the object in masks? (similar to version 5 "Visible/invisible to masks") It would then show the background "mask" instead. (Currently, this is not possible)

2) In a scenario where masks are propagated through an object and the background is being hit, should we show the object's mask or the background "mask"? (Currently, it shows the object A mask). This is in regard to both Corona Mtl and CoronaLight MTL. Although the current implementation can allow for separate control between masking elements (i.e. editing separate color range for reflection-refraction) it leads to issues when editing the background element. Example: https://corona-renderer.com/comparer/3ShyQ8

3) If the propagation is set to reflect/always (with both reflection/refraction level 0.0) and diffuse material is used, what should happen? (Currently, diffuse reflection is treated the same way as a specular reflection -> this leads to noise in masks, since diffuse reflection goes all over the place). Example of wire color mask for table surface between always/never: https://corona-renderer.com/comparer/73zQV7
George Karampelas | chaos-corona.com
Chaos Corona QA Specialist | contact us

2020-07-17, 16:45:23
Reply #21

maru

  • Corona Team
  • Active Users
  • ****
  • Posts: 12711
  • Marcin
    • View Profile
I reworded the questions a bit, hope it helps:

1) In V5 you can hide an object from masking render elements (make it invisible in masks and see objects behind it). In V6 this is not possible because this was replaced with mask propagation. Do you ever need the V5 behavior?

2) In masking render elements, should the environment visible through glass have black color or the glass object's mask color?

3) In V6, In masking render elements, with mask propagation on, diffuse objects are treated similar to 0 glossiness reflective objects. Should they be solid-colored like in V5? Is there a case where rendering diffuse objects like 0 glossiness reflective objects makes sense to you?

We would really appreciate your feedback, because this is one of the cases where something might make perfect sense from developer's point of view, but may not be expected by the users.
Marcin Miodek | chaos-corona.com
3D Support Team Lead - Corona | contact us

2020-07-23, 14:04:05
Reply #22

Frood

  • Active Users
  • **
  • Posts: 1903
    • View Profile
    • Rakete GmbH
The lack of feedback here is amazing. Maybe because it's a complex matter and hard to imagine all its consequences without actually using it in production instead of fooling around with test scenes. Tbh, I haven't played around much with mask propagation, Corona v6 generally (was hoping for some improvement relating to opacity handling which I would need most) but let's see:

1) I remember using the "visible to mask" checkbox repeatedly as some kind of last resort in some cases without being able to provide them. Misuse like alpha stencil seems to work in v6 as well (with propagate mask -> Always instead of invisible mask). So a tentative "no" here.

2) The consequentially correct result would be black. It's not the object we see in beauty, so why should we see its mask? It should be handled like alpha is treated in such a case.

3) The idea is tempting and may be somewhat realistic, but I vote less tentative for solid here. It may only lead to confusion - and to unusable masks due to that noise from what I've seen. Most puzzling result is the mask "mix" you get using high(er) glossiness reflection with low diffuse amount. No one will like or understand that I think. And rendering 120 passes for a usable mask may be far away from production reality.

I may be wrong with all above! :) Curious if others can contribute their thoughts,


Good Luck



Never underestimate the power of a well placed level one spell.

2020-07-23, 16:34:12
Reply #23

GeorgeK

  • Corona Team
  • Active Users
  • ****
  • Posts: 838
  • George
    • View Profile
The lack of feedback here is amazing. Maybe because it's a complex matter and hard to imagine all its consequences without actually using it in production instead of fooling around with test scenes. Tbh, I haven't played around much with mask propagation, Corona v6 generally (was hoping for some improvement relating to opacity handling which I would need most) but let's see:

1) I remember using the "visible to mask" checkbox repeatedly as some kind of last resort in some cases without being able to provide them. Misuse like alpha stencil seems to work in v6 as well (with propagate mask -> Always instead of invisible mask). So a tentative "no" here.

2) The consequentially correct result would be black. It's not the object we see in beauty, so why should we see its mask? It should be handled like alpha is treated in such a case.

3) The idea is tempting and may be somewhat realistic, but I vote less tentative for solid here. It may only lead to confusion - and to unusable masks due to that noise from what I've seen. Most puzzling result is the mask "mix" you get using high(er) glossiness reflection with low diffuse amount. No one will like or understand that I think. And rendering 120 passes for a usable mask may be far away from production reality.

I may be wrong with all above! :) Curious if others can contribute their thoughts,


Good Luck

Thank you Frood, feedback is logged.
George Karampelas | chaos-corona.com
Chaos Corona QA Specialist | contact us

2020-09-02, 23:54:48
Reply #24

cecofuli

  • Active Users
  • **
  • Posts: 1577
    • View Profile
    • www.francescolegrenzi.com
Hello,

I opened a ticket a few weeks ago, but I have never received answer.
 
I think something is wrong when Propagate masks is set to "Always". Look at the next image.
In v6.0 18 June, I was able to see the Corona logo on the 4th glass and also the Environment (green arrow).
In v6.0 FINAL, the Environment isn't displayed (good),  but also the Corona logo disappeared (red arrow).

Is it a bug or what?



« Last Edit: 2020-09-03, 00:28:37 by cecofuli »

2020-09-03, 09:37:57
Reply #25

GeorgeK

  • Corona Team
  • Active Users
  • ****
  • Posts: 838
  • George
    • View Profile
Hello,

I opened a ticket a few weeks ago, but I have never received answer.
 
I think something is wrong when Propagate masks is set to "Always". Look at the next image.
In v6.0 18 June, I was able to see the Corona logo on the 4th glass and also the Environment (green arrow).
In v6.0 FINAL, the Environment isn't displayed (good),  but also the Corona logo disappeared (red arrow).

Is it a bug or what?


Hey, I believe an answer was given by skype, but we will look into this further in case something was missed.

I will update you as soon as possible. Thanks!

(internal id=559670082)
George Karampelas | chaos-corona.com
Chaos Corona QA Specialist | contact us

2020-09-07, 15:10:35
Reply #26

VIZSET

  • Active Users
  • **
  • Posts: 33
    • View Profile
    • Behance
Hi! I can't already understand, is it possible to get reflection and refraction propagate masks together during one render? Do the masks have to overlap? (I hope no). I activate Always mode for glass, but it shows me masks only on refraction. I need to render it 2 times?
Thanks!
« Last Edit: 2020-09-07, 15:24:00 by adlkhkmlln »
More works: behance.net/vizset

2020-09-07, 15:16:52
Reply #27

cecofuli

  • Active Users
  • **
  • Posts: 1577
    • View Profile
    • www.francescolegrenzi.com
Eh eh eh ... good question ^__^

It was possible with v6.0 18 June, then, they changed something inside the code when "Always" is selected.
What they wrote in the help-desk and in the blog is not 100% correct, and they must update the text.

2020-09-07, 17:19:53
Reply #28

GeorgeK

  • Corona Team
  • Active Users
  • ****
  • Posts: 838
  • George
    • View Profile
Eh eh eh ... good question ^__^

It was possible with v6.0 18 June, then, they changed something inside the code when "Always" is selected.
What they wrote in the help-desk and in the blog is not 100% correct, and they must update the text.

Guilty for this, my apologies for not updating it earlier, we were in the process of updating some details. Please expect some minor edits here and there explaining the entire masking functionality better. You can find some of the updated details here: https://coronarenderer.freshdesk.com/support/solutions/articles/12000066916-how-to-use-masks-with-reflection-refraction

Hi! I can't already understand, is it possible to get reflection and refraction propagate masks together during one render? Do the masks have to overlap? (I hope no). I activate Always mode for glass, but it shows me masks only on refraction. I need to render it 2 times?
Thanks!

As cecofuli mentioned, due to the fact that we started treating the background functionality of masks differently, and the background hit is now being considered for the reflection/refraction of the mask, this leads to a limitation (of sorts) for the "always" state to take into account reflectivity or refraction based on parameter strength. In the future, we plan on having some crypto or multi-matte that will allow us to capture more masks per pixel.

In some cases, it is still possible to reflect and refract surrounding objects of your "always" material in its mask if both reflection and refraction values are closer together. https://corona-renderer.com/comparer/TZUjZr




George Karampelas | chaos-corona.com
Chaos Corona QA Specialist | contact us

2020-10-27, 10:48:58
Reply #29

Jpjapers

  • Active Users
  • **
  • Posts: 1644
    • View Profile
Does this technique work with non-glossy reflections?