diff options
author | Ton Roosendaal <ton@blender.org> | 2003-12-23 01:27:51 +0300 |
---|---|---|
committer | Ton Roosendaal <ton@blender.org> | 2003-12-23 01:27:51 +0300 |
commit | 454166026afd52e546716a7aa33821e86d2371af (patch) | |
tree | 094dc47e4f9520efbf91a6db632cf44032b1c285 /source/blender/blenloader | |
parent | 3df84b755f3b49f8d31355135a48444413af2914 (diff) |
- another fresnel improvement. :)
At last irc meeting, eeshlo pointed to an error in the code. It didn't
use the IOR value correctly. This has been solved. So how it works now:
- the IOR button value influences (very subtle) the fresnel effect.
Only for realism diehards.
- the Fresnel value (slider) now denotes the power in the function
rf + (1-rf) * (1-c)^5
where rf= rf = ((ior-1)/(ior+1))^2
and c the dot-product ray/normal.
- so, set the slider at '5' and you have real fresnel. Lower values
for interesting artistic effects.
- put back the forgotten code for gaussian corrected sampling during
antialising render. Normally, each sub-pixel sample in Blender counts
equally, and together make up the pixel color.
With 'Gauss' option set (F10 menu) each sub-pixel sample creates a small
weighted mask with variable size, which (can) affect neighbouring pixels
as well. The result is smoother edges, less sensitive for gamma, and
well suited to reduce motion-aliasing (when things move extreme slow).
This is result of *long* period of research in NeoGeo days, and based on
every scientific sampling/reconstructing theory we could find. Plus a
little bit of our selves. :)
- I should write once how blender constructs Jitter tables for sub-sampling.
this is a very nice method, and superior to normal block filter or random
jittering... time!
Diffstat (limited to 'source/blender/blenloader')
-rw-r--r-- | source/blender/blenloader/intern/readfile.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/source/blender/blenloader/intern/readfile.c b/source/blender/blenloader/intern/readfile.c index 068fca17726..f55d0fa78f7 100644 --- a/source/blender/blenloader/intern/readfile.c +++ b/source/blender/blenloader/intern/readfile.c @@ -3931,13 +3931,14 @@ static void do_versions(Main *main) } if(main->versionfile <= 231) { Material *ma= main->mat.first; + Scene *sce; while(ma) { if(ma->ang==0.0) { ma->ang= 1.0; ma->ray_depth= 2; ma->ray_depth_tra= 2; - ma->fresnel_tra= 1.0; - ma->fresnel_mir= 1.0; + ma->fresnel_tra= 0.0; + ma->fresnel_mir= 0.0; } else if(ma->ang<1.0) { // temporal, because of IOR & fresnel change ma-> ang= 1.0/ma->ang; @@ -3946,6 +3947,11 @@ static void do_versions(Main *main) } ma= ma->id.next; } + sce= main->scene.first; + while(sce) { + if(sce->r.gauss==0.0) sce->r.gauss= 1.0; + sce= sce->id.next; + } } /* don't forget to set version number in blender.c! */ } |