Log in

View Full Version : pylink world rendering


VizMars
04-25-2016, 12:37 PM
Hi!
I use a Eyelink Eye Tracker (SR Research) for the eye tracking and pylink as a communication interface in my experiment.
When I call pylink.doTrackerSetup() to calibrate the eye tracker, the rendering of my world is interrupted (i.e. the application window displays a splash screen) and Vizard needs time to reload the world after the calibration.
Does anyone know how I can fix this (e.g. by pausing the rendering and resuming it after the calibration)?

Jeff
04-25-2016, 10:13 PM
Is the issue that everything is loaded twice, before and after the calibration? If so, perhaps the script could be setup so that models are loaded only after the calibration is complete.

VizMars
04-26-2016, 02:26 AM
Yes, that would be possible.
Is there a way I can pause the rendering process?

Jeff
04-26-2016, 04:11 AM
Can you post a simple example script that reproduces the issue? Is the issue that the virtual environment is loaded and running, the eye tracker calibration is started, and the Vizard splash screen is shown a second time?

VizMars
05-09-2016, 06:43 AM
Yes, that's the problem.
This simple example reproduces the issue. You can skip the calibration by pressing the Esc key, then pylink.closeGraphics() closes the graphic and the Vizard splash screen is shown a second time.


import viz
import pylink

SIZE = ( viz.getOption('viz.monitor.width', type=int), viz.getOption('viz.monitor.height', type=int) )

viz.go(viz.FULLSCREEN|viz.QUAD_BUFFER)
gallery = viz.add('gallery.ive')

eyelinktracker = pylink.EyeLink(None)
eyelinktracker.sendCommand("screen_pixel_coords = 0 0 %d %d" %(SIZE[0], SIZE[1]))
#eyelinktracker.sendMessage("DISPLAY_COORDS 0 0 %d %d" %(SIZE[0], SIZE[1]))
pylink.openGraphics((SIZE[0], SIZE[1]),32)
eyelinktracker.doTrackerSetup()
pylink.closeGraphics()