Intro to Gamedev
1.09K subscribers
25 photos
72 links
Анонси, лінки, оголошення
Download Telegram
Привет!

Я - Артем Коротенко, и, возможно, вы слышали о том что в первом семестре в Белке проходит мой открытый курс геймдева (@gamedevkpi). В этом семестре мы совместно с Георгием Исаченко, которого вы знаете по лекциям по защиты информации (@softwareanddatasecurity) попробуем провести еще один курс совместно с кафедрой ВТ ФИВТа - Software Architecture & Development.

Почему архитектура?
По-моему опыту, именно знания в этой сфере часто проседают у студентов компьютерных направлений. Языку или фреймворку можно научиться, но с какой стороны подходить к разработке большого продукта, как научиться планировать его развитие, с учетом жизненного цикла в месяцы а то и годы (и чем это отличается от прототипной разработки), как вообще спокойно подходить к технологиям не скатываясь в холивары - все эти вопросы требуют внимания.

Чем будем заниматься?
Учиться проектировать приложения, смотреть на задачи с инженерной точки зрения, думать в категориях шире чем языки программирования и фреймворки. Будем говорить в большей части об архитектуре, частично - об организационной стороне процесса (про всякие аджайлы с точки зрения технических специалистов)

Какой порог входа?
Хорошее понимание основ программирования, минимальный опыт работы с ООП и\или ФП языками. Мы будем затрагивать многие вещи повторно, поэтому если курсы архитектуры или шаблонов проектирования у вас были, но совсем не усвоились или не оставили понимания как их применять - приходите.

Когда начинаем?
По субботам, в Белке, в 10:30. 23 числа будет первое, вводное занятие где мы детально рассмотрим проблемы, которые подталкивают к созданию такого курса, план на будущие ~10 лекций и общий набор скилов, который мы планируем немного прокачать за это время

Лекции будут открытыми, с записью на видео, если вам интересно - подписывайтесь на канал и чат @softwarearchanddev_chat, ближе к субботе будет еще один анонс
Начинается осенний семестр, и пришло время анонсировать очередной, уже четвертый сезон курса по Разработке Игровых Приложений

Что это?
Для тех кто не знаком с курсом - в течении всего первого семестра мы будем рассматривать различные темы из игровой разработки - AI, компьютерная графика, геймдизайн, программирование, формируя у себя представление о сфере геймдева и необходимых для него знаниях

Когда?
Как и в прошлом году, лекции будут проходить утром по субботам в Белке (за что команде Белки огромное спасибо), совместно с лекциями по Software And Data Security (@softwareanddatasecurity), детальный анонс первой, вступительной лекции ожидайте уже в пятницу вечером.

Новенькое будет?
В этом году курс будет видоизменяться, в связи с тем что во втором семестре появился отдельный курс по Архитектуре Приложений, куда постепенно будут переезжать все чисто "программистские" темы, оставляя в осеннем семестре больше места для игровых тем. Плюс, игровая сфера тоже не стоит на месте и вокруг появляется столько нового: от видеокарт с рейтрейсингом, до распространения Data Oriented Design.

Подписывайтесь на этот канал и чат (@kpigamedev_chat), даже если вы уже ходили на прошлые лекции - в этом году нас ожидают новые темы и новые знания.

Вйо до геймдеву!
​​Итак, начинаем!

Завтра в 10:20 состоится первая, вступительная, лекция курса "Введение в игровую разработку". План на завтра:

1. Познакомиться с курсом - поговорим о целях и задачах курса, рассмотрим все темы которые нас ожидают (а это примерно 10-12 лекций). Сами темы будут насыщенные: алгоритмы, программирование, геймдизайн, графика и много всего другого. Обязательно постараемся ответить на все вопросы!
2. Поговорить о сфере геймдева в целом - сделаем небольшой обзор мировых и украинских реалий, ролей в команде, возможностей для развития;

Если вы сомневались, стоит ли идти на курс (какой порог входа, о чем вообще будем говорить) - завтрашнее занятие должно ответить на все вопросы.

Куда приходить?
Библиотека КПИ, третий этаж, "Белка", начало в 10:20. Если вы не из КПИ - возьмите с собой документы (на входе турникет)!
Channel photo updated
Чи є в Україні геймдев? Може взагалі одна людина зробити круту гру? І чи правда що для розробки ігор потрібно знати С++ на купу математики?

На вступній лекції нашого курсу ми відповідали на часті питання про сферу та обговорювали, що на нас чекає в найближчому семестрі.

https://www.youtube.com/watch?v=rBfT493jhBY&list=PLkgXLMuasx7C7yMUsaq366htPg9rpM2lw
​​Будь-яка гра починається з ідеї. Програмування, архітектура, движки, графіка - це вже все деталі реалізації ігрового проекту, який спочатку потрбіно вигадати, зробити цікавим для гравців (визначитись з аудіторію, обрати механіки, проаналізувати конкурентів), спланувати монетизацію та багато іншого. Ці моменти разом формують одну із найбільш таємничих професій у ігровій розробці - геймдизайнер. Хоча, за визначенням, кожен хто пробує створити гру і є геймдизайнером. Отже, завтра поговоримо про:

а) Що читати і як розвиватись у сфері;
б) як підходити до вигадування нового проекту;
в) як аналізувати аудиторію
г) як робити гру не нудною

Тема дуже велика та цікава (хоча і не технічна), та дуже важлива для розуміння всієї сфери.

Крім того, завтра студенти курсу отримують завдання на весь семестр.

"Білка" (Бабліотека КПІ, 3 поверх), субота, 10:20. Якщо ви не з КПІ, візьміть з собою документи
На другій лекції ми говорили про геймдизайн: як вигадуються ігри, що спільного у The Sims, Halo та Bioshock, за допомогою яких емоційних тригерів проекти формують користувацькій досвід, як скласти портрет гравця для власного проекту та чому Ейнштейн одного разу замість докладу вирішив заграти на скрипці

Увага! В суботу в Белці проходить конференція, тому наступна лекція відбудеться вже завтра зранку - чекайте ввечері на анонс

https://www.youtube.com/watch?v=qj5FO4W8wdU
У цю суботу Білка зайнята конференцією, тому заняття потрібно перенести. Давайте вирішимо на який день:
Anonymous Poll
26%
П'ятниця (завтра), 10:30
74%
Неділя, 10:30
​​Перш ніж перейти до штучного інтелекту, графіки, програмування та інших технічних тем, нам потрібно зафіксувати певний набір базових знань з різних сфер, який необхідно мати у ігровій розробці. В цей набір потрапляє багато всього - від зовсім шкільної геометрії та тригонометрії (та хто її взагалі пам'ятає?) до фізики та університетської теорії ймовірностей зі статистикою. Хтось це вчив і гарно пам'ятає, для когось знання потрібно трішки освіжити, а для когось - помітити собі прогалину в знаннях та закрити її.

Отже, завтра о 10:30 (як завжди - в Білці) будемо робити огляд фундаментальних знань для геймдеву - математика, базова фізика, статистика, та деякі інші штуки. З прикладами!
Завтра о 12:00 Белка приймає Школу першокурсника, тому наша лекція, разом із лекцією по захисту інформації знову переноситься на неділю - чекайте детальний анонс вже завтра ввечері
​​Завтра ми переходимо до однієї з найбільших (та, як на мене, найцікавіших) тем нашого курсу - штучного інтелекту. В цьому році я планую розширити цю тему до трьох лекцій та більш детально зануритись у різні техніки та задачі. Отже, завтра:
- Поговоримо про відмінності ігрового та академічного АІ, згадаємо старенького Пакмана та спробуємо зрозуміти як він працює та чому це так круто вистрілило;
- Дізнаємось про техніки АІ в настольних іграх та подивимось чому в шахи комп'ютер обіграв людину ще 20 років тому, а у го - тільки три;
- Розглянемо різні алгоритми прийняття рішень у проектах різних жанрів;
Ключові слова: decision making, minimax, monte-carlo tree search, behaviour trees та ще скільки встигнемо за півтори години

Початок о 10:20, Белка. Вхід вільний
​​Завтра на лекції ми продовжимо говорити про техніки АІ у іграх: розберемся с принципами симуляції як у Sims, дуже швидко оглянемо техніки пошуку шляхів (раптом хтось забув що таке А-star?) разом із згадками де це потрібно крім, власне, пошуку шляхів, та розглянемо алгоритм, що дозволяє симулювати купу різних штук: від стай птахів до автомобільних гонок (boids, або більше загально - steering behaviours).

Увага! Лекція завтра почнеться раніше - ми почнемо вже о 10:0, місце проведення, як завжди - Білка (бібліотека КПІ, третій поверх). Лекція відкрита
На першій лекції із розділу про штучний інтелект ми говорили про шахи та го (які алгоритми використовуються для покрокових ігор з повною або неповною інморфацією), згадували Пакмана, обговорювали дерева прийняття рішень, скінченні автомати (state machines) та дерева поведінки (behavior trees)
https://www.youtube.com/watch?v=zlEI6ii28_A
Завтра, на останній лекції з циклу про штучний інтелект ми закриємо борг і нарешті поговоримо про steering behaviours (та навчимося преслідуванню, патрулюванню та групповим поведінкам), крім того розглянемо нові теми - нечітку логіку, тактичний AI (для StarCraftу теж потрібно ботів писати) та клітинні автомати (як у класичній грі Життя чи SimCity)


Лекція завтра нарешті почнеться вчасно - о 10:30, місце проведення, як завжди - Білка (бібліотека КПІ, третій поверх). Лекція відкрита
​​В цьому році ми значно менше часу приділяємо темам пов'язаним із кодом, але все ж прийшов час трохи поговорити і про це. Завтрашня тема нашої лекції - Архітектура ігрових додатків. Не лякайтеся складної назви, насправді ми будемо розглядати те, якими основними принципами слід керуватися коли ви починаєте продумувати реалізацію вашої гри. Ми розглянемо чим "під капотом" один від одного відрізняються настільні ігри та матч-3, шутери та RTS, нескінченні казиношні слоти та покери а також всяке різне інше.

Після завтрашньої лекції у вас буде розуміння ЯК саме краще технічно реалізовувати певну ідею, та які за цим стоять плюси, мінуси та підводні камені.

З відео другої та третьої лекції про АІ поки заминка через певні технічні проблеми зі звуком, але все буде.

Початок завтра, як завжди - 10:20, Белка (Бібліотека КПІ, третій поверх). Вхід вільний
На другій лекції з циклу по штучному інтелекту ми говорили про пошук шляхів (Дейкстра та A*), те де ці алгоритмі використовуються крім пошуку траекторій руху (IDA*), а також про те як ствроюється АІ для гри типу The Sims

https://youtu.be/RKFItb_fPZk
​​Перш ніж написати контрольну та перейти до наступної теми - графіки, ми ще трохи поговоримо про технічну сторону розробки. Завтра мова на лекції пойде про шаблони ігрової розробки - певні конструкції, що існують для вирішення якихось частих проблем. Надто абстрактних теоретизувань не буде - тільки те, з чим постійно доводиться стикатись в практичній розробці. Поговоримо про нещасні попсові сінглтони зі стейт машинами (тепер із точки зору коду), а також про різні менш відомі штуки.

Приклади будуть ігрові, але загалом лекція буде цікавою всім хто цікавиться програмуванням та проектуванням.

Як завжди - Белка, 10:20, вхід вільний
На останній, третій лекції з циклу про штучний інтелект ми нарешті розглянули алгоритм boids (що дозволяє релізовувати групові поведінкі а також різні переслідування з блуканнями), а також затронули нечітку логіку та тактичий АІ, що використовується, наприклад, для можливості навчити ботів сидіти в засаді
https://www.youtube.com/watch?v=mNOANy_4wCg
Лекції завтра не буде, через те що студенти будуть писати контрольну.
Якщо ви не з груп ІП-6х, але теж хочете перевірити свої знання з минулих тем - так само приходьте на 10:20 у Белку
Якщо ви планували прийти завтра зранку на лекцію - зайдіть, будь ласка, в наш чат @kpigamedev_chat та відмітьтесь у голосуванні, для того щоб я міг зрозуміти кількість бажаючих у зв'язку із новим графіком відпрацювань свят в КПІ