We will keep supporting egg for the foreseeable future. What I could perhaps imagine happening at some point is that:
Egg support becomes an optional plug-in that is not enabled by default anymore
We stop updating the .egg format for new features of Panda3D.
However, there’s no good reason to just drop it entirely, certainly not without a good migration path. Of course we’re not going to screw over existing users.
A very powerful benefit that Egg files have compared to the other formats is the panda3d.egg API. Bam files don’t have the same amount of extensive support and modification compared to what the egg API provides. My egg-based build pipeline does a lot of model management via this library, as it provides a great amount of modification support with editing and managing egg files. If we do end up transitioning to glTF in the near future, I would certainly hope that we will have a library very similar to what we have with panda3d.egg, and that a pipeline refactor won’t be painful to go through…
Since .bam files are an almost direct memory dump of the panda3d scene graph classes, technically, the API for modifying .bam files is just as extensive as the one for modifying .egg files.