Changeset View
Changeset View
Standalone View
Standalone View
source/blender/editors/uvedit/uvedit_draw.c
| Show First 20 Lines • Show All 45 Lines • ▼ Show 20 Lines | |||||
| #include "BLI_math.h" | #include "BLI_math.h" | ||||
| #include "BLI_utildefines.h" | #include "BLI_utildefines.h" | ||||
| #include "BLI_buffer.h" | #include "BLI_buffer.h" | ||||
| #include "BLI_bitmap.h" | #include "BLI_bitmap.h" | ||||
| #include "BKE_DerivedMesh.h" | #include "BKE_DerivedMesh.h" | ||||
| #include "BKE_editmesh.h" | #include "BKE_editmesh.h" | ||||
| #include "BKE_material.h" | #include "BKE_material.h" | ||||
| #include "BKE_layer.h" | |||||
| #include "BKE_scene.h" | #include "BKE_scene.h" | ||||
| #include "BIF_glutil.h" | #include "BIF_glutil.h" | ||||
| #include "DEG_depsgraph.h" | #include "DEG_depsgraph.h" | ||||
| #include "DEG_depsgraph_query.h" | #include "DEG_depsgraph_query.h" | ||||
| ▲ Show 20 Lines • Show All 1,033 Lines • ▼ Show 20 Lines | |||||
| { | { | ||||
| ToolSettings *toolsettings = scene->toolsettings; | ToolSettings *toolsettings = scene->toolsettings; | ||||
| bool show_uvedit, show_uvshadow, show_texpaint_uvshadow; | bool show_uvedit, show_uvshadow, show_texpaint_uvshadow; | ||||
| show_uvedit = ED_space_image_show_uvedit(sima, obedit); | show_uvedit = ED_space_image_show_uvedit(sima, obedit); | ||||
| draw_uv_shadows_get(sima, eval_ctx, obact, obedit, &show_uvshadow, &show_texpaint_uvshadow); | draw_uv_shadows_get(sima, eval_ctx, obact, obedit, &show_uvshadow, &show_texpaint_uvshadow); | ||||
| if (show_uvedit || show_uvshadow || show_texpaint_uvshadow) { | if (show_uvedit || show_uvshadow || show_texpaint_uvshadow) { | ||||
| if (show_uvshadow) | if (show_uvshadow) { | ||||
| draw_uvs_shadow(obedit); | draw_uvs_shadow(obedit); | ||||
| else if (show_uvedit) | } | ||||
| draw_uvs(sima, scene, view_layer, obedit, depsgraph); | else if (show_uvedit) { | ||||
| else | uint objects_len = 0; | ||||
| Object **objects = BKE_view_layer_array_from_objects_in_edit_mode( | |||||
| view_layer, &objects_len, | |||||
| .filter_fn = BKE_view_layer_filter_edit_mesh_has_uvs, | |||||
| .no_dupe_data = true); | |||||
| for (uint ob_index = 0; ob_index < objects_len; ob_index++) { | |||||
| Object *ob_iter = objects[ob_index]; | |||||
| draw_uvs(sima, scene, view_layer, ob_iter, depsgraph); | |||||
| } | |||||
| MEM_SAFE_FREE(objects); | |||||
| } | |||||
| else { | |||||
| draw_uvs_texpaint(sima, scene, view_layer, obact); | draw_uvs_texpaint(sima, scene, view_layer, obact); | ||||
| } | |||||
| if (show_uvedit && !(toolsettings->use_uv_sculpt)) | if (show_uvedit && !(toolsettings->use_uv_sculpt)) | ||||
| ED_image_draw_cursor(ar, sima->cursor); | ED_image_draw_cursor(ar, sima->cursor); | ||||
| } | } | ||||
| } | } | ||||