Добрый день!
Имеется ли возможность получить все атласы для конкртеного HM_EMITTER без инициации процедуры рендера?
На самом деле никакой зависимости между атласами и процессом рендера нет. Просто враппер написан так, что атласы перестраиваются перед рендером, но так делать необязательно. В примере же это сделано из соображений универсальности - атласы изменяются при вызове Magic_CreateAtlasesForEmitters / Magic_CreateAtlases и при удалении эмиттера Magic_UnloadEmitter, для которого уже был ранее построен атлас (уничтожаются ненужные атласы).
Для версии 2.25 для одного эмиттера (или анимированной папки) все текстуры будут всегда находится только на одном атласе - это гарантирует, что текстуру не придется менять при рисовании. Для версии 3.0 эта ситуация изменится, так как там будут возможны очень сложные спецэффекты, у которых может использовать, например, мультитекстурирование, поэтому эмиттеру может соответствовать N атласов, но пока этого нет.
Все статические атласы, которые привязаны к ptc-файлу, можно узнать через функции: Magic_GetStaticAtlas и Magic_GetStaticAtlasCount.
Чтобы узнать атлас для конкретного эмиттера необходимо загрузить этот эмиттер и вызвать для него Magic_CreateAtlasesForEmitters, а далее получить изменения через Magic_GetNextAtlasChange. Если такой атлас уже был построен, то Magic_GetNextAtlasChange сразу же вернет MAGIC_ERROR.