Unity PhysX
Готовы улучшить свои навыки разработки в Unity и освоить интеграцию физики?
Присоединяйтесь к курсу, разработанному специально для разработчиков, стремящихся создавать высококачественную физику для игр.
Курс ведет Антон Яковлев - Ex-Tech Lead Unity Technologies с более чем десятилетним опытом. Он даст вам практические навыки и инсайты, которые помогут избежать типичных ошибок и ускорить рабочий процесс.
Основные преимущества:
- Сессии по программированию с примерами, которые можно сразу применять в проектах.
- Практические упражнения и дополнительные материалы для закрепления навыков.
- Готовые решения типичных проблем в физике и стратегии оптимизации производительности.
- Записанные видеоуроки: учитесь в любое удобное время и возвращайтесь к материалу по мере необходимости.
Формат курса
Курс состоит из шести лекций продолжительностью по одному часу, каждая из которых охватывает популярные темы и типичные ошибки. В каждой лекции представлены базовые теоретические сведения и аналитика, затем — практическая сессия с примерами кода и упражнениями, где это уместно, а также загружаемые материалы (код и проекты Unity).
Программа курса
- Небольшое путешествие в мир физики в Unity: общий обзор
- Физика игр — примеры использования
- Курьезные баги, их причины и история
- Изучение классического демо: AngryBots
- Геймплей
- Физика и как она построена с использованием Physics Debugger
- Изучение другого демо: Tanks!
- Геймплей
- Физика и ее реализация с использованием Physics Debugger
- Кодинг-сессия:
- Коллайдеры
- Rigidbody и Ragdolls
- События столкновения и триггеры
- Запросы
- Cloth
- Транспортные средства с использованием WheelCollider
- Урок на основе видео Антона на YouTube: добавляем динамику к бесплатной 3D-модели
- Проверка 3D-модели на возможные проблемы
- Подготовка модели к симуляции в Blender
- Исправление ошибок
- Разделение осей
- Отделение осей
- Добавление базового контроллера
- Расположение визуальных колес
- Настройка пружин и масс
- Изучение исходного кода физики для вдохновения
- Математические основы
- Модель подрессоренной массы
- Уравнения сил
- Расчет сил подвески
- Расчет сил сцепления с дорогой
- Графики скольжения
- Примеры использования, обзор, мотивация
- Где искать всю необходимую информацию
- Чтение документации по физике
- Чтение руководства Unity
- Использование одиночного запроса на попадание
- Использование Physics Debugger для дополнительных данных
- Синхронизация Transform
- Слои и маски слоев
- Множественные запросы на попадание
- Запросы без выделения памяти
- Дополнительные советы и хитрости для повышения производительности
- Практическая часть — создание и оптимизация демо Ghosts
- Настройка и измерение базовых показателей
- Использование пакетных запросов
- Подготовка данных для задач
- Цепочка задач
- Подходы к обнаружению столкновений
- Этапы физического пайплайна
- Типы Broadphase: Sweep-and-Prune, Multi-box Pruning
- Изменение типа Broadphase
- Использование матрицы слоев столкновений
- Настройка переопределений слоев
- Игнорирование пар столкновений
- Работа с триггерами
- Чтение контактных пар с событиями OnCollision
- Отложенные точки контакта
- Понимание смещения контакта
- Повторное использование экземпляров столкновений
- Демо: визуализация простой контактной точки
- Простой подход — измерение и базовый уровень
- Другой подход — использование контактных буферов
- Анализ
- Использование модификации контактов
- Примеры использования, настройка, мотивация
- Соединения с максимальными координатами в играх
- Соединения в урезанном пространстве в робототехнике
- Максимальное пространство против урезанного — что выбрать
- Примечания к прямому решателю
- Использование FixedJoint
- Соотношения масс
- Использование SpringJoint
- Использование HingeJoint
- Использование ConfigurableJoint
- Использование компонента ArticulationBody — краткий обзор
- Советы и практики на случай, если что-то пошло не так
- Применение здравого смысла
- Разбор трех случаев с форумов
- Поиск кода, зависящего от частоты кадров или скорости симуляции
- Чтение логов (демонстрация: прикрепление вогнутого объекта к Rigidbody)
- Использование визуального отладчика, повтор (демо: падение шара в отверстие тора)
- Изучение рассинхронизаций между графикой и физикой
- Демо: интерполяция
- Использование встроенного профайлера, ключевая информация
- Анализ количества физ. симуляций («спираль фатальных физических симуляций»)
- Чтение исходного кода физики для глубокого анализа
- Разбор сценария с огромной сферой, катящейся по плотной местности
Об Авторе
Привет! Меня зовут Антон.
Я более десяти лет занимаюсь проектированием, реализацией и поддержкой интеграции физики в Unity как технический лидер и консультант Unity Technologies.
Помимо работы в корпорациях, я также участвовал в инди-проектах. Одна из моих VR-игр вошла в топ-500 игр Великобритании (~2016) и была отмечена Google на платформе Daydream (Underwater VR).
Я опытный спикер, регулярно выступаю на международных и местных конференциях, таких как White Nights, GDC, Unite, DevGAMM, 4C и других.
С годами я также стал наставником и преподавателем, ведя программы в университетах и обучая студентов специализированным курсам по разработке игр. В 2022 году я был наставником программы Google GameUp Africa, помогая молодым разработчикам из Африки осваивать навыки быстрого прототипирования их идей для игр.
Присоединяйтесь ко мне на этом коротком курсе в формате мастер-класса, чтобы узнать все тонкости работы с физикой в играх, получить ценные инсайты и познакомиться с актуальными трендами из первых рук.
Готовы вывести свои навыки в Unity на новый уровень?
Дополнительная информация
Язык курса - английский.
Если у вас остались какие-то вопросы или вы хотите кастомизировать курс и провести его только для своей компании, пожалуйста, напишите нам на academy@wn.media, мы будем рады вам помочь!ㅤ