I noticed a problem regarding sounds:
The volume for sounds is not set correctly. It seems to be always set to 1.
Do you have any ideas what the problem could be?
EDIT: If I understand the code correctly, the value for the volume is loaded in SpriterDocumentLoader::getSoundObjectInfoFromSoundlineKey(...) and stored in a SoundObjectInfo, which is then passed to a TimelineKey.
On call of SpriterModel::getNewEntityInstance() a SfmlSoundObjectInfoReference is created, which holds the actual Sound object of SFML.
By debugging i found out that the correct volume is loaded and stored into the SoundObjectInfo.
Also setting the volume from outside by calling setVolume() on the object returned by EntityInstance::getSoundObject() works as expected.
But somehow the volume loaded from the xml, which is stored in this SoundObjectInfo is not passed to the actual sf::Sound that is stored in the SfmlSoundObjectInfoReference. When calling getVolume() on the object returned by EntityInstance::getSoundObject() the returned value always is 1.
SECOND EDIT: I managed to fix this by changing the code of the body of the for-loop that iterates over the soundTimelines in Animation::setupAnimationInstance(...) into:
auto newVolume = dynamic_cast<SoundObjectInfo*>(it->getLastKey()->getObjectInfo())->getVolume();
SoundTimelineInstance *newInstance = new SoundTimelineInstance(entityInstanceData, it, it->getObjectId());
newInstance->getResultObject()->setVolume(newVolume);
timelineInstances->push_back(newInstance);
This is probably not the best way to fix this but it works for me right now. If you have a cleaner solution, maybe you could share it