Завтра о 12:00 Белка приймає Школу першокурсника, тому наша лекція, разом із лекцією по захисту інформації знову переноситься на неділю - чекайте детальний анонс вже завтра ввечері
Завтра ми переходимо до однієї з найбільших (та, як на мене, найцікавіших) тем нашого курсу - штучного інтелекту. В цьому році я планую розширити цю тему до трьох лекцій та більш детально зануритись у різні техніки та задачі. Отже, завтра:
- Поговоримо про відмінності ігрового та академічного АІ, згадаємо старенького Пакмана та спробуємо зрозуміти як він працює та чому це так круто вистрілило;
- Дізнаємось про техніки АІ в настольних іграх та подивимось чому в шахи комп'ютер обіграв людину ще 20 років тому, а у го - тільки три;
- Розглянемо різні алгоритми прийняття рішень у проектах різних жанрів;
Ключові слова: decision making, minimax, monte-carlo tree search, behaviour trees та ще скільки встигнемо за півтори години
Початок о 10:20, Белка. Вхід вільний
- Поговоримо про відмінності ігрового та академічного АІ, згадаємо старенького Пакмана та спробуємо зрозуміти як він працює та чому це так круто вистрілило;
- Дізнаємось про техніки АІ в настольних іграх та подивимось чому в шахи комп'ютер обіграв людину ще 20 років тому, а у го - тільки три;
- Розглянемо різні алгоритми прийняття рішень у проектах різних жанрів;
Ключові слова: decision making, minimax, monte-carlo tree search, behaviour trees та ще скільки встигнемо за півтори години
Початок о 10:20, Белка. Вхід вільний
На третій лекції ми згадували школу та універ та пробували розібратись із тим, про що звідти краще пам'ятати: вектори, закони Ньютона, інтерполяція, теорія ймовірностей, статистика та всяке таке інше
https://www.youtube.com/watch?v=NbQoaGOOaYo
https://www.youtube.com/watch?v=NbQoaGOOaYo
YouTube
3. Що потрібно пам'ятати в геймдеві зі школи та університету
7:37 Математика та геометрія: вектори
28:10 Ease functions
33:38 Інтерполяція та екстраполяція
40:45 Фізика
1:07:40 Повороти: кути Ейлера, шарнірний замок, кватерніони
1:17:25 Теорія ймовірностей та статистика
Посилання:
1. Nature Of Code
https://nature…
28:10 Ease functions
33:38 Інтерполяція та екстраполяція
40:45 Фізика
1:07:40 Повороти: кути Ейлера, шарнірний замок, кватерніони
1:17:25 Теорія ймовірностей та статистика
Посилання:
1. Nature Of Code
https://nature…
Завтра на лекції ми продовжимо говорити про техніки АІ у іграх: розберемся с принципами симуляції як у Sims, дуже швидко оглянемо техніки пошуку шляхів (раптом хтось забув що таке А-star?) разом із згадками де це потрібно крім, власне, пошуку шляхів, та розглянемо алгоритм, що дозволяє симулювати купу різних штук: від стай птахів до автомобільних гонок (boids, або більше загально - steering behaviours).
Увага! Лекція завтра почнеться раніше - ми почнемо вже о 10:0, місце проведення, як завжди - Білка (бібліотека КПІ, третій поверх). Лекція відкрита
Увага! Лекція завтра почнеться раніше - ми почнемо вже о 10:0, місце проведення, як завжди - Білка (бібліотека КПІ, третій поверх). Лекція відкрита
На першій лекції із розділу про штучний інтелект ми говорили про шахи та го (які алгоритми використовуються для покрокових ігор з повною або неповною інморфацією), згадували Пакмана, обговорювали дерева прийняття рішень, скінченні автомати (state machines) та дерева поведінки (behavior trees)
https://www.youtube.com/watch?v=zlEI6ii28_A
https://www.youtube.com/watch?v=zlEI6ii28_A
YouTube
4. AI у іграх #1: огляд, настольні ігри (minimax та альтернативи), state machines, behaviour trees
7:05 AI для прикладних та академічних задач
16:42 State Machine та PacMan
42:06 Шахи (Minimax, Negamax, Negascout)
1:05:28 Го, Monte-Carlo Tree Search
1:15:58 Behavior Trees
Посилання:
1. Досьє на Пакмана
https://www.gamasutra.com/view/feature/132330/th…
16:42 State Machine та PacMan
42:06 Шахи (Minimax, Negamax, Negascout)
1:05:28 Го, Monte-Carlo Tree Search
1:15:58 Behavior Trees
Посилання:
1. Досьє на Пакмана
https://www.gamasutra.com/view/feature/132330/th…
Завтра, на останній лекції з циклу про штучний інтелект ми закриємо борг і нарешті поговоримо про steering behaviours (та навчимося преслідуванню, патрулюванню та групповим поведінкам), крім того розглянемо нові теми - нечітку логіку, тактичний AI (для StarCraftу теж потрібно ботів писати) та клітинні автомати (як у класичній грі Життя чи SimCity)
Лекція завтра нарешті почнеться вчасно - о 10:30, місце проведення, як завжди - Білка (бібліотека КПІ, третій поверх). Лекція відкрита
Лекція завтра нарешті почнеться вчасно - о 10:30, місце проведення, як завжди - Білка (бібліотека КПІ, третій поверх). Лекція відкрита
В цьому році ми значно менше часу приділяємо темам пов'язаним із кодом, але все ж прийшов час трохи поговорити і про це. Завтрашня тема нашої лекції - Архітектура ігрових додатків. Не лякайтеся складної назви, насправді ми будемо розглядати те, якими основними принципами слід керуватися коли ви починаєте продумувати реалізацію вашої гри. Ми розглянемо чим "під капотом" один від одного відрізняються настільні ігри та матч-3, шутери та RTS, нескінченні казиношні слоти та покери а також всяке різне інше.
Після завтрашньої лекції у вас буде розуміння ЯК саме краще технічно реалізовувати певну ідею, та які за цим стоять плюси, мінуси та підводні камені.
З відео другої та третьої лекції про АІ поки заминка через певні технічні проблеми зі звуком, але все буде.
Початок завтра, як завжди - 10:20, Белка (Бібліотека КПІ, третій поверх). Вхід вільний
Після завтрашньої лекції у вас буде розуміння ЯК саме краще технічно реалізовувати певну ідею, та які за цим стоять плюси, мінуси та підводні камені.
З відео другої та третьої лекції про АІ поки заминка через певні технічні проблеми зі звуком, але все буде.
Початок завтра, як завжди - 10:20, Белка (Бібліотека КПІ, третій поверх). Вхід вільний
На другій лекції з циклу по штучному інтелекту ми говорили про пошук шляхів (Дейкстра та A*), те де ці алгоритмі використовуються крім пошуку траекторій руху (IDA*), а також про те як ствроюється АІ для гри типу The Sims
https://youtu.be/RKFItb_fPZk
https://youtu.be/RKFItb_fPZk
YouTube
5. AI у іграх #2: пошук шляхів (А*, IDA*) та як написати власних The Sims (GOB\GOAP)
Посилання:
1. Візуалізатори пошуку шляхів
https://clementmihailescu.github.io/Pathfinding-Visualizer/#
https://qiao.github.io/PathFinding.js/visual/
2. Детальний плейліст з A*
https://www.youtube.com/watch?v=-L-WgKMFuhE&list=PLFt_AvWsXl0cq5Umv3pMC9SPnKjfp9eGW…
1. Візуалізатори пошуку шляхів
https://clementmihailescu.github.io/Pathfinding-Visualizer/#
https://qiao.github.io/PathFinding.js/visual/
2. Детальний плейліст з A*
https://www.youtube.com/watch?v=-L-WgKMFuhE&list=PLFt_AvWsXl0cq5Umv3pMC9SPnKjfp9eGW…
Перш ніж написати контрольну та перейти до наступної теми - графіки, ми ще трохи поговоримо про технічну сторону розробки. Завтра мова на лекції пойде про шаблони ігрової розробки - певні конструкції, що існують для вирішення якихось частих проблем. Надто абстрактних теоретизувань не буде - тільки те, з чим постійно доводиться стикатись в практичній розробці. Поговоримо про нещасні попсові сінглтони зі стейт машинами (тепер із точки зору коду), а також про різні менш відомі штуки.
Приклади будуть ігрові, але загалом лекція буде цікавою всім хто цікавиться програмуванням та проектуванням.
Як завжди - Белка, 10:20, вхід вільний
Приклади будуть ігрові, але загалом лекція буде цікавою всім хто цікавиться програмуванням та проектуванням.
Як завжди - Белка, 10:20, вхід вільний
На останній, третій лекції з циклу про штучний інтелект ми нарешті розглянули алгоритм boids (що дозволяє релізовувати групові поведінкі а також різні переслідування з блуканнями), а також затронули нечітку логіку та тактичий АІ, що використовується, наприклад, для можливості навчити ботів сидіти в засаді
https://www.youtube.com/watch?v=mNOANy_4wCg
https://www.youtube.com/watch?v=mNOANy_4wCg
YouTube
6. AI у іграх #3: boids, тактичний АІ, нечітка логіка
Посилання:
1. Оригінальна робота Steering Behaviors For Autonomous Characters
https://www.red3d.com/cwr/steer/gdc99/
2. Приклади Steering Behaviors на Processing
https://natureofcode.com/book/chapter-6-autonomous-agents/
3. Parable of the Polygons - приклад…
1. Оригінальна робота Steering Behaviors For Autonomous Characters
https://www.red3d.com/cwr/steer/gdc99/
2. Приклади Steering Behaviors на Processing
https://natureofcode.com/book/chapter-6-autonomous-agents/
3. Parable of the Polygons - приклад…
Лекції завтра не буде, через те що студенти будуть писати контрольну.
Якщо ви не з груп ІП-6х, але теж хочете перевірити свої знання з минулих тем - так само приходьте на 10:20 у Белку
Якщо ви не з груп ІП-6х, але теж хочете перевірити свої знання з минулих тем - так само приходьте на 10:20 у Белку
Якщо ви планували прийти завтра зранку на лекцію - зайдіть, будь ласка, в наш чат @kpigamedev_chat та відмітьтесь у голосуванні, для того щоб я міг зрозуміти кількість бажаючих у зв'язку із новим графіком відпрацювань свят в КПІ
Настав час поговорити про велику частину комп'ютерних ігор - графіку. Для того щоб вміти з нею працювати, потрібно добре розуміти її принципи
Чому відеокарта займає майже половину комп'ютера як за обсягом, так і за вартістю?
Яким чином тривимірна модель в оперативній пам'яті перетворюється в картинку на екрані монітора?
Що таке шейдери і навіщо воно? За рахунок чого картинка в іграх з кожним роком стає все реалістичніше і реалістичніше?
Питань багато, постараємося торкнутися основного для розуміння ситуації.
На заняття запрошуються всі бажаючі - тема графіки цілком виокремлена та не потребує попередніх знань
Белка, субота, початок о 10:25
Чому відеокарта займає майже половину комп'ютера як за обсягом, так і за вартістю?
Яким чином тривимірна модель в оперативній пам'яті перетворюється в картинку на екрані монітора?
Що таке шейдери і навіщо воно? За рахунок чого картинка в іграх з кожним роком стає все реалістичніше і реалістичніше?
Питань багато, постараємося торкнутися основного для розуміння ситуації.
На заняття запрошуються всі бажаючі - тема графіки цілком виокремлена та не потребує попередніх знань
Белка, субота, початок о 10:25
Завтра субота, і ми продовжимо говорити про комп'ютерну графіку. Минулого разу ми розглянули багато базових понять, завтра ж спробуємо відповісти на питання "за рахунок чого сучасні ігри та мультфільми виглядають настільки реалістично?"
Ми подивимось на моделі прорахунку освітлення, дізнаємося яка технологія була придумана аж в 1975, але стала використовуватися тільки через 20 років, що таке Global Illumination і чому ця штука разом з Physically Based Rendering дозволяє багато в чому визначає вид сучасної 3D-графіки, що таке справжній Ambient Occlusion і чому то що ми бачимо в іграх - не зовсім те.
Субота, Белка, 10:25 - вхід вільний.
P.S. Борги по відео частково постараюсь закрити на вихідних
Ми подивимось на моделі прорахунку освітлення, дізнаємося яка технологія була придумана аж в 1975, але стала використовуватися тільки через 20 років, що таке Global Illumination і чому ця штука разом з Physically Based Rendering дозволяє багато в чому визначає вид сучасної 3D-графіки, що таке справжній Ambient Occlusion і чому то що ми бачимо в іграх - не зовсім те.
Субота, Белка, 10:25 - вхід вільний.
P.S. Борги по відео частково постараюсь закрити на вихідних
Forwarded from Artem Korotenko
Завтра нас очікує одинадцята, остання в цьогорічному циклу лекція з ігрової розробки і ми поговоримо про мережеві технології у іграх. Часу мало, питань багато, тому спробуємо у короткий час охопити багато цікавих питань. Наприклад:
1. За допомогою яких засобів та сервісів можна швидко оживити вже готову гру та додати до неї трошки мультиплеєрності, типу лідербордів.
2. Як написати повністю мережеву гру - як з’єднувати гравців, як кодувати повідомлення та як їх надсилати. Звичайно, спробуємо освіжити в пам’яті чи вивчити необхідну матчастину.
3. Розглянемо приклади задач що виникають у розробці онлайн ігор на прикладі парочки party-games, великих ММО та інших.
Приходьте - субота, Белка, початок о 10:25 - вхід вільній.
1. За допомогою яких засобів та сервісів можна швидко оживити вже готову гру та додати до неї трошки мультиплеєрності, типу лідербордів.
2. Як написати повністю мережеву гру - як з’єднувати гравців, як кодувати повідомлення та як їх надсилати. Звичайно, спробуємо освіжити в пам’яті чи вивчити необхідну матчастину.
3. Розглянемо приклади задач що виникають у розробці онлайн ігор на прикладі парочки party-games, великих ММО та інших.
Приходьте - субота, Белка, початок о 10:25 - вхід вільній.
Одразу два відео сьогодні з'являється на каналі - короткий курс з комп'ютерної графіки з двох лекції. За три години можна прослухати стисле викладення основ CG: від того, для чого в комп'ютері відеокарта та що таке графічний пайплайн до того, за допомогою чого у сучасних іграх досягається такий вражаючий рівень реалістичності.
Перша лекція: відеокарта, шейдери, openGL, нормал мапи буфери:
https://www.youtube.com/watch?v=-OinemN_LZA
Друга лекція: освітлення, PBR, ambient occlusion та піксарівські мультики:
https://www.youtube.com/watch?v=8VIYf3mYMjE
Перша лекція: відеокарта, шейдери, openGL, нормал мапи буфери:
https://www.youtube.com/watch?v=-OinemN_LZA
Друга лекція: освітлення, PBR, ambient occlusion та піксарівські мультики:
https://www.youtube.com/watch?v=8VIYf3mYMjE
YouTube
7. Комп'ютерна графіка #1: GPU, шейдери, графічний пайплайн
На лекції про комп'ютерні мережі у іграх ми говорили про протоколи (UDP та TCP, а також хто з них друг розробника, а хто тільки прикидається), серіалізацію (текстову та бінарну), а також дивились на приклади того, як можна зробити різні мультиплеєрні ігри
https://youtu.be/zwJeefDgOEA
https://youtu.be/zwJeefDgOEA
YouTube
9. Основи мереж для ігор: TCP, UDP, серіалізація, мультиплеєр
Останні дві лекції у цьому семестрі разом із вже наявною на каналі лекцією про SOLID складають один із великих розділів курсу - про код та архітектуру
У першій лекції ми розглядали історію движків та розбирали можливі варіанти архітектури гри:
https://www.youtube.com/watch?v=6Avtm_qij2E
У другій дивились на паттерни ігрової розробки:
https://www.youtube.com/watch?v=j-JtShcib4E
У першій лекції ми розглядали історію движків та розбирали можливі варіанти архітектури гри:
https://www.youtube.com/watch?v=6Avtm_qij2E
У другій дивились на паттерни ігрової розробки:
https://www.youtube.com/watch?v=j-JtShcib4E
YouTube
11. Архітектура ігрового додатку: історія двіжків, MVC
Завтра ввечері буду приймати участь в Kyiv Indies Meetup (який цього разу з відомих причин в онлайні) та розповідати про свій досвід створення геймдев-курсу. Приєднуйтесь!
https://www.facebook.com/events/267022271132862/
https://www.facebook.com/events/267022271132862/
Написав коротку замітку стосовного того, як буде проходити курс ігрової розробки в цьому році:
https://telegra.ph/Pro-kurs-Vvedennya-v-%D1%96grovu-rozrobku-v-os%D1%96nnomu-semestr%D1%96-2020-09-10
https://telegra.ph/Pro-kurs-Vvedennya-v-%D1%96grovu-rozrobku-v-os%D1%96nnomu-semestr%D1%96-2020-09-10
Telegraph
Про курс "Введення в ігрову розробку" в осінньому семестрі 2020
Всім привіт, я - Артем Коротенко, лектор курсу "Основи ігрової розробки" в КПІ. Я працюю в геймдеві з першого дня своєї професійної роботи програмістом (а це був травень 2012 року), за ці 8 років встиг попрацювати над проектами дуже багатьох жанрів, зараз…