The use of raw pointers is limited to situations where the pointer doesn't own the object itself (for that we have smart pointers) and reference can't be used. The reasons are, that raw pointers own objects have a very high chance of leaking memory, where as RAII constructs such as smart pointers automatically release memory after destruction. References can't be a nullptr, thus the chance of accessing a non existing object gets reduced.
With that one should see raw ppinters only very rarely, especially in simple games.