forked from bartvdbraak/blender
Fixed crash of multires baker when baking from sculpt mode.
Incorrect low level was used for this case -- it should be sculpt level, not preview level. Thanks to Morten Mikkelsen to point on this bug :)
This commit is contained in:
parent
2d8c1e60e6
commit
d54a014963
@ -966,9 +966,10 @@ static DerivedMesh *multiresbake_create_loresdm(Scene *scene, Object *ob, int *l
|
||||
MultiresModifierData *mmd= get_multires_modifier(scene, ob, 0);
|
||||
Mesh *me= (Mesh*)ob->data;
|
||||
|
||||
*lvl= mmd->lvl;
|
||||
if(ob->mode==OB_MODE_SCULPT) *lvl= mmd->sculptlvl;
|
||||
else *lvl= mmd->lvl;
|
||||
|
||||
if(mmd->lvl==0) {
|
||||
if(*lvl==0) {
|
||||
DerivedMesh *tmp_dm= CDDM_from_mesh(me, ob);
|
||||
dm= CDDM_copy(tmp_dm);
|
||||
tmp_dm->release(tmp_dm);
|
||||
@ -976,7 +977,7 @@ static DerivedMesh *multiresbake_create_loresdm(Scene *scene, Object *ob, int *l
|
||||
MultiresModifierData tmp_mmd= *mmd;
|
||||
DerivedMesh *cddm= CDDM_from_mesh(me, ob);
|
||||
|
||||
tmp_mmd.lvl= mmd->lvl;
|
||||
tmp_mmd.lvl= *lvl;
|
||||
dm= multires_dm_create_from_derived(&tmp_mmd, 1, cddm, ob, 0, 0);
|
||||
cddm->release(cddm);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user