Daz3d : Black eyes syndrom

Part

Member
Donor
Nov 14, 2016
225
2,908
I was on this problem since 2 or 3 days. I didn't understand why my renders had problems on the eyes of my characters. It only happens in big scenes.

You can see the problem there :
blackeyessyndrome.jpg

The eyes become more and more black if you far away from the grid.
In my big scenes, the grid is too small.

I think I can solve the problem making a bigger grid. Don't you think ? Do you have a solution ? How to make a bigger grid or plan ?
 

Rich

Old Fart
Modder
Donor
Respected User
Game Developer
Jun 25, 2017
2,566
7,382
Ran into EXACTLY this same problem just a few days ago. This is an iRay "feature" (meaning, "bug")

iRay begins to behave badly in cases where the item being rendered is too far away from the (0,0) (x,z) point. Doesn't have to be far - I think I ran into it when my character was at values of 800 or 1000. If the camera is far away from the figure, you never notice it. But a closeup where both the camera and the figure are well away from the origin - you're in trouble. (The "black circle around the eye" was the problem that jumped out at me, but all kinds of weird things can happen.)

If you shift your entire scene so that your figure is at global coordinates close to (x=0,z=0), the problem goes away.

I have a feeling iRay is having some problem with coordinate resolution or rounding or something, and, as a result, normals get messed up or something.
 
  • Like
Reactions: Xavster and Part

Part

Member
Donor
Nov 14, 2016
225
2,908
Ok, so, you experienced it too. Great (sorry for you), I thought that could be my Daz3D that is corrupt or someting like this andI didn't wan't to install it again.

I think there it matters with the grid or the ground.
Look at my renders, they have been shot at 1 meters difference. One of them is inside the grid, second outside. I'll investigate more and waiting for an update of Daz3D for my big scenes ;)

Thanks for your response.
 

MaxCarna

Member
Game Developer
Jun 13, 2017
383
442
Did you tried to alternate the environment between Dome and Scene, Scene only and Sun-sky? Changing the HDRI image?
The problem looks similar to what happen when you have a geometric Spot Light and you see the emitter behind a glass or through hair. Maybe the dome limit is interfering.

When you use the Sweet Home props, you have the characters at very distant positions, like xTranslate -1500 zTranslate 1400. The home alone is outside the grid, however I never had this problem.
 

Part

Member
Donor
Nov 14, 2016
225
2,908
Did you tried to alternate the environment between Dome and Scene, Scene only and Sun-sky? Changing the HDRI image?
I just tried Sun Sky only, Scene only, Dome, and Dome and Scene : same problem. Changing HDRI don't change anything.
 

Rich

Old Fart
Modder
Donor
Respected User
Game Developer
Jun 25, 2017
2,566
7,382
Once I was on the trail of this, I was able to reproduce it the same way @Part did - shift the camera and subject too far away from zero, and the rings appear. Didn't seem to have anything to do with the lighting in my case either. So all I did was shift the entire scene, and poof, no more rings.

I don't know whether the grid is sized to show the "safe area," or whether this is just a coincidence. Another effect I've noticed is that if you're too far from center, hair skullcaps that work perfectly near zero can start giving you artifacts in the forehead and such. Others on the Daz forum have reported other odd effects.

Bottom line - iRay has some issues with its calculations on objects that are a ways away from its origin. Details unknown, but the issue is definitely there. Also no idea if the newer version of iRay that's coming with 4.11 corrects this.
 
  • Like
Reactions: Part

random.person

Active Member
Aug 11, 2017
802
1,292
I think we can safely bet on this being one of your typical floating point arithmetic shenanigans with big numbers.
At some point some value has probably some very big exponent and thus the nearest value in that representation differs by quite the margin, thus impeding finer quantization.
They would have to implement some arbitrary precision arithmetic to deal with it if that's the case.
 

Part

Member
Donor
Nov 14, 2016
225
2,908
Once I was on the trail of this, I was able to reproduce it the same way @Part did - shift the camera and subject too far away from zero, and the rings appear. Didn't seem to have anything to do with the lighting in my case either. So all I did was shift the entire scene, and poof, no more rings.
I'm interesting in how do you move the entire scene, and characters, and objects together (to put the characters in the center for example) ? I didn't find any command in Daz3D to move the entire scene.
 

OhWee

Forum Fanatic
Modder
Game Developer
Jun 17, 2017
5,888
29,919
I'm interesting in how do you move the entire scene, and characters, and objects together (to put the characters in the center for example) ? I didn't find any command in Daz3D to move the entire scene.
There may be an easier way, but the way I move multiple objects at once is using the 'create > new group' option. You simply select everything you want to group together, then choose 'new group' under the 'create' menu. Then you can move everything in that group as one object, or adjust a group member individually (as you would normally).
 
  • Like
Reactions: Part

Part

Member
Donor
Nov 14, 2016
225
2,908
There may be an easier way, but the way I move multiple objects at once is using the 'create > new group' option. You simply select everything you want to group together, then choose 'new group' under the 'create' menu. Then you can move everything in that group as one object, or adjust a group member individually (as you would normally).
Perfect ! Thanks a lot, it's so simple that I didn't find it ;) Thanks.
 

Rich

Old Fart
Modder
Donor
Respected User
Game Developer
Jun 25, 2017
2,566
7,382
I'm interesting in how do you move the entire scene, and characters, and objects together (to put the characters in the center for example) ? I didn't find any command in Daz3D to move the entire scene.
I've run into this problem more than once, so I'm actually working on a script to do exactly this. (Figure out the global coordinates of an object and "center it")
 

Rich

Old Fart
Modder
Donor
Respected User
Game Developer
Jun 25, 2017
2,566
7,382
I think we can safely bet on this being one of your typical floating point arithmetic shenanigans with big numbers.
At some point some value has probably some very big exponent and thus the nearest value in that representation differs by quite the margin, thus impeding finer quantization.
They would have to implement some arbitrary precision arithmetic to deal with it if that's the case.
Yes, I suspect that this is the case. The odd thing is that the numbers don't have to be that big - in my case, I think the figure in question was only something like 10 meters away from "zero". Daz doesn't seem to have problems rendering scenes MUCH larger that that, so it's not like their math completely breaks down at that distance.

It may actually be something quirky inside the shader that is used for the sclera, (as opposed to a global iRay problem) since that seemed to be the only part affected. People (including me) say "it's an iRay bug" when, in fact, it might actually something Daz did.

Bottom line is that we know the work-around...
 

Xavster

Well-Known Member
Game Developer
Mar 27, 2018
1,249
7,625
Had this problem for a while and only just found the solution as above. Should have known that the solution would be on F95.(y)
 
  • Like
Reactions: Part

tk99

Active Member
Jun 3, 2019
507
583
Easy workaround without moving the whole scene closer to the 0/0/0

Change the refraction levels for the eyes.
 
  • Like
Reactions: Part

SnubbLR

Newbie
Game Developer
Sep 13, 2017
79
644
If changing render setting Instancing Optimization between SPEED <-> MEMORY, and moving the scene close to 0/0/0 both fail, a last option is to select both eyes in the surface tab and reduce Glossiness to 0%.

I hope this helps someone
 
Sep 16, 2019
519
1,983
Too far from 0,0 is definitely a thing. I created a null, placed it in the centre of the scene then used it as the parent and childed the whole scene to it. Set the parent null's X and Z to zero, booyah (y) . Worked for me so hopefully it will for you too.