Wild Russian GameDev Mentor
98 subscribers
116 photos
5 videos
60 links
Обучаю созданию игр на Unity и программированию на C#.

Запись на занятия – сообщения канала
Лайвкодинг/игры – twitch.tv/ko1ba5er
Бустануть канал – t.me/boost/WRGDM

Please, be patient, я не умею пользоваться отложкой.
Download Telegram
АЙСБЕРГ ЯЗЫКОВ ПРОГРАММИРОВАНИЯ

В айтишечке есть условное разделение по уровням языков. Основано оно на оторванности языка от нулей-единичек. Давайте снизу вверх:

📯Машинный код (на самом деле, там еще транзисторная логика, но это уже слишком).

— набор кодов, отвечающих за определенные операции, которые исполняются непосредственно процессором (+,-,перейти на 20 байт вперед). С некоторыми дополнениями туда относится ASSembler, например.


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

📯Высокоуровневые ЯП

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


Так что дальше у нас идут
📯Не-очень-высоко-уровневые ЯП

— Сюда я вношу языки, которые все еще тесно взаимодействуют с железом. C, C++ будут яркими примерами.


На них написан почти весь IoT и то, что требует серьезной оптимизации. Но и вероятность отстрелить себе ногу там намного выше.

📯По-настоящему-высоко-уровневые ЯП

— Здесь языки, на которых все еще можно писать достаточно сложные программы, однако они уже подтирают за программистом, если у него потечет память. Java, C#, Swift в этом лагере.


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

📯Сверхвысокоуровневые ЯП

— Позволяют достаточно быстро вкатиться и начать работать, не прилагая больших усилий. Питухон и прочая глупость для написания одного скрипта.


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

📯Ну и Zero-Coding🤡

— Может использоваться, чтобы поиграть детям. Но лучше скачайте им Factorio.


🪕 – Я закодирован, это какой уровень программирования?
🤓 – много букав, ниасилил
Please open Telegram to view this post
VIEW IN TELEGRAM
5🔥3🤔1🤯1
🤣4👏2🤔1🤯11
ПОЧЕМУ UNITY И C#, А НЕ ЧТО-ТО ПОПРОЩЕ (GODOT, GAMEMAKER STUDIO, Scratch)?

📯 "Детские" движки

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

В принципе, никаких претензий к Godot Engine или GameMaker Studio у меня нет (сам начинал с последнего). Но надо понимать, что на них получится писать только махровую индюшатину.


Ну и пожалуйста, если ваша мечта - в команде <5 человек изобретать уникальные механики для игр на 3 часа, а идеал - Огонь и Вода или другие головоломки на вебе нулевых.

📯 Так почему не взять глубже и не пилить ASSembler Unreal Engine с плюсами?

С++ – это хардкор, он не прощают ошибок. Если ваш путь - три месяца дрочить собственный вариант динамического освещения или ради оптимизации в 3% переписать 70% кода, сочувствую удачи вам в этом нелегком деле.

Но мне лично перспектива засыпать с паяльником в обнимку не улыбается.


📯 Всех обосрал, похвали себя

Unity берет как раз серединку: он достаточно прост для индюшек, но достаточно сложен, чтобы можно было вырасти и делать на нем тот же AAA.
Он, конечно, в последнее время очень хочет скатиться в движок для кейсодрочилен и донатных помоек, но пока, слава Богу, держится.

🤪 — Зато Godot не берет комиссию за скачивания
🤓 — Вы все пусси, пойду портировать Doom на зубную щетку
Please open Telegram to view this post
VIEW IN TELEGRAM
2🤯1😈1
Настроил ОБСинку, залетайте завтра днем, пообщаемся :Р
🤯62👏1🤔1
Сел в шкаф, и мы начинаем!
🔥1
Стрим пошел!
Кстати, в новом проекте попробую поработать с Unity 6!!!
Посмотрим, пошла ли на пользу позорная история с платными загрузками.
👌1💅1
Как и обещал, загружаю результат прогона >100 часов симуляции со вчерашнего стрима. Разумеется, эта дура ничему не научилась.
Можно, конечно, подождать еще недельку, но вряд ли это было бы сильно полезно. Максимум, чего можно добиться в такой конфигурации - того, что у меня случайно выпало в одном из первых прогонов на стриме - движения прямо, если перед носом еда.
А все из-за выбранной функции активации. На входе расстояния пороговая дает только 0 или 1, причем, разделение всегда посередине, так как на входе еще и весов не предусмотрено...
Нужна, хотя бы, ступенчатая или какая-нибудь линейная [функция активации]. Буду постить апдейты, но, скорее всего, править (МИРОМ) будем на следующем стриме.
🤔2🔥11
ЦЕНЫ И СКИДКИ

Стандартное занятие – 2 000₽/час
Лабораторные/курсовые – индивидуально, скорее всего, нет

Пробное занятие – бесплатно, 30 минут
"Приведи друга" – скидка 20% на ВСЕ занятия каждому ПОЖИЗНЕННО

По любым вопросам пишите в сообщения канала :)

А если вам просто нравится канал, то можете поблагодарить меня следующими способами:
DonationAlerts
USDT TRC20 (Tether):
TUZhNqRLrVG1kqjJPVSE7g1y4eJvUZJZxu
🔥21
КТО Я И ПОЧЕМУ ВЫ ДОЛЖНЫ ОТДАТЬ МНЕ СВОИ ДЕНЬГИ

Всем привет! :)

Меня зовут Илья, мне 23 года, Водолей. Я занимаюсь программированием со старшей школы, уже лет шесть или семь. И за это время я прошел через многое.

Вначале, как и все, я мечтал о том, чтобы сделать свою игру, чтобы можно было грабить корованы, и вообще все было 💥КРУТО💥
Скачал пиратский GameMaker 8.1, который уже на тот момент перестал поддерживаться лет семь как.
И, начав с самого нуля (Zero-Code, поняли, да?), делая проект за проектом, набирая говнокод за говнокодом, я научился программировать.
Вы можете подумать, что у меня, получается, семь лет опыта, но это неправда. Как раз из-за того, что я учился на собственном опыте, узнавал все методом проб и ошибок, года четыре можно смело вычесть, так как это время я либо ничего не делал, либо делал не то.

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

Модель обучения я принимаю только проектную: с учеником выбираем игру, которую ему было бы интересно разрабатывать, и пытаемся довести ее до конца, чтобы положить в портфолио и потом везде хвастаться. Ну или, хотя бы, мама похвалит. О ключевых плюсах такого подхода расскажу как-нибудь отдельным постом. А пока вам нужно знать то, что это единственный способ чему-то по-настоящему научиться и вкатиться на зарплату $300к/наносек.

Также залетайте на мои стримы по программированию и всяким игрушкам, задавайте вопросики.
А если стрима сейчас нет, то можно спросить в Дискорде, я там часто сижу, мне там даже выделили "шкодерскую" под обсуждения программирования.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
2🤓2👨‍💻1
Спасибо, Роскомпозор за антимонопольные ивенты👍
Благодаря вашим кривым рукам крупные провайдеры раз в две недели отваливаются на сутки-двое, а мелкая шушара, которая не считает себя обязанной исполнять ваши идиотские решения, стабильно работает👍
На самом деле, смешно - мне приходится подключить запасной интернет в столице субъекта Центрального Федерального Округа. Не в середине Сахары, не в непроходимых болотах Сибири, не на диких островах Полинезии, даже не в отсталой Гейропе... И все ради того, чтобы я не посмотрел в ютубчике, как обзывают Великого Геостратега Императора Человечества.
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔1🫡11
LEETCODE НЕ НУЖОН

Для тех, кто не знает:
LeetCode.com - популярная платформа-решебник по программированию. Ходят слухи, что туда даже сливают вопросы с собесов БигТеха, по которым можно задрочиться и пролезть без мыла на $300к/наносек.

📯 хуйней не майтесь

Вся эта "олимпиадщина" ни к чему, кроме высасывания дополнительных 0.03% процентов быстродействия не ведет. Достижение идеального результата в стерильных условиях - то, с чем вы ни разу не столкнетесь в реальной работе.


Профессиональные спортсмены редко бывают здоровыми, потому что здоровье - это баланс, а не развитие одной конкретной мышцы. Для программиста ценнейшим навыком является понимание business value - чего хочет заказчик. А он хочет:
1) Лучший продукт
2) За минимум денег

И если вы умеете найти баланс между этими двумя вещами, на хардскиллы никто и смотреть не будет.

📯 Дрочить задачки - не достижение

Так как первый пункт - всем известная информация, если у вас в портфолио ТОЛЬКО Литкод, вас даже рассматривать не будут.

Так что, даже если Top Questions from Company_Name выучишь наизусть, на собес для начала нужно попасть...


📯 Когда можно литкодить (под одеялом темной ночью)

И только после принятия двух пунктов выше, можно поговорить и о плюсах (а они есть).
+ Во-первых, для разработки жопы привычки программировать постоянно новичку будет полезно хотя бы политкодить по часику в день. Но только до момента, когда почувствуете силу начать заниматься настоящим проектом.
+ Во-вторых, рассматривая решения ноулайферов из топ 0.1% memory, можно подхватить полезные привычки. Ну там, кэшировать некоторые вызовы, например.

📯 Акак какать?

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


🪕 – Ни дня не учился, сразу дали кнопки красить😁
😭 – я что, зря 300 задач решал все это время?
Please open Telegram to view this post
VIEW IN TELEGRAM
2🌚1💯11
ВОТ ВЫУЧУ ЯЗЫК Х И УСТРОЮСЬ НА РАБОТУ. ВЕДЬ ТАК?

📯 Нет, не так :(
В современном мире мало просто уметь писать код, необходимо понимать, где и как он используется, знать основные библиотеки - готовые части программы, написанные под определенную задачу. Можно, конечно, писать все с нуля, но лично меня потряхивает от перспективы потратить две недели на то, чтобы просто нарисовать шар на мониторе. И дядю, который будет за это тебе платить, тоже.

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


📯 А что еще нужно знать?
Фреймворк - это, грубо говоря, очень большая библиотека (или даже несколько), выполняющая полный спектр задач в своей области. Их учить досконально не нужно, но знать, какие есть (2-3 по теме), когда какой использовать и для чего.

В итоге, программист занимается своей работой, а не изобретением колеса.


Движок (или платформа) - это дальше, очень большой фреймворк. Ничем радикально он не отличается, только размером и звучит модно. В основном, это название звучит в игровой индустрии. Для ААА-игр пишутся свои движки, разумеется, но в большинстве проектов используют готовые (Unity, UE, Godot и пр.) Движок предоставляет готовые инструменты для отрисовки, анимации, физики и всего того, что точно будет нужно в любом проекте.

📯Ну и архитектура, разумеется

Кроме, собственно, умения написать код нужно уметь написать его нормально. Для этого требуется SOLID, Clean Code, паттерны и прочие умные слова, которые сделают тебя из разнорабочего уважаемым инженером и сеньором-помидором.


🫡 – Учиться, учиться и еще раз учиться
Please open Telegram to view this post
VIEW IN TELEGRAM
🫡41