paint: path and curve layers

This commit is contained in:
luboslenco
2026-05-13 17:11:52 +02:00
parent cf743de29b
commit d7116f2288
24 changed files with 657 additions and 86 deletions
+9
View File
@@ -38,6 +38,7 @@ slot_layer_t_array_t *slot_layer_get_filters(slot_layer_t *raw, bool include_gro
f32 slot_layer_get_opacity(slot_layer_t *raw);
i32 slot_layer_get_object_mask(slot_layer_t *raw);
bool slot_layer_is_layer(slot_layer_t *raw);
bool slot_layer_is_path(slot_layer_t *raw);
bool slot_layer_is_group(slot_layer_t *raw);
slot_layer_t *slot_layer_get_containing_group(slot_layer_t *raw);
bool slot_layer_is_filter(slot_layer_t *raw);
@@ -57,12 +58,15 @@ void layers_commands_merge_pack(gpu_pipeline_t *pipe, gpu_texture_t *i0, gpu_tex
i32 i1blending);
bool layers_is_fill_material();
void layers_update_fill_layers();
bool layers_is_path_material();
void layers_update_path_layers();
void layers_update_fill_layer(bool parse_paint);
void layers_update_linked_layers();
void layers_set_object_mask();
slot_layer_t *layers_new_layer(bool clear, i32 position, slot_layer_t *parent);
slot_layer_t *layers_new_mask(bool clear, slot_layer_t *parent, i32 position);
slot_layer_t *layers_new_group();
slot_layer_t *layers_new_path_layer(bool curved);
void layers_create_fill_layer(uv_type_t uv_type, mat4_t decal_mat, i32 position);
void layers_create_image_mask(asset_t *asset);
void layers_create_color_layer(i32 base_color, f32 occlusion, f32 roughness, f32 metallic, i32 position);
@@ -172,6 +176,11 @@ void ui_base_toggle_browser();
void ui_base_set_icon_scale();
void ui_base_set_viewport_col(i32 col);
void gizmo_update();
void util_layer_update_path();
bool util_layer_is_path_point_dragging();
void util_layer_add_path_point(slot_layer_t *l, f32 screen_x, f32 screen_y);
void util_layer_repaint_path(slot_layer_t *l);
void util_layer_clear_path_points(slot_layer_t *l);
void make_texcoord_run(node_shader_t *kong);
void context_init();
void context_select_material(i32 i);