Jump to content
You must now use your email address to sign in [click for more info] ×

Recommended Posts

@dmstraker

@James Ritson

Hi,

 

i really can't get behind about Affinity's concept of "Blend Options" / Anti-Aliasing / Coverage Map.

In the screenshot, you can see a totally simple rectangular shape, no fill, 1 pixel stroke of 50% gray.

The shape is intentional rotated to stimulate anti-aliasing, utilizing a (default) coverage map.

Key question: in case anti-aliasing is "forced OFF". What criteria are used by affinity to decide if pixel is visible or transparent?

  • Based on the default coverage map, i would assume that pixel needs to be >=50% covered by stroke to get visible. The screenshot proves this wrong. Even pixel with less than 10% coverage are rendered.
  • If you add a node to the coverage map at 50%/50%, and move it to the upper left corner, you get the maximum number of pixels colored: every pixel which is within half a pixel stroke (from center) gets included. Seems ok.
  • If you move it to the lower right corner, you get the minimum number of pixels colored: None. Seems ok.
  • What seems to be impossible: get exactly one pixel per x-position colored. This is un-intuitive. With the default straight coverage map, i would expect all pixels which are >=50% covered by the stroke to get colored. But the result is totally different, and includes much more pixels. Again: why? based on which criteria?
  • The Blend Gamma has no effect when Anti-aliasing is forced OFF.

I hope that someone can put some light into this 😉

image.thumb.png.0b269b8f318e4701e2671c196f0529dd.png

 

Mac mini M1 A2348 | Windows 10 - AMD Ryzen 9 5900x - 32 GB RAM - Nvidia GTX 1080

LG34WK950U-W, calibrated to DCI-P3 with LG Calibration Studio / Spider 5

iPad Air Gen 5 (2022) A2589

Special interest into procedural texture filter, edit alpha channel, RGB/16 and RGB/32 color formats, stacking, finding root causes for misbehaving files, finding creative solutions for unsolvable tasks, finding bugs in Apps.

 

Link to comment
Share on other sites

17 minutes ago, Lagarto said:

I do not understand the function of inheritance control, either. "Force Off" seems to apply top position coverage map rendering for layers that have standard antialiasing, but "Force On" does not force antialiasing for layers that have it turned off with a non-standard coverage map curve. Or perhaps this control is intended to be used to adjust antialiasing when there are overlapping objects so that the coverage map effects of top layers can be eliminated.

The feature could certainly be better documented, and with demonstrations

Hi Lagarto,

 

thanks for your reply. My Questions relates to Photo, but it seems the function is shared between the Affinity apps.

Regarding inheritance:

If you nest layer (e.g. groups), the nested layer will use the settings of the upper layer. Quite useful to globally set it on / off, just group all layers, and set it on group level.

And similar to you, my original goal was to find an option to shut anti-aliasing off, and get hard edges, or 1 pixel wide lines, but without collateral damage of getting 0 or 2 pixel wide lines. Whatever i tried, i was unable to achieve this goal:

  1. Posterize filter (does reduce colors, but does not stop anti-aliasing by transparency)
  2. Pixelate filter (does pixelate, destructive,  but does not stop anti-aliasing by transparency)
  3. Blend Range (default coverage map): collateral damage of 1 pixel objects become 0px (invisible) or 2-3 pixel wide
  4. Blend Range (own coverage map): in simplistic cases, you can optimize coverage map manually to get 95% but never perfect results, but only for e.g. a line with fixed rotation. In case of multiple rotation angles (or circle), impossible to get a global setting. Too much effort.
  5. Procedural texture filter: A=sign(A-0.5) works great for objects (lines / shapes) clearly isolated by transparency (alpha channel), does not help if alpha=1 across image.
  6. Preferences>Performance>View Quality>nearest neighbor: no solution, discrepancy between view in Photo and exported documents

It is extremely frustrating, essentially impossible to achieve pixel-exact results (hard edges, lines of 1 pixel, exact color, no color blending) using Affinity Photo's vector shapes, text, curves / pen tool in non-simplistic cases.

There are numerous posts from users trying to create small logos or profile images (for youtube, facebook, instagram, ...), complaining unsharp / blurry results.

I tried (as others) to analyze the root cause, starting with fractional pixel positions, resizing gone bad, text / vector font rendering issues, which all can be avoided or controlled. But when it comes to stopping anti-aliasing, there seems to be no road to success.

Regards,

Timo

Mac mini M1 A2348 | Windows 10 - AMD Ryzen 9 5900x - 32 GB RAM - Nvidia GTX 1080

LG34WK950U-W, calibrated to DCI-P3 with LG Calibration Studio / Spider 5

iPad Air Gen 5 (2022) A2589

Special interest into procedural texture filter, edit alpha channel, RGB/16 and RGB/32 color formats, stacking, finding root causes for misbehaving files, finding creative solutions for unsolvable tasks, finding bugs in Apps.

 

Link to comment
Share on other sites

5 hours ago, Lagarto said:

In Photo it is more practical as the results can be seen immediately ...

FWIW, if you enable the Pixel or Retina Pixel view option you can immediately see results of the force on/off stuff in AD too.

All 3 1.10.8, & all 3 V2.4.1 Mac apps; 2020 iMac 27"; 3.8GHz i7, Radeon Pro 5700, 32GB RAM; macOS 10.15.7
Affinity Photo 
1.10.8; Affinity Designer 1.108; & all 3 V2 apps for iPad; 6th Generation iPad 32 GB; Apple Pencil; iPadOS 15.7

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...

Important Information

Terms of Use | Privacy Policy | Guidelines | We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.