Ho visto molte volte nel codice sorgente, cose come questa [beh, questa è più una mia pseudo idea in C ++]
typedef shared_ptr<Resource> ResourcePtr;// for ease
ResourcePtr sound1 = resourceManager.Get<SoundResource>("boom.ogg");
sound1->Play();
ResourcePtr sprite = resourceManager.Get<Image>("sprite.png");
Mi stavo solo chiedendo quanto fosse utile una classe come questa, qualcosa che:
- File multimediali caricati
- Li ha memorizzati nella memoria
- Fatto questo all'inizio di una schermata di caricamento di livello.
- Pulito
Invece di avere un sistema di:
- Le risorse sono detenute solo da entità o sciolte.
- Responsabile del proprio carico in memoria.
Il primo è un "manager" in quanto tale; qualcosa che sento indica che è sbagliato usare. Tuttavia, consente di passare qualcosa come un vettore di nomi di risorse, piuttosto che dover cercare di trovare tutto ciò che deve essere caricato.