Difference between Snap 2D Vertices to Pixel and Snap 2D Transforms to Pixel

Godot Version

4.3

Question

I’m working on a pixel game, and would like to properly understand the difference between Snap 2D Vertices to Pixel and Snap 2D Transforms to Pixel, and also when to use one, other, or both of them?

I get that snapping vertices will keep canvas items’ positions aligned with pixels, and snapping transforms will keep the transformations pixel-aligned, but I can’t fully grok why to use one versus the other, or what using both of them would do?

On-top of both those settings, why or when should I consider using GPU Pixel Snap?

According to the documentation for those settings, you should only use Snap 2D Transforms to Pixel. IIRC Snap 2D Vertices to Pixel was implemented very early on in development of 4.0 while they were still figuring out how pixel snap should behave and is planned to be deprecated in the future.

GPU Pixel Snap is a setting in 3.x that Snap 2D Transforms to Pixel supersedes in 4.x.