Estas de suerte, hace como un mes tuve las mismas dudas que tú y ya conseguí solucionarlo. Te dejo el script:
Código:
import BGE.
Import Gamelogic.
Import os.
Controller = BGE, logic, getcurrentcontroller().
Scene = BGE, logic, getcurrentscene ().
Obj = controller, Owner.
# comprova que el video existeix.
If video in obj:
Video = obj[video"]# va a lobjecte video i el refresca tvideo, refresh(true).
Else:
#crea lobjecte video (dins de lescena actual com si fos un material) tmatid = BGE, texture, materialid(obj, ma + pantalla) tvideo = BGE, texture. Texture (obj, matiz) tmovie = BGE, logic, expandpath(//title, avi) tvideo, source = BGE, texture. Videofmpeg(movie) tvideo, source, scale = true # escala el video tobj[video"] = video #crea lobjecte video t# chek for optional loop property.
If loop in obj: # loop it forever.
If obj[lop] == true:
Video, source, repeat = -1 # no looping.
Else:
Video, source, repeat = 0.
# start the video.
Video, source, play().
Creo que sobra la librería os, pero bueno, ya lo arreglare en la fase beta. Te explico el script, pero antes que nada estaría bien que supieras las bases de Python en Blender. Primero importamos las librerías. Luego definimos el controlador y la escena (esto nos servirá para luego, pero es una de las bases de BGE). Los comentarios están en catalán, espero que no te importe. Para que el script funcione tienes que tener un archivo de video en este caso llamado title, avi en la carpeta del juego. Y tienes que tener un material llamado pantalla en donde quieres que se vea el vídeo. Creo que nada más.
Respecto lo de pantallas interactivas y todo eso, es posible. Ahora bien, el conocimiento en Python que necesitas, comparado con el script anterior, esta a otro nivel.