Skip to content

Settings File

In addition to the built in options available either through code or the GUI, SightLab has some additional global settings that can be set. Here is a list of those settings.

To change any of these per script you can use code similar to this (this is for the start text). You just need to add this before importing SightLab into your script. For changing the vizconnect (hardware configurations) you can use the built in parameters.

# Import before sightlab
from sightlab_utils import settings



def update_settings(setting_name, value):
    setattr(settings, setting_name, value)


# Change Starting Text
update_settings("START_TEXT", "Press Trigger to Continue")

# Change vizconnect using built in parameter
sightlab = sl.SightLab(vizconnectconfiglist=["Desktop", "Meta Quest Pro"])

Settings Available

# WINDOW_SIZE = viz.MainWindow.getSize(mode = viz.WINDOW_PIXELS)
WINDOW_SIZE = viz.MainWindow.getSize(mode = viz.WINDOW_PIXELS)
WINDOW_FOV = 79
#print(WINDOW_SIZE)

#individual window proprtions
xProportionFactor = .99
yProportionFactor = 0.9
WINDOW_X_SIZE = WINDOW_SIZE[0]*xProportionFactor
WINDOW_Y_SIZE = WINDOW_SIZE[1]*yProportionFactor
viz.window.setSize(WINDOW_X_SIZE, WINDOW_Y_SIZE)

#viz.window.setSize(1600, 900)
SCALE_FACTOR = viz.window.getSize()[1]/900

#Add to this if you have a custom vizconnect file you would like to use
VIZCONNECT_DICT = { 'Vive Pro Eye':         'vizconnect_config_vive_pro.py',
                    'Pupil Labs':   'vizconnect_config_vive_pupil_labs.py',
                    'Vive Tobii':       'vizconnect_config_vive_tobii.py',
                    'Desktop':          'vizconnect_config_desktop_3d.py',
                    'Desktop Server':           'vizconnect_config_desktop_server.py',
                    'Meta No Eyetracker':'vizconnect_config_oculus_simulate.py',
                    'Vive/ Vive Pro, Vive Pro 2': 'vizconnect_config_vive.py',
                    'StarVROne': 'vizconnect_config_starVR.py',
                    'HP Omnicept':'vizconnect_config_omnicept.py',
                    'Vive Focus Vision':'vizconnect_config_focus_vision_openxr.py',
                    'Vive Focus 3':'vizconnect_config_vive_focus.py',
                    'Driving Desktop': 'vizconnect_config_desktop_driving.py',
                    'Desktop Driving Controller': 'vizconnect_config_desktop_driving_controller.py',
                    'Driving Vive': 'vizconnect_config_vive_pro_driving.py',
                    'Driving Omnicept':'vizconnect_config_omnicept_driving.py',
                    'Driving SteamVR': 'vizconnect_config_vive_driving.py',
                    'Driving Meta': 'vizconnect_config_meta_driving.py',
                    'Driving OpenXR No EyeTR': 'vizconnect_config_openxr_driving_no_eyetr.py',
                    'Driving Quest Pro': 'vizconnect_config_openxr_driving.py',
                    'Driving Varjo': 'vizconnect_config_openxr_driving.py',
                    'Driving OpenXR': 'vizconnect_config_openxr_driving.py',
                    'Meta Quest Pro': 'vizconnect_config_openxr.py',
                    'Focus Vision Hand': 'vizconnect_config_meta_hand.py',
                    'Meta Pro Hand': 'vizconnect_config_meta_hand.py',
                    'Meta Quest 3 Hand': 'vizconnect_config_meta_quest_3_hand.py',
                    'Varjo': 'vizconnect_config_varjo.py',
                    'Varjo and New Controllers' : ' vizconnect_config_varjo_new_controllers.py',
                    'PPT HMD':'vizconnect_config_vive_pro_hmd_PPT.py',
                    'Meta Quest PPT': 'vizconnect_config_hmd_PPT.py',
                    'Meta Quest 3':'vizconnect_quest_3.py',
                    'Meta':'vizconnect_config_oculus_simulate.py',
                    'SteamVR':'vizconnect_config_steamvr.py',
                    'Vive Focus 3 OpenXR':'vizconnect_config_vive_focus_openXR.py',
                    'OpenXR NoEyeTR':'vizconnect_opexr_no_eyetr.py',
                    'OpenXR EyeTR':'vizconnect_config_openxr_eyetr.py',
                    'Omnicept OpenXR': 'vizconnect_config_openxr_omnicept.py',
                    'Desktop Avatar': 'vizconnect_config_desktop_avatar.py',
                    'Meta Avatar': 'vizconnect_config_meta_avatar.py',
                    'Driving Birds Eye Desktop':'vizconnect_config_desktop_driving_birds_eye.py',
                    'Driving Birds Eye SteamVR':'vizconnect_config_driving_steamvr_birdseye',
                    'EyeTracking Data Only':'vizconnect_config_no_display.py',
                    'Omnicept Recorder': 'vizconnect_config_desktop_3d.py',
                    'OpenXR Recorder':'vizconnect_config_desktop_3d.py',
                    'Meta Quest 3 Recorder':'vizconnect_config_desktop_3d.py',
                    'Vive Focus 3 Recorder':'vizconnect_config_desktop_3d.py',
                    'Vive Focus Vision Recorder':'vizconnect_config_vive_recorder.py',
                    'Vive Trackers SteamVR': 'vizconnect_config_viveTrackers.py',
                    'Vive Trackers CC': 'vizconnect_config_viveTrackers_CC.py',
                    'Vive Trackers CC Female':'vizconnect_config_CC2.py',
                    'Mocopi':'vizconnect_config_mocopi.py',
                    'Vive Trackers Focus Vision':'vizconnect_config_vive_focus_openXR_trackers.py',
                    'Open XR Feet': 'vizconnect_config_openxr_feet.py',
                    'Head and Hands OpenXR': 'vizconnect_config_openxr_head_and_hands.py',
                    'Head and Hands OpenXR No Eye': 'vizconnect_config_OpenXR_NoEyeTr_head_and_hands.py',
                    'Manus OpenXR': 'vizconnect_config_manus_openxr.py',
                    'Manus SteamVR': 'vizconnect_config_manus_steamvr.py',
                    'Manus head and hands': 'vizconnect_config_head_and_hands_manus.py',
                    'Vizconnect Observer':'vizconnect_config_desktop_playback.py',
                    'Quest 3 Client': 'vizconnect_quest_3_Client.py',
                    'Screen Based Tobii': 'vizconnect_config_screen_based_tobii.py',
                    'Screen Based': 'vizconnect_config_screen_based.py',
                    'Vive Focus Vision SR Anipal':'vizconnect_config_vive_focus.py',
                    'Head and Hands SteamVR':'vizconnect_config_steamvr_head_and_hands.py',
                    'Desktop Head and Hands': 'vizconnect_config_desktop_head_and_hands.py',
                    'Projection VR': 'vizconnect_config_projection.py'}

VIZCONNECT_CONFIG_LIST  = ['Desktop', 'Vive Pro Eye','Vive Focus Vision','Vive Focus 3','Vive Focus 3 OpenXR','HP Omnicept','SteamVR' , 'Meta Quest Pro','Meta No Eyetracker','Meta Quest 3','Varjo','Projection VR','Vive/ Vive Pro, Vive Pro 2','Focus Vision Hand','Meta Pro Hand','Meta Quest 3 Hand','OpenXR EyeTR','OpenXR NoEyeTR','Pupil Labs', 'StarVROne','Vive Tobii','PPT HMD','Omnicept OpenXR',
'Vive Trackers Focus Vision','Mocopi','Vive Trackers SteamVR','Vive Trackers CC','Vive Trackers CC Female','Head and Hands OpenXR','Manus OpenXR','Manus SteamVR','Vizconnect Observer']

VIZCONNECT_CONFIG = None

OPENXR_VIZCONNECTS = ['Meta Quest Pro','Meta Pro Hand','Varjo','Meta Quest 3','Omnicept OpenXR','OpenXR NoEyeTR','Vive Focus 3 OpenXR','OpenXR EyeTR']

CONTINUE_EVENT_KEY = " "

#Compress videos, requires moviepy library
COMPRESS_VIDEOS = True
#.mp4, .avi or .mpg
VIDEO_FILE_TYPE = '.mpg'
BIT_RATE = '5000k'

VIDEO_RECORDING_WINDOW_HEIGHT= viz.setOption('viz.AVIRecorder.maxWidth','800')
VIDEO_RECORDING_WINDOW_WIDTH= viz.setOption('viz.AVIRecorder.maxHeight','720')

START_TEXT = "Press SPACEBAR to Start"

BIOPAC_TOGGLE = False

DISPERSION_THRESHOLD_VALUE = 1 #degrees
DURATION_THRESHOLD_VALUE = 0.1 #secs
DWELL_THRESHOLD_VALUE = 0.5 #secs

ROUND_VALUES = 3

FADE_IN_TIME = 0
FADE_OUT_TIME = 0

TRIAL_OR_SCENE = "Trial"

SHIFT_LOCK_TOGGLE = True

ADDITIONAL_SETTINGS = {
"Console": True,
"Gaze Path Visible": False,
}

PARTICIPANT_INFO1 = 'Last Name'
PARTICIPANT_INFO2 = 'First Name'
Was this page helpful?