https://bugs.kde.org/show_bug.cgi?id=461801
Bug ID: 461801 Summary: Several layer styles don't tile properly when used with vector shapes in wraparound mode Classification: Applications Product: krita Version: 5.1.3 Platform: Manjaro OS: Linux Status: REPORTED Severity: normal Priority: NOR Component: layer styles Assignee: krita-bugs-n...@kde.org Reporter: chirn...@hotmail.com Target Milestone: --- Created attachment 153729 --> https://bugs.kde.org/attachment.cgi?id=153729&action=edit Krita file that illustrates the problem. Turn on wrap-around mode to see. SUMMARY *** Not sure how fixable this is, but using most layer styles with vector shapes in wraparound mode produces artifacts at the image bounds. I guess it's not exactly an artifact and more that the layer style's effect terminates at the image bounds, but the result is that it doesn't tile properly in any case. *** STEPS TO REPRODUCE 1. Create a new square image. 2. Turn on wraparound mode. 3. Create a raster shape that extends past the edges of the original image size so that it's perfectly wrapping around. 4. Do the same with a vector shape, either to the image bounds or past it. 5. Apply the same layer style to both: This seems to manifest with outer glow, inner glow, bevel and emboss, drop shadow, possibly others. OBSERVED RESULT The vector shape with the layer style applied will exhibit artifacts at the edges of the original image bounds, whereas the raster shape will wrap around perfectly with the layer style applied. EXPECTED RESULT I would expect the two shapes to look the same when wrapping around. This does work in Photoshop, but I don't know the technical of that. PS seems to calculate the layer style differently when the object touches the image bounds. Strangely, if I drag around the raster layer (with the same layer style applied) over the vector area where the artifacts occur, then move it back to where it was and redraw the canvas manually (from script or the plugin I'm writing), the artifacts on the vector layer go away. I can even then export the image without artifacts if I do this. However, if I hide the vector layer and bring it back, the artifacts reappear. Not sure if that means it's just a rendering bug then, but it is weird that this works even temporarily. I did have some issues with more serious drawing artifacts getting baked into the image at the layer bounds, even when redrawing the canvas, but I deactivated "Use texture buffer" (I'm on Radeon mobile) and that seems to have at least fixed the "getting baked into the image" part. I still see artifacts, but redrawing the canvas or hiding/unhiding the layer now fixes that. Doesn't fix this tiling vector layer with layer styles issue, though. I also tried deactivating rendering acceleration altogether just in case, but that doesn't solve this issue (you can't use wrap around mode, but the issue is still evident at the edges). SOFTWARE/OS VERSIONS Manjaro Linux 22.0.0 all up to date XFCE 4.16 AMD Ryzen 5 2500U Device-1: AMD Raven Ridge [Radeon Vega Series / Radeon Mobile Series] driver: amdgpu v: kernel API: OpenGL v: 4.6 Mesa 22.2.1 renderer: AMD Radeon Vega 8 Graphics (raven LLVM 14.0.6 DRM 3.48 6.0.6-1-MANJARO) ADDITIONAL INFORMATION The plugin I'm writing is to streamline normal map creation (using the height to normal filter layer) for making tiling normal maps (for trim sheets and the like) for game engines and DCC programs, and ideally, I'd be able to offer a workflow that involves creating complex vector shapes using boolean operations and then applying layer styles to create effects like beveled edges and gradients, and have them tile properly across image boundaries. It all works fairly well with raster layers, and vector shapes as long as they don't extend past the image bounds, but I'd like to also be able to use vectors in a tiling way since cutting up raster layers is more destructive/less editable. -- You are receiving this mail because: You are watching all bug changes.