Revision: 23620
          
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=23620
Author:   imbusy
Date:     2009-10-04 00:14:19 +0200 (Sun, 04 Oct 2009)

Log Message:
-----------
VBOs weren't fully turned off in edit mode. Fixed that

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      
2009-10-03 21:48:15 UTC (rev 23619)
+++ trunk/blender/source/blender/editors/space_view3d/drawobject.c      
2009-10-03 22:14:19 UTC (rev 23620)
@@ -1571,7 +1571,7 @@
        data.eve_act = eve_act;
 
        /* first come the unselected vertices, then the selected */
-       buffer = GPU_buffer_alloc( sizeof(float)*3*dm->getNumVerts(dm)*2, 0 );
+       buffer = GPU_buffer_legacy(dm)?0:GPU_buffer_alloc( 
sizeof(float)*3*dm->getNumVerts(dm)*2, 0 );
 
        if( (varray = GPU_buffer_lock_stream( buffer )) && bglPointHack() == 0 
) {
                EditMeshDerivedMesh *emdm= (EditMeshDerivedMesh*) dm;
@@ -1698,7 +1698,7 @@
        cols[0] = baseCol;
        cols[1] = selCol;
 
-       buffer = GPU_buffer_alloc( elemsize*em->totedge*2, 0 );
+       buffer = GPU_buffer_legacy(dm)?0:GPU_buffer_alloc( 
elemsize*em->totedge*2, 0 );
        if( (varray = GPU_buffer_lock_stream( buffer )) ) {
                EditEdge *eed;
                int numedges = 0;
@@ -1804,7 +1804,7 @@
        data.efa_act = efa_act;
 
 
-       buffer = GPU_buffer_alloc( elemsize*dm->getNumFaces(dm)*3*2, 0 );
+       buffer = GPU_buffer_legacy(dm)?0:GPU_buffer_alloc( 
elemsize*dm->getNumFaces(dm)*3*2, 0 );
        if( dm->getVertCos == 0 && (varray = GPU_buffer_lock_stream( buffer )) 
) {
                int prevdraw = 0;
                int numfaces = 0;
@@ -2433,7 +2433,7 @@
                }
                else {
                        /* 3 floats for position, 3 for normal and times two 
because the faces may actually be quads instead of triangles */
-                       GPUBuffer *buffer = GPU_buffer_alloc( 
sizeof(float)*6*em->totface*3*2, 0 );
+                       GPUBuffer *buffer = 
GPU_buffer_legacy(em->derivedFinal)?0:GPU_buffer_alloc( 
sizeof(float)*6*em->totface*3*2, 0 );
                        float *varray;
                        EditFace *efa;
                        int i, curmat = 0, draw = 0;


_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to