Народ, такое дело - я заболел и на этой неделе у меня не хватит голоса на полноценное полуторачасовое вещание лекции, поэтому переход к теме графики, шейдеров, освещений и всего такого откладывается на одну неделю. То есть, завтра лекции не будет 😷
Возможно, потом организуем дополнительное занятие. Не хворайте!
Возможно, потом организуем дополнительное занятие. Не хворайте!
После небольшой паузы мы снова возвращаемся к нашим занятиям по Игровой Разработке. До этого мы говорили об играх только с точки зрения кода, завтра же нас ожидает обзорное занятие по компьютерной графике.
Почему видеокарта занимает почти половину компьютера как по объему, так и по стоимости? Каким образом трехмерная модель в оперативной памяти превращается в картинку на экране монитора? Что такое шейдеры и зачем оно? За счет чего картинка в игре с каждым годом становится все реалистичнее и реалистичнее? Вопросов много, постараемся затронуть основное для понимания ситуации.
Занятие в большей степени общеобразовательное, поэтому приглашаются все желающие – 10:25, Белка. На первой паре занятия не будет.
Почему видеокарта занимает почти половину компьютера как по объему, так и по стоимости? Каким образом трехмерная модель в оперативной памяти превращается в картинку на экране монитора? Что такое шейдеры и зачем оно? За счет чего картинка в игре с каждым годом становится все реалистичнее и реалистичнее? Вопросов много, постараемся затронуть основное для понимания ситуации.
Занятие в большей степени общеобразовательное, поэтому приглашаются все желающие – 10:25, Белка. На первой паре занятия не будет.
Лекция о графике: разница между CPU и GPU, графический конвейер, OpenGL\DirectX\Vulkan, виды шейдеров, способы улучшения детализации, нормал мапы, буффер глубины и стенсил буфер https://www.youtube.com/watch?v=ty3tUp0p5Kg&index=7&list=PLkgXLMuasx7Dch_t5j6Z-03ToPfB-4ddp
YouTube
Computer Graphics Essentials
Слайды: https://www.slideshare.net/korotenkoartem/essential-computer-graphics
На прошлой встрече мы расмотрели много базовых понятий в компьютерной графике, завтра же продолжим и углубимся в эту тему – как происходит вычисление освещения в 3D-сцене? Что такое Global Illumination и почему эта штука вместе с Physically Based Rendering позволяет современным играм и мультикам выглядеть настолько реалистично? Что такое настоящий Ambient Occlusion и почему то что мы видим в играх – не совсем оно? Чем отличается Forward Rendering от Deferred Rendering? Приходите, будет интересно.
Как всегда – Белка, пятница, 10:25
Как всегда – Белка, пятница, 10:25
Видео нашей последней лекции, где мы рассматривали освещение и затенение в компьютерной графике, а также то благодаря чему современные приложения выглядят так круто - физически корректный рендеринг и глобальное освещение https://www.youtube.com/watch?v=AHK2QCqLOXg&list=PLkgXLMuasx7Dch_t5j6Z-03ToPfB-4ddp&index=8
YouTube
Modern Computer Graphics
Слайды: https://www.slideshare.net/korotenkoartem/modern-computer-graphics-1711/korotenkoartem/modern-computer-graphics-1711
Искусственный интеллект (AI) со всеми его нейронными сетями и deep learning-ами на сегодня, пожалуй, вторая по количеству шумихи вокруг тема – круче только блокчейн. Мало кто понимает как точно это работает, для чего и когда нужно, что важнее – когда ненужно.
Удивительно, что игры – одна из сфер, где, по ощущению, AI – на каждом шагу (почти в любой игре есть боты), но при этом в большинстве случаев эта магия достигается куда более простыми приемами чем сложное машинное обучение.
Завтра мы рассмотрим AI в играх с самого низу, основательно – начиная с поиска путей (pathfinding) и steering behavior (не знаю как это корректно перевести, но это то, благодаря чему в стрелялке бот умеет от вас убегать, а животные – правильно двигаться в стае). Если будем успевать, затронем и более сложные вещи, как сложное управление поведением и создание больших симуляций в духе SimCity.
Лекция открытая, пятница, Белка, как всегда – 10:25
Удивительно, что игры – одна из сфер, где, по ощущению, AI – на каждом шагу (почти в любой игре есть боты), но при этом в большинстве случаев эта магия достигается куда более простыми приемами чем сложное машинное обучение.
Завтра мы рассмотрим AI в играх с самого низу, основательно – начиная с поиска путей (pathfinding) и steering behavior (не знаю как это корректно перевести, но это то, благодаря чему в стрелялке бот умеет от вас убегать, а животные – правильно двигаться в стае). Если будем успевать, затронем и более сложные вещи, как сложное управление поведением и создание больших симуляций в духе SimCity.
Лекция открытая, пятница, Белка, как всегда – 10:25
Лекция про AI, в первой части которой можно узнать как придумывать новые эффективные алгоритмы на графах даже в 2012 году, а во второй - как смоделировать птиц, преследование, убегание и блуждание с помощью всего двух векторов https://www.youtube.com/watch?v=i-4GoYOaxIs&index=9&list=PLkgXLMuasx7Dch_t5j6Z-03ToPfB-4ddp
YouTube
AI: Pathfinding and Steering Behavior
Слайды: https://www.slideshare.net/korotenkoartem/ai-pathfinding-and-steering-2411
Как реализованы The Sims? Как заставить ботов в компьютерной игре реалистично действовать сообща? На прошлой неделе мы разобрались с базовыми вещами – как ботам ходить, бегать, и при этом не сталкиваться, а теперь поговорим о том ЗАЧЕМ вообще куда-то идти: decision trees, behavior trees, вот это все.
Кроме того, обзорно рассмотрим остальные техники AI – генетики, клеточные автоматы, немножко нейронки (узнаем, есть ли им вообще место в играх).
Важно! Лекция пройдет на первой паре (8:30) в связи с подготовкой Белки к Хакатону – кто собирается прийти, стукните в чат @kpigamedev_chat, чтобы ориентироваться
Кроме того, обзорно рассмотрим остальные техники AI – генетики, клеточные автоматы, немножко нейронки (узнаем, есть ли им вообще место в играх).
Важно! Лекция пройдет на первой паре (8:30) в связи с подготовкой Белки к Хакатону – кто собирается прийти, стукните в чат @kpigamedev_chat, чтобы ориентироваться
Все знают, что у студентов дедлайны наступают в конце декабря, когда нужно тушить пожары зачетов и хвостов. У разработчиков игр тоже есть предновогодний завал но наступает он в середине месяца, когда нужно готовить и выкатывать ждущим игрокам вкусные апдейты под Рождество. Как вы уже поняли, я попал как раз в такой завал, поэтому завтра лекции не будет 😞
Но, через неделю (в этот раз в четверг) мы с вами поговорим о сети. У вас есть время кинуть мне в чатик любые вопросы которые вас интересуют - когда стоит писать свой сервер для игры? Как делаются ММО? Какие технологии испоьзовать для раннера на четверых? Всем отсутствия хвостов под Новый Год 👌
Но, через неделю (в этот раз в четверг) мы с вами поговорим о сети. У вас есть время кинуть мне в чатик любые вопросы которые вас интересуют - когда стоит писать свой сервер для игры? Как делаются ММО? Какие технологии испоьзовать для раннера на четверых? Всем отсутствия хвостов под Новый Год 👌
Завтра Белка закрыта, поэтому лекция о мультиплеерах и сети пройдет утром в понедельник - ждите детальный анонс в воскресенье вечером
Как написать бота для шахмат? В какую настолку компьютер смог обыграть человека только в 2016 году и почему? Как заставить симсов реалистично действовать как люди? Ответит наша лекция о техниках принятия решений в играх https://www.youtube.com/watch?v=5UGlrKFEnNk&index=10&list=PLkgXLMuasx7Dch_t5j6Z-03ToPfB-4ddp
YouTube
AI: Decision Making
Слайды: https://www.slideshare.net/korotenkoartem/decision-making-other-ai-technics-112
Завтра будет последняя лекция в этом семестре, поэтому постараемся уложить максимум полезного в полтора часа. Тема - сетевое взаимодействие в играх. Захватим вопросы от "как к оффлайн-игре по бырику прикрутить лидерборды" до "как написать мультиплеерную игру", вспоминая основы компьютерных сетей.
Приходите - Белка, понедельник, вторая пара
Приходите - Белка, понедельник, вторая пара
UPD У кого есть желание, но нет возможности прийти завтра - стукните в чат @kpigamedev_chat - лекцию нужно провести до пятницы, потому что в пятницу - зачет. И если собираетесь все же прийти завтра - тоже напишите
В последней лекции этого года мы говорили о сети - по чем слать (TCP\UDP), как кодировать (XML\JSON\Protobuf), для чего слать (раннеры, MMO), когда не писать, а пользоваться готовым (BaaS-сервисы)
https://www.youtube.com/watch?v=PzhoNdqtzfY&index=11&list=PLkgXLMuasx7Dch_t5j6Z-03ToPfB-4ddp
https://www.youtube.com/watch?v=PzhoNdqtzfY&index=11&list=PLkgXLMuasx7Dch_t5j6Z-03ToPfB-4ddp
YouTube
Questions on Networking
Последняя лекция цикла - сетевые протоколы, сериализация, BaaS сервисы, подходы к написанию онлайн-игр
Слайды: https://www.slideshare.net/korotenkoartem/questions-on-networking-2012
Слайды: https://www.slideshare.net/korotenkoartem/questions-on-networking-2012
Новогодние праздники позади, семестр окончен - самое время подвести итоги курса и определиться с дальнейшими планами. На чем будут основываться эти итоги? На моих субъективных мыслях и ваших отзывах, и чем больше будет отзывов - тем больше будет у курса возможностей развиваться.
Если вы посетили или посмотрели на ютубе хотя бы парочку лекций - пожалуйста, потратьте несколько минут на фидбек
https://docs.google.com/forms/d/e/1FAIpQLSeYgHGiz6HL5omL1hq2Bw7_Dbg10S6KiOenWVNWaI0cbex94A/viewform
Если вы посетили или посмотрели на ютубе хотя бы парочку лекций - пожалуйста, потратьте несколько минут на фидбек
https://docs.google.com/forms/d/e/1FAIpQLSeYgHGiz6HL5omL1hq2Bw7_Dbg10S6KiOenWVNWaI0cbex94A/viewform
Google Docs
Introduction to Gamedev-2017 Feedback