Thanks for that explanation. Things are slowly beginning to sink in. Even though I can render the image in a qt label, the pi3d display window is still showing on the desktop. The code I use to create it is :
self.display = pi3d.Display.create(w=WIDTH, h=HEIGHT, background=(0,0,0,1), frames_per_second=10, layer=-128)
I would like to completely hide this window or not even show it at all and just use the screenshot function.
I should say I am currently accessing the pi via VNC, so maybe that makes a difference?