7.1 KiB
7.1 KiB
Camera System - Manual Testing Checklist
Тестовая среда
- Персонаж: BP_MainCharacter с ShowDebugInfo = true
- Клавиши: Tab (Toggle HUD), PageUp/PageDown (навигация), Home (Visual Debug)
- Требования: CameraComponent инициализирован
1. Базовая инициализация
1.1 Система запуска
- Camera System инициализируется без ошибок при старте уровня
- Debug HUD Page 5 отображается как "Camera System"
- Initial rotation камеры установлена в (0°, 0°)
- IsCameraRotating() возвращает false при отсутствии input
1.2 Интеграция с Input Device
- Input Device Reference корректно устанавливается при инициализации
- Sensitivity switching работает при смене устройства ввода
- No console errors при инициализации системы
2. Управление мышью
2.1 Базовое вращение мышью
- Horizontal movement мыши поворачивает камеру по Yaw
- Vertical movement мыши поворачивает камеру по Pitch
- Smooth rotation - нет рывков и заиканий
- Mouse sensitivity 100.0 - отзывчивая но не слишком быстрая
2.2 Ограничения вращения мышью
- Pitch limits - камера не поворачивается выше +89° и ниже -89°
- Yaw freedom - горизонтальное вращение без ограничений (360°+)
- Smooth clamping - плавное достижение пределов без резких остановок
3. Управление геймпадом
3.1 Базовое вращение стиком
- Right stick horizontal поворачивает камеру по Yaw
- Right stick vertical поворачивает камеру по Pitch
- Gamepad sensitivity 150.0 - более высокая чувствительность чем мышь
- Smooth deadzones - нет дрожания в центральном положении
3.2 Автоматическое переключение устройств
- Mouse movement автоматически переключает на Mouse sensitivity
- Gamepad input автоматически переключает на Gamepad sensitivity
- Seamless transition - переключение без рывков камеры
4. Система сглаживания
4.1 Smooth interpolation
- SmoothingSpeed 20.0 - плавное движение камеры к цели
- Progressive acceleration - камера ускоряется к target rotation
- Natural stop - плавная остановка без overshooting
4.2 Responsiveness vs Smoothness
- Input lag минимальный - камера реагирует мгновенно на input
- Visual smoothness - движение камеры визуально плавное
- Consistent timing - сглаживание работает стабильно при разных FPS
5. Debug HUD Integration
5.1 Camera Page (Page 5)
- Current Device отображает "Keyboard & Mouse" или "Gamepad"
- Sensitivity показывает текущее значение чувствительности (100.0 или 150.0)
- Pitch отображает текущий угол наклона (-89° до +89°)
- Yaw показывает текущий поворот (любые значения, включая >360°)
- Is Rotating показывает "Yes" при активном input, "No" при покое
- Smoothing отображает значение скорости сглаживания (20.0)
- Invert Y показывает "No" (по умолчанию false)
5.2 Control hints
- Keyboard controls показывают "PageUp/PageDown - Navigate"
- Gamepad controls показывают "D-Pad Up/Down - Navigate"
- Dynamic switching подсказок при смене устройства
6. Продвинутые функции
6.1 Y-axis inversion
- InvertYAxis = false - стандартное поведение (mouse up = look up)
- Inversion calculation - корректная инверсия при включении
- Both devices - инверсия работает для мыши и геймпада
6.2 Edge cases
- Rapid input changes - быстрые движения мыши обрабатываются корректно
- Extreme rotations - Yaw может достигать больших значений (1000°+)
- Zero input - IsCameraRotating() корректно возвращает false при InputMagnitude < 0.01
7. Performance
7.1 Производительность
- No FPS drops при активном вращении камеры
- Smooth 60+ FPS во время интенсивного camera movement
- No memory leaks при длительном использовании
7.2 System integration
- Main Character - камера интегрирована без ошибок
- Debug HUD - обновление camera page не влияет на производительность
- Input Device - смена устройства не вызывает лагов
8. Функциональные триггеры
8.1 Навигация Debug HUD
- PageUp/PageDown (keyboard) переключают страницы Debug HUD
- D-Pad Up/Down (gamepad) переключают страницы Debug HUD
- Camera page доступна и отображается корректно
8.2 Visual Debug
- F2 не влияет на camera system (нет связанного visual debug)
- F1 Toggle HUD скрывает/показывает camera debug info
Критерии прохождения
- Все camera controls отзывчивые и плавные
- Pitch limits строго соблюдаются (-89°/+89°)
- Yaw rotation свободное (без ограничений)
- Device detection и sensitivity switching работают автоматически
- Debug HUD показывает актуальную информацию о camera state
- Performance стабильная при любых camera movements
- No console errors или warnings в camera system
Примечание: Система полностью deterministic - одинаковые input sequence должны давать одинаковые результаты на разных запусках.