From fc10e89918cbd42a9d787801a896695c78ed7b34 Mon Sep 17 00:00:00 2001 From: Campbell Barton Date: Tue, 19 Feb 2019 08:44:53 +1100 Subject: DNA: rename Object.col -> color Was confusing, unrelated to: colbits, col_mask, col_group, actcol & totcol. --- source/blender/blenkernel/intern/object.c | 3 +-- source/blender/draw/engines/workbench/workbench_deferred.c | 4 ++-- source/blender/draw/engines/workbench/workbench_materials.c | 2 +- source/blender/draw/modes/object_mode.c | 4 ++-- source/blender/editors/object/object_select.c | 2 +- source/blender/editors/render/render_preview.c | 13 +++++++++---- source/blender/makesdna/DNA_object_types.h | 4 ++-- source/blender/makesdna/intern/dna_rename_defs.h | 1 + source/blender/makesrna/intern/rna_object.c | 1 - 9 files changed, 19 insertions(+), 15 deletions(-) (limited to 'source/blender') diff --git a/source/blender/blenkernel/intern/object.c b/source/blender/blenkernel/intern/object.c index b9c9cf49d92..ccb5f0d0b02 100644 --- a/source/blender/blenkernel/intern/object.c +++ b/source/blender/blenkernel/intern/object.c @@ -810,8 +810,7 @@ void BKE_object_init(Object *ob) { /* BLI_assert(MEMCMP_STRUCT_OFS_IS_ZERO(ob, id)); */ /* ob->type is already initialized... */ - ob->col[0] = ob->col[1] = ob->col[2] = 1.0; - ob->col[3] = 1.0; + copy_v4_fl(ob->color, 1.0f); ob->scale[0] = ob->scale[1] = ob->scale[2] = 1.0; ob->dscale[0] = ob->dscale[1] = ob->dscale[2] = 1.0; diff --git a/source/blender/draw/engines/workbench/workbench_deferred.c b/source/blender/draw/engines/workbench/workbench_deferred.c index d121dfb407d..f886b88828f 100644 --- a/source/blender/draw/engines/workbench/workbench_deferred.c +++ b/source/blender/draw/engines/workbench/workbench_deferred.c @@ -934,11 +934,11 @@ void workbench_deferred_solid_cache_populate(WORKBENCH_Data *vedata, Object *ob) else if (ELEM(wpd->shading.color_type, V3D_SHADING_SINGLE_COLOR, V3D_SHADING_OBJECT_COLOR, V3D_SHADING_RANDOM_COLOR)) { - if ((ob->col[3] < 1.0f) && + if ((ob->color[3] < 1.0f) && (wpd->shading.color_type == V3D_SHADING_OBJECT_COLOR)) { /* Hack */ - wpd->shading.xray_alpha = ob->col[3]; + wpd->shading.xray_alpha = ob->color[3]; material = workbench_forward_get_or_create_material_data(vedata, ob, NULL, NULL, wpd->shading.color_type, 0); has_transp_mat = true; } diff --git a/source/blender/draw/engines/workbench/workbench_materials.c b/source/blender/draw/engines/workbench/workbench_materials.c index 3f0f119a106..921585122dd 100644 --- a/source/blender/draw/engines/workbench/workbench_materials.c +++ b/source/blender/draw/engines/workbench/workbench_materials.c @@ -63,7 +63,7 @@ void workbench_material_update_data(WORKBENCH_PrivateData *wpd, Object *ob, Mate copy_v3_v3(data->base_color, data->diffuse_color); } else if (color_type == V3D_SHADING_OBJECT_COLOR) { - copy_v3_v3(data->diffuse_color, ob->col); + copy_v3_v3(data->diffuse_color, ob->color); copy_v3_v3(data->base_color, data->diffuse_color); } else { diff --git a/source/blender/draw/modes/object_mode.c b/source/blender/draw/modes/object_mode.c index ac863395ab5..dae1a5a6e30 100644 --- a/source/blender/draw/modes/object_mode.c +++ b/source/blender/draw/modes/object_mode.c @@ -940,7 +940,7 @@ static void DRW_shgroup_empty_image( /* OPTI(fclem) We need sorting only for transparent images. If an image as no alpha channel and * ob->col[3] == 1.0f, we could remove it from the sorting pass. */ - if (tex && (ob->col[3] > 0.0f)) { + if (tex && (ob->color[3] > 0.0f)) { DRWShadingGroup *grp = DRW_shgroup_create(sh_data->object_empty_image, sgl->image_empties); DRW_shgroup_uniform_texture(grp, "image", tex); /* TODO(fclem) implement DRW_shgroup_uniform_vec2_copy */ @@ -949,7 +949,7 @@ static void DRW_shgroup_empty_image( DRW_shgroup_uniform_int_copy(grp, "depthMode", ob->empty_image_depth); DRW_shgroup_uniform_float(grp, "size", &ob->empty_drawsize, 1); DRW_shgroup_uniform_vec2(grp, "offset", ob->ima_ofs, 1); - DRW_shgroup_uniform_vec4(grp, "objectColor", ob->col, 1); + DRW_shgroup_uniform_vec4(grp, "objectColor", ob->color, 1); if (sh_cfg == GPU_SHADER_CFG_CLIPPED) { DRW_shgroup_world_clip_planes_from_rv3d(grp, DRW_context_state_get()->rv3d); } diff --git a/source/blender/editors/object/object_select.c b/source/blender/editors/object/object_select.c index 3f8936400a2..6cc9a495597 100644 --- a/source/blender/editors/object/object_select.c +++ b/source/blender/editors/object/object_select.c @@ -921,7 +921,7 @@ static bool select_grouped_color(bContext *C, Object *ob) CTX_DATA_BEGIN (C, Base *, base, selectable_bases) { - if (((base->flag & BASE_SELECTED) == 0) && (compare_v3v3(base->object->col, ob->col, 0.005f))) { + if (((base->flag & BASE_SELECTED) == 0) && (compare_v3v3(base->object->color, ob->color, 0.005f))) { ED_object_base_select(base, BA_SELECT); changed = true; } diff --git a/source/blender/editors/render/render_preview.c b/source/blender/editors/render/render_preview.c index 75be3fc3923..fe3a6f96dcf 100644 --- a/source/blender/editors/render/render_preview.c +++ b/source/blender/editors/render/render_preview.c @@ -159,7 +159,8 @@ typedef struct ShaderPreview { Lamp *lampcopy; World *worldcopy; - float col[4]; /* active object color */ + /** Copy of the active objects #Object.color */ + float color[4]; int sizex, sizey; unsigned int *pr_rect; @@ -443,7 +444,7 @@ static Scene *preview_prepare_scene(Main *bmain, Scene *scene, ID *id, int id_ty for (Base *base = view_layer->object_bases.first; base; base = base->next) { if (base->object->id.name[2] == 'p') { /* copy over object color, in case material uses it */ - copy_v4_v4(base->object->col, sp->col); + copy_v4_v4(base->object->color, sp->color); if (OB_TYPE_SUPPORT_MATERIAL(base->object->type)) { /* don't use assign_material, it changed mat->id.us, which shows in the UI */ @@ -1363,8 +1364,12 @@ void ED_preview_shader_job(const bContext *C, void *owner, ID *id, ID *parent, M sp->pr_main = G_pr_main_grease_pencil; } - if (ob && ob->totcol) copy_v4_v4(sp->col, ob->col); - else sp->col[0] = sp->col[1] = sp->col[2] = sp->col[3] = 1.0f; + if (ob && ob->totcol) { + copy_v4_v4(sp->color, ob->color); + } + else { + ARRAY_SET_ITEMS(sp->color, 0.0f, 0.0f, 0.0f, 1.0f); + } /* setup job */ WM_jobs_customdata_set(wm_job, sp, shader_preview_free); diff --git a/source/blender/makesdna/DNA_object_types.h b/source/blender/makesdna/DNA_object_types.h index 88461936bed..cf88d2591b2 100644 --- a/source/blender/makesdna/DNA_object_types.h +++ b/source/blender/makesdna/DNA_object_types.h @@ -321,8 +321,8 @@ typedef struct Object { /** Current face map, note: index starts at 1. */ unsigned short actfmap; char _pad2[2]; - /** Object color. */ - float col[4]; + /** Object color (in most cases the material color is used for drawing). */ + float color[4]; /** Softbody settings. */ short softflag; diff --git a/source/blender/makesdna/intern/dna_rename_defs.h b/source/blender/makesdna/intern/dna_rename_defs.h index b5b5c3ea957..c492839f4fc 100644 --- a/source/blender/makesdna/intern/dna_rename_defs.h +++ b/source/blender/makesdna/intern/dna_rename_defs.h @@ -58,6 +58,7 @@ DNA_STRUCT_RENAME_ELEM(Camera, YF_dofdist, dof_distance) DNA_STRUCT_RENAME_ELEM(Camera, clipend, clip_end) DNA_STRUCT_RENAME_ELEM(Camera, clipsta, clip_start) DNA_STRUCT_RENAME_ELEM(Collection, dupli_ofs, instance_offset) +DNA_STRUCT_RENAME_ELEM(Object, col, color) DNA_STRUCT_RENAME_ELEM(Object, dup_group, instance_collection) DNA_STRUCT_RENAME_ELEM(Object, dupfacesca, instance_faces_scale) DNA_STRUCT_RENAME_ELEM(Object, size, scale) diff --git a/source/blender/makesrna/intern/rna_object.c b/source/blender/makesrna/intern/rna_object.c index 09bb2c43b31..a70c8a23f3c 100644 --- a/source/blender/makesrna/intern/rna_object.c +++ b/source/blender/makesrna/intern/rna_object.c @@ -2525,7 +2525,6 @@ static void rna_def_object(BlenderRNA *brna) RNA_def_property_update(prop, NC_OBJECT, "rna_Object_internal_update_draw"); prop = RNA_def_property(srna, "color", PROP_FLOAT, PROP_COLOR); - RNA_def_property_float_sdna(prop, NULL, "col"); RNA_def_property_ui_text(prop, "Color", "Object color and alpha, used when faces have the ObColor mode enabled"); RNA_def_property_update(prop, NC_OBJECT | ND_DRAW, NULL); -- cgit v1.2.3