Ответ 1
http://www.codedread.com/svg-support.php имеет грубое сравнение и упоминает SMIL в Firefox, начиная с версии 3.7. Об IE, возможно, среда меняет все, смотри: live.visitmix.com/MIX10/Sessions/EX30
Кто-нибудь знает текущее состояние поддержки анимации SVG SMIL в популярных браузерах? Это похоже на поддержку Safari, Chrome и Opera. Firefox запутывает отчеты в своих dev-страницах о поддержке SMIL, но я не вижу его как v3.6:
https://bugzilla.mozilla.org/show_bug.cgi?id=216462
Я игнорирую IE, так как они даже не поддерживают SVG вообще, и, вероятно, никогда не будут, тем более SMIL.
Другое дело - просто сравнить эту тестовую страницу между Safari, Chrome и Opera:
http://srufaculty.sru.edu/david.dailey/svg/ovaling.svg
похоже, что Opera является единственной, которая корректно отображает ее. Должны ли мы не использовать SMIL - вроде бы выглядят наполовину испеченные во всех браузерах (к сожалению)? Blast.
Спасибо
http://www.codedread.com/svg-support.php имеет грубое сравнение и упоминает SMIL в Firefox, начиная с версии 3.7. Об IE, возможно, среда меняет все, смотри: live.visitmix.com/MIX10/Sessions/EX30
Ограничения Gecko:
Кроме этого, я подозреваю, что Gecko является наиболее spec-совместимым из основных браузеров. (В частности, попробуйте выполнить некоторые из следующих тестов с другими браузерами: http://mxr.mozilla.org/mozilla-central/source/layout/reftests/svg/smil/syncbase/)
Он делает огонь событий DOM и всегда имеет (фактически, это одна из причин низкой производительности). Однако, как того требует спецификация SMIL, события DOM не запускаются во время поиска.
В отличие от других браузеров, он полностью поддерживает приоритеты анимации сэндвич для синхронизации синхронизации, обеспечивает правильное поведение для замороженной анимации и многих других областей, не поддерживаемых в других браузерах.
Обновленный обзор текущей поддержки браузера находится на http://caniuse.com/svg-smil
В настоящее время (21-окт-2012) все основные настольные и мобильные браузеры имеют хотя бы частичную поддержку svg-smil с заметным исключением IE9.
В Firefox 3.6 нет SMIL. IE 9 будет выполнять SVG, но не будет SMIL. Microsoft полагает, что есть особые проблемы для разработки, прежде чем добавить SMIL - и в какой-то степени они правы, ИМО. Как SMIL будет взаимодействовать с другими анимациями, в настоящее время является нерешенной проблемой.
Я просто посмотрел на эту демонстрацию ovaling.svg снова в Firefox 4 в ночное время (примерно на стадии бета 2) в Linux. Это снизило мой процессор до 77%, тогда как Opera использовала только 44%. Или иначе, Opera 10.60 использовала только один из двух моих CPU-ядер, Firefox использовал 1 с половиной. Анимация была действительно гладкой в Firefox, но немного заикалась в Opera.
На моем Thinkpad z61p, работающем под управлением Linux, я не думаю, что Firefox делает какое-либо ускорение GPU (пока), но когда это ударит, я полагаю, что загрузка процессора будет намного меньше.
Chrome 5 терпит неудачу. Анимация не будет запускаться каким-либо действительно полезным способом.
В моем очень коротком опыте поддержка Opera является самой полной и правильной (я играл с различными типами таймингов и поведения анимации и не заметил никаких ошибок. Opera - единственная, которая запускает события DOM, когда анимация запускается/повторяется/конец).
Gecko в порядке, хотя он не запускает события и неверно истолковывает несколько более сложных анимаций.
WebKit хуже всего. Анимация должна иметь как from
, так и to
, в противном случае легко найти ошибки в аддитивной/накопительной анимации (состояние анимации не соответствует reset или сбрасывается в неправильное состояние). Удаление анимации node из DOM не означает положение анимированных элементов reset. Кажется, это слишком упрощенное отслеживание состояния анимации. Мне удалось отключить Mobile Safari.
Скорость анимации - по крайней мере, на настольной ОС X - кажется, в той же лиге, хотя анимация в Opera кажется немного менее гладкой, чем в других.
В настоящий момент ответ мне очень понятен (я только побеспокоил тестирование с этими тремя):
Opera - единственный браузер, который может обрабатывать мою игру на данный момент. Остальным двум, кажется, не хватает базовой поддержки для моих, но довольно простых анимаций и манипуляции с анимацией дома. Тем не менее, я еще не потратил больше часа на кросс-браузерную совместимость.
Я делаю своеобразное доказательство концепции только для использования в SVG 1.1 Full и SMIL анимации в игре (вообще нет js-анимации). До сих пор я тестировал (успешно в Opera):