Я ищу объяснение менеджера активов libgdx
Я хотел бы создать актив-менеджер. Я знаю менеджер активов из "libgdx", но я не хочу использовать libgdx, потому что я просто программирую для изучения. Поэтому я хочу понять всю мою программу и написать все с нуля.
Теперь мне нужен менеджер активов, потому что мне не хватило памяти. Я взглянул на менеджер ресурсов в libgdx, но это в значительной степени код, и я не понял его полностью.
Я хотел бы знать, каков основной принцип / идея менеджера ресурсов libgdx. Я знаю, что он работает с хэш-картами и в своем собственном потоке, чтобы быть асинхронным. Но это почти все, что я знаю.
Не могли бы вы помочь мне?
1 ответ
Больше нечего знать, кроме того, что он использует Карты для хранения и извлечения всех ресурсов.
В основном у вас есть что-то вроде этого:
class AssetManager {
private Map<String, Object> assets = new HashMap<String, Object>();
public void storeAsset(String key, Object asset) {
assets.put(key, asset);
}
public <T> T getAsset(String key, Class<T> clazz) {
return (T) assets.get(key);
}
public void freeAsset(String key) {
assets.remove(key);
}
}
Этот универсальный метод получения является необязательным, вы также можете выполнять приведение типов самостоятельно, но так удобнее. Конечно, есть обработка ошибок и все отсутствует, но именно так может работать очень простой AssetManager.