Intro to Gamedev
1.09K subscribers
25 photos
72 links
Анонси, лінки, оголошення
Download Telegram
Кстати, в нашем чате @kpigamedev_chat прямо сейчас можно обсудить то, какой проект стоит разобрать\попробовать на практике в ближайшую пятницу. Присоединяйтесь!
На прошлой неделе вспоминали математику, завтра же поговорим о втором "столбе" знаний игрового разработчика - программировании. Дальше нас ждут темы посложнее, поэтому очень важно освежить и подтянуть (а для кого-то - выучить) основы. Будем говорить о C# (давно использовали async/await? Фишки седьмого шарпа с различными Tuple уже все разобрали? Знаете _как_ работает LINQ?), платформе в целом, код-стайле (да, это важно) - в общем, о всем том, что я ожидаю услышать на собеседовании от джуна/миддла. Как всегда - вторая пара, Белка.

Ну а на первой паре (практике, начало в 8:40) будем по заявкам начинать вместе делать Tower Defense - проект я уже набросал, далее будем шаг за шагом все рассматривать, изучать и развивать. Детали практики напишу в наш чат @kpigamedev_chat - присоединяйтсь.
Кстати, забыл выложить ссылочки, наверстываю упущенное. По C#: если ваш уровень знаний начальный, или хотите основательно пройтись по всему языку, берите "С# 6.0 In A Nutshell" - подробное, дотошное и при этом понятное издание
Ну а если уровень посерьезнее, и хотите в целом понять фишки языка по сравнению с другими языками, и уже глубже разобраться со всей платформой - "C# In Depth"
Будет удобно в пятницу провести лекцию на первой паре, а практику на второй (обычно наоборот)? Я хочу рассказать про некоторые важные штуки, и сразу показать как их использовать, и поэтому лучше начать с теории

Да, удобно – 43
👍👍👍👍👍👍👍 90%

Нет, лекцию все равно лучше на второй – 5
👍 10%

👥 48 people voted so far.
Алоха! Уже завтра нас ожидает одна из важнейших лекций цикла - время перейти к более глобальным вещам и поговорить об Архитектуре. Мы затронем несколько важных принципов объекто-ориентированого проектирования, рассмотрим варианты построения структуры приложения (от олдскульных вариаций MVC до новомодных MVVM) и рассмотрим технику, которая используется сегодня в большинстве сфер разработки программного обеспечения - DI (Dependency Injection). Да, и в Юнити тоже используется. После завтрашней лекции вы будете щеголять знаниями о том что DI - один из вариантов IoC, который реализует принцип DIP. Ну, тот который D в аббревиатуре SOLID - о ней тоже поговорим.

Важно! По общему одобрению, лекция пройдет на первой паре (8:35), для того чтобы мы могли на второй паре рассмотреть изученое на примере нашего Tower Defense проекта.
Последняя лекция у нас получилась о Software Engineering в целом, поэтому если вы не знаете что такое SOLID, или не до конца понимаете что он значит, или стесняетесь спросить зачем он - смотрите, в лекции мы попытались в этом всем разобраться, затрагивая еще Dependency Injection, MVC и MVVM
https://www.youtube.com/watch?v=y50e5HO3rSg&index=3&list=PLkgXLMuasx7Dch_t5j6Z-03ToPfB-4ddp
Первая часть нашего курса называется "Игра как программный продукт", в которой мы вспоминаем\изучаем разные правила построения ПО, с учетом специфики нашей предметной области - геймдева. В прошлый раз мы говорили про некоторые общие принципы и архитектуру, завтра же перейдем к шаблонам проектирования, с которыми приходится сталкиваться в разработке. Примеры будут из геймдева, но всем кто интересуется в целом Software Engineering тоже должно быть интересно. Ключевые слова: Game Programming Patterns, GoF. Будем говорить как о весьма банальных синглтонах, так и нечастых EventQueue и прочих

Лекция завтра будет в обычное время, то есть на второй паре (10:25), все кому еще интересно развитие нашего прототипного проекта Tower Defense и/или есть вопросы, приходите к 8:50. Вопросы не стесняйтесь кидать в чат @kpigamedev_chat
По горячим следам - утренняя лекция! Теги: Game Loop, State Machine, Command, Singleton, ServiceLocator EventQueue, TypeObject, NullObject, ObjectPool https://www.youtube.com/watch?v=8ifbkOZ6N4U&index=4&list=PLkgXLMuasx7Dch_t5j6Z-03ToPfB-4ddp
Что ж, пришло время поговорить о том, что затягивает разработку, убивает всякое желание делать проект и ломает ̶ ̶с̶е̶м̶ь̶и̶ сроки. О том, что мы сами порождаем и с чем раз за разом сталкиваемся. Время поговорить о плохом коде. Баги, костыли, велосипеды, антипаттерны, мараконы - вот это вот всё, откуда оно берется, как его опознать и обезвредить. Ну, или как с этим жить. Тема касается программирования в целом, хотя и с прицелом на игровую разработку, поэтому может быть интересна многим. Белка, пятница, вторая пара.

На первой паре мы завтра снова будем обсуждать, рисовать на доске и думать в этот раз над абсолютно реальным проектом, доступном в сторе. Обсудим работу со сценами, переходами и перезагрузками и как это ложится в ту архитектуру, которой мы пользуемся. Кому интересно - подходите к 8:50 примерно.
С опозданием конечно, но выкладываю видео нашей последней лекции, про плохие штуки в коде и что с ними делать https://www.youtube.com/watch?v=xJqoVlmxuNs&list=PLkgXLMuasx7Dch_t5j6Z-03ToPfB-4ddp&index=5
Напоминаю, что в эту пятницу практики и лекции не будет - пришло время подвести итог первой части нашего курса, посвященной коду. На второй паре будет контрольная, на которой желающим проверить свои архитекторские навыки будет предложено: а) посмотреть на какой-то код и сказать, что вам в нем не нравится, б) придумать решение какой-нибудь вполне реальной задачи из проекта, где придется расчехлить все свои SOLID, DRY и KISS + возможно добавлю несколько вопросов с первых лекций, но это неточно

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

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