new GPURenderer(...) constructs and returns a concrete DesktopGPURenderer
or MobileGPURenderer (a constructor-return override), never a bare facade.
The public type is that real union, so the shipped declarations describe the
object consumers actually receive — including its points, textureAtlas,
etc. — instead of an empty facade class that claimed a method the instances
don't have.
new GPURenderer(...)constructs and returns a concreteDesktopGPURendererorMobileGPURenderer(a constructor-return override), never a bare facade. The public type is that real union, so the shipped declarations describe the object consumers actually receive — including itspoints,textureAtlas, etc. — instead of an empty facade class that claimed a method the instances don't have.