Home    Features    Download    Screenshots    Manual    Reference    Forums    License    Contact   
 
  Panda3D Manual: Loading resources from nonstandard sources
  <<prev top next>>     

If you have want to load a resource from a different spot then a hard drive or inside a multifile, say for instance database or network packet you can using a StringStream.

Here is an example that reads and image into data and then uses StringStream to feed that data into the image.

data = open('my-image-file.png').read()
# send data over network or any other place and pass it on
p = PNMImage()
p.read(StringStream(data))
tex = Texture()
tex.load(p) 

But, you can go one step further. Instead of just loading textures, models, sounds or other data one at a time this way, you can load an entire multifile, which as we learned in the previous section can contain any number of models, textures, sounds and other data.

data = open('my-multifile.mf').read()
stream = StringStream(data)
mf = Multifile()
mf.openRead(stream)
vfs = VirtualFileSystem.getGlobalPtr()
vfs.mount(mf, '/mf', 0)
smiley = loader.loadModel('/mf/smiley.egg')
  <<prev top next>>     
.
screenshot
Psychedelic Flythrough of the Mind of a Computer
screenshot
Kotodama: an RPG in which Japanese words have power
screenshot
Improvisational acting techniques are used to improve character behavior