Задумка интересная. Вспомнился момент, когда захотел поучить C++ после C#, а потом наткнулся на статью о том, как какие-то энтузиасты начали исследовать (восстанавливать) исходный код одной старой игры Carmageddon.
Юрий, это будет отличный курс, аналогов которому нигде нет, и в ближайшем будущем не думаю, что появятся. И системы сборки, и различные библиотеки - прямо кладезь знаний. Спасибо огромное, жду продолжения!
Звучит секси. Не знаю было бы вам интересно ... но интересна тема создания инструментов для процедурной генерации, может и вам будет интересно затронуть эту тему?)
Процедурные штуки я обожаю) Но не могу пока сказать доберемся ли до них или нет в рамках серии.. В вики кстати имеются подборки по процедурной графике, если интересно (= lifeexe-art.gitbook.io/lifeexe/obrazovatelnye-resursy/knigi/procedurnaya-grafika lifeexe-art.gitbook.io/lifeexe/software/tools/creative-coding
@@НиколайМамонтов-т7н Сколько лет надо кодить чтобы хотябы этого уровня добиться? я вот больше 2 лет пишу на спп, но каждое видео этого человека кажется взрывом мозга. если спросете что я вообще делал всё это время, я дважды переделать одну свою 2д игру, сделал win32 программу "база данных" с авто заполнением формы на сайте (с костылями). и пытался рабоать с парсерами и запросами хттп, естественно ничего не вышло. и я до сих пор не умею устанавливать библеотеки, возиться с смейками и тд, некоторые требуют писать скрипт на питоне, всё это огромный лес
@@НиколайМамонтов-т7н У чела с многолетним опытом графического программирования, кем является автор, средний уровень? Может он делает тутор для средних, но опыт его не средний. А ты профессионал в какой сфере? Судя по применению питона явно не в игровой. Враппер? А весь пайплайн для видюхи кто за тебя писать будет? Библиотека не напишет.
Один из ценнейших каналов в русскоязычном ютубе не только по анрилу, но и по программированию в целом! И хотелось бы узнать про многопоточность в контексте игрового программирования🔥
Юрий, вы один на милион. Я очень чательно наблюдаю за вами. У вас есть дар обьяснять людям очень доходчево. Я уверен на 101% в том что, если вы захотите попробовать создать свою OS систему подобно Windows, то мы как верные юниты последуем за вами. Я это виду к тому что, чем бы вы не решили занятся мы будем с нетерпенее ждать этого. Еще былом Круто увидить от вас платный курс по UE. А то шутер уже немного устарел, да и мы все уже по большей мере прошли его , и используем как блокнот с заметками)
За весь свой скромный опыт изучения программирования очень рад, что знаю русский язык) Качество материала на высочайшем уровне! Очень много нового узнал на этом канале) Спасибо большое, Юрий, за это!
Юрий, а вы будете прям с нуля показывать как вы пишете весь код? или вы будете просто демонстрировать, что у вас получается в итоге? Хотелось бы прям шаг за шагом повторять все действия )) но мечтать не вредно )
Планирую весь код показывать в видео в риалтайм) Как обычно. То есть повторять шаг за шагом получится 👍 Но не забывайте импровизировать, это тоже полезно))
невероятно круто! чувствую будет очень интересно, плюс даст понимание как игровые движки устроены внутри. А то пока что анрил как "чёрный ящик" - что то даёшь на вход, получаешь что-то на выход, а что внутри там происходит - не достаточно понятно.
О! Судя по реакции, мой коммент, похоже, отразился. Кстати, к видео "33. Документация проектов Unreal Engine. Doxygen" написал тройку комментов, которые традиционно не отобразились. Там из основного баг UAT - наш кастомный параметр UnoptimizedCode не срабатывает для билда проекта с Editor Taget. Хотел поделиться, что, вроде как, я нашел где этот баг, запилил pull request Эпикам (ID 11567)
В чём суть использования CMake? Какой глобальный профит? Что он даёт и что облегчает? У меня вообще нет опыта его использования. Можно в следующих видео пояснить, если не сложно!!! :)
Вопрос: можно ли сделать клиент игры на UE, а сервер разрабатывать отдельно, возможно на другом языке, например на rust lang? Есть ли такая практика, что для этого необходимо? Если можно скиньте ссылку на почитать... (MMOGPG)
Просто шикарные планы! Я как раз хотел написать небольшой игровой/графический движок и изучал эту тему, и тут увидел Ваше видео! При просмотре я постоянно открывал рот от того, насколько большие, сложные и жутко интересные темы Вы поднимаете и главное реализовываете! Такое чувство, будто Вы познали дзен в программировании и в Unreal и теперь можете самостоятельно написать хоть весь Unreal заново! Аплодирую стоя, жду полного выхода курса.
Это блестяще, Юрий! А казалось бы, что контент по глубине и ценности достиг предела, ан нет)) Естественно ждем и уже в голове поставили лайки на еще не вышедшие ролики) PS. Крайне удивлен, что есть даже комментарии с каким-то непонятным, почти негативным, посылом, обычно такое пишут люди, которым нужна конкретная инструкция под их конкретную задачу, ну и естественно бесплатно, но с другой стороны больше комментариев => больше просмотров => больше таких прекрасных курсов 😀
Спасибо огромное!! Да я тоже считаю, что нужно основы изучать и понимать, тогда и все конкретные задачи будут решаться без гуглежа. Концентрироваться нужно на фундаментальном, а не на временном. Все системы в том же анрил постоянно обновляются и появляются новые + знать все невозможно и не имеет смысла. Имеет смысл разобраться с нужной системой, когда понадобится, а для этого нужно понимать базу CS.
Занимаюсь сетевым программированием, но всегда хотел себя попробовать в графике. Смотрел Molly Rocket, The Cherno, читал кучу материала от небольших авторов по теме создания движка (с нуля или почти). И вот, наконец, дождался такого контента и от вас, Юрий) Будет прям суупер интересно всё это посмотреть, потыкать на практике, пронаблюдать вживую за развитием проекта
Если в какой момент перестанет хватать 2000 минут на ci/cd проекта на серверах гитхаба, ты можешь в настройках репозитория создать для него self-hosted runner, который будет использовать мощности твоего удаленного сервера без ограничений для автодеплоя по твоему workflow
Юрий, спасибо за презентацию курса! Я хотел узнать, каким образом мы можем протестировать быстродействие работы исполняемой функции в милисекундах, чтобы в дальнейшем, возможно, ее переписать более оптимальный вариант? Есть ли несложный метод?
Пожалуйста! Да, конечно) Спрашивали кстати несколько раз, поэтому добавил страницу в вики: lifeexe-art.gitbook.io/lifeexe/code/c++/measure-execution-time Рекомендую с модулем chrono ознакоимиться подробно, будет полезно!
Как часто планируется выпуск эпизодов? Хотел бы, повторять код но на линукс. Насколько это возможно? Вы говорили что будете использовать кроссплатформенные модули и библиотеки, но я так понимаю не всегда.
Приветствую! Видео на канале выходит раз в две недели. Темы разные. Но скоро серию начнем. Не могу обещать, что под линуксом будет все прям работать... Я думаю мы поставим билд на линукс на гитхабе, посмотрим как пойдет.
Не обещаю, что будет время проверять каждый раз под линукс, пулреквесты будут приветствоваться, я об этом скажу как дойдем до самого проекта. Но bgfx кросплатформенная + билд поставим на гитхабе под линукс. Должно быть более или менее ОК (=
Заранее спасибо за курс, с удовольствием пройду его для дополнительной прокачки своих скилов. Не смотря на то, что свой опыт огромный, всегда хочется закрыть пробелы и вникнуть в приятной атмосфере в то, на что не хватает времени в процессе своей основной работы.
Не могу обещать, что гладко под линукс будет, на виндовс буду делать. НО Вы можете кстати помочь по мере выхода видео с комментами, что не так на линуксе. + Можем на гитхабе билд поставить также на линукс машине, поэтому многие проблемы сразу будут обнаруживаться.
Не сочтите за наезд, но блин, использовать эти готовые фреймворки это как cntr+c cntl+v особо и программированием это сложно назвать. Да еще и архитектура вся анриловская, а не своя. Вот интересно было бы именно рендерилку свою написать под вулкан допустим. В первом приближении она может быть очень простой, и кода будет тысячи 2 строк. А если на расте, то можно и в 1тыс. уложиться, я думаю. А дальше ее можно было бы усложнять, добавить шейдинг и пр. Это могло бы иметь образовательную ценность. Хотя может я и не прав.
Не считаю за наезд)) Частично согласен. 1. Программирования будет очень много. Как и говорил разные с++ концепты буду рассказывать на реальных примерах. Да многие вещи будем реализовывать подключая библиотеки, которые в дальнейшем можно будет при желании заменить на собственные решения. 2. Архитектура от части анриловская, в этом основная суть, потому что канал в основном про UE, таким образом будут убиваться сразу два зайца, за счет прямых аналогий. 3. Да может и дойдем до собственной рендерилки или до рейтресинга. Когда будет скелет движка, это все будет реальностью. Просто задача в данной серии не стоит такая. Плюс разным людям разное интересно, кто-то может сказать почему мы окна создаем с помощью glfw а не на win api и т.п. Или вообще почему мы не с++ в целом изучаем сначала. Так можно углубиться по всем направлениям. Чтобы качественный курс по графике сделать нужно очень много ресурсов и времени, которых к сожалению нет на данный момент, хотя я конечно бы хотел им заняться) 4. Просто в такой же логике все видео по UE на канале не имеют смысла, потому что они просто API анрила используют и все)
@@LifeEXECode если будет голосовалка куда дальше эту серию развивать, то бы больше хотел разбор многопоточки, именно по плюсам очень мало информации по данной теме на реальном примере.
Было бы неплохо сходу пилить движок FULL HOTRELOAD, где даже для генерации не пришлось выключать редактор или игру, даже во время создания новых файлов.
Звучит, как пушка-бомба. Буду ждать выхода видосов и грустить, что 1 видос раз в две недели) п.с. будет очень интересно, хотя бы поверхностно рассмотреть ещё две темы - скриптовый язык для нашего движка и систему похожую на блупринты. Хотя бы в основе теории, как оно построено или строится) Автору желаю удачи, буду активно следить)
Мысль на скорее всего далекое будущее, т.к. услышал «погружение в графон», добавить либу meshoptimizer(в двух словах может сгенерить лоды, мешлеты и самое важное перестроить буферы вершинные/индексные так, чтобы кэш на гпу потом спасибо сказал) и перейти на mesh shading с различными видами кулинга и это все перетечёт в так называемый gpu driven rendering, было бы классно понаблюдать за этим всем. Так и появятся конкуренты анрилу в рамках обучения))
Так она почти готова. Там как раз осталось 2 видео. Одно завязано на cmake/conan, которые рассмотрим в этом курсе, а второе это звук - после курса по метасаундам можно сразу допилить.
Коммент ради поддержки канала, но раз пишу, то.. Очень крутой контент на всём канале. Пожалуй, лучший во всём русскоговорящем сегменте! И вопрос: С какой периодичностью планируете выпускать видео по теме?
так я и не услышал нахрен нужно писать свой движок, какой профит. Разобраться? Жизни не хватит. Но я примерно понимаю, что это такое - это ПРОКРАСТИНАЦИЯ. Самая настоящая. Это когда ты думаешь, вот движок запилю, а уж потом супер игру напишу. Не запилишь, ты потонешь в своем движке. В его багах. Твой мозг не выдержит и расплавится. А потом ты забудешь, чего наворотил и зачем. Вот автор запилит. В него я верю, уникум. Но ему нехрен делать. Ему некуда свой ум и знания пристроить. Но потом ему станет скучно и он бросит и начнет, что то еще более сложное. Автор меня даже не научил, как компилить нормально плюсы в UE. Самое первое, что нужно знать. Но бросился учить делать движок. Шутники. Детский сад. Но каждый развлекается как может. Это нормально. Развлекайтесь, дети. Но я бы предложил заняться, чем то другим, например, как сделать AI врагов продвинутый. На основе деревьев поведения анрила. Хотя, бы на уровне простейших зомби из Диаблы 1. Лично я наверное этим и займусь.
Писать свой движок игру на нём сходу, это в реальности ГОРАЗДО БЫСТРЕЕ (!) чем делать игру на Анриле, как бы контринтуитивно это не звучало. > "Жизни не хватит". Написать движок для игры - это год работы МАКСИМУМ и то если ты очень долго долбишься со скелетной анимацией. Думаешь писать движок - это монструозная работа? Нет. Основная беда в том, что ты ДОЛЖЕН знать математику, геометрию, работу с памятью. Увы, пошаговых для новичков тут не будет, потому что каждый геймдизайн игры требует своего. Нельзя сделать движок "для всех игр". И поэтому оно кажется сложным. Большинство старых игр - это движки-игры, под конкретный геймдизайн, где писали всю базовую часть и сходу делали игры и укладывались на изичах за 2 года с 10 людьми в команде. Такие как Анрил, у которого модульная система "для всех" - это большая редкость. Движки делаются очень быстро, прокрастинация это уже от человека, который годами рефакторит то что он пишет, и к движкам это не относится. он может это делать и не с движком. К сожалению да, туториалов по продвинутым АИ и прочим таким приколам практически нет нигде. Я не могу предугадать твой опыт, но твоё название этого детским выглядит просто смешно.
@@sitraash спасибо, за комент, не прошел равнодушно мимо. до автора мне далеко, он очень умный. Но пара игр на Unity в Стиме лежит. Не хочу перечислять все свои заслуги, это будет выглядеть нескромно, но прибедняться мне тоже не нужно. Есть опыт в играх и в программировании. И в играх я разбираюсь. Потому, что я их люблю. Мой недостаток - плохая память, поэтому у меня груды документов со всякими выписками и лайфхаками и даже базы данных заводил. Но многим гораздо проще - они не боятся забыть целый свой движок, что он вообще делает, как его заводить, и каким топливом его кормить. И тд. Лично я даже не подумай забивать голову своим движком. Вообще я делал что то подобное, надстройку для XCode, для того чтобы работать со спрайтами. Получился почти свой движок. Половину возможностей я забыл. Мне пришлось для себя писать документацию. Но все равно многое забыл. А потом увидел Unity и стал его изучать. И перестал беспокоиться. А потом увидел еще лучше движок, UE. А вот на UE 5 пока не спешу переходить. Жаль, что ты тоже не сказал зачем тебе свой движок. Тебе заняться нечем? Почитай лучше книжку. Но я тебе расскажу про Джона Ромеро. Это настоящий творец, ему важны не деньги, а игра и игроки и когда он увидел новый движок Кармака и его возможности он не смог устоять. И начал переписывать код своей Дайкатаны под новый движок, он думал что это будет быстро. Но нет. Он похерил все, все сроки, Дайкатана вышла с трудом очень поздно и провалилась, ибо уже вышли игры круче. Этот чужой опыт нам говорит что даже просто поменять движок требует уйму времени! Второй пример - Аркадка про капитана Блада. Они писали игру и параллельно переделывали движок под придумки дизайнеров. Думаю эту трагическую и душную историю про долгострой этой игры знают почти все. Но не сделали выводов! Тебе этого мало? Тогда вперед делай иллюзию деятельности и пиши свой движок. Потом расскажешь про свои игры.
Этот канал вдумчиво смотрят только те, кому эти знания будут полезны, это же не контент для начинающих. Как правило в индустрии разработчики игр глобально делятся на Gameplay programmer и Tools/Engine Programmer, обучающих роликов про первый тип в сети много, а вот про второе почти ничего нет. Этот канал с уклоном в во второе. А вообще, Вы молодец, поднимаете активность в комментариях, то чего этому каналу нужно для продвижения.
@@TheTriggerkz конечно, я согласен, что подушнил. Лезу со свои уставом в чужой огород. Но если я вижу, что люди хотят плясать на граблях, то захотел предупредить и услышать возражения. Но могу и ошибаться. Хотите плясать - пляшите. Возражения услышал, спасибо. Рад обсудить вопросы и свои ошибки. Но мне так и не ответили на два вопроса "неначинающие", а значит просто не знают: 1. как компилировать в VS код UE, нормально, чтобы не ждать 10 минут. Почему он компилит иногда 6 сек, а иногда 10 минут? В чем проблема и как это оптимизировать. 2. зачем нужен второй движок. Например, я мог бы услышать здравые идеи, что движок узконаправленный. Например, для 2D стратегий, или вообще для одной игры, но он лучше аналогов. Но нет - автор хочет окучить все. B 3D и даже другие платформы. Ну и в чем профит? Ну, я понимаю что это хорошее саморазвитие. Но если заняться нечем напишите движок на ассемблере или в машинных кодах. Не нужно останавливаться, бить себе по рукам и скромничать. Но я думаю, что разобраться в первом вопросе полезней. И пилить контент нормально в C++, в готовом движке и изучать игровые механики и алгоритмы. Мое личное мнение. Которое может быть ошибочным. Знаю твердо и никто меня не переубедит, что например геймдизайнер обязан аргументировать каждую свою задумку. Объяснить, зачем она нужна, что она делает и развлечет ли игрока. Если бы дизайнеры так делали то мы бы не увидели тупые механики - такие, как Добивание или Добывание патрон бензопилой, в шутере. Так и движок, требует аргументов. На своем движке тоже можно сделать тупую бессмысленную душную игровую механику.
@@farkasvilkas5839 Про мой опыт, я годик поработал у Сейбер над Вахой 40К Space Marine 2, а до этого парочкой инди. Касательно того, что ты ответил мне в первом комменте. Сейчас мне не нужен движок. Но если думать о том, зачем мне нужен был бы движок, это только одно. Полный контроль над всей архитектурой. Например мне не нравится полнейший абстрактивный ООП ужас в современном программировании. Что в Анриле, что в Юнити. Я просто его не понимаю и самое главное НЕ ХОЧУ понимать. Даже при работе в Анриле, пишу всё в Си-стайле, как раз как у Кармака или в Халфе 1. Если я хочу написать свой шейдер, мне надо умахаться в усмерть, чтобы это сделать, когда как на своём я просто смогу из текста фрагментный шейдер закинуть и по кайфу. Или например, я хочу использовать в своих играх MSAA сглаживание. но в Анриле и в других, большой упор на TAA сглаживание. Там его можно включить, но придётся отказываться от других графических приколов. Это значит что я должен где то что то переписать, но найти ГДЕ И ЧТО ПИСАТЬ в таком монструозном движке, гораздо быстрее будет написать свой. Примеры могу продолжать долго. Касательно памяти, я не думаю что твоя память плохая. Когда появляется больше 1000 строк, уже документация нужна, никто не может запомнить большинство или это уникумы, или просто миллиард лет работали с этим. Про VS в UE. 10 минут я никогда не ждал, если на SSD. А в целом никак не ускорить. Он всегда компилится сто лет, по 10-20 секунд у меня. Когда как другие за 1-2 секунду, тот же свой движок или Соурс. У Анрила много генерации кода для редактора и блюпринтов, увы, он долгий. Даже если ты всё сделаешь без зависимостей, это не поможет. Но кое что есть. Не пользуйся IncrediBuild в VS при сборке, (это штука которая часто идёт вместе с VSкой при установке), и выключи плагин в Анриле XGE Controller, оно будет сильно быстрее. Как можно видеть по куче видосов об игровых механиках, они никогда не делают их до ИГРАБЕЛЬНОГО состояния, просто прототипы. Дляэ того нужен как раз геймдизайнер, условно, выдать себе задачу чтобы вот так и так. Однако никто так не делает, даже автор этого канала и сомневаюсь что будет. Ютуб полон видосов с механиками типа MVP, а вот полностью работающие для игры - нет. В основном потому что у каждой игры свой вид механики и ты каждый раз пишешь по разному, сложно сказать насколько это будет полезно. Кстати поддерживаю твои слова про геймдизайн и обоснование. Этого многим современным играм не хватает.
Юра, от всей души желаю успехов во всех начинаниях, сил и терпения, чтобы до конца реализовывать все свои идеи. Вы наш флагман. Ave, Yuri!
Я ждал подобный курс несколько лет.
Спасибо!
Юрий, продолжайте, пожалуйста!)
Нас ждёт ещё один крутой курс! После него останется только написать свой язык и перенести движок, и змейку на него)
Если всё обещанное в видео будет реализовано, то это будет очень крутой курс! Ждём с нетерпением ) Спасибо!
Большое спасибо автору за качественный контент! Ждем продолжения!
Отличный контент! Замахнуться на свой движок - это сильно
Очень жду продолжения (начала).
Пишу комментарий для поддержки канала.
Задумка интересная.
Вспомнился момент, когда захотел поучить C++ после C#, а потом наткнулся на статью о том, как какие-то энтузиасты начали исследовать (восстанавливать) исходный код одной старой игры Carmageddon.
Очень интересно, продвижения! Ждем следующую серию 👍
Это очень круто
Юрий, это будет отличный курс, аналогов которому нигде нет, и в ближайшем будущем не думаю, что появятся. И системы сборки, и различные библиотеки - прямо кладезь знаний. Спасибо огромное, жду продолжения!
переходим в режим активного ожидания
Звучит секси. Не знаю было бы вам интересно ... но интересна тема создания инструментов для процедурной генерации, может и вам будет интересно затронуть эту тему?)
Процедурные штуки я обожаю) Но не могу пока сказать доберемся ли до них или нет в рамках серии..
В вики кстати имеются подборки по процедурной графике, если интересно (=
lifeexe-art.gitbook.io/lifeexe/obrazovatelnye-resursy/knigi/procedurnaya-grafika
lifeexe-art.gitbook.io/lifeexe/software/tools/creative-coding
Ужасно сложно, автор сверхчеловек наверное, и iq под 200
@@НиколайМамонтов-т7н Сколько лет надо кодить чтобы хотябы этого уровня добиться? я вот больше 2 лет пишу на спп, но каждое видео этого человека кажется взрывом мозга.
если спросете что я вообще делал всё это время, я дважды переделать одну свою 2д игру, сделал win32 программу "база данных" с авто заполнением формы на сайте (с костылями). и пытался рабоать с парсерами и запросами хттп, естественно ничего не вышло. и я до сих пор не умею устанавливать библеотеки, возиться с смейками и тд, некоторые требуют писать скрипт на питоне, всё это огромный лес
@@НиколайМамонтов-т7н У чела с многолетним опытом графического программирования, кем является автор, средний уровень? Может он делает тутор для средних, но опыт его не средний. А ты профессионал в какой сфере? Судя по применению питона явно не в игровой. Враппер? А весь пайплайн для видюхи кто за тебя писать будет? Библиотека не напишет.
Один из ценнейших каналов в русскоязычном ютубе не только по анрилу, но и по программированию в целом!
И хотелось бы узнать про многопоточность в контексте игрового программирования🔥
Юрий, вы один на милион. Я очень чательно наблюдаю за вами. У вас есть дар обьяснять людям очень доходчево. Я уверен на 101% в том что, если вы захотите попробовать создать свою OS систему подобно Windows, то мы как верные юниты последуем за вами. Я это виду к тому что, чем бы вы не решили занятся мы будем с нетерпенее ждать этого. Еще былом Круто увидить от вас платный курс по UE. А то шутер уже немного устарел, да и мы все уже по большей мере прошли его , и используем как блокнот с заметками)
Спасибо огромное!
Да согласен про курс, надо пилить новый. Времени много надо, чтобы сразу готовый курс выложить..( Будем стремиться к этому
There are so many interesting topics in the course
This series should be continued!
Это просто ПУШКА!!!! Юрий спасибо большое за такой контент.... Это просто золото!!!!!
Звучит очень вкусно и многообещающе. Очень ждём!
спасибо за курс , такого в .ру сегменте нет.
Пишу комментарий для поддержки канала
Здорово, что автор решил сделать подобный курс, т.к. такого контента очень мало в интернете
За весь свой скромный опыт изучения программирования очень рад, что знаю русский язык) Качество материала на высочайшем уровне! Очень много нового узнал на этом канале) Спасибо большое, Юрий, за это!
Поздновато чёт. Надеюсь на запись.
На бусти давно уже висит, заходи, подписывайся )
Юрий, а вы будете прям с нуля показывать как вы пишете весь код? или вы будете просто демонстрировать, что у вас получается в итоге? Хотелось бы прям шаг за шагом повторять все действия )) но мечтать не вредно )
Планирую весь код показывать в видео в риалтайм) Как обычно. То есть повторять шаг за шагом получится 👍 Но не забывайте импровизировать, это тоже полезно))
@@LifeEXECode спасибо, вы лучший!
Кааайф! Это супер крутая идея. Жду не дождусь новых выпусков. Очень полезно будет! Спасибо! ❤
Это будет невероятно полезная серия. Огромная Вам благодарность!!!
Это будет славное путешествие, Капитан! Несметные богатства Кода нас ждут впереди! Держи фарватер, не сбейся с пути.
невероятно круто! чувствую будет очень интересно, плюс даст понимание как игровые движки устроены внутри. А то пока что анрил как "чёрный ящик" - что то даёшь на вход, получаешь что-то на выход, а что внутри там происходит - не достаточно понятно.
Мое почтение за flecs
Это очень амбициозный и интересный проект,желаю удачи и много много просмотров)
Давно искал что-то подобное. Автор не бросай начатое)
Юрий, спасибо громадное за все видео и курсы!
Прорабатываю их в записи. Свой движок - это новый челлендж!)
О! Судя по реакции, мой коммент, похоже, отразился. Кстати, к видео "33. Документация проектов Unreal Engine. Doxygen" написал тройку комментов, которые традиционно не отобразились. Там из основного баг UAT - наш кастомный параметр UnoptimizedCode не срабатывает для билда проекта с Editor Taget. Хотел поделиться, что, вроде как, я нашел где этот баг, запилил pull request Эпикам (ID 11567)
@@MichaelBCGблин да бывает что ютуб сам удаляет комменты(
О, отлично что сделали пул реквест! 👍
В чём суть использования CMake? Какой глобальный профит? Что он даёт и что облегчает?
У меня вообще нет опыта его использования. Можно в следующих видео пояснить, если не сложно!!! :)
Об этом будет отдельное видео👌
Жду следующую серию больше, чем что-либо еще на канале)
Вопрос: можно ли сделать клиент игры на UE, а сервер разрабатывать отдельно, возможно на другом языке, например на rust lang?
Есть ли такая практика, что для этого необходимо? Если можно скиньте ссылку на почитать... (MMOGPG)
Просто шикарные планы! Я как раз хотел написать небольшой игровой/графический движок и изучал эту тему, и тут увидел Ваше видео! При просмотре я постоянно открывал рот от того, насколько большие, сложные и жутко интересные темы Вы поднимаете и главное реализовываете! Такое чувство, будто Вы познали дзен в программировании и в Unreal и теперь можете самостоятельно написать хоть весь Unreal заново! Аплодирую стоя, жду полного выхода курса.
Это блестяще, Юрий! А казалось бы, что контент по глубине и ценности достиг предела, ан нет)) Естественно ждем и уже в голове поставили лайки на еще не вышедшие ролики)
PS. Крайне удивлен, что есть даже комментарии с каким-то непонятным, почти негативным, посылом, обычно такое пишут люди, которым нужна конкретная инструкция под их конкретную задачу, ну и естественно бесплатно, но с другой стороны больше комментариев => больше просмотров => больше таких прекрасных курсов 😀
Спасибо огромное!!
Да я тоже считаю, что нужно основы изучать и понимать, тогда и все конкретные задачи будут решаться без гуглежа.
Концентрироваться нужно на фундаментальном, а не на временном. Все системы в том же анрил постоянно обновляются и появляются новые + знать все невозможно и не имеет смысла. Имеет смысл разобраться с нужной системой, когда понадобится, а для этого нужно понимать базу CS.
Занимаюсь сетевым программированием, но всегда хотел себя попробовать в графике. Смотрел Molly Rocket, The Cherno, читал кучу материала от небольших авторов по теме создания движка (с нуля или почти). И вот, наконец, дождался такого контента и от вас, Юрий) Будет прям суупер интересно всё это посмотреть, потыкать на практике, пронаблюдать вживую за развитием проекта
Ура, (не)официальный "перевод" плейлиста по созданию собственного движка от The Cherno 🌚
Как для новичка проект кажется ооочень большим для одного человека, но при этом очень классным. Желаю не потерять задор, лично мне будет интересно все
Спасибо за контент, у тебя здорово получается! Только не забрасывай :)
Как приятно всё-таки осознавать что живу в нужное время и смотрю просто офигительный контент
Очень крутая серия видео. Спасибо.
Про пробелы в знаниях о компиляции - прямо в точку) Жду курса с нетерпением, чтобы их восполнить. Спасибо!
на русском языке такого качества нет)
@@НиколайМамонтов-т7н пример можно в ру и англ сегменте ютуба?
Желаю удачи проекту!
Лайк за фильм прибытие 😊
Спасибо! От Вас такой материал буду ждать с нетерпением.
Подписался на бусти.
Спасибо огромное!!
Если в какой момент перестанет хватать 2000 минут на ci/cd проекта на серверах гитхаба, ты можешь в настройках репозитория создать для него self-hosted runner, который будет использовать мощности твоего удаленного сервера без ограничений для автодеплоя по твоему workflow
👍
Юрий, спасибо за презентацию курса! Я хотел узнать, каким образом мы можем протестировать быстродействие работы исполняемой функции в милисекундах, чтобы в дальнейшем, возможно, ее переписать более оптимальный вариант? Есть ли несложный метод?
Пожалуйста!
Да, конечно) Спрашивали кстати несколько раз, поэтому добавил страницу в вики:
lifeexe-art.gitbook.io/lifeexe/code/c++/measure-execution-time
Рекомендую с модулем chrono ознакоимиться подробно, будет полезно!
Как часто планируется выпуск эпизодов?
Хотел бы, повторять код но на линукс. Насколько это возможно? Вы говорили что будете использовать кроссплатформенные модули и библиотеки, но я так понимаю не всегда.
Приветствую!
Видео на канале выходит раз в две недели. Темы разные. Но скоро серию начнем.
Не могу обещать, что под линуксом будет все прям работать... Я думаю мы поставим билд на линукс на гитхабе, посмотрим как пойдет.
Отличное начинание.
Вопрос по поводу многопотока, будет форк система или же main + render потоки, а к ним вдобавок worker threads как в анриле?
Пока будет main/render. Возможно добавим потом job queue, но это если зайдем на территорию многопоточности)
Это круто братик! Подписка 10000%
Заинтриговало немеряно! Подскажите, на сколько возможно повторить это на линукс?
Не обещаю, что будет время проверять каждый раз под линукс, пулреквесты будут приветствоваться, я об этом скажу как дойдем до самого проекта.
Но bgfx кросплатформенная + билд поставим на гитхабе под линукс. Должно быть более или менее ОК (=
Ты случаем не вдохновлялся книгой Джейсона Грегори "Игровой Движок"?
Не то что прям вдохновлялся)) Читал давно, еще в первом издании. Про нее обязательно скажу в ближайшем видео!
Спасибо за Вашу работу.
Ой, ну кайф, конечно)
Крутотень! Очень жду!
Круто.
Заранее спасибо за курс, с удовольствием пройду его для дополнительной прокачки своих скилов. Не смотря на то, что свой опыт огромный, всегда хочется закрыть пробелы и вникнуть в приятной атмосфере в то, на что не хватает времени в процессе своей основной работы.
Спасибо огромное за добрые слова!
Буду ждать от вас комментариев 👍
@@LifeEXECodeСпасибо Вам за курс, скажите, сколько будет видео по созданию движка? Благодарю
ОГОНЬ!
Ждём не дождёмся новых видео, что бы начать
Смогу ли я проходить данный курс на линухе? Ведь BGFX кросс-платформенный
Не могу обещать, что гладко под линукс будет, на виндовс буду делать. НО
Вы можете кстати помочь по мере выхода видео с комментами, что не так на линуксе.
+ Можем на гитхабе билд поставить также на линукс машине, поэтому многие проблемы сразу будут обнаруживаться.
@@LifeEXECode окей, было бы круто попробовать
Я как раз начал делать свой движок. Давай Больше!
Круть! Курс топ! С нетерпением будем ждать!
Не сочтите за наезд, но блин, использовать эти готовые фреймворки это как cntr+c cntl+v особо и программированием это сложно назвать. Да еще и архитектура вся анриловская, а не своя. Вот интересно было бы именно рендерилку свою написать под вулкан допустим. В первом приближении она может быть очень простой, и кода будет тысячи 2 строк. А если на расте, то можно и в 1тыс. уложиться, я думаю. А дальше ее можно было бы усложнять, добавить шейдинг и пр. Это могло бы иметь образовательную ценность. Хотя может я и не прав.
Не считаю за наезд))
Частично согласен.
1. Программирования будет очень много. Как и говорил разные с++ концепты буду рассказывать на реальных примерах. Да многие вещи будем реализовывать подключая библиотеки, которые в дальнейшем можно будет при желании заменить на собственные решения.
2. Архитектура от части анриловская, в этом основная суть, потому что канал в основном про UE, таким образом будут убиваться сразу два зайца, за счет прямых аналогий.
3. Да может и дойдем до собственной рендерилки или до рейтресинга. Когда будет скелет движка, это все будет реальностью. Просто задача в данной серии не стоит такая. Плюс разным людям разное интересно, кто-то может сказать почему мы окна создаем с помощью glfw а не на win api и т.п. Или вообще почему мы не с++ в целом изучаем сначала. Так можно углубиться по всем направлениям. Чтобы качественный курс по графике сделать нужно очень много ресурсов и времени, которых к сожалению нет на данный момент, хотя я конечно бы хотел им заняться)
4. Просто в такой же логике все видео по UE на канале не имеют смысла, потому что они просто API анрила используют и все)
@@LifeEXECode если будет голосовалка куда дальше эту серию развивать, то бы больше хотел разбор многопоточки, именно по плюсам очень мало информации по данной теме на реальном примере.
Было бы неплохо сходу пилить движок FULL HOTRELOAD, где даже для генерации не пришлось выключать редактор или игру, даже во время создания новых файлов.
Почему ссылка на ваш курс в описание видео не работает?
Попробуйте через VPN, теперь по ходу только так..
@@LifeEXECode а на stepik можете выложить курс?
Вау. Мужик да ты крут. Реально сделать самому движок, это люто... Я конечно понимаю что ты либы использовал, но всеровно это люто
Звучит, как пушка-бомба. Буду ждать выхода видосов и грустить, что 1 видос раз в две недели)
п.с. будет очень интересно, хотя бы поверхностно рассмотреть ещё две темы - скриптовый язык для нашего движка и систему похожую на блупринты. Хотя бы в основе теории, как оно построено или строится) Автору желаю удачи, буду активно следить)
Мысль на скорее всего далекое будущее, т.к. услышал «погружение в графон», добавить либу meshoptimizer(в двух словах может сгенерить лоды, мешлеты и самое важное перестроить буферы вершинные/индексные так, чтобы кэш на гпу потом спасибо сказал) и перейти на mesh shading с различными видами кулинга и это все перетечёт в так называемый gpu driven rendering, было бы классно понаблюдать за этим всем. Так и появятся конкуренты анрилу в рамках обучения))
Отличная программа для курса! Такого контента люто не хватает
Спасибо за этот труд, жду продолжения с нетерпением!
Звучит всё очень мощно. Миллион+ подписчиков и просмотров этому господину
Let's go!
Супер, жду с нетерпением!
Опаа, однозначно лайк и подписка!
Ого прикольно!
Очень клевая тема, жду следующих уроков! Юрий, а как часто будут выходить уроки?
Спасибоу!! Как обычно - раз в две недели)
Бомбическая тема!
Ждём!
пушка тема! го
неужели тетрис будем делать?!
Дождався
контент топ, ждем следующее видео!
а как же змейка?😢
Так она почти готова. Там как раз осталось 2 видео. Одно завязано на cmake/conan, которые рассмотрим в этом курсе, а второе это звук - после курса по метасаундам можно сразу допилить.
Пока ничего не понятно, но очень интересно!
В пятницу же планировалось
Ждем первых уроков по серии
Коммент ради поддержки канала, но раз пишу, то..
Очень крутой контент на всём канале. Пожалуй, лучший во всём русскоговорящем сегменте!
И вопрос: С какой периодичностью планируете выпускать видео по теме?
Спасибо огромное за добрые слова!
Видео на канале раз в две недели выходит, быстрее не получается. Поскольку весь продакшн сам делаю(
жаль в формате ютуба, а не отдельного курса на том же юдеми((
Для выпуска на юдеми нужен полностью весь курс. Тогда придется выключиться с ютуба на полгода)
так я и не услышал нахрен нужно писать свой движок, какой профит. Разобраться?
Жизни не хватит.
Но я примерно понимаю, что это такое - это ПРОКРАСТИНАЦИЯ. Самая настоящая.
Это когда ты думаешь, вот движок запилю, а уж потом супер игру напишу.
Не запилишь, ты потонешь в своем движке. В его багах. Твой мозг не выдержит и расплавится.
А потом ты забудешь, чего наворотил и зачем.
Вот автор запилит. В него я верю, уникум. Но ему нехрен делать. Ему некуда свой ум и знания пристроить.
Но потом ему станет скучно и он бросит и начнет, что то еще более сложное.
Автор меня даже не научил, как компилить нормально плюсы в UE. Самое первое, что нужно знать.
Но бросился учить делать движок. Шутники. Детский сад. Но каждый развлекается как может. Это нормально.
Развлекайтесь, дети.
Но я бы предложил заняться, чем то другим, например, как сделать AI врагов продвинутый. На основе деревьев поведения анрила. Хотя, бы на уровне простейших зомби из Диаблы 1. Лично я наверное этим и займусь.
Писать свой движок игру на нём сходу, это в реальности ГОРАЗДО БЫСТРЕЕ (!) чем делать игру на Анриле, как бы контринтуитивно это не звучало.
> "Жизни не хватит".
Написать движок для игры - это год работы МАКСИМУМ и то если ты очень долго долбишься со скелетной анимацией. Думаешь писать движок - это монструозная работа? Нет. Основная беда в том, что ты ДОЛЖЕН знать математику, геометрию, работу с памятью. Увы, пошаговых для новичков тут не будет, потому что каждый геймдизайн игры требует своего. Нельзя сделать движок "для всех игр". И поэтому оно кажется сложным. Большинство старых игр - это движки-игры, под конкретный геймдизайн, где писали всю базовую часть и сходу делали игры и укладывались на изичах за 2 года с 10 людьми в команде. Такие как Анрил, у которого модульная система "для всех" - это большая редкость. Движки делаются очень быстро, прокрастинация это уже от человека, который годами рефакторит то что он пишет, и к движкам это не относится. он может это делать и не с движком. К сожалению да, туториалов по продвинутым АИ и прочим таким приколам практически нет нигде. Я не могу предугадать твой опыт, но твоё название этого детским выглядит просто смешно.
@@sitraash спасибо, за комент, не прошел равнодушно мимо.
до автора мне далеко, он очень умный. Но пара игр на Unity в Стиме лежит. Не хочу перечислять все свои заслуги, это будет выглядеть нескромно, но прибедняться мне тоже не нужно. Есть опыт в играх и в программировании. И в играх я разбираюсь. Потому, что я их люблю. Мой недостаток - плохая память, поэтому у меня груды документов со всякими выписками и лайфхаками и даже базы данных заводил. Но многим гораздо проще - они не боятся забыть целый свой движок, что он вообще делает, как его заводить, и каким топливом его кормить. И тд. Лично я даже не подумай забивать голову своим движком.
Вообще я делал что то подобное, надстройку для XCode, для того чтобы работать со спрайтами. Получился почти свой движок. Половину возможностей я забыл. Мне пришлось для себя писать документацию. Но все равно многое забыл. А потом увидел Unity и стал его изучать. И перестал беспокоиться. А потом увидел еще лучше движок, UE. А вот на UE 5 пока не спешу переходить.
Жаль, что ты тоже не сказал зачем тебе свой движок. Тебе заняться нечем? Почитай лучше книжку.
Но я тебе расскажу про Джона Ромеро. Это настоящий творец, ему важны не деньги, а игра и игроки и когда он увидел новый движок Кармака и его возможности он не смог устоять. И начал переписывать код своей Дайкатаны под новый движок, он думал что это будет быстро. Но нет. Он похерил все, все сроки, Дайкатана вышла с трудом очень поздно и провалилась, ибо уже вышли игры
круче. Этот чужой опыт нам говорит что даже просто поменять движок требует уйму времени!
Второй пример - Аркадка про капитана Блада. Они писали игру и параллельно переделывали движок под придумки дизайнеров. Думаю эту трагическую и душную историю про долгострой этой игры знают почти все. Но не сделали выводов! Тебе этого мало? Тогда вперед делай иллюзию деятельности и пиши свой движок. Потом расскажешь про свои игры.
Этот канал вдумчиво смотрят только те, кому эти знания будут полезны, это же не контент для начинающих. Как правило в индустрии разработчики игр глобально делятся на Gameplay programmer и Tools/Engine Programmer, обучающих роликов про первый тип в сети много, а вот про второе почти ничего нет. Этот канал с уклоном в во второе. А вообще, Вы молодец, поднимаете активность в комментариях, то чего этому каналу нужно для продвижения.
@@TheTriggerkz конечно, я согласен, что подушнил. Лезу со свои уставом в чужой огород. Но если я вижу, что люди хотят плясать на граблях, то захотел предупредить и услышать возражения. Но могу и ошибаться. Хотите плясать - пляшите.
Возражения услышал, спасибо. Рад обсудить вопросы и свои ошибки.
Но мне так и не ответили на два вопроса "неначинающие", а значит просто не знают:
1. как компилировать в VS код UE, нормально, чтобы не ждать 10 минут.
Почему он компилит иногда 6 сек, а иногда 10 минут? В чем проблема и как это оптимизировать.
2. зачем нужен второй движок.
Например, я мог бы услышать здравые идеи, что движок узконаправленный. Например, для 2D стратегий, или вообще для одной игры, но он лучше аналогов. Но нет - автор хочет окучить все. B 3D и даже другие платформы.
Ну и в чем профит? Ну, я понимаю что это хорошее саморазвитие. Но если заняться нечем напишите движок на ассемблере или в машинных кодах. Не нужно останавливаться, бить себе по рукам и скромничать.
Но я думаю, что разобраться в первом вопросе полезней. И пилить контент нормально в C++, в готовом движке и изучать игровые механики и алгоритмы.
Мое личное мнение. Которое может быть ошибочным.
Знаю твердо и никто меня не переубедит, что например геймдизайнер обязан аргументировать каждую свою задумку. Объяснить, зачем она нужна, что она делает и развлечет ли игрока. Если бы дизайнеры так делали то мы бы не увидели тупые механики - такие, как Добивание или Добывание патрон бензопилой, в шутере.
Так и движок, требует аргументов. На своем движке тоже можно сделать тупую бессмысленную душную игровую механику.
@@farkasvilkas5839 Про мой опыт, я годик поработал у Сейбер над Вахой 40К Space Marine 2, а до этого парочкой инди. Касательно того, что ты ответил мне в первом комменте. Сейчас мне не нужен движок. Но если думать о том, зачем мне нужен был бы движок, это только одно. Полный контроль над всей архитектурой. Например мне не нравится полнейший абстрактивный ООП ужас в современном программировании. Что в Анриле, что в Юнити. Я просто его не понимаю и самое главное НЕ ХОЧУ понимать. Даже при работе в Анриле, пишу всё в Си-стайле, как раз как у Кармака или в Халфе 1. Если я хочу написать свой шейдер, мне надо умахаться в усмерть, чтобы это сделать, когда как на своём я просто смогу из текста фрагментный шейдер закинуть и по кайфу. Или например, я хочу использовать в своих играх MSAA сглаживание. но в Анриле и в других, большой упор на TAA сглаживание. Там его можно включить, но придётся отказываться от других графических приколов. Это значит что я должен где то что то переписать, но найти ГДЕ И ЧТО ПИСАТЬ в таком монструозном движке, гораздо быстрее будет написать свой. Примеры могу продолжать долго.
Касательно памяти, я не думаю что твоя память плохая. Когда появляется больше 1000 строк, уже документация нужна, никто не может запомнить большинство или это уникумы, или просто миллиард лет работали с этим.
Про VS в UE. 10 минут я никогда не ждал, если на SSD. А в целом никак не ускорить. Он всегда компилится сто лет, по 10-20 секунд у меня. Когда как другие за 1-2 секунду, тот же свой движок или Соурс. У Анрила много генерации кода для редактора и блюпринтов, увы, он долгий. Даже если ты всё сделаешь без зависимостей, это не поможет. Но кое что есть. Не пользуйся IncrediBuild в VS при сборке, (это штука которая часто идёт вместе с VSкой при установке), и выключи плагин в Анриле XGE Controller, оно будет сильно быстрее.
Как можно видеть по куче видосов об игровых механиках, они никогда не делают их до ИГРАБЕЛЬНОГО состояния, просто прототипы. Дляэ того нужен как раз геймдизайнер, условно, выдать себе задачу чтобы вот так и так. Однако никто так не делает, даже автор этого канала и сомневаюсь что будет. Ютуб полон видосов с механиками типа MVP, а вот полностью работающие для игры - нет. В основном потому что у каждой игры свой вид механики и ты каждый раз пишешь по разному, сложно сказать насколько это будет полезно. Кстати поддерживаю твои слова про геймдизайн и обоснование. Этого многим современным играм не хватает.