def create_pssm_camera_rig(self):
        """
        Construct the actual PSSM rig
        Returns: None

        """
        self.camera_rig = PSSMCameraRig(self.num_splits)
        # Set the max distance from the camera where shadows are rendered
        self.camera_rig.set_pssm_distance(self.engine.global_config["shadow_range"])
        # Set the distance between the far plane of the frustum and the sun, objects farther do not cas shadows
        self.camera_rig.set_sun_distance(64)
        # Set the logarithmic factor that defines the splits
        self.camera_rig.set_logarithmic_factor(0.2)

        self.camera_rig.set_border_bias(self.border_bias)
        # Enable CSM splits snapping to avoid shadows flickering when moving
        self.camera_rig.set_use_stable_csm(True)
        # Keep the film size roughly constant to avoid flickering when moving
        self.camera_rig.set_use_fixed_film_size(True)
        # Set the resolution of each split shadow map
        self.camera_rig.set_resolution(self.split_resolution)
        self.camera_rig.reparent_to(self.engine.render)

        Construct the actual PSSM rig
        Returns: None

        
metadrive/engine/core/pssm.py