Here is a sample script that will save the raw image data of the screen to a base64 encoded file when the spacebar is pressed:
Code:
import viz
import viztask
import base64
viz.go()
model = viz.addChild('maze.osgb')
def SaveScreenTask():
while True:
# Wait for key press
yield viztask.waitKeyDown(' ')
# Capture screen to texture
texture = viz.addBlankTexture([1,1])
viz.window.screenCapture(texture)
# Wait a frame for image to be captured
yield viztask.waitFrame(1)
# Save raw texture data to base64 encoded buffer
data = base64.b64encode(texture.saveToBuffer('<raw>'))
# Save data to file
with open('screen_data', 'wb') as f:
f.write(data)
# Remove texture
texture.remove()
viztask.schedule( SaveScreenTask() )