Add a tiles effect
The two-dimensional counterpart of scanlines: rectangular tiles cut at random positions from the source images, in three arrangements. A grid draws its column widths and row heights once so the cells stay aligned even when jittered; brick repacks every row on its own so the vertical seams do not meet; scatter fills the canvas from one of the images and drops loose tiles over it. The plan is drawn serially from the rng as scanlines does, but scattered tiles overlap, so they are painted in plan order on one thread: letting threads race for the same pixels would leave the output depending on their scheduling. A source smaller than a tile is repeated to fill the cell, sideways and then downwards, which keeps grid and brick gapless. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -36,6 +36,7 @@ add_library(effector_core STATIC
|
||||
src/effects/overlay.cpp
|
||||
src/effects/scanlines.cpp
|
||||
src/effects/text.cpp
|
||||
src/effects/tiles.cpp
|
||||
)
|
||||
target_include_directories(effector_core PUBLIC src)
|
||||
# The core is GUI-free: it only needs gdk-pixbuf for decoding and encoding,
|
||||
|
||||
Reference in New Issue
Block a user