[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [29982] trunk/blender: texture saturation option.
Campbell Barton
ideasman42 at gmail.com
Mon Jul 5 12:19:00 CEST 2010
Revision: 29982
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=29982
Author: campbellbarton
Date: 2010-07-05 12:18:59 +0200 (Mon, 05 Jul 2010)
Log Message:
-----------
texture saturation option.
we'll need a do-version bump soon or this will convert 0.0 saturation to 1.0 on load.
Modified Paths:
--------------
trunk/blender/release/scripts/ui/properties_texture.py
trunk/blender/source/blender/blenkernel/intern/texture.c
trunk/blender/source/blender/blenloader/intern/readfile.c
trunk/blender/source/blender/makesdna/DNA_texture_types.h
trunk/blender/source/blender/makesrna/intern/rna_texture.c
trunk/blender/source/blender/render/intern/include/texture.h
Modified: trunk/blender/release/scripts/ui/properties_texture.py
===================================================================
--- trunk/blender/release/scripts/ui/properties_texture.py 2010-07-05 10:13:22 UTC (rev 29981)
+++ trunk/blender/release/scripts/ui/properties_texture.py 2010-07-05 10:18:59 UTC (rev 29982)
@@ -204,6 +204,7 @@
col.label(text="Adjust:")
col.prop(tex, "brightness")
col.prop(tex, "contrast")
+ col.prop(tex, "saturation")
# Texture Slot Panels #
Modified: trunk/blender/source/blender/blenkernel/intern/texture.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/texture.c 2010-07-05 10:13:22 UTC (rev 29981)
+++ trunk/blender/source/blender/blenkernel/intern/texture.c 2010-07-05 10:18:59 UTC (rev 29982)
@@ -451,6 +451,7 @@
tex->nabla= 0.025; // also in do_versions
tex->bright= 1.0;
tex->contrast= 1.0;
+ tex->saturation= 1.0;
tex->filtersize= 1.0;
tex->rfac= 1.0;
tex->gfac= 1.0;
Modified: trunk/blender/source/blender/blenloader/intern/readfile.c
===================================================================
--- trunk/blender/source/blender/blenloader/intern/readfile.c 2010-07-05 10:13:22 UTC (rev 29981)
+++ trunk/blender/source/blender/blenloader/intern/readfile.c 2010-07-05 10:18:59 UTC (rev 29982)
@@ -10855,6 +10855,7 @@
Object *ob;
Scene *scene;
bScreen *sc;
+ Tex *tex;
for (sc= main->screen.first; sc; sc= sc->id.next) {
ScrArea *sa;
@@ -10945,6 +10946,13 @@
}
}
+ for(tex= main->tex.first; tex; tex= tex->id.next) {
+ /* if youre picky, this isn't correct until we do a version bump
+ * since you could set saturation to be 0.0*/
+ if(tex->saturation==0.0f)
+ tex->saturation= 1.0f;
+ }
+
}
/* WATCH IT!!!: pointers from libdata have not been converted yet here! */
Modified: trunk/blender/source/blender/makesdna/DNA_texture_types.h
===================================================================
--- trunk/blender/source/blender/makesdna/DNA_texture_types.h 2010-07-05 10:13:22 UTC (rev 29981)
+++ trunk/blender/source/blender/makesdna/DNA_texture_types.h 2010-07-05 10:18:59 UTC (rev 29982)
@@ -203,8 +203,8 @@
struct AnimData *adt; /* animation data (must be immediately after id for utilities to use it) */
float noisesize, turbul;
- float bright, contrast, rfac, gfac, bfac;
- float filtersize;
+ float bright, contrast, saturation, rfac, gfac, bfac;
+ float filtersize, pad2;
/* newnoise: musgrave parameters */
float mg_H, mg_lacunarity, mg_octaves, mg_offset, mg_gain;
Modified: trunk/blender/source/blender/makesrna/intern/rna_texture.c
===================================================================
--- trunk/blender/source/blender/makesrna/intern/rna_texture.c 2010-07-05 10:13:22 UTC (rev 29981)
+++ trunk/blender/source/blender/makesrna/intern/rna_texture.c 2010-07-05 10:18:59 UTC (rev 29982)
@@ -1706,6 +1706,11 @@
RNA_def_property_range(prop, 0.01, 5);
RNA_def_property_ui_text(prop, "Contrast", "");
RNA_def_property_update(prop, 0, "rna_Texture_update");
+
+ prop= RNA_def_property(srna, "saturation", PROP_FLOAT, PROP_NONE);
+ RNA_def_property_range(prop, 0, 2);
+ RNA_def_property_ui_text(prop, "Saturation", "");
+ RNA_def_property_update(prop, 0, "rna_Texture_update");
/* RGB Factor */
prop= RNA_def_property(srna, "factor_red", PROP_FLOAT, PROP_NONE);
Modified: trunk/blender/source/blender/render/intern/include/texture.h
===================================================================
--- trunk/blender/source/blender/render/intern/include/texture.h 2010-07-05 10:13:22 UTC (rev 29981)
+++ trunk/blender/source/blender/render/intern/include/texture.h 2010-07-05 10:18:59 UTC (rev 29982)
@@ -40,7 +40,13 @@
texres->tg= tex->gfac*((texres->tg-0.5)*tex->contrast+tex->bright-0.5); \
if(texres->tg<0.0) texres->tg= 0.0; \
texres->tb= tex->bfac*((texres->tb-0.5)*tex->contrast+tex->bright-0.5); \
-if(texres->tb<0.0) texres->tb= 0.0;
+if(texres->tb<0.0) texres->tb= 0.0; \
+if(tex->saturation != 1.0f) { \
+ float _hsv[3]; \
+ rgb_to_hsv(texres->tr, texres->tg, texres->tb, _hsv, _hsv+1, _hsv+2); \
+ _hsv[1] *= tex->saturation; \
+ hsv_to_rgb(_hsv[0], _hsv[1], _hsv[2], &texres->tr, &texres->tg, &texres->tb); \
+} \
struct HaloRen;
More information about the Bf-blender-cvs
mailing list