I thought about why rotating around the X and Y axes was weird and stretchy and I think it’s because the texture is a 2D plane on XY, so it only really makes sense to rotate around Z.
edit: come to think of it, it probably depends on the mapping method.