Changeset View
Changeset View
Standalone View
Standalone View
source/blender/makesrna/intern/rna_mesh.c
| Show First 20 Lines • Show All 580 Lines • ▼ Show 20 Lines | static void rna_MeshColor_color1_get(PointerRNA *ptr, float *values) | ||||
| values[1] = (&mcol[0].r)[1] / 255.0f; | values[1] = (&mcol[0].r)[1] / 255.0f; | ||||
| values[0] = (&mcol[0].r)[2] / 255.0f; | values[0] = (&mcol[0].r)[2] / 255.0f; | ||||
| } | } | ||||
| static void rna_MeshColor_color1_set(PointerRNA *ptr, const float *values) | static void rna_MeshColor_color1_set(PointerRNA *ptr, const float *values) | ||||
| { | { | ||||
| MCol *mcol = (MCol *)ptr->data; | MCol *mcol = (MCol *)ptr->data; | ||||
| (&mcol[0].r)[3] = round_fl_to_uchar_clamp(values[3] * 255.0f); | |||||
mont29: Would have always kept alpha as last line here and below, mixing it top and bottom adds to the… | |||||
| (&mcol[0].r)[2] = round_fl_to_uchar_clamp(values[0] * 255.0f); | (&mcol[0].r)[2] = round_fl_to_uchar_clamp(values[0] * 255.0f); | ||||
| (&mcol[0].r)[1] = round_fl_to_uchar_clamp(values[1] * 255.0f); | (&mcol[0].r)[1] = round_fl_to_uchar_clamp(values[1] * 255.0f); | ||||
| (&mcol[0].r)[0] = round_fl_to_uchar_clamp(values[2] * 255.0f); | (&mcol[0].r)[0] = round_fl_to_uchar_clamp(values[2] * 255.0f); | ||||
| } | } | ||||
| static void rna_MeshColor_color2_get(PointerRNA *ptr, float *values) | static void rna_MeshColor_color2_get(PointerRNA *ptr, float *values) | ||||
| { | { | ||||
| MCol *mcol = (MCol *)ptr->data; | MCol *mcol = (MCol *)ptr->data; | ||||
| values[3] = (&mcol[1].r)[3] / 255.0f; | |||||
| values[2] = (&mcol[1].r)[0] / 255.0f; | values[2] = (&mcol[1].r)[0] / 255.0f; | ||||
| values[1] = (&mcol[1].r)[1] / 255.0f; | values[1] = (&mcol[1].r)[1] / 255.0f; | ||||
| values[0] = (&mcol[1].r)[2] / 255.0f; | values[0] = (&mcol[1].r)[2] / 255.0f; | ||||
| } | } | ||||
| static void rna_MeshColor_color2_set(PointerRNA *ptr, const float *values) | static void rna_MeshColor_color2_set(PointerRNA *ptr, const float *values) | ||||
| { | { | ||||
| MCol *mcol = (MCol *)ptr->data; | MCol *mcol = (MCol *)ptr->data; | ||||
| (&mcol[1].r)[3] = round_fl_to_uchar_clamp(values[3] * 255.0f); | |||||
| (&mcol[1].r)[2] = round_fl_to_uchar_clamp(values[0] * 255.0f); | (&mcol[1].r)[2] = round_fl_to_uchar_clamp(values[0] * 255.0f); | ||||
| (&mcol[1].r)[1] = round_fl_to_uchar_clamp(values[1] * 255.0f); | (&mcol[1].r)[1] = round_fl_to_uchar_clamp(values[1] * 255.0f); | ||||
| (&mcol[1].r)[0] = round_fl_to_uchar_clamp(values[2] * 255.0f); | (&mcol[1].r)[0] = round_fl_to_uchar_clamp(values[2] * 255.0f); | ||||
| } | } | ||||
| static void rna_MeshColor_color3_get(PointerRNA *ptr, float *values) | static void rna_MeshColor_color3_get(PointerRNA *ptr, float *values) | ||||
| { | { | ||||
| MCol *mcol = (MCol *)ptr->data; | MCol *mcol = (MCol *)ptr->data; | ||||
| values[3] = (&mcol[2].r)[3] / 255.0f; | |||||
| values[2] = (&mcol[2].r)[0] / 255.0f; | values[2] = (&mcol[2].r)[0] / 255.0f; | ||||
| values[1] = (&mcol[2].r)[1] / 255.0f; | values[1] = (&mcol[2].r)[1] / 255.0f; | ||||
| values[0] = (&mcol[2].r)[2] / 255.0f; | values[0] = (&mcol[2].r)[2] / 255.0f; | ||||
| } | } | ||||
| static void rna_MeshColor_color3_set(PointerRNA *ptr, const float *values) | static void rna_MeshColor_color3_set(PointerRNA *ptr, const float *values) | ||||
| { | { | ||||
| MCol *mcol = (MCol *)ptr->data; | MCol *mcol = (MCol *)ptr->data; | ||||
| (&mcol[2].r)[3] = round_fl_to_uchar_clamp(values[3] * 255.0f); | |||||
| (&mcol[2].r)[2] = round_fl_to_uchar_clamp(values[0] * 255.0f); | (&mcol[2].r)[2] = round_fl_to_uchar_clamp(values[0] * 255.0f); | ||||
| (&mcol[2].r)[1] = round_fl_to_uchar_clamp(values[1] * 255.0f); | (&mcol[2].r)[1] = round_fl_to_uchar_clamp(values[1] * 255.0f); | ||||
| (&mcol[2].r)[0] = round_fl_to_uchar_clamp(values[2] * 255.0f); | (&mcol[2].r)[0] = round_fl_to_uchar_clamp(values[2] * 255.0f); | ||||
| } | } | ||||
| static void rna_MeshColor_color4_get(PointerRNA *ptr, float *values) | static void rna_MeshColor_color4_get(PointerRNA *ptr, float *values) | ||||
| { | { | ||||
| MCol *mcol = (MCol *)ptr->data; | MCol *mcol = (MCol *)ptr->data; | ||||
| values[2] = (&mcol[3].r)[0] / 255.0f; | values[2] = (&mcol[3].r)[0] / 255.0f; | ||||
| values[1] = (&mcol[3].r)[1] / 255.0f; | values[1] = (&mcol[3].r)[1] / 255.0f; | ||||
| values[0] = (&mcol[3].r)[2] / 255.0f; | values[0] = (&mcol[3].r)[2] / 255.0f; | ||||
| values[3] = (&mcol[3].r)[3] / 255.0f; | |||||
| } | } | ||||
| static void rna_MeshColor_color4_set(PointerRNA *ptr, const float *values) | static void rna_MeshColor_color4_set(PointerRNA *ptr, const float *values) | ||||
| { | { | ||||
| MCol *mcol = (MCol *)ptr->data; | MCol *mcol = (MCol *)ptr->data; | ||||
| (&mcol[3].r)[3] = round_fl_to_uchar_clamp(values[3] * 255.0f); | |||||
| (&mcol[3].r)[2] = round_fl_to_uchar_clamp(values[0] * 255.0f); | (&mcol[3].r)[2] = round_fl_to_uchar_clamp(values[0] * 255.0f); | ||||
| (&mcol[3].r)[1] = round_fl_to_uchar_clamp(values[1] * 255.0f); | (&mcol[3].r)[1] = round_fl_to_uchar_clamp(values[1] * 255.0f); | ||||
| (&mcol[3].r)[0] = round_fl_to_uchar_clamp(values[2] * 255.0f); | (&mcol[3].r)[0] = round_fl_to_uchar_clamp(values[2] * 255.0f); | ||||
| } | } | ||||
| static void rna_MeshLoopColor_color_get(PointerRNA *ptr, float *values) | static void rna_MeshLoopColor_color_get(PointerRNA *ptr, float *values) | ||||
| { | { | ||||
| MLoopCol *mcol = (MLoopCol *)ptr->data; | MLoopCol *mcol = (MLoopCol *)ptr->data; | ||||
| values[0] = (&mcol->r)[0] / 255.0f; | values[0] = (&mcol->r)[0] / 255.0f; | ||||
| values[1] = (&mcol->r)[1] / 255.0f; | values[1] = (&mcol->r)[1] / 255.0f; | ||||
| values[2] = (&mcol->r)[2] / 255.0f; | values[2] = (&mcol->r)[2] / 255.0f; | ||||
| values[3] = (&mcol->r)[3] / 255.0f; | |||||
| } | } | ||||
| static void rna_MeshLoopColor_color_set(PointerRNA *ptr, const float *values) | static void rna_MeshLoopColor_color_set(PointerRNA *ptr, const float *values) | ||||
| { | { | ||||
| MLoopCol *mcol = (MLoopCol *)ptr->data; | MLoopCol *mcol = (MLoopCol *)ptr->data; | ||||
| (&mcol->r)[0] = round_fl_to_uchar_clamp(values[0] * 255.0f); | (&mcol->r)[0] = round_fl_to_uchar_clamp(values[0] * 255.0f); | ||||
| (&mcol->r)[1] = round_fl_to_uchar_clamp(values[1] * 255.0f); | (&mcol->r)[1] = round_fl_to_uchar_clamp(values[1] * 255.0f); | ||||
| (&mcol->r)[2] = round_fl_to_uchar_clamp(values[2] * 255.0f); | (&mcol->r)[2] = round_fl_to_uchar_clamp(values[2] * 255.0f); | ||||
| (&mcol->r)[3] = round_fl_to_uchar_clamp(values[3] * 255.0f); | |||||
| } | } | ||||
| static int rna_Mesh_texspace_editable(PointerRNA *ptr, const char **UNUSED(r_info)) | static int rna_Mesh_texspace_editable(PointerRNA *ptr, const char **UNUSED(r_info)) | ||||
| { | { | ||||
| Mesh *me = (Mesh *)ptr->data; | Mesh *me = (Mesh *)ptr->data; | ||||
| return (me->texflag & ME_AUTOSPACE) ? 0 : PROP_EDITABLE; | return (me->texflag & ME_AUTOSPACE) ? 0 : PROP_EDITABLE; | ||||
| } | } | ||||
| ▲ Show 20 Lines • Show All 1,827 Lines • ▼ Show 20 Lines | RNA_def_property_collection_funcs(prop, "rna_MeshColorLayer_data_begin", "rna_iterator_array_next", | ||||
| "rna_MeshColorLayer_data_length", NULL, NULL, NULL); | "rna_MeshColorLayer_data_length", NULL, NULL, NULL); | ||||
| srna = RNA_def_struct(brna, "MeshColor", NULL); | srna = RNA_def_struct(brna, "MeshColor", NULL); | ||||
| RNA_def_struct_sdna(srna, "MCol"); | RNA_def_struct_sdna(srna, "MCol"); | ||||
| RNA_def_struct_ui_text(srna, "Mesh Vertex Color", "Vertex colors for a face in a Mesh"); | RNA_def_struct_ui_text(srna, "Mesh Vertex Color", "Vertex colors for a face in a Mesh"); | ||||
| RNA_def_struct_path_func(srna, "rna_MeshColor_path"); | RNA_def_struct_path_func(srna, "rna_MeshColor_path"); | ||||
| prop = RNA_def_property(srna, "color1", PROP_FLOAT, PROP_COLOR); | prop = RNA_def_property(srna, "color1", PROP_FLOAT, PROP_COLOR); | ||||
| RNA_def_property_array(prop, 3); | RNA_def_property_array(prop, 4); | ||||
| RNA_def_property_range(prop, 0.0f, 1.0f); | RNA_def_property_range(prop, 0.0f, 1.0f); | ||||
| RNA_def_property_float_funcs(prop, "rna_MeshColor_color1_get", "rna_MeshColor_color1_set", NULL); | RNA_def_property_float_funcs(prop, "rna_MeshColor_color1_get", "rna_MeshColor_color1_set", NULL); | ||||
| RNA_def_property_ui_text(prop, "Color 1", ""); | RNA_def_property_ui_text(prop, "Color 1", ""); | ||||
| RNA_def_property_update(prop, 0, "rna_Mesh_update_data"); | RNA_def_property_update(prop, 0, "rna_Mesh_update_data"); | ||||
| prop = RNA_def_property(srna, "color2", PROP_FLOAT, PROP_COLOR); | prop = RNA_def_property(srna, "color2", PROP_FLOAT, PROP_COLOR); | ||||
| RNA_def_property_array(prop, 3); | RNA_def_property_array(prop, 4); | ||||
| RNA_def_property_range(prop, 0.0f, 1.0f); | RNA_def_property_range(prop, 0.0f, 1.0f); | ||||
| RNA_def_property_float_funcs(prop, "rna_MeshColor_color2_get", "rna_MeshColor_color2_set", NULL); | RNA_def_property_float_funcs(prop, "rna_MeshColor_color2_get", "rna_MeshColor_color2_set", NULL); | ||||
| RNA_def_property_ui_text(prop, "Color 2", ""); | RNA_def_property_ui_text(prop, "Color 2", ""); | ||||
| RNA_def_property_update(prop, 0, "rna_Mesh_update_data"); | RNA_def_property_update(prop, 0, "rna_Mesh_update_data"); | ||||
| prop = RNA_def_property(srna, "color3", PROP_FLOAT, PROP_COLOR); | prop = RNA_def_property(srna, "color3", PROP_FLOAT, PROP_COLOR); | ||||
| RNA_def_property_array(prop, 3); | RNA_def_property_array(prop, 4); | ||||
| RNA_def_property_range(prop, 0.0f, 1.0f); | RNA_def_property_range(prop, 0.0f, 1.0f); | ||||
| RNA_def_property_float_funcs(prop, "rna_MeshColor_color3_get", "rna_MeshColor_color3_set", NULL); | RNA_def_property_float_funcs(prop, "rna_MeshColor_color3_get", "rna_MeshColor_color3_set", NULL); | ||||
| RNA_def_property_ui_text(prop, "Color 3", ""); | RNA_def_property_ui_text(prop, "Color 3", ""); | ||||
| RNA_def_property_update(prop, 0, "rna_Mesh_update_data"); | RNA_def_property_update(prop, 0, "rna_Mesh_update_data"); | ||||
| prop = RNA_def_property(srna, "color4", PROP_FLOAT, PROP_COLOR); | prop = RNA_def_property(srna, "color4", PROP_FLOAT, PROP_COLOR); | ||||
| RNA_def_property_array(prop, 3); | RNA_def_property_array(prop, 4); | ||||
| RNA_def_property_range(prop, 0.0f, 1.0f); | RNA_def_property_range(prop, 0.0f, 1.0f); | ||||
| RNA_def_property_float_funcs(prop, "rna_MeshColor_color4_get", "rna_MeshColor_color4_set", NULL); | RNA_def_property_float_funcs(prop, "rna_MeshColor_color4_get", "rna_MeshColor_color4_set", NULL); | ||||
| RNA_def_property_ui_text(prop, "Color 4", ""); | RNA_def_property_ui_text(prop, "Color 4", ""); | ||||
| RNA_def_property_update(prop, 0, "rna_Mesh_update_data"); | RNA_def_property_update(prop, 0, "rna_Mesh_update_data"); | ||||
| } | } | ||||
| static void rna_def_mloopcol(BlenderRNA *brna) | static void rna_def_mloopcol(BlenderRNA *brna) | ||||
| { | { | ||||
| Show All 33 Lines | static void rna_def_mloopcol(BlenderRNA *brna) | ||||
| srna = RNA_def_struct(brna, "MeshLoopColor", NULL); | srna = RNA_def_struct(brna, "MeshLoopColor", NULL); | ||||
| RNA_def_struct_sdna(srna, "MLoopCol"); | RNA_def_struct_sdna(srna, "MLoopCol"); | ||||
| RNA_def_struct_ui_text(srna, "Mesh Vertex Color", "Vertex loop colors in a Mesh"); | RNA_def_struct_ui_text(srna, "Mesh Vertex Color", "Vertex loop colors in a Mesh"); | ||||
| RNA_def_struct_path_func(srna, "rna_MeshColor_path"); | RNA_def_struct_path_func(srna, "rna_MeshColor_path"); | ||||
| prop = RNA_def_property(srna, "color", PROP_FLOAT, PROP_COLOR); | prop = RNA_def_property(srna, "color", PROP_FLOAT, PROP_COLOR); | ||||
| RNA_def_property_array(prop, 3); | RNA_def_property_array(prop, 4); | ||||
| RNA_def_property_range(prop, 0.0f, 1.0f); | RNA_def_property_range(prop, 0.0f, 1.0f); | ||||
| RNA_def_property_float_funcs(prop, "rna_MeshLoopColor_color_get", "rna_MeshLoopColor_color_set", NULL); | RNA_def_property_float_funcs(prop, "rna_MeshLoopColor_color_get", "rna_MeshLoopColor_color_set", NULL); | ||||
| RNA_def_property_ui_text(prop, "Color", ""); | RNA_def_property_ui_text(prop, "Color", ""); | ||||
| RNA_def_property_update(prop, 0, "rna_Mesh_update_data"); | RNA_def_property_update(prop, 0, "rna_Mesh_update_data"); | ||||
| } | } | ||||
| static void rna_def_mproperties(BlenderRNA *brna) | static void rna_def_mproperties(BlenderRNA *brna) | ||||
| { | { | ||||
| ▲ Show 20 Lines • Show All 1,136 Lines • Show Last 20 Lines | |||||
Would have always kept alpha as last line here and below, mixing it top and bottom adds to the confusion imho (we already have to inverse RGB order due to stupid historical reasons… ;) ).