- Closes the created texture and restores the original.

###################### create a texture
# import bge module
import bge
# get current scene
scene = bge.logic.getCurrentScene()
# get list of objects in scene
objList = scene.objects
# get object to render to
# my object is named SecurityMonitor
obj = objList["SecurityMonitor"]
# check to see if render to texture variable saved
if "Render" in obj:
renderToTexture = obj["Render"]
# update texture
renderToTexture.refresh(True)
else:
# get a list of the cameras
camList = scene.cameras
# get camera being used for render to texture
# my camera is named Security_Cam
cam = camList["Security_Cam"]
# get the SecurityMonitor material ID
# Name of my render material is Screen
matID = bge.texture.materialID(obj, "MAScreen")
# set the texture
renderToTexture = bge.texture.Texture(obj, matID)
# get the texture image
renderToTexture.source = bge.texture.ImageRender(scene,cam)
# save RenderToTexture as an object variable
obj["Render"] = renderToTexture
###################### close the created texture
# import bge module
import bge
# get the current controller
controller = bge.logic.getCurrentController()
# get list of sensors
senList = controller.sensors
# get keyboard sensor used to restore original texture
# my keyboard sensor is named "Texture_Close"
sen = senList["Texture_Close"]
# get the current scene
scene = bge.logic.getCurrentScene()
# get list of objects in scene
objList = scene.objects
# my object is named SecurityMonitor
obj = objList["SecurityMonitor"]
# get the saved object variable
renderToTexture = obj["Render"]
# check to see if key pressed
# restore original texture
if sen.positive == True:
renderToTexture.close()