Asking this kind of questions is kinda pointless because most people on this forum (and on CS forum, accordingly) are here because this is their engine of choice, and it is so because they’ve tried other engines and found Panda to be the best for their needs…
So we’re kinda biased
. You’d be better off comparing the documentation and features, I guess.
Still, since you’ve asked. I’ve used CrystalSpace (which was my first engine to use), hit a wall with it, switched to Panda and have been living happily with it so far. That’s my long story short in this regard
.
And as for why I hit a wall… Mostly lack of documentation coupled with slow and unreliable development heading in not well defined direction. At least that was the case about 1 or 2 years ago.
In general, if you want to use Python and have an engine that is ready-to-go (as in, not OGRE) then Panda is the best choice because it was designed around Python from the start. CrystalSpace has CEL and PyCEL (and CELStart… which kinda proves they lack(ed) a good plan), but their Python layer is far less “pythonic” than with Panda and felt clunky to me.
On the community side, both engines have good support, but Panda’s community is bigger and more active. The forum’s code snippets section is almost like a box full of Lego, you just need to search for what you need.
Oh, one thing that is undeniable and objective – Panda has a way better GUI system built in. In CrystalSpace there’s only basic billboards (unless you use something like CEGUI which is also possible with Panda), while Panda has DirectGUI, which might be strangely designed but it’s quite powerful.
Both engines have nice support for Blender.
CrystalSpace’s Blender exporter is probably one of the brightest of it’s points. It basically allows you to export a complete game for CELStart. Or at least that was the plan, last I checked. But that’s also it’s biggest drawback – because of it’s complexity, it’s easy to get lost in it and it’s not very stable. Let alone prone to not working whenever the CS, CEL, PyCEL or CELstart are modified.
On the Panda side, Blender is supported through the Chicken exporter which is very simple to use and does only what it must do – exports graphics and animations. That’s it’s biggest power and even though it has its limitations (like it doesn’t export lights, so you must use empties for that) and some stability issues, it’s just very reliable, which I couldn’t say about Crystal’s B2CS.
Additionally, you’d need to build CrystalSpace yourself, while Panda provides stable and development builds for all supported systems (mainly Windows, Ubuntu and Mac). And believe me, building CrystalSpace (as with any large library) is a real pain in the ass, especially if you need to do it often (and when I used it that was the case, since development version was the only one that made sense).
There are other things, but you get the point. I’ve used both and I highly recommend Panda. I wouldn’t be here if that wasn’t the case
.