Merge branch 'blender-v3.5-release'
This commit is contained in:
@@ -225,7 +225,7 @@ static void mesh_render_data_polys_sorted_build(MeshRenderData *mr, MeshBufferCa
|
||||
int i;
|
||||
BM_ITER_MESH_INDEX (f, &iter, mr->bm, BM_FACES_OF_MESH, i) {
|
||||
if (!BM_elem_flag_test(f, BM_ELEM_HIDDEN)) {
|
||||
const int mat = min_ii(f->mat_nr, mat_last);
|
||||
const int mat = clamp_i(f->mat_nr, 0, mat_last);
|
||||
tri_first_index[i] = mat_tri_offs[mat];
|
||||
mat_tri_offs[mat] += f->len - 2;
|
||||
}
|
||||
@@ -238,7 +238,7 @@ static void mesh_render_data_polys_sorted_build(MeshRenderData *mr, MeshBufferCa
|
||||
for (int i = 0; i < mr->poly_len; i++) {
|
||||
if (!(mr->use_hide && mr->hide_poly && mr->hide_poly[i])) {
|
||||
const MPoly &poly = mr->polys[i];
|
||||
const int mat = min_ii(mr->material_indices ? mr->material_indices[i] : 0, mat_last);
|
||||
const int mat = mr->material_indices ? clamp_i(mr->material_indices[i], 0, mat_last) : 0;
|
||||
tri_first_index[i] = mat_tri_offs[mat];
|
||||
mat_tri_offs[mat] += poly.totloop - 2;
|
||||
}
|
||||
@@ -263,7 +263,7 @@ static void mesh_render_data_mat_tri_len_bm_range_fn(void *__restrict userdata,
|
||||
BMesh *bm = mr->bm;
|
||||
BMFace *efa = BM_face_at_index(bm, iter);
|
||||
if (!BM_elem_flag_test(efa, BM_ELEM_HIDDEN)) {
|
||||
int mat = min_ii(efa->mat_nr, mr->mat_len - 1);
|
||||
int mat = clamp_i(efa->mat_nr, 0, mr->mat_len - 1);
|
||||
mat_tri_len[mat] += efa->len - 2;
|
||||
}
|
||||
}
|
||||
@@ -277,7 +277,9 @@ static void mesh_render_data_mat_tri_len_mesh_range_fn(void *__restrict userdata
|
||||
|
||||
const MPoly &poly = mr->polys[iter];
|
||||
if (!(mr->use_hide && mr->hide_poly && mr->hide_poly[iter])) {
|
||||
int mat = min_ii(mr->material_indices ? mr->material_indices[iter] : 0, mr->mat_len - 1);
|
||||
const int mat = mr->material_indices ?
|
||||
clamp_i(mr->material_indices[iter], 0, mr->mat_len - 1) :
|
||||
0;
|
||||
mat_tri_len[mat] += poly.totloop - 2;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1235,9 +1235,7 @@ static void sculpt_draw_cb(DRWSculptCallbackData *scd,
|
||||
|
||||
if (scd->use_mats) {
|
||||
index = drw_pbvh_material_index_get(batches);
|
||||
if (index >= scd->num_shading_groups) {
|
||||
index = 0;
|
||||
}
|
||||
index = clamp_i(index, 0, scd->num_shading_groups - 1);
|
||||
}
|
||||
|
||||
DRWShadingGroup *shgrp = scd->shading_groups[index];
|
||||
|
||||
@@ -179,6 +179,10 @@ static float sculpt_automasking_normal_calc(SculptSession *ss,
|
||||
|
||||
static bool sculpt_automasking_is_constrained_by_radius(const Brush *br)
|
||||
{
|
||||
if (br == nullptr) {
|
||||
return false;
|
||||
}
|
||||
|
||||
/* 2D falloff is not constrained by radius. */
|
||||
if (br->falloff_shape == PAINT_FALLOFF_SHAPE_TUBE) {
|
||||
return false;
|
||||
|
||||
Reference in New Issue
Block a user