It seems to throwaway Z translations anyways… You can get crafty and do something like this (stacked alongside another ProjectionTransform) to get a depth effect I guess: .rotation3DEffect(.zero, axis: (x: 0.0, y: 0.0, z: 0.0), anchorZ: something, perspective: whatever)