Merge branch 'blender-v2.82-release'
This commit is contained in:
@@ -98,7 +98,9 @@ cmake_policy(SET CMP0010 NEW)
|
||||
cmake_policy(SET CMP0014 NEW)
|
||||
|
||||
# Silence draco warning on macOS, new policy works fine.
|
||||
cmake_policy(SET CMP0068 NEW)
|
||||
if(POLICY CMP0068)
|
||||
cmake_policy(SET CMP0068 NEW)
|
||||
endif()
|
||||
|
||||
#-----------------------------------------------------------------------------
|
||||
# Load some macros.
|
||||
|
||||
@@ -230,7 +230,7 @@ class PHYSICS_PT_cloth_pressure(PhysicButtonsPanel, Panel):
|
||||
col.prop(cloth, "uniform_pressure_force")
|
||||
|
||||
col = flow.column()
|
||||
col.prop(cloth, "use_pressure_volume", text="Custom volume")
|
||||
col.prop(cloth, "use_pressure_volume", text="Custom Volume")
|
||||
|
||||
col = flow.column()
|
||||
col.active = cloth.use_pressure_volume
|
||||
|
||||
@@ -872,6 +872,11 @@ static void update_obstacleflags(FluidDomainSettings *mds,
|
||||
FluidModifierData *mmd2 = (FluidModifierData *)modifiers_findByType(coll_ob,
|
||||
eModifierType_Fluid);
|
||||
|
||||
/* Sanity check. */
|
||||
if (!mmd2) {
|
||||
continue;
|
||||
}
|
||||
|
||||
if ((mmd2->type & MOD_FLUID_TYPE_EFFEC) && mmd2->effector) {
|
||||
FluidEffectorSettings *mes = mmd2->effector;
|
||||
if (!mes) {
|
||||
@@ -959,6 +964,11 @@ static void update_obstacles(Depsgraph *depsgraph,
|
||||
FluidModifierData *mmd2 = (FluidModifierData *)modifiers_findByType(coll_ob,
|
||||
eModifierType_Fluid);
|
||||
|
||||
/* Sanity check. */
|
||||
if (!mmd2) {
|
||||
continue;
|
||||
}
|
||||
|
||||
/* TODO (sebbas): check if modifier is active? */
|
||||
if ((mmd2->type & MOD_FLUID_TYPE_EFFEC) && mmd2->effector) {
|
||||
FluidEffectorSettings *mes = mmd2->effector;
|
||||
@@ -2298,7 +2308,7 @@ static void update_flowsflags(FluidDomainSettings *mds, Object **flowobjs, int n
|
||||
FluidModifierData *mmd2 = (FluidModifierData *)modifiers_findByType(coll_ob,
|
||||
eModifierType_Fluid);
|
||||
|
||||
// Sanity check
|
||||
/* Sanity check. */
|
||||
if (!mmd2) {
|
||||
continue;
|
||||
}
|
||||
@@ -2411,6 +2421,11 @@ static void update_flowsfluids(struct Depsgraph *depsgraph,
|
||||
FluidModifierData *mmd2 = (FluidModifierData *)modifiers_findByType(flowobj,
|
||||
eModifierType_Fluid);
|
||||
|
||||
/* Sanity check. */
|
||||
if (!mmd2) {
|
||||
continue;
|
||||
}
|
||||
|
||||
/* Check for initialized smoke object. */
|
||||
if ((mmd2->type & MOD_FLUID_TYPE_FLOW) && mmd2->flow) {
|
||||
FluidFlowSettings *mfs = mmd2->flow;
|
||||
@@ -2607,6 +2622,11 @@ static void update_flowsfluids(struct Depsgraph *depsgraph,
|
||||
FluidModifierData *mmd2 = (FluidModifierData *)modifiers_findByType(flowobj,
|
||||
eModifierType_Fluid);
|
||||
|
||||
/* Sanity check. */
|
||||
if (!mmd2) {
|
||||
continue;
|
||||
}
|
||||
|
||||
/* Check for initialized flow object. */
|
||||
if ((mmd2->type & MOD_FLUID_TYPE_FLOW) && mmd2->flow) {
|
||||
FluidFlowSettings *mfs = mmd2->flow;
|
||||
@@ -3313,7 +3333,7 @@ static void BKE_fluid_modifier_processDomain(FluidModifierData *mmd,
|
||||
guide_parent = mds->guide_parent;
|
||||
if (guide_parent) {
|
||||
mmd_parent = (FluidModifierData *)modifiers_findByType(guide_parent, eModifierType_Fluid);
|
||||
if (mmd_parent->domain) {
|
||||
if (mmd_parent && mmd_parent->domain) {
|
||||
copy_v3_v3_int(mds->guide_res, mmd_parent->domain->res);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -521,6 +521,9 @@ static void make_duplis_font(const DupliContext *ctx)
|
||||
family_len = strlen(cu->family);
|
||||
family_gh = BLI_ghash_int_new_ex(__func__, 256);
|
||||
|
||||
/* Safety check even if it might fail badly when called for original object. */
|
||||
const bool is_eval_curve = DEG_is_evaluated_id(&cu->id);
|
||||
|
||||
/* advance matching BLI_strncpy_wchar_from_utf8 */
|
||||
for (a = 0; a < text_len; a++, ct++) {
|
||||
|
||||
@@ -528,6 +531,12 @@ static void make_duplis_font(const DupliContext *ctx)
|
||||
* Definitively don't think it would be safe to put back Main *bmain pointer
|
||||
* in DupliContext as done in 2.7x? */
|
||||
ob = find_family_object(G.main, cu->family, family_len, (unsigned int)text[a], family_gh);
|
||||
|
||||
if (is_eval_curve) {
|
||||
/* Workaround for the above hack. */
|
||||
ob = DEG_get_evaluated_object(ctx->depsgraph, ob);
|
||||
}
|
||||
|
||||
if (ob) {
|
||||
vec[0] = fsize * (ct->xof - xof);
|
||||
vec[1] = fsize * (ct->yof - yof);
|
||||
|
||||
@@ -2335,6 +2335,11 @@ void OVERLAY_armature_cache_populate(OVERLAY_Data *vedata, Object *ob)
|
||||
OVERLAY_PrivateData *pd = vedata->stl->pd;
|
||||
ArmatureDrawContext arm_ctx;
|
||||
float *color;
|
||||
|
||||
if (ob->dt == OB_BOUNDBOX) {
|
||||
return;
|
||||
}
|
||||
|
||||
DRW_object_wire_theme_get(ob, draw_ctx->view_layer, &color);
|
||||
armature_context_setup(&arm_ctx, pd, ob, false, false, false, color);
|
||||
draw_armature_pose(&arm_ctx);
|
||||
|
||||
@@ -407,7 +407,11 @@ void OVERLAY_edit_mesh_draw(OVERLAY_Data *vedata)
|
||||
GPU_framebuffer_clear_depth(fbl->overlay_default_fb, 1.0f);
|
||||
}
|
||||
|
||||
DRW_draw_pass(psl->edit_mesh_depth_ps[IN_FRONT]);
|
||||
if (!DRW_pass_is_empty(psl->edit_mesh_depth_ps[IN_FRONT])) {
|
||||
DRW_view_set_active(NULL);
|
||||
DRW_draw_pass(psl->edit_mesh_depth_ps[IN_FRONT]);
|
||||
}
|
||||
|
||||
overlay_edit_mesh_draw_components(psl, pd, true);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -986,7 +986,7 @@ static void rna_def_cloth_sim_settings(BlenderRNA *brna)
|
||||
RNA_def_property_ui_text(
|
||||
prop,
|
||||
"Pressure",
|
||||
"The uniform pressure that is constanty applied to the mesh. Can be negative");
|
||||
"The uniform pressure that is constantly applied to the mesh. Can be negative");
|
||||
RNA_def_property_update(prop, 0, "rna_cloth_update");
|
||||
|
||||
prop = RNA_def_property(srna, "target_volume", PROP_FLOAT, PROP_NONE);
|
||||
|
||||
Reference in New Issue
Block a user