[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [16632] trunk/blender/source/blender: Patch #8461, by Rob Hausauer

Ton Roosendaal ton at blender.org
Sat Sep 20 15:02:06 CEST 2008


Revision: 16632
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=16632
Author:   ton
Date:     2008-09-20 15:02:06 +0200 (Sat, 20 Sep 2008)

Log Message:
-----------
Patch #8461, by Rob Hausauer

This unifies all usage of FTOCHAR, putting it in utildefines.h
Submitter did several interesting tests for speed, check it here:
http://projects.blender.org/tracker/?func=detail&atid=127&aid=8461&group_id=9

Modified Paths:
--------------
    trunk/blender/source/blender/blenkernel/BKE_utildefines.h
    trunk/blender/source/blender/blenkernel/intern/brush.c
    trunk/blender/source/blender/blenkernel/intern/colortools.c
    trunk/blender/source/blender/gpu/intern/gpu_extensions.c
    trunk/blender/source/blender/imbuf/intern/divers.c
    trunk/blender/source/blender/imbuf/intern/rectop.c
    trunk/blender/source/blender/render/intern/source/pipeline.c
    trunk/blender/source/blender/render/intern/source/rendercore.c
    trunk/blender/source/blender/src/glutil.c
    trunk/blender/source/blender/src/renderwin.c
    trunk/blender/source/blender/src/seqscopes.c
    trunk/blender/source/blender/src/writeimage.c

Modified: trunk/blender/source/blender/blenkernel/BKE_utildefines.h
===================================================================
--- trunk/blender/source/blender/blenkernel/BKE_utildefines.h	2008-09-20 12:28:01 UTC (rev 16631)
+++ trunk/blender/source/blender/blenkernel/BKE_utildefines.h	2008-09-20 13:02:06 UTC (rev 16632)
@@ -102,6 +102,8 @@
 
 #define AVG2(x, y)		( 0.5 * ((x) + (y)) )
 
+#define FTOCHAR(val) (val<=0.0f)? 0 : ((val>(1.0f-0.5f/255.0f))? 255 : (char)((255.0f*val)+0.5f))
+
 #define VECCOPY(v1,v2)          {*(v1)= *(v2); *(v1+1)= *(v2+1); *(v1+2)= *(v2+2);}
 #define VECCOPY2D(v1,v2)          {*(v1)= *(v2); *(v1+1)= *(v2+1);}
 #define QUATCOPY(v1,v2)         {*(v1)= *(v2); *(v1+1)= *(v2+1); *(v1+2)= *(v2+2); *(v1+3)= *(v2+3);}

Modified: trunk/blender/source/blender/blenkernel/intern/brush.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/brush.c	2008-09-20 12:28:01 UTC (rev 16631)
+++ trunk/blender/source/blender/blenkernel/intern/brush.c	2008-09-20 13:02:06 UTC (rev 16632)
@@ -359,7 +359,6 @@
 		rgba[0]= rgba[1]= rgba[2]= rgba[3]= 1.0f;
 }
 
-#define FTOCHAR(val) val<=0.0f?0: (val>=1.0f?255: (char)(255.0f*val))
 
 void brush_imbuf_new(Brush *brush, short flt, short texfall, int size, ImBuf **outbuf)
 {

Modified: trunk/blender/source/blender/blenkernel/intern/colortools.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/colortools.c	2008-09-20 12:28:01 UTC (rev 16631)
+++ trunk/blender/source/blender/blenkernel/intern/colortools.c	2008-09-20 13:02:06 UTC (rev 16632)
@@ -650,7 +650,6 @@
 	vecout[2]= curvemap_evaluateF(cumap->cm+2, fac);
 }
 
-#define FTOCHAR(val) val<=0.0f?0: (val>=1.0f?255: (char)(255.0f*val))
 
 void curvemapping_do_ibuf(CurveMapping *cumap, ImBuf *ibuf)
 {

Modified: trunk/blender/source/blender/gpu/intern/gpu_extensions.c
===================================================================
--- trunk/blender/source/blender/gpu/intern/gpu_extensions.c	2008-09-20 12:28:01 UTC (rev 16631)
+++ trunk/blender/source/blender/gpu/intern/gpu_extensions.c	2008-09-20 13:02:06 UTC (rev 16632)
@@ -40,6 +40,7 @@
 
 #include "BKE_image.h"
 #include "BKE_global.h"
+#include "BKE_utildefines.h"
 
 #include "IMB_imbuf.h"
 #include "IMB_imbuf_types.h"
@@ -154,7 +155,6 @@
 	int depth;				/* is a depth texture? */
 };
 
-#define FTOCHAR(val) val<=0.0f?0: (val>=1.0f?255: (char)(255.0f*val))
 static unsigned char *GPU_texture_convert_pixels(int length, float *fpixels)
 {
 	unsigned char *pixels, *p;

Modified: trunk/blender/source/blender/imbuf/intern/divers.c
===================================================================
--- trunk/blender/source/blender/imbuf/intern/divers.c	2008-09-20 12:28:01 UTC (rev 16631)
+++ trunk/blender/source/blender/imbuf/intern/divers.c	2008-09-20 13:02:06 UTC (rev 16632)
@@ -38,6 +38,7 @@
 #include "IMB_imbuf.h"
 #include "IMB_allocimbuf.h"
 #include "IMB_divers.h"
+#include "BKE_utildefines.h"
 
 void imb_checkncols(struct ImBuf *ibuf)
 {
@@ -171,7 +172,6 @@
 	}
 }
 
-#define FTOCHAR(val) val<=0.0f?0: (val>=1.0f?255: (char)(255.99f*val))
 
 void IMB_rect_from_float(struct ImBuf *ibuf)
 {

Modified: trunk/blender/source/blender/imbuf/intern/rectop.c
===================================================================
--- trunk/blender/source/blender/imbuf/intern/rectop.c	2008-09-20 12:28:01 UTC (rev 16631)
+++ trunk/blender/source/blender/imbuf/intern/rectop.c	2008-09-20 13:02:06 UTC (rev 16632)
@@ -37,6 +37,7 @@
 #include "IMB_imbuf.h"
 
 #include "IMB_allocimbuf.h"
+#include "BKE_utildefines.h"
 
 /* blend modes */
 
@@ -514,10 +515,6 @@
 	}	
 }
 
-/* maybe we should use BKE_utildefines.h */
-#define FTOCHAR(val) (val<=0.0f ? 0: (val>=1.0f ? 255: (char)(255.99f*val)))
-#define CLAMP(a, b, c)		if((a)<(b)) (a)=(b); else if((a)>(c)) (a)=(c)
-#define SWAP(type, a, b)        { type sw_ap; sw_ap=(a); (a)=(b); (b)=sw_ap; }
 
 void buf_rectfill_area(unsigned char *rect, float *rectf, int width, int height, float *col, int x1, int y1, int x2, int y2)
 {

Modified: trunk/blender/source/blender/render/intern/source/pipeline.c
===================================================================
--- trunk/blender/source/blender/render/intern/source/pipeline.c	2008-09-20 12:28:01 UTC (rev 16631)
+++ trunk/blender/source/blender/render/intern/source/pipeline.c	2008-09-20 13:02:06 UTC (rev 16632)
@@ -38,6 +38,7 @@
 #include "DNA_scene_types.h"
 #include "DNA_userdef_types.h"
 
+#include "BKE_utildefines.h"
 #include "BKE_global.h"
 #include "BKE_image.h"
 #include "BKE_main.h"
@@ -961,7 +962,6 @@
 	}
 }
 
-#define FTOCHAR(val) val<=0.0f?0: (val>=1.0f?255: (char)(255.0f*val))
 /* caller is responsible for allocating rect in correct size! */
 void RE_ResultGet32(Render *re, unsigned int *rect)
 {

Modified: trunk/blender/source/blender/render/intern/source/rendercore.c
===================================================================
--- trunk/blender/source/blender/render/intern/source/rendercore.c	2008-09-20 12:28:01 UTC (rev 16631)
+++ trunk/blender/source/blender/render/intern/source/rendercore.c	2008-09-20 13:02:06 UTC (rev 16632)
@@ -1971,7 +1971,6 @@
 
 /* ************************* bake ************************ */
 
-#define FTOCHAR(val) val<=0.0f?0: (val>=1.0f?255: (char)(255.0f*val))
 
 typedef struct BakeShade {
 	ShadeSample ssamp;

Modified: trunk/blender/source/blender/src/glutil.c
===================================================================
--- trunk/blender/source/blender/src/glutil.c	2008-09-20 12:28:01 UTC (rev 16631)
+++ trunk/blender/source/blender/src/glutil.c	2008-09-20 13:02:06 UTC (rev 16632)
@@ -290,7 +290,6 @@
 	return texid;
 }
 
-#define FTOCHAR(val) val<=0.0f?0: (val>=1.0f?255: (char)(255.0f*val))
 void glaDrawPixelsTex(float x, float y, int img_w, int img_h, int format, void *rect)
 {
 	float *f_rect;

Modified: trunk/blender/source/blender/src/renderwin.c
===================================================================
--- trunk/blender/source/blender/src/renderwin.c	2008-09-20 12:28:01 UTC (rev 16631)
+++ trunk/blender/source/blender/src/renderwin.c	2008-09-20 13:02:06 UTC (rev 16632)
@@ -426,7 +426,6 @@
 	renderwin_queue_redraw(rw);
 }
 
-#define FTOCHAR(val) val<=0.0f? 0 : (val>=(1.0f-0.5f/255.0f)? 255 :(char)((255.0f*val)+0.5f))
 
 static void renderwin_mouse_moved(RenderWin *rw)
 {

Modified: trunk/blender/source/blender/src/seqscopes.c
===================================================================
--- trunk/blender/source/blender/src/seqscopes.c	2008-09-20 12:28:01 UTC (rev 16631)
+++ trunk/blender/source/blender/src/seqscopes.c	2008-09-20 13:02:06 UTC (rev 16632)
@@ -384,7 +384,6 @@
 	}
 }
 
-#define FTOCHAR(val) val<=0.0f?0: (val>=1.0f?255: (char)(255.99f*val))
 
 static void draw_zebra_float(struct ImBuf * src,struct ImBuf * ibuf,float perc)
 {

Modified: trunk/blender/source/blender/src/writeimage.c
===================================================================
--- trunk/blender/source/blender/src/writeimage.c	2008-09-20 12:28:01 UTC (rev 16631)
+++ trunk/blender/source/blender/src/writeimage.c	2008-09-20 13:02:06 UTC (rev 16632)
@@ -80,7 +80,6 @@
 }
 
 
-#define FTOCHAR(val) val<=0.0f?255: 255-(val>=255.0f?255: (char)(val))
 
 /* callback for fileselect to save rendered image, renderresult was checked to exist */
 static void save_rendered_image_cb_real(char *name, int confirm)





More information about the Bf-blender-cvs mailing list