When bPreserve is true, existing layers will remain active, but when calling PopLayerState(), any changed properties will be restored back to their previous values. Calling DestroyLayer on an active layer id will make the layer inactive. The layer will be reactivated when the state is restored. (You can call DestroyLayer multiple times on the same layer id to remove successively older versions of a layer.)