SCORPION
|
|
« Reply #15 on: February 27, 2015, 01:36:33 AM » |
|
|
|
|
Logged
|
|
|
|
|
Crist-JRoger
|
|
« Reply #17 on: February 28, 2015, 12:52:58 PM » |
|
Hi! I tried sky-tracer, thank you very much. It faster than GI and more clean, light so realistic and it's very simple to tune. But there is some limits, when scene is open and need more distance, or increasing detail at the same time with reflections - a lot of black spots maxraysteps=300 maxraysteps=350
|
|
|
Logged
|
|
|
|
knighty
Fractal Iambus
Posts: 819
|
|
« Reply #18 on: March 01, 2015, 01:16:52 PM » |
|
Awesome renderers Syntopia! I particularly like the stratified sampler. Thank you.
|
|
|
Logged
|
|
|
|
eiffie
Guest
|
|
« Reply #19 on: March 01, 2015, 05:30:28 PM » |
|
Hey guys great render engines! The black dots are almost always the result of trying to normalize a zero length vector and getting NaN (for knighty's frag it happens in the normal function) so either recalc the normal with different deltas or just throw out that sample. For instance in knighty's code I did the following...
HitNormal=normal(blah blah); if(HitNormal!=HitNormal)HitNormal=vec3(0.0); //I think the rest of the code handles this fairly well.
|
|
|
Logged
|
|
|
|
Syntopia
|
|
« Reply #20 on: March 01, 2015, 05:51:09 PM » |
|
Yes, it is probably a NaN bug - but I cannot reproduce it on my machine. Even more weird, the attached scripts renders all pixel black for the included presets on my machine?
Christ-JRoger, do you also see these black dots when reflection = 0?
|
|
|
Logged
|
|
|
|
Syntopia
|
|
« Reply #21 on: March 01, 2015, 06:17:51 PM » |
|
Now I managed to run the attached frags. There was a weird bug in them: the 'Up' was not normalized (one component was larger than 1.0), which shouldn't be possible (Fragmentarium should correct this). The error was indeed in the normal calculation as Eiffie said. Replacing the last line with something like: vec3 normal(vec3 pos, float normalDistance) { normalDistance = max(normalDistance*0.5, 1.0e-7); vec3 e = vec3(0.0,normalDistance,0.0); vec3 n = vec3(DE(pos+e.yxx)-DE(pos-e.yxx), DE(pos+e.xyx)-DE(pos-e.xyx), DE(pos+e.xxy)-DE(pos-e.xxy)); n = normalize(n); return n==n ? n : vec3(0.0); }
should solve the problem. Probably when you are tracing where far away from the Fractal, the DE becomes effectively constant (a bounding radius for the rays could solve this). One 'problem' with the path tracer is that for these infinite scenes there might not be any light coming in. There is no ambient lighting in the model.
|
|
|
Logged
|
|
|
|
Crist-JRoger
|
|
« Reply #22 on: March 01, 2015, 06:30:11 PM » |
|
I replaced code. Strange, but when reflections=1 there is no black dots ) When value <1 it is. And when increasing RayDepth, black dots becomes more.
And I don't know what means "NaN"
|
|
|
Logged
|
|
|
|
DarkBeam
Global Moderator
Fractal Senior
Posts: 2512
Fragments of the fractal -like the tip of it
|
|
« Reply #23 on: March 01, 2015, 06:39:00 PM » |
|
|
|
|
Logged
|
No sweat, guardian of wisdom!
|
|
|
cKleinhuis
|
|
« Reply #24 on: March 01, 2015, 06:41:29 PM » |
|
hmm, when trying out the script from the second post "new-CR05" "Pseudokleinian03.frag" with the latest downloadable fragmentarium version, i just get a white screen, in progressive mode, the first pass of the progressive shows some pseudokleinian structures, but then it converges to a full white screen
|
|
|
Logged
|
---
divide and conquer - iterate and rule - chaos is No random!
|
|
|
Syntopia
|
|
« Reply #25 on: March 01, 2015, 06:52:51 PM » |
|
hmm, when trying out the script from the second post "new-CR05" "Pseudokleinian03.frag" with the latest downloadable fragmentarium version, i just get a white screen, in progressive mode, the first pass of the progressive shows some pseudokleinian structures, but then it converges to a full white screen I also experienced this (you probably also see a compile error in the console). I think line 88 in BufferShader1.0.1.frag should be: c+=BloomIntensity*pow(b.xyz,vec3(BloomPow));
|
|
|
Logged
|
|
|
|
eiffie
Guest
|
|
« Reply #26 on: March 01, 2015, 06:55:08 PM » |
|
@Syntopia "One 'problem' with the path tracer is that for these infinite scenes there might not be any light coming in. There is no ambient lighting in the model."
I haven't looked at your code yet but one thing I have found helpful with GI is to assume after X number of reflections you escape the scene and light with the background lighting.
It may seem counter intuitive but after that many bounces the lighting is usually minimal unless you have a material like glass (but much better to give it too much light than none at all). Maybe you do this already??
|
|
|
Logged
|
|
|
|
Crist-JRoger
|
|
« Reply #27 on: March 01, 2015, 06:59:05 PM » |
|
Syntopia, eiffie is this possible to better adapt IQ-clouds for DE-raytracer? Whether it is possible the that clouds gently wrap around an object and become part of the scene reacted to light, shadows, etc?
|
|
|
Logged
|
|
|
|
eiffie
Guest
|
|
« Reply #28 on: March 01, 2015, 07:09:15 PM » |
|
Yes it is possible but that kind of march gets very slow as you have to calculate the cloud density at small steps. One thing that could be done with these highly sampled scenes is to jitter the cloud density march and take just a few samples of cloud (per frame sample). lol Syntopia will hopefully understand that.
It is one of those requests that gets put last on the bucket list.
|
|
|
Logged
|
|
|
|
Crist-JRoger
|
|
« Reply #29 on: March 01, 2015, 07:22:29 PM » |
|
I'm not a programmer, so I'm sorry if it seems nonsense, but I thought that this can be done like with fog. Add something like this, as 'height based fog' in last modified DE.
|
|
|
Logged
|
|
|
|
|