Texture: refresh

refresh(update)
  • Reload image from source to texture.

update:

  • Type: boolean
  • True = reload the image
  • False = don't reload the image
Sample Code

###################### reload the image

# 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:

# get saved variable
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