diff options
author | Ton Roosendaal <ton@blender.org> | 2003-12-19 00:34:48 +0300 |
---|---|---|
committer | Ton Roosendaal <ton@blender.org> | 2003-12-19 00:34:48 +0300 |
commit | cb20f1cdb421ab4d5159dfb5b1549950752a7bf8 (patch) | |
tree | d2f60662d97ecab509ec01c653aec62f61791719 /source/blender/makesdna | |
parent | d1122ae91769a3985549abe96a649e09bbb1101d (diff) |
another trace commit
- implemented tracing of transparency for shadows. This is a material
option, in the new RayTrace panel.
it only traces color and alpha, not shading. So the results of some
transparant colored unlit faces can look odd. I will look onto that.
- changed fresnel formula (got hint from eeshlo!). this simplifies the UI,
now only one button needed. The fresnel value "should" be identical as
the refraction index, but that is booooring! So i added a special fresnel
refraction slider for both mirroring and transparency. By setting all 3
sliders equal, you get 'realism'.
- fresnel for transparancy works for Ztra rendering too. Same for transpa-
rent shadow. But then you need to set 'ray' on in F10 menu.
- uploaded new monkey_glass blend in download.blender.org/demo/test/
Next stage: killing the globals from render, and implement "translucency"
which is effectively allowing faces being lit from behind, as paper or
cloth.
Diffstat (limited to 'source/blender/makesdna')
-rw-r--r-- | source/blender/makesdna/DNA_material_types.h | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/source/blender/makesdna/DNA_material_types.h b/source/blender/makesdna/DNA_material_types.h index 9162499ed48..cac008afa56 100644 --- a/source/blender/makesdna/DNA_material_types.h +++ b/source/blender/makesdna/DNA_material_types.h @@ -56,9 +56,9 @@ typedef struct Material { float amb, emit, ang, spectra, ray_mirror; float alpha, ref, spec, zoffs, add; - float kfac; /* for transparent solids */ - float fresnel_mir, falloff_mir; - float fresnel_tra, falloff_tra; + float translucency; + float fresnel_mir; + float fresnel_tra; short ray_depth, ray_depth_tra; short har; char seed1, seed2; @@ -128,6 +128,7 @@ typedef struct Material { #define MA_RADIO 0x10000 #define MA_RAYTRANSP 0x20000 #define MA_RAYMIRROR 0x40000 +#define MA_SHADOW_TRA 0x80000 /* diff_shader */ #define MA_DIFF_LAMBERT 0 |