[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [27243] trunk/blender/source/blender/ editors/space_view3d: worldspace text locations & made some improvements to string formatting for particle number display .
Campbell Barton
ideasman42 at gmail.com
Wed Mar 3 12:23:59 CET 2010
Revision: 27243
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=27243
Author: campbellbarton
Date: 2010-03-03 12:23:59 +0100 (Wed, 03 Mar 2010)
Log Message:
-----------
worldspace text locations & made some improvements to string formatting for particle number display.
Modified Paths:
--------------
trunk/blender/source/blender/editors/space_view3d/drawobject.c
trunk/blender/source/blender/editors/space_view3d/view3d_intern.h
Modified: trunk/blender/source/blender/editors/space_view3d/drawobject.c
===================================================================
--- trunk/blender/source/blender/editors/space_view3d/drawobject.c 2010-03-03 10:35:50 UTC (rev 27242)
+++ trunk/blender/source/blender/editors/space_view3d/drawobject.c 2010-03-03 11:23:59 UTC (rev 27243)
@@ -544,7 +544,7 @@
/* project first and test */
for(vos= strings->first; vos; vos= vos->next) {
- if(mat)
+ if(mat && !(vos->flag & V3D_CACHE_TEXT_WORLDSPACE))
mul_m4_v3(mat, vos->vec);
view3d_project_short_clip(ar, vos->vec, vos->mval, 0);
if(vos->mval[0]!=IS_CLIPPED)
@@ -3693,22 +3693,19 @@
setlinestyle(0);
}
- if((part->draw&PART_DRAW_NUM || part->draw&PART_DRAW_HEALTH) && !(G.f & G_RENDER_SHADOW)){
+ if((part->draw & PART_DRAW_NUM || part->draw & PART_DRAW_HEALTH) && !(G.f & G_RENDER_SHADOW)){
+ char *val_pos= val;
val[0]= '\0';
-
+
if(part->draw&PART_DRAW_NUM)
- sprintf(val, " %i", a);
+ val_pos += sprintf(val, "%i", a);
- if(part->draw&PART_DRAW_NUM && part->draw&PART_DRAW_HEALTH)
- strcat(val, ":");
+ if((part->draw & PART_DRAW_HEALTH) && a < totpart && part->phystype==PART_PHYS_BOIDS)
+ sprintf(val_pos, (val_pos==val) ? "%.2f" : ":%.2f", pa_health);
- if(part->draw&PART_DRAW_HEALTH && a < totpart && part->phystype==PART_PHYS_BOIDS) {
- char tval[8];
- sprintf(tval, " %.2f", pa_health);
- strcat(val, tval);
- }
/* in path drawing state.co is the end point */
- view3d_cached_text_draw_add(state.co[0], state.co[1], state.co[2], val, 0, 0);
+ /* use worldspace beause object matrix is alredy applied */
+ view3d_cached_text_draw_add(state.co[0], state.co[1], state.co[2], val, 10, V3D_CACHE_TEXT_WORLDSPACE);
}
}
}
Modified: trunk/blender/source/blender/editors/space_view3d/view3d_intern.h
===================================================================
--- trunk/blender/source/blender/editors/space_view3d/view3d_intern.h 2010-03-03 10:35:50 UTC (rev 27242)
+++ trunk/blender/source/blender/editors/space_view3d/view3d_intern.h 2010-03-03 11:23:59 UTC (rev 27243)
@@ -110,6 +110,7 @@
void view3d_cached_text_draw_add(float x, float y, float z, char *str, short xoffs, short flag);
void view3d_cached_text_draw_end(View3D *v3d, ARegion *ar, int depth_write, float mat[][4]);
#define V3D_CACHE_TEXT_ZBUF 1
+#define V3D_CACHE_TEXT_WORLDSPACE 2
/* drawarmature.c */
int draw_armature(Scene *scene, View3D *v3d, ARegion *ar, Base *base, int dt, int flag);
More information about the Bf-blender-cvs
mailing list