Clean retained stroke extraction build

This commit is contained in:
2026-06-14 10:23:29 +02:00
parent 8f02e39058
commit be42224561
13 changed files with 658 additions and 287 deletions

View File

@@ -17,6 +17,8 @@
namespace pp::panopainter {
void setup_legacy_stroke_dual_shader(bool uses_pattern);
struct LegacyStrokeSampleExecutionRequest {
std::string_view context;
glm::vec2 target_size {};
@@ -192,6 +194,24 @@ struct LegacyCanvasStrokeMainPassExecutionRequest {
std::function<void()> unbind_samplers;
};
[[nodiscard]] inline LegacyCanvasStrokeMainPassExecutionRequest make_legacy_canvas_stroke_main_pass_execution_request(
std::string_view context,
std::function<void()> bind_samplers,
std::function<void()> bind_textures,
std::function<void()> execute_frame_pass,
std::function<void()> unbind_textures,
std::function<void()> unbind_samplers)
{
return LegacyCanvasStrokeMainPassExecutionRequest {
.context = context,
.bind_samplers = std::move(bind_samplers),
.bind_textures = std::move(bind_textures),
.execute_frame_pass = std::move(execute_frame_pass),
.unbind_textures = std::move(unbind_textures),
.unbind_samplers = std::move(unbind_samplers),
};
}
[[nodiscard]] inline LegacyCanvasStrokeSamplerDispatch make_legacy_canvas_stroke_live_pass_sampler_dispatch(
std::function<void(int)> bind_brush_tip_sampler,
std::function<void()> unbind_brush_tip_sampler,