{"schemaVersion":1,"record":{"key":"lesson/game-feel","type":"lesson","id":"game-feel","lang":"ru","title":"Game feel: читаемое действие","summary":"Настраиваем отклик, акценты и эффекты так, чтобы игрок понимал действие и сохранял контроль.","updatedAt":"2026-10-20","status":"active","url":"https://gamemechanics.pro/ru/lessons/game-feel/","jsonUrl":"https://gamemechanics.pro/api/v1/knowledge/ru/lesson/game-feel.json","markdownUrl":"https://gamemechanics.pro/content/knowledge/ru/lesson/game-feel.md","aliases":["gamefeel","juiciness","сочность","отклик"],"tags":["game-feel","feedback","accessibility"],"sourceIds":["source-3a3188da5bc1e4be","source-126631d0c2e67fef"],"sources":[{"id":"source-3a3188da5bc1e4be","title":"GDC: Juice It or Lose It","url":"https://www.gdcvault.com/play/1016487/juice-it-or-lose","verifiedAt":null},{"id":"source-126631d0c2e67fef","title":"Xbox Accessibility Guideline 117","url":"https://learn.microsoft.com/en-us/xbox/accessibility/xbox-accessibility-guidelines/117","verifiedAt":null}],"sections":[{"id":"prerequisites","title":"Что нужно знать","body":"Начните с механики, которая уже выполняет своё правило: прыжок приземляется, удар наносит урон, предмет попадает в инвентарь. Если результат неверен, эффекты только усложнят поиск причины. Для урока выберите одно действие и сохраните исходную версию для сравнения."},{"id":"principle","title":"Принцип","body":"Game feel складывается из связи между намерением игрока, ответом управления и восприятием результата. Полезно разделять три момента: подготовка, подтверждение и восстановление. Подготовка объясняет, что сейчас произойдёт. Подтверждение показывает принятый результат. Восстановление возвращает игрока к следующему решению.\n\nЭффект должен отвечать на конкретный вопрос. Короткое изменение силуэта сообщает о попадании. Отлетающие частицы показывают место контакта. Звук отличает блок от урона. Если вы не можете назвать информацию, которую добавляет эффект, сначала проверьте версию без него.\n\nДоклад [Juice It or Lose It](https://www.gdcvault.com/play/1016487/juice-it-or-lose) можно использовать как отправную точку для изучения выразительности игровых реакций. Описанное ниже упражнение и критерии сравнения являются самостоятельной практикой этого портала.\n\n<span id=\"пример-удар-по-тренировочной-цели\"></span>"},{"id":"example","title":"Практический пример","body":"### Удар по тренировочной цели\n\nСоздайте неподвижную цель с тремя очками здоровья. Один разрешённый удар уменьшает здоровье на единицу. Сначала покажите только изменение счётчика, затем добавляйте по одному способу подтверждения.\n\n```text\nonDamageAccepted(event):\n    updateHealthDisplay(event.remainingHealth)\n    playImpactSound(event.surface)\n    showHitShape(event.position)\n    if settings.cameraShake > 0:\n        addCameraImpulse(settings.cameraShake)\n```\n\nСобытие создаёт игровая логика после принятия урона. Промах не должен запускать подтверждение попадания. Блок может запускать отдельный сигнал. Если несколько попаданий происходят одновременно, ограничьте интенсивность суммарных эффектов и число звуков.\n\nСделайте переключатели для звука, визуального подтверждения и движения камеры. Попробуйте одну и ту же последовательность ударов с каждой комбинацией. Записывайте наблюдения конкретно: «непонятно, прошёл ли третий удар» полезнее, чем «мало сочности». Не объявляйте маленькую личную проверку доказательством предпочтений всех игроков."},{"id":"mistakes","title":"Частые ошибки","body":"Большая тряска может скрыть следующую угрозу. Длительное восстановление способно превратить сильный удар в ощущение потерянного управления. Полноэкранный эффект может затруднить чтение интерфейса. Сначала назначьте ограничение амплитуды и длительности, затем подбирайте значения в игре.\n\nДвижение камеры должно отключаться без потери важной информации. [Xbox Accessibility Guideline 117](https://learn.microsoft.com/en-us/xbox/accessibility/xbox-accessibility-guidelines/117) рекомендует избегать подобных дополнительных движений либо давать возможность их отключить. Сохраните иной способ подтвердить попадание, например форму вокруг цели и обновление здоровья.\n\nНе привязывайте урон к декоративной частице. Не меняйте коллайдер ради визуального растяжения спрайта. Если используете короткую остановку действия, явно определите затронутые системы: мир, анимации, ввод, интерфейс и звук могут требовать разного поведения."},{"id":"checks","title":"Проверка результата","body":"- Попадание, промах и блок различимы.\n- Подтверждение начинается после принятия игрового события.\n- Отключение тряски сохраняет понятность действия.\n- Несколько эффектов не скрывают опасности и важный текст.\n- Параметры можно менять без правки правил урона.\n- Сравнение с исходной версией описывает наблюдение, а не только вкус автора."},{"id":"agent-task","title":"Задание для ИИ-агента","body":"> Разбери одно игровое действие на подготовку, подтверждение и восстановление. Найди событие, подтверждающее результат. Предложи два независимо отключаемых эффекта и объясни, какую информацию каждый добавляет. Проверь промах, серию попаданий и отключённую тряску. Сохрани исходные правила и подготовь воспроизводимый сценарий сравнения."}],"relations":[{"type":"requires","direction":"outgoing","label":"Перед началом","key":"lesson/input-and-feedback","title":"Ввод и обратная связь","url":"https://gamemechanics.pro/ru/lessons/input-and-feedback/","jsonUrl":"https://gamemechanics.pro/api/v1/knowledge/ru/lesson/input-and-feedback.json","markdownUrl":"https://gamemechanics.pro/content/knowledge/ru/lesson/input-and-feedback.md"},{"type":"requires","direction":"incoming","label":"Продолжить изучение","key":"lesson/game-accessibility","title":"Базовая доступность игровой сессии","url":"https://gamemechanics.pro/ru/lessons/game-accessibility/","jsonUrl":"https://gamemechanics.pro/api/v1/knowledge/ru/lesson/game-accessibility.json","markdownUrl":"https://gamemechanics.pro/content/knowledge/ru/lesson/game-accessibility.md"},{"type":"explains","direction":"outgoing","label":"Применение принципа","key":"mechanic/game-mechanics--gm-low-health-feedback","title":"Сигналы низкого здоровья (Low health feedback)","url":"https://gamemechanics.pro/ru/knowledge/mechanic/game-mechanics--gm-low-health-feedback/","jsonUrl":"https://gamemechanics.pro/api/v1/knowledge/ru/mechanic/game-mechanics--gm-low-health-feedback.json","markdownUrl":"https://gamemechanics.pro/content/knowledge/ru/mechanic/game-mechanics--gm-low-health-feedback.md"},{"type":"practices","direction":"outgoing","label":"Применить на практике","key":"practice/rhythm-without-hurry","title":"Ритм без спешки","url":"https://gamemechanics.pro/ru/knowledge/practice/rhythm-without-hurry/","jsonUrl":"https://gamemechanics.pro/api/v1/knowledge/ru/practice/rhythm-without-hurry.json","markdownUrl":"https://gamemechanics.pro/content/knowledge/ru/practice/rhythm-without-hurry.md"},{"type":"contains","direction":"incoming","label":"Учебные маршруты","key":"path/first-prototype","title":"Первый проверяемый прототип","url":"https://gamemechanics.pro/ru/learn/first-prototype/","jsonUrl":"https://gamemechanics.pro/api/v1/knowledge/ru/path/first-prototype.json","markdownUrl":"https://gamemechanics.pro/content/knowledge/ru/path/first-prototype.md"},{"type":"uses","direction":"outgoing","label":"Источники в подборке","key":"resource/accessible-motion","title":"Xbox: доступные настройки движения","url":"https://gamemechanics.pro/ru/resources/#resource-accessible-motion","jsonUrl":"https://gamemechanics.pro/api/v1/knowledge/ru/resource/accessible-motion.json","markdownUrl":"https://gamemechanics.pro/content/knowledge/ru/resource/accessible-motion.md"}],"placements":[],"supersededBy":[],"attributes":{"category":"design","level":"beginner","minutes":6},"endsAt":null,"provenance":"Авторский материал gamemechanics.pro. Учебные примеры требуют проверки в своём проекте.","license":"CC-BY-4.0","codeLicense":"MIT","attribution":"gamemechanics.pro contributors"}}