diff options
author | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2009-07-21 17:20:35 +0400 |
---|---|---|
committer | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2009-07-21 17:20:35 +0400 |
commit | e3c6ae9b89d1d0c7bb6957f81b9fd9a89477b2d0 (patch) | |
tree | 9a50b247676dd1f3b0abe3cea40cc0773161dae3 /source/blender/makesdna/DNA_texture_types.h | |
parent | ea0b015b0a1c73fb1899a4d9040704a7d85fda9c (diff) |
2.5: Texture Filtering
Patch by Alfredo de Greef with high quality image texture filters.
This adds 3 new filters:
* SAT: Summed Area Tables. This is like mipmaps, but using somewhat
more memory avoids some artifacts.
* EWA: Ellipitical Weighted Average, anisotropic filter.
* FELINE: Fast elliptical lines for anisotropic texture mapping.
The one change I made to this was to try to fix an alpha/premul
problem, hopefully I didn't break anything, it looks compatible
with the existing filter now for me.
Diffstat (limited to 'source/blender/makesdna/DNA_texture_types.h')
-rw-r--r-- | source/blender/makesdna/DNA_texture_types.h | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/source/blender/makesdna/DNA_texture_types.h b/source/blender/makesdna/DNA_texture_types.h index 6b7bfbdcd83..e1dd21a8ccb 100644 --- a/source/blender/makesdna/DNA_texture_types.h +++ b/source/blender/makesdna/DNA_texture_types.h @@ -150,11 +150,13 @@ typedef struct Tex { /* newnoise: noisebasis type for clouds/marble/etc, noisebasis2 only used for distorted noise */ short noisebasis, noisebasis2; - + short imaflag, flag; short type, stype; float cropxmin, cropymin, cropxmax, cropymax; + int texfilter; + int afmax; // anisotropic filter maximum value, ewa -> max eccentricity, feline -> max probes short xrepeat, yrepeat; short extend; @@ -253,6 +255,15 @@ typedef struct TexMapping { #define TEX_GAUSS_MIP 4096 #define TEX_FILTER_MIN 8192 +/* texfilter */ +// TXF_DEFAULT -> blender's old texture filtering method +#define TXF_DEFAULT 0 +#define TXF_EWA 1 +#define TXF_FELINE 2 +#define TXF_AREA 3 +// TXF_SAT only available when mipmaps disabled +#define TXF_SAT 4 + /* imaflag unused, only for version check */ #define TEX_FIELDS_ 8 #define TEX_ANIMCYCLIC_ 64 |