Зависит от того, что конкретно ты подразумеваешь под fps.
Если речь идет о том, сколько кадров гарантированно будет отображаться на экране, то в идеале нужно найти
НОК всех fps, жестко определенных в данной конкретной анимации. Например для 60 и 40 fps это будет 120 fps. В этом случае смена кадров в анимации 60 fps будет происходить каждый второй тик, а для 40 fps — каждый третий. Но это идеальный вариант, который я на своей практике не встречал никогда.
Если же речь идет о том, с каким fps будет работать приложение, то он будет любым, каким пожелаешь. Анимация в общем будет идти с заданной скоростью даже при 12 fps. Другое дело, что начнется потеря промежуточных кадров. В анимации 60 fps потеряется больше кадров, в анимации 40 fps — меньше. Но ведь можно поставить максимальный указанный fps. В нашем примере это 60. Тогда мы имеем чистое отображение анимаций 60 fps и в принципе достаточно корректное отображение анимаций 40 fps, в которых при общем fps равном 60 каждый третий тик нужно отображать тот же кадр.
А можно таймерами =)
P.S.
Нарочно взял 60 и 40 вместо 60 и 30, бо все было бы слишком банально — ставишь приложению 60 fps и в анимации 30 fps тупо меняешь кадр каждый второй тик… скукота… и капитанство какое-то выходит.