For `sampler` here and in `Texture`, we should change the implementation a bit from the old one.  If the parameter is `undefined`, we should still use this default sampler, but set `_sampler` to `undefined` so we are returning what the user provided.