function PlayerCamera:spawn_camera_unit()
    local fps_arms_unit = Idstring("units/payday2/characters/fps_criminals_suit_1/fps_criminals_suit_1")

    local character_name = managers.network:session():local_peer():character()
    if character_name then
        character_name = CriminalsManager.convert_old_to_new_character_workname(character_name)
        local new_fps_arms_unit = managers.blackmarket:_character_tweak_data_by_name(character_name).fps_arms_unit

        if new_fps_arms_unit then
            fps_arms_unit = Idstring(new_fps_arms_unit)
        end
    end

    local lvl_tweak_data = Global.level_data and Global.level_data.level_id and tweak_data.levels[Global.level_data.level_id]
    self._camera_unit = World:spawn_unit(fps_arms_unit, self._m_cam_pos, self._m_cam_rot)
    self._machine = self._camera_unit:anim_state_machine()

    self._unit:link(self._camera_unit)
    self._camera_unit:base():set_parent_unit(self._unit)
    self._camera_unit:base():reset_properties()
    self._camera_unit:base():set_stance_instant("standard")

    if _G.IS_VR then
        self._camera_unit:set_visible(false)
    end
end