forked from bartvdbraak/blender
Only use material callback when enabled
Vert/Face select in painting modes weren't drawing after recent changes.
This commit is contained in:
parent
b45749727c
commit
7b30e2386b
@ -1236,17 +1236,18 @@ void draw_mesh_paint_vcolor_faces(DerivedMesh *dm, const bool use_light,
|
||||
void *facemask_cb, void *user_data,
|
||||
const Mesh *me)
|
||||
{
|
||||
DMSetMaterial setMaterial = GPU_object_materials_check() ? GPU_enable_material : NULL;
|
||||
|
||||
if (use_light) {
|
||||
draw_mesh_paint_light_begin();
|
||||
}
|
||||
|
||||
if (me->mloopcol) {
|
||||
dm->drawMappedFaces(dm, facemask_cb, GPU_enable_material, NULL, user_data,
|
||||
DM_DRAW_USE_COLORS);
|
||||
dm->drawMappedFaces(dm, facemask_cb, setMaterial, NULL, user_data, DM_DRAW_USE_COLORS);
|
||||
}
|
||||
else {
|
||||
glColor3f(1.0f, 1.0f, 1.0f);
|
||||
dm->drawMappedFaces(dm, facemask_cb, GPU_enable_material, NULL, user_data, 0);
|
||||
dm->drawMappedFaces(dm, facemask_cb, setMaterial, NULL, user_data, 0);
|
||||
}
|
||||
|
||||
if (use_light) {
|
||||
|
@ -1407,7 +1407,9 @@ static struct GPUMaterialState {
|
||||
GPUMaterialFixed (*matbuf);
|
||||
GPUMaterialFixed matbuf_fixed[FIXEDMAT];
|
||||
int totmat;
|
||||
/* set when called inside GPU_begin_object_materials / GPU_end_object_materials */
|
||||
|
||||
/* set when called inside GPU_begin_object_materials / GPU_end_object_materials
|
||||
* otherwise calling GPU_enable_material returns zero */
|
||||
bool is_enabled;
|
||||
|
||||
Material **gmatbuf;
|
||||
|
Loading…
Reference in New Issue
Block a user