8 Questions with images and two files for any Eevee Master Race lurking here

Question 1:
Under Eevee Render Setting, under Film, there is Alpha: Sky/Transparent.
What does it do ? Choose Transparent didn’t set the background as transparent so I am a little confused :slight_smile:

Question 2:
Under Shadows, there is Cube Size and Cascade Size, I have decided to set them both to the same resolution as I am confused as to why there are two type of shadow resolution, will that make the shadows from all light types consistent ? Consistent is what I want.

Question 3:
Under the Indirect Lighting Tab, I set the Diffuse Bounces to 15 [Since it is a one time bake, I figure why not for fun and laughter]
In the Unity game engine, only object marked as static [non-moving] get affected by the pre-calculated GI.
Since there is no such labeling system in Eevee, after the baking is done, what object can still be moved and still look correct ?
or any object moved = have to re-bake every freaking time ?

Question 4:
Under the Indirect Lighting Tab, What is Cubemap Size ?
Is it ok to set it to 1024px ?

Question 5:
Under the Indirect Lighting Tab, What is Diffuse Occlusion Size and why is it only 32px ?

Question 6:
Area Lights previous set as Portal to “help” cycles should be removed when using Eevee since Eevee doesn’t support it and also it has the Irradiance Volume which kinda acts as a Portal right ?

Question 7:
When I click Render->Render Image, why does the image looks slightly different [slightly, very very slightly, especially the contact shadows…] than the one I saw in the viewport even though I have set the viewport AND render samples the same ?

Question 8:
Eevee is so beautiful…so fast ! It is going to makes a lot of indie film makers dream finally come true, but…what’s up with that hard shadow ? Even increasing the blur in the light property by selecting the light itself doesn’t really blur it out by much.

Attached are two files, one Blender 2.79 Cycles and one Blender 2.8 Alpha Eevee.
Hopefully there is someone here that can tweak the Eevee file so that it matches more like Cycles’s shadow as what presently is is just wrong.
By studying your new file, we will be able to learn and understand.

Link to file:
https://mega.nz/#!nq4TzTzS!RTl8WeF7EYx5_5ieCCS9RAttBXu_Nl-1Zhth5J-iICY

Eevee is definitely going places ;p

Hello !

I’m testing Eevee a lot these days and I was missing some place to discuss these kind of things. Here you go :

Q1 : It should make the world background transparent, try with the default cube / scene.

Q2 : Cascaded shadow map is only for sun lamps, the idea is to have more defined shadows near the camera. As the sun lamp is for exterior / infinite space, it’s not used on other lamp types.
So size and cascade size are not related, it really depend on the type and amount of lamps your are using.

Q3 : Bounces = 15 , if it’s fun to you :wink: 3 bounce is already great, in cycles below 3 in most cases it makes no differences.
From what I understand , if you’re making animations it’s better to bake without moving objects so they get influenced by the environment but not the contrary. In your scene example , if you move away the blue wall the monkey will still get the blue color.

Q4 : It’s the size of the map of the Reflections probes, setting this value really depends on your scene settings and how sharp reflections you need.
https://vimeo.com/286042380 , on this test scene I use 4 Reflections Cube maps that are all along the corridor , and the resolution of 128px per CubeMaps is totally fine as I have mainly rough reflections.
So 1024 may be overkill in many cases, but it depends on how much optimized and memory-cost you want your scene to be.

Q5 : Diffuse Occlusion size is for irradiance volume, as it’s only about diffuse light it doesn’t need as detailed information as you need for reflections. In the same idea, in cycles you can use an HDRI of 256 or 512 px wide if you only need to light your scene, it won’t really make a difference for diffuse lighting. For clean/sharp reflections however you’ll obviously need a bigger HDRI.
I guess it’s 32px multiplied by the resolution, so by default it’s 444 * 32 = 2048px , and I also guess that’s in fact a 2048x2048 image size.

Q6 : Not exacly, Irradiance volumes are used to bake the global illumination. Portal lights in cycles help to speed up / reduce noise in interior scene by “porting” light from outside in the interior . As in eevee with irradiance volume you get an aproximated GI without noise and without extra calculations once it’s baked, you don’t really need the portal light trick anymore , as far as I understand.

Q7 : Can’t really tell , maybe at render time some values are cranked up, I’ve noticed that if you activate motion blur the viewport get downsampled. Or maybe it could be because of some other screen space based effects…

Q8 : The sad thing is that to get softer shadows ATM you need to lower the Cube Size, that work nicely but then it get’s difficult to mix sharp and soft shadows in the same scene. The best would be a per lamp cube size. Or being able to have soft shadows with a high cubemap size.

Room Test Eevee 2.blend (588.8 KB)
You need to bake indirect lighting, I’ve done so to reduce file size.

Finally , indeed with a bit of polish and given some time eevee can fit a large range of projects were fast render times are more important than the accuracy cycles provides. To me all the big features are there, but it’s still a bit limited by tiny stuff .
Things like this one : https://developer.blender.org/T56563
Only shadow lamps, some kind of motion blur ( motion vector pass ? ) , ID masks, being able to exclude objects from some lights or the contrary, and also bump maps that tends to get badly aliased ( unlike normal maps) …
All these little additions IMO will help a lot to use Eevee on a regular basis on professional projects . But it really depends on the cases. You can already do a lot .

Personally I like the approach in eevee were everything is cheated, this should lead to some nice flexibility. On the downside you need to tweak values a lot more to get a nice result. Anyway I enjoy a lot playing with it already.

1 Like

Please check your inbox.

Question 2:
“So size and cascade size are not related,”
According to you, Cube Size is for every other lights and Cascade Size is specifically for the Sun, they “could” be related when they erm…interact ? For example interior shot with Sun light coming into window.
I wish they didn’t break it into two parts, it is very confusing.

Question 3:
After more experimentation, I realize the GI is handle is very much like the Godot game engine which in my opinion is the correct way, it seems this is all from Unreal Engine 4’s code ? I saw in the andrew price interview that Ton have permission from the unreal guys to integrate it but I could be wrong.
GI Tech is voxel based, meaning the GI is “in the air” so to speak, the “volume” is the GI, as opposed to some game engine where the Color bleeding information is baked into the lightmap/texture map channel 2 of the mesh which will render it completely useless for moving objects of any kind.

Question 4: You use 4 reflection probes ?
By the way the scene is AMAZING REAL, it makes me cry that it is real time ! Does all four scale to embrace the entire scene or they are tiny little balls in their corner waiting for objects to sneak in so that they can cast their reflection data unto ? How big should the balls/cubes be ? Did you still turn on screen space reflection after doing that ?

Question 5:
So Cubemap size = reflection clarity/sharpness ?
and
Diffuse Occlusion = GI clarity/sharpness ?
What is that cubemap Display size and irradiance display size thingy ? It seems to do nothing and also if it is mainly for viewport display, we can already visually scale it like anything else so what is it ?

I notice from the file you edited that setting the shadow to VSM or ESM RADICALLY change the darkness of the shadow, what why ?

Sorry for retard questions, learning and grateful that you are sharing.

Hum, it won’t break when they interact. Maybe you should read more about shadow maps to better understand what’s going on. Regular shadow maps are like a texture projected from the light to simulate shadows. With soft shadows you don’t really need a big texture for that because the texture will be blurred.
But If you have a broad space to cover with one lamp, then you need a bigger texture size or you’ll get a pixelated shadow. In the case of a sun lamp this get complicated because they cover a broad space unlike spots or point lamps. So another approach is needed to avoid using too big shadow maps. Also you don’t need them to be as detailed when they are far from the camera. So the trick is to use a bigger map near camera, and less detailed ones far from it…
I hope that this is clear, it’s not easy to explain.
In the end, as long as regular shadows maps looks correct and sun’s shadows looks correct, even if they don’t have the same resolution it should be fine.

Q3 : yes I don’t know how that works in Godot, but in eevee it’s not baked as a texture into the mesh. And it work as you described.

Q4 : What I’ve done is surely not accurate, but in this case I don’t need precise reflections, just something that kind of work . I’ve tried to use only screen space reflection but it create artifacts and the reflections were changing too much. Also tiny reflective objects where flickering. In the end I used both cubemaps and SSR, and a planar probe for the ground.


This is how they are setup, I made them overlap so they cover everything. Maybe the best would have been to put something broad and inaccurate as I did to cover everything, and add more targeted ones near very reflective objects where the reflection look bad or you need more accuracy.

Q5 : About CubeMaps size : I’ve put a reflective sphere in my scene to look how reflections behave.


A : Cubemap size = 64 / roughness 0 , the reflections looks pixelated.
B : CM = 64 / roughness 0.4 , we can still see little artefacts , but I think in my case it can work ok.
C : CM = 2048px , roughness 0 , the map is bigger so reflections gets more defined at cost of longer bake time and more memory used.
D : CM = 2048 , roughness 0.4 , it’s a bit better than the B version but in my case it’s really not needed as objects are far from the camera and don’t have sharp reflections .
Finally in my case a 128px CubeMap size was enough. Note that with 64px it takes 1.7Mb in memory and it goes to 672Mb when I switched to 2048px (because I’ve got several cubemaps) .

About diffuse occlusion size it’s the same principle, I haven’t tested different size yet , maybe in some extreme cases with a lot of different colored elements it can be worth to crank up the default value.

And as you guessed , display size is only for inspection / debug purpose in the viewport , it’s in fact just like the reflective sphere I put in my scene.

For VSM vs ESM , it’s just different algorithm to calculate the shadows. I don’t know the difference between them, I tend to prefer VSM. Unlike with cycles, eevee is all about cheating and approximation so 2 algorithm can lead to different results and aren’t physically correct. I guess we need to wait for blender documentation to be updated or find more information about these algorithm and why one is better than the other.

Keep in mind that all this stuff is quite new to me so don’t take all things I’m saying for granted.

If you haven’t already you can look at these videos : https://www.youtube.com/watch?v=9QX2t8sE3M8&list=PLSsxOTOiFVReGWp7KibLz1t57kOnXe714&index=9
It was made along eevee development and can help understand each feature better !

Cheers,

1 Like

So much clarity from your responses, you are definitely Eevee master race ;p

Question 1:
I see from your image that your reflection probes are overlapping, how should it overlap since the reflection probe have an inner layer and outer layer.
Should only the outer layer overlap as a sort of “transition zone” ?
If yes then ok, I get the two different bounding boxs for a single reflection probe now, but if one can ALSO overlap the inner most bounding box then what is the point of a second bounding box ? Just to confuse ?

Question 2:
The cube map tells the floor how to reflect.
The screen space reflection tells the floor how to reflect.
Now after adding a plane reflection and put it on the floor, it tells the floor how to reflect.

What is the floor going to do ? Toss a coin and choose ? Multiple them together using Screen ? or Add ? or What the hell is going on ? Which takes priority ? What percentage ?

Question 3:
I simply don’t know how to use the Plane reflection on the floor, it just looks like a perfect mirror and I have to raise it “just above” the ground geometry for it to be visible at all, and it just looks like someone placed a mirror on the floor, what would be the point of that ? Or maybe to be more blunt, how did you even get that to make sense ?

Thanks !

Couldn’t get Eevee to even remotely match Cycles in the Chrome department.
Tried Reflection Cube/Sphere and it just make things worst [You try it and let me know !] so I just push Screen Space Reflection to the Max with Maximum thickness [I have no idea what the thickness means…thickness where ? Thickness what ?..What thickness ? All I know is the more I increase the thickness of the mythical magical screen space reflection property, the more the reflection matches the cycles version.]

Attached is the file:
https://mega.nz/#!e24khQwZ!KlMyfUEzFwif6vNoO5BPAFoGp4l-Mg8I4bZ1d8RmMXg

Give it a try and let me know sozap ;-p

Q1 : I’ve overlapped mainly the outer layer. It’s a kind of fade or transition zone as you said. So reflections out of the probe disappear smoothly , you can overlap the inner bounding box too, or have a small punctual probe inside of a big one. At rendertime the most appropriate probe will be picked with a smooth transition using the outer box.

Q2 : it will pick the best probe using the influence as said in Q1, for the SSR it will fill the gaps and add an extra layer of reflections, like when objects are self reflecting. It won’t use the screen or add mode , just mix / alpha over.

Q3 : The perfect mirror is just the “data” showing how the reflection look like at 100% , at rendertime it should work better than with other probes. You can look here to understand better : https://youtu.be/zhJBI9gJokg?t=2m17s

For your test with maximum reflections, Maybe try to put some planar probes on each walls. You can use SSR as you’ve done, but if you plan to animate you’ll have some issue in reflections when something disapear from the screen, Or in this example with sharp reflections you won’t see the back of suzanne in the walls.
Thickness is how the reflections are extended to fill these missing gaps, try to put 0 roughness in your scene and play with the settings.

Keep in mind that Cycles give accurate results at the cost of rendertime, so you get perfect shadows, perfect reflections , perfect light behaviour without setting anything.
Eevee is all about cheat and approximation to get near realtime. Generally this is working fine (as in videogames) but it as many cornercases. Perfect reflections are one of them. It work fine in many situations because you won’t look at how perfect reflection are in an average render. You just get the impression they work correctly.
But if you start to do something like a walk trough a reflecting maze, indeed you’ll see many artifacts and strange behavior.
Cycles and Eevee are 2 very different approach to rendering, so it won’t be a 100% match in every situations, if that was the case why would there be a need to keep cycles ? All that said , knowing what you’re doing you can still get very nice results in both. Eevee need more tweak and knowledge on how it approximate so you don’t get too many surprises.

I just saw the video [Is that you ?]
I STILL don’t get the point of the height thickness of that plane reflection thing that you can set.
Is it trying to indicate the plane will reflect whatever that is within the thickness ? It seems not to be so visually though so…

Attached is another file I put together quickly, notice that moving the reflection plane OR the sphere reflection reflection probe does NOT change the reflection in anyway [I turned off Screen Space Reflection to see the Reflection Plane and or Sphere Reflection probe in action], what did I do wrong ? Is there a place I must click to “attached” these two probes to the scene ?

GI Probe works fine, why these two reflection probe doesn’t work ?

Attached File:
https://mega.nz/#!bjAVEAYb!fRdR1KEWIGU-nsPMWiyk9CP6uIOiuvmhdeKwlQdVPiM

Ok, after some experimentation, it seems, the reflection anal probe and spherical probe will only work if the Irradiance Voxel probe is present.

WHY to the following:
The size of the reflection probe will exaggerate or the other way the size of the surrounding objects and yet it is also that size that determines which object is within it’s sphere of influence to “display” what the probe contains…
Why couldn’t there be two settings ? One to set the size of the reflection probe itself to “control” the size of the reflection so that an apple doesn’t look like its ten storey high, and another to set the size of the inclusion [the objects which will project what the probe receives.]
It seems from MANY video tutorials that the spherical reflection probe indeed have two separate bounds, influence AND show data that shows the actual size of the probe itself which IS good, but the latest built that I have does NOT have the show data checkbox for the Spherical light probe please confirm.

Ok after playing around for hours, I have determined that the reflections from the cube/spherical map is just completely wrong anyway [the most offending part is the wrong reflection scale, meaning to make the wall catch the data on the reflection spherical probe, the probe itself needs to be as big as the surrounding wall, and yet, scaling it that size means a reflection of an apple will look like it is a GIANT apple because there is no way to separate the probe size from the sphere of inclusion…this is bad.] so to achieve maximum realism, only use screen space reflection and planar/floor reflection probe.


And also take note reflections from screen space will be blurred via the roughness setting in material HOWEVER reflections from planar probe will NOT be affected by roughness settings in material, they will simply be faded in or out, NOT blurred.

Hum, sorry it’s getting late, I’ll answer as much as I can and I’ll make something more elaborate later.

Nop, it’s another long time blender user !

No, it’s aera of influence. What the probe see is controled by Clipping value start and end.
Radius and Falloff is a zone where objects gets probe’s reflection once they are in.

Yes I’ve just tried that and same result, sound like a bug , I also don’t get the “data” checkbox to display the reflective sphere in the viewport. Sound like another bug to me.

I’ve played a bit, the size of the probe doesn’t seem to influence reflection’s size, but the position of the probe may be.

Indeed, these inacurracies shoudn’t be too noticeable, at least in many eevee demos you can’t tell that reflections are wrong, but that should be the case.