New Panda Release (finally!)

As I understand it, the 1.3.2 behavior involved some very complex code which became even more complex when combined with new features like the model-cache. They decided they needed to simplify, so they took out the old behavior.

I agree that this is the biggest inconvenience with this version - having to rewrite one’s model-loading code - but from experience, it’s not too painful, especially if you use the model-cache.

If you’re a linux user, and you want to enable the model-cache, you need to edit the config.prc to point the model cache at a writeable directory.

I am in the process of creating a unified audio/video subsystem for panda. On the surface, this will be just another AudioManager and another MovieTexture. However, the two will both pull data from an underlying “Movie” class which does the file IO and yields up video frames and audio samples. The advantage of having an common underlying file reader is that it means the audio system can play the same formats as the video system. That, in turn, means that you will be able to create cut-scene movies with both video and audio! It also means you’ll be able to synchronize the video to the audio accurately.

Furthermore, since the AudioManager will be based on OpenAL, the audio system will be truly free software, for the first time. In the past, there have been other audio managers based on OpenAL. Most of them, however, did not support MP3, OGG, or AVI — not suprising, since OpenAL doesn’t include decoders for these formats. But since the underlying Movie layer (based on ffmpeg) can handle all of that, all these formats will be supported.

I should also mention that you shouldn’t take the word “movie” too literally. I count an MP3 file as a “movie” with good audio, but blank video.

As you can see, I haven’t gotten very far. I started work then got called away to San Francisco.

that’s GREAT !

it would be better if :

  1. there is already a bam in the .egg dir, load it, or copy it to model-cache dir
  2. there is not a bam in the .egg dir, cache it
    well, just my opinion.

default-model-extension .bam
so the default now is the ONLY looked ext. I thought it works like the old behavior, as priority list, but it’s not.

and I forgot 1 Q yesterday :
(I don’t have 1.4.0 source now)
seems there is a change in the CollisionTraverser or CollisionVisualizer which affects the visualized collision range. It’s not obvious in 3d scene (e.g. ralph’s terrain), but in 2d scene, every into-node is highlighted :
ynjh.panda3dprojects.com/other/a2dCap1.4.0.jpg
v1.3.2 :
ynjh.panda3dprojects.com/other/a2dCap1.jpg
it does a great work in chopping down the framerate for every coll traversal.

Thanks for a new release!

Josh, I updated my OpenAL AudioManager last week:
discourse.panda3d.org/viewtopic.php?t=2790

Maybe it is of some use to you.

Dunno if this is a bug, but:

/usr/include/panda3d/thread.h:97: warning: ‘class Thread::PStatsCallback’ has virtual functions but non-virtual destructor

that warning pops up every time I compile my own-made extension.

That warning is just the result of gcc being obnoxious. It’s ignorable.

David