Thin canvas draw seams and own grid worker
This commit is contained in:
@@ -203,6 +203,15 @@ struct LegacyCanvasDrawMergeDisplayResolveExecution {
|
||||
std::function<void()> unbind_resolve_texture;
|
||||
};
|
||||
|
||||
struct LegacyCanvasDrawMergePostDrawExecution {
|
||||
std::function<void()> draw_mask_free;
|
||||
std::function<void()> draw_mask_line;
|
||||
std::function<void()> draw_smask_faces;
|
||||
std::function<void()> draw_grid_modes;
|
||||
std::function<void()> draw_heightmap;
|
||||
std::function<void()> draw_current_modes;
|
||||
};
|
||||
|
||||
[[nodiscard]] inline LegacyCanvasDrawMergeShaderExecution legacy_shader_manager_draw_merge_execution() noexcept
|
||||
{
|
||||
return {
|
||||
@@ -492,4 +501,31 @@ inline void execute_legacy_canvas_draw_merge_display_resolve(
|
||||
execution.unbind_resolve_texture();
|
||||
}
|
||||
|
||||
inline void execute_legacy_canvas_draw_merge_post_draw(
|
||||
bool smask_active,
|
||||
bool draw_mask_overlay,
|
||||
int smask_mode,
|
||||
bool draw_grid_modes,
|
||||
const LegacyCanvasDrawMergePostDrawExecution& execution)
|
||||
{
|
||||
if (smask_active || draw_mask_overlay) {
|
||||
if (smask_mode == 1) {
|
||||
execution.draw_mask_free();
|
||||
} else if (smask_mode == 2) {
|
||||
execution.draw_mask_line();
|
||||
}
|
||||
}
|
||||
|
||||
if (smask_active) {
|
||||
execution.draw_smask_faces();
|
||||
}
|
||||
|
||||
if (draw_grid_modes) {
|
||||
execution.draw_grid_modes();
|
||||
}
|
||||
|
||||
execution.draw_heightmap();
|
||||
execution.draw_current_modes();
|
||||
}
|
||||
|
||||
} // namespace pp::panopainter
|
||||
|
||||
Reference in New Issue
Block a user