Add mask-drawing support to GPU_Buffers.
authorNicholas Bishop <nicholasbishop@gmail.com>
Thu, 10 May 2012 20:36:34 +0000 (20:36 +0000)
committerNicholas Bishop <nicholasbishop@gmail.com>
Thu, 10 May 2012 20:36:34 +0000 (20:36 +0000)
commitd35d0e38ce3ab421880b01fe5e80cb61a1323c45
tree7f650bd41784e9d305741629eee223cc142978f2
parent3ee0305ebb45e3e48ccab69d952ec4258b3dc881
Add mask-drawing support to GPU_Buffers.

This is the last commit of the sculpt masking merge. Documentation:
http://wiki.blender.org/index.php/User:Nicholasbishop/PaintMasks

Thanks to Brecht for reviewing!

* For VBO, add color to the VertexBufferFormat structure as three
  unsigned bytes. Since mask elements are scalar the three color
  components are identical to eachother, but the fixed-function OpenGL
  pipeline requires colors to be either three or four components.

* For the same reason, multires VBO drawing now copies into the
  VertexBufferFormat format as well.

* Regression: material colors will not show up correctly now, masks
  colors are overriding. Not sure how to fix this nicely (would be
  much easier to fix if drawing with vertex shaders.)

* Also, masks will only draw PBVH drawing, so only 'solid' drawing
  will work correctly with masks.
source/blender/blenlib/intern/pbvh.c
source/blender/gpu/GPU_buffers.h
source/blender/gpu/intern/gpu_buffers.c