Even in C++11, raw pointers are still perfectly valid as non-owning references to objects. In your case, you’re saying “Let’s assume the textures are guaranteed to outlive their pointers.” Which means you’re perfectly safe to use raw pointers to the textures in the game objects. Inside the texture manager, store the textures either automatically (in a container which guarantees constant location in memory), or in a container of unique_ptrs.
If the outlive-the-pointer guarantee was not valid, it would make sense to store the textures in shared_ptr in the manager and use either shared_ptrs or weak_ptrs in the game objects, depending on the ownership semantics of the game objects with regards to the textures. You could even reverse that – store shared_ptrs in the objects and weak_ptrs in the manager. That way, the manager would serve as a cache – if a texture is requested and its weak_ptr is still valid, it will give out a copy of it. Otherwise, it will load the texture, give out a shared_ptr and keep a weak_ptr.