[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [33476] trunk/blender/source/blender/ editors/space_view3d/drawobject.c: fix for camera border going outside the clipping range while in camera view .

Campbell Barton ideasman42 at gmail.com
Sun Dec 5 03:16:14 CET 2010


Revision: 33476
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=33476
Author:   campbellbarton
Date:     2010-12-05 03:16:01 +0100 (Sun, 05 Dec 2010)

Log Message:
-----------
fix for camera border going outside the clipping range while in camera view.

Modified Paths:
--------------
    trunk/blender/source/blender/editors/space_view3d/drawobject.c

Modified: trunk/blender/source/blender/editors/space_view3d/drawobject.c
===================================================================
--- trunk/blender/source/blender/editors/space_view3d/drawobject.c	2010-12-05 01:48:49 UTC (rev 33475)
+++ trunk/blender/source/blender/editors/space_view3d/drawobject.c	2010-12-05 02:16:01 UTC (rev 33476)
@@ -1258,13 +1258,22 @@
 		/* that way it's always visible - clipsta+0.1 */
 		float fac;
 		drawsize= cam->drawsize / ((scax + scay + scaz) / 3.0f);
-		fac= is_view ? (cam->clipsta + 0.1f) : drawsize;
-		depth= - fac*cam->lens/16.0 * scaz;
+
+		if(is_view) {
+			/* fixed depth, variable size (avoids exceeding clipping range) */
+			depth = -(cam->clipsta + 0.1);
+			fac = depth / (cam->lens/-16.0f * scaz);
+		}
+		else {
+			/* fixed size, variable depth (stays a reasonable size in the 3D view) */
+			depth= drawsize * cam->lens/-16.0f * scaz;
+			fac= drawsize;
+		}
+
 		facx= fac * caspx * scax;
 		facy= fac * caspy * scay;
 		shx= cam->shiftx*fac*2 * scax;
 		shy= cam->shifty*fac*2 * scay;
-		
 	}
 	
 	vec[0][0]= 0.0; vec[0][1]= 0.0; vec[0][2]= 0.0;





More information about the Bf-blender-cvs mailing list