I've never used Handle-based resources before, even though people have preached relentlessly about them in the past. Well after being inspired by the writings of Scott Bilas
(of Dungeon Seige fame), I've implemented several handle-based systems into my upcoming game for the 4EC. I must admit, it took me a little while to get used to the paradigm shift of using handles instead of pointers, but now I think it's a pretty nice way of doing it - the main reason is that of encapsulation. As I'm passing handles around for things like textures, I'm not tempted to start breaking my OO-design anywhere, simply because there is *no way* of accessing the texture data outside of the TextureManager. I'm free to pass around handles everywhere and delete pointers in the texture manager without causing a problem anywhere. What's more, if a texture can't be loaded by the game, everything will work as it should - no crashes or issues other than the fact that the texture isn't displayed. It's a far cry from the past issues I've experienced, where systems become so tightly bound around the objects and I lose track of who owns what.
I've already implemented the system in another critical game system and it's working flawlessly [grin]. Suffice to say, I'm pleased with the progress so far.