def __init__(self):
        """ Constructs a new empty effect, this is a private constructor and
        should not be called. Instead, use Effect.load() """
        RPObject.__init__(self)
        self.effect_id = Effect._EFFECT_ID
        Effect._EFFECT_ID += 1
        self.filename = None
        self._options = self._DEFAULT_OPTIONS.copy()
        self._generated_shader_paths = {}
        self._shader_objs = {}
 Constructs a new empty effect, this is a private constructor and
        should not be called. Instead, use Effect.load() 
metadrive/render_pipeline/rpcore/effect.py