SwiftUI-анимация
This skill provides comprehensive guidance for implementing advanced SwiftUI animations, transitions, matched geometry effects, and Metal shader integration. Use when building animations, view transitions, hero animations, or GPU-accelerated effects in SwiftUI apps for iOS and macOS.
Что делает навык
Навык предоставляет экспертное руководство по реализации продвинутых анимаций, переходов, matched geometry effects и интеграции Metal-шейдеров в SwiftUI. Он помогает создавать GPU-ускоренные эффекты, hero-анимации и оптимизировать производительность анимаций для iOS и macOS.
Когда применять
- Создание плавных переходов между экранами с использованием matchedGeometryEffect для hero-анимаций.
- Разработка сложных многофазных анимаций с помощью PhaseAnimator и KeyframeAnimator.
- Добавление GPU-ускоренных визуальных эффектов (искажение, размытие, инверсия цвета) через Metal-шейдеры.
- Настройка доступных и нативных анимаций с использованием пресетов iOS 17+ (snappy, smooth, bouncy).
Как работает
- Определить цель анимации и выбрать подходящий тип: явные анимации (withAnimation), пресеты iOS 17+ или кастомные пружинные параметры.
- Реализовать переходы или эффекты: использовать .transition() для базовых эффектов, .matchedGeometryEffect() для связывания состояний между представлениями или шейдерные модификаторы (.colorEffect, .distortionEffect, .layerEffect) для GPU-эффектов.
- Настроить параметры производительности и доступности: убедиться, что анимации кратковременны (до 400 мс), позволяют пользователю прервать процесс и корректно обрабатывают изменения состояния.
- Проверить интеграцию Metal-шейдеров: убедиться, что .metal файлы добавлены в цель, сигнатуры функций соответствуют требованиям, а maxSampleOffset задан корректно.
Примеры запросов агенту
Что понадобится
- Среда разработки SwiftUI для iOS/macOS
- Файлы шейдеров (.metal)
- iOS 17+ (для использования пресетов анимаций и некоторых шейдерных эффектов)
Описание составлено по SKILL.md навыка, сверено 05.10.2026.
Как подключить
SKILL.md к навыкам ассистентаНавык — папка с файлом SKILL.md (описание + инструкции) и опциональными скриптами. Ассистент (Claude, Claude Code и совместимые) подхватывает его по описанию и следует шагам.