Intro to Gamedev
1.09K subscribers
25 photos
72 links
Анонси, лінки, оголошення
Download Telegram
С опозданием конечно, но выкладываю видео нашей последней лекции, про плохие штуки в коде и что с ними делать https://www.youtube.com/watch?v=xJqoVlmxuNs&list=PLkgXLMuasx7Dch_t5j6Z-03ToPfB-4ddp&index=5
Напоминаю, что в эту пятницу практики и лекции не будет - пришло время подвести итог первой части нашего курса, посвященной коду. На второй паре будет контрольная, на которой желающим проверить свои архитекторские навыки будет предложено: а) посмотреть на какой-то код и сказать, что вам в нем не нравится, б) придумать решение какой-нибудь вполне реальной задачи из проекта, где придется расчехлить все свои SOLID, DRY и KISS + возможно добавлю несколько вопросов с первых лекций, но это неточно

Для подготовки рекомендовано посмотреть видеолекции и прочитать отзыв о лабе (кто сдал, но кому еще не ответил – завтра всем напишу). Кроме того, напоминаю, что близится срок согласования курсачей, после которого тему назначу я сам (бугага).

Если кто-то не из магистров тоже хочет написать тест (что я очень рекомендую сделать!) – отпишите в чат, пжалста
UPD: по общей договоренности, контрольную перенесли на 9:00. Как всегда - в Белке
Для тех, кому интересно :)
По контрольной. Работы я все почитал, лично результаты всем писавшим с ошибками и комментами отправлю на выходных – пока общие впечатления.

Со вторым заданием, там где «укажите ошибки в коде», справились получше, хотя и все равно общая закономерность такая, что чем мелочнее ошибка и чем быстрее её исправить, тем больше ей уделено внимания, а вот самые кривые с точки зрения проектирования моменты оказались весьма обделены вниманием.

А вот с первым сосвсем беда :( Возожно сказывается отсутствия опыта создания больших проектов, но каких-то адекватных решений, которые бы можно было использовать в проекте, крайне мало. Что не очень хорошо для уже практикующих программистов. Отсюда вопрос – что будем с этим делать? Я уже планировал перейти на лекциях ко всякой геймдизной лирике, а контрольную разбирать на практиках понемногу, но сомневаюсь что увижу на них всех написавших контрольную. Моё предложение – объеденить завтра практику\лекцию (начать часиков в 9 и дальше на второй паре) и сделать большой разбор заданий, такая себе больая практика по OOP/OOD, для того чтобы хотя бы указать направление, в каком стоит эту тему копать. Полноценный анонс (для репоста) сделаю вечером, а пока отпишите в чатик, кто за
OOP/OOD Workshop

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

Итак, завтра, Белка – начнем в 9:00, закончим ближе к 12. Приглашаются все, кому интересно, как проектировать программное обеспечение так, чтобы потом не было мучительно больно и бесконечно грустно.
Видео нашей практики с последней пятницы. Всем кто писал контрольную - must have https://www.youtube.com/watch?v=FBS3aVlVUf8&index=6&list=PLkgXLMuasx7Dch_t5j6Z-03ToPfB-4ddp
Народ, такое дело - я заболел и на этой неделе у меня не хватит голоса на полноценное полуторачасовое вещание лекции, поэтому переход к теме графики, шейдеров, освещений и всего такого откладывается на одну неделю. То есть, завтра лекции не будет 😷
Возможно, потом организуем дополнительное занятие. Не хворайте!
После небольшой паузы мы снова возвращаемся к нашим занятиям по Игровой Разработке. До этого мы говорили об играх только с точки зрения кода, завтра же нас ожидает обзорное занятие по компьютерной графике.

Почему видеокарта занимает почти половину компьютера как по объему, так и по стоимости? Каким образом трехмерная модель в оперативной памяти превращается в картинку на экране монитора? Что такое шейдеры и зачем оно? За счет чего картинка в игре с каждым годом становится все реалистичнее и реалистичнее? Вопросов много, постараемся затронуть основное для понимания ситуации.

Занятие в большей степени общеобразовательное, поэтому приглашаются все желающие – 10:25, Белка. На первой паре занятия не будет.
Лекция о графике: разница между CPU и GPU, графический конвейер, OpenGL\DirectX\Vulkan, виды шейдеров, способы улучшения детализации, нормал мапы, буффер глубины и стенсил буфер https://www.youtube.com/watch?v=ty3tUp0p5Kg&index=7&list=PLkgXLMuasx7Dch_t5j6Z-03ToPfB-4ddp
На прошлой встрече мы расмотрели много базовых понятий в компьютерной графике, завтра же продолжим и углубимся в эту тему – как происходит вычисление освещения в 3D-сцене? Что такое Global Illumination и почему эта штука вместе с Physically Based Rendering позволяет современным играм и мультикам выглядеть настолько реалистично? Что такое настоящий Ambient Occlusion и почему то что мы видим в играх – не совсем оно? Чем отличается Forward Rendering от Deferred Rendering? Приходите, будет интересно.

Как всегда – Белка, пятница, 10:25
Видео нашей последней лекции, где мы рассматривали освещение и затенение в компьютерной графике, а также то благодаря чему современные приложения выглядят так круто - физически корректный рендеринг и глобальное освещение https://www.youtube.com/watch?v=AHK2QCqLOXg&list=PLkgXLMuasx7Dch_t5j6Z-03ToPfB-4ddp&index=8
Искусственный интеллект (AI) со всеми его нейронными сетями и deep learning-ами на сегодня, пожалуй, вторая по количеству шумихи вокруг тема – круче только блокчейн. Мало кто понимает как точно это работает, для чего и когда нужно, что важнее – когда ненужно.

Удивительно, что игры – одна из сфер, где, по ощущению, 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
Как реализованы The Sims? Как заставить ботов в компьютерной игре реалистично действовать сообща? На прошлой неделе мы разобрались с базовыми вещами – как ботам ходить, бегать, и при этом не сталкиваться, а теперь поговорим о том ЗАЧЕМ вообще куда-то идти: decision trees, behavior trees, вот это все.

Кроме того, обзорно рассмотрим остальные техники AI – генетики, клеточные автоматы, немножко нейронки (узнаем, есть ли им вообще место в играх).

Важно! Лекция пройдет на первой паре (8:30) в связи с подготовкой Белки к Хакатону – кто собирается прийти, стукните в чат @kpigamedev_chat, чтобы ориентироваться