Melkov's
168 subscribers
582 photos
76 videos
39 files
221 links
Мой движок: @vecxylog
Чат: @melkovteam
Download Telegram
За год я ни разу не работал в Visual Studio. До этого на ней был 3 года, а потом перескочил на райдер

Могу сказать, что вернуться очень приятно, просто не описать. Что-то родное...

Но, студия намного деревяннее ощущается, чем продукты компании jet brains.

- Поэтому я купил решарпер и в целом с ним стало все намного лучше.

- Поменял тему, просто год с райдером не прошел даром)

- Новая версия студии, а именно 2022 года, весьма хорошая(когда я уходил было иначе). Три года я провел на версии 2019 года

- Подключил копайлот (мой пилот в программировании)

На шарпе однозначно работать на студии не буду, а вот под плюсы здесь выигрывает по удобствам (лично для меня)
Мне начинают нравится плюсы)
Оказывается массив - это указатель на первый элемент массива и работать с ним можно даже вот так, ибо он является непрерывной областью в памяти
👍1
Забавный мем, но только с одной стороны😅
😁6
Закончилась эпоха, началась новая...
[02.10.23] [Day.0] [Начало]

Всем привет! С сегодняшнего дня я начинаю вести блог-отчет в данном телеграм канале.

Тема блога - создание игровых движков.

Буду делать отчеты ежедневно, чтобы отслеживать тенденцию развития. Расскажу, что усвоил и все такое.

Расскажу немного о себе, чтобы было понимание:

- Я ничего не знаю о том, как создаются игровые движки.
- Я занимаюсь геймдевом уже 5 лет (коммерческих лет, когда мне платили деньги за выполненную работу).
- Из которых 1 год работал 3D-дизайнером (делал модельки для мобильных игр).
- Остальные 4 года я работаю C# Unity Developer (в основном мобильные или веб игры).

За последний год я осознал одну важную вещь: в геймдеве мне нравится не разработка игр, а нечто другое. Как это ни странно, но это действительно так.

Это проявляется в том, что я не получаю большого удовольствия при создании игры. Также, когда у меня есть свободное время, я предпочту заниматься чем-то другим, чем играть в игры. Именно поэтому я редко играю. Без должного настроения мне будет скучно и я не смогу должным образом оценить все то, над чем трудились разработчики.

Не могу сказать, что играть в игры я не люблю. Есть такие игры, которые я готов перепроходить или в которые хотелось бы поиграть, но это происходит обычно спонтанно.

А что тогда мне нравится в геймдеве, если не разработка игр?

За последний год я работал над игровыми проектами, но там я выполнял работу, которую пользователь никогда не увидит и не сможет оценить. Я делал инструменты для движка, начиная от редактора, в котором левл-дизайнер собирает уровни, заканчивая тем, что писал удобные системы для использования при разработке игр.

И вот в эти самые моменты меня прямо драйвит. Не знаю почему, но мне больше приносит удовольствие написать что-то, чем смогут пользоваться разработчики при создании своей игры, чем если бы я написал что-то в игре, которую оценил бы пользователь.

Поэтому тут в тему мем про большое внимание для User Experience, но никто не парится о Developer Experience.

#GameEngine #Day0
3🔥2
This media is not supported in your browser
VIEW IN TELEGRAM
[02.10.23] [Day.1] [C++, SFML, BOOKS]

Так, ну в целом первый день прошел достаточно продуктивно. Есть даже что показать😁
На ролике это огрызок игры про змейку. Ну типа где нужно ползать и жрать яблоки.

На данный момент я изучаю C++ и основу того, как создаются игровые движки.
Для этого я решил смотреть видео курсы и читать книги.

Видео курсы, которые смотрю:
1. С++ курс by SimpleCode: https://www.youtube.com/playlist?list=PLQOaTSbfxUtCrKs0nicOg2npJQYSPGO9r
2. Game Engine by Cherno: https://www.youtube.com/playlist?list=PLlrATfBNZ98dC-V-N3m0Go4deliWHPFwT

Читаю книги (Ниже скину их):
- Грегори Джейсон - Игровой движок. Программирование и внутреннее устройство. Третье издание
- Бьярне Страуструп - Программирование Принципы и практика с использованием С++. Второе издание

⭕️Сегодня посмотрел 10 роликов по C++ от SimpleCode. Дошел до темы ссылок (она шла после указателей)
⭕️Так же прочитал 120 страниц в общем. Читаю сразу две книги. По игровым движкам пока что идет легко, поэтому ей разбавляю (30 страниц).
А вот по плюсам начинается тяжеловато. В начале было много воды. Там в книге 90 станиц рассказывается кто он такой и как будет проходить обучение по книге (но я дочитал это. Все 90 страниц).

Держите видосик результата за текущий день. Там я пощупал библиотеку SFML - Большая либа для работы с UI и прочим.
Пока не могу о ней ничего сказать, нужно изучать. Но вроде все удобно на данный момент и ничего сложного не показалось

#GameEngine #Day1
🔥4👍1
[03.10.23] [Day.2] [SFML, Imgui, C# or C++]

Всем привет! Сегодня день по обучению прошел достаточно средненько. Не сказал бы, что много чего изучил, но нашел или скажем нащупал некоторые направления и технологии. Появились первые сомнения с которыми нужно будет что-то делать.

Что я узнал:
1. Узнал, что есть крутая либа Imgui. Думаю это используется в Unity в целом для системы GUI редактора и прочее. Достаточно сильно похожа на то, как это сделано в юнити. Да и редактор сильно похож на то, как там в примерах :)
2. Скачал книжку по SFML. Думаю стоит ее поизучать. Мне ее посоветовал больше для того, чтобы понять как правильно выстраиваются игры на плюсах. Ибо там рассказывается много полезного помимо SFML "SFML Game Development"
3. Нашел чела, который делает 2D движок на C++, SFML, Imgui - https://www.youtube.com/watch?v=6RN2Qb1D_8Y
4. Начал думать в сторону пиксельного проекта
5. Создание DLL чита на C++ и Imgui - https://www.youtube.com/watch?v=4659KaH4ON8
6. Нашел курс по созданию читов на C++ и Imgui под CS:GO - https://www.youtube.com/playlist?list=PLfXYbj_AHLD7I5NxCFHM2gYFihnDD0e5O
7. Так же посмотрел парочку туториалов по C++ и прочитал две темы в книге.

Какие сомнения появились:
1. С++ ранее вообще не изучал и сейчас это дополнительная сложность, так как нужно изучать его. Движок разработать сама по себе задача почти неподъемная, а тут еще плюсы.
2. Нашел достаточно много интересных движков, которые разработаны исключительно на шарпе
3. Юнити сейчас переписываю какие-то кор части с плюсов на шарпы под .NET Runtime

Это меня заставило усомниться в моем решении изучать плюсы... Но я думаю что продолжу не смотря на это. Ибо уверен, что на плюсах это делать эффективнее

Рассуждения:
1. Хочу попробовать создать Flappy Bird, Tetirs, XO
2. Думаю первый свой движок буду пробовать делать для 2D игр
3. Думаю первый движок сделать на основе чего-то готового, например SFML (OpenGL, Vulkan и тд будет сложно для начала)
4. UI буду делать на Imgui. Да и сам редактор тоже на нем попробовать

В общем мыслей много из-за трудностей, но я думаю это нормально. Тяжело начать, а продолжить еще тяжелее😁

#GameEngine #Day2
👍3
Решил помучить динамическую память🧐
😁2
[04.10.23] [Day.3] [C++, Snake]

Всем привет! Сегодня день был достаточно душный...

- Прочитал почти 120 страниц в книге Бьерна Страуструпа. Мудятина, какой только поискать можно, думал я изначально, но все нормализовалось. Книга мне очень нравится, но вот первые 200 страниц в ней очень душные... А так такм круто рассказывается не только о языке с++, но и о принципах и правилах разработки больших и сложных приложений. Постарались над книгой - сильно это чувствуется!

- Поработал утром над своей змейкой. Показать нечего, так как визуально ничего не поменялось. Код только переписал весь.

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

#GameEngine #Day3
👍4
Хм... Rider вполне хорошо работает с плюсами...
🤣4
🤔1
This media is not supported in your browser
VIEW IN TELEGRAM
Без объяснений, это вечер пятницы просто) Муха тоже устала, чтобы делать лишние движения
😁2
[05.10.23] [Day.4] [C++]

Привет! В этот день в основном занимался исключительно C++.
- Смотрел курс
- Читал книгу
- Посмотрел два ролика как чел проходил собеседование на джуна
- Попрактиковался с указателями и ссылками

В целом вроде не много, но за этот день это мне показалось много... Я даже вымотался.

Хотя это вероятнее всего из-за того, что помимо этого я каждый день работаю на основной своей деятельности. 8 часов в студии игры клепаю, потом еще 4-5 часов над нашими проектам.

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

#GameEngine #Day4
😁1
[06.10.23] [Day.5] [C++, Game Engine, Books, Info, More]

Всем привет! Чтож, уже почти неделя закончилась, как я встал на путь разработки своего движка.
Не могу сказать, что осталось совсем немного)) Но с уверенностью ощущаю, что направление мне нравится и осознание такой большой дороги к созданию движка - заставляет обучаться усерднее.

Я за эти 5 дней было тяжелова-то, так как пытался не смотря на повседневные проблемы, изучать достаточно большой объем информации. Так точно не продержусь долго, поэтому вероятнее всего буду сбавлять темп и изучать в более разумных объемах.

Как минимум, может быть на выходных по этой теме смотреть развлекательный контент: Например код-ревью других движков, какие-то дев-блоги по разработка или что-то забавное по плюсам.

Что я сделал сегодня:
- Читал книгу по c++. Изучил работу (Препроцессоры, Компиляторы, Компоновщики)
- Читал книгу по движкам. Там начали разбирать тему веб-интерфейсов, всякие штуки из мира гейдмева. Познакомился по ближе с движком quake (Скачал репу, буду пробовать потом его запустить. Пороюсь в их коде). Изучил всякие концепции того из чего состоит движок. Архитектурные системы посмотрел. В общем эта книга как большой путеводитель в этой области.
- Нашел крутой репозиторий в котором все что нужно для изучения разработки движков (какие есть движки с ссылками, книги, видосы, библиотеки, статьи и чучуть все что только можно). Этого репозитория мне хватит на года два наверно, если все изучать, если не больше.

Так что теперь у меня есть 5 источников информации в этой теме, которые дают более чем достаточно информации. С ними уже можно развиваться очень хорошо.
1. Книга по разработки движков - Грегори Джейсон
2. Книна по C++ и проектированию больших приложений на этом языке - Бьярне Страуструп
3. Афигительный репозиторий: https://github.com/stevinz/awesome-game-engine-dev
4. Курс по c++ от SimpleCode
5. Курс по разработке игровых движков от Cherno

Читаю книги в данный момент:
Грегори Джейсон [117 страниц]
Бьярне Страуструп [223 страниц]

#GameEngine #Day5
👍1
[07.10.23] [Day.6] [Whiskey, sosiskey, vine, sidr, pivo]

Привет всем! Сегодня я решил взять небольшой перерыв после тяжелой недели, чтобы не сойти с ума и набраться сил перед следующей.

Так что мы с друзьями решили провести вечер у костра на свежем воздухе. Побывать в природе, обновить взгляды и отдохнуть душой. И знаете, получилось замечательно - давно я не наслаждался такой атмосферой и думаю, что это дало мне новую энергию!

К тому же, я познакомился с несколькими интересными людьми. Встречи с новыми лицами всегда расширяют горизонты и создают новые возможности.

Кроме того, в течение дня я размышлял о своем пути в разработке игрового движка и пришел к выводу, что это действительно правильное решение. Даже в самые тяжелые моменты недели, когда изучение ставило меня на рельсы, я всегда находил удовольствие в этом процессе. Разработка игрового движка - это то, чего я искал в геймдеве.

Итак, первая неделя обучения закончилась, если считать будние дни. Но в воскресенье я все равно планирую продолжать учиться, но в более расслабленном режиме. Так что ожидайте еще один отчет и видео на моем YouTube-канале, в котором мы подробно обсудим эту неделю.

#GameEngine #Day6
😁31🔥1