Вопрос программистам из геймдева

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

Материал опубликован пользователем. Нажмите кнопку «Написать», чтобы поделиться мнением или рассказать о своём проекте.

Написать
{ "author_name": "Дмитрий Менлияхматов", "author_type": "self", "tags": [], "comments": 132, "likes": 53, "favorites": 64, "is_advertisement": false, "subsite_label": "ask", "id": 38769, "is_wide": true, "is_ugc": true, "date": "Tue, 05 Feb 2019 08:37:46 +0300" }
{ "id": 38769, "author_id": 93513, "diff_limit": 1000, "urls": {"diff":"\/comments\/38769\/get","add":"\/comments\/38769\/add","edit":"\/comments\/edit","remove":"\/admin\/comments\/remove","pin":"\/admin\/comments\/pin","get4edit":"\/comments\/get4edit","complain":"\/comments\/complain","load_more":"\/comments\/loading\/38769"}, "attach_limit": 2, "max_comment_text_length": 5000, "subsite_id": 64961 }

132 комментария 132 комм.

Популярные

По порядку

Написать комментарий...
45

Я просто мыл полы в офисах rockstar и понеслась...

Ответить
58

...теперь я мою полы в THQ, Bethesda, Microsoft.

Ответить
8

... владею виллой в Швейцарии и Испании, езжу на бентли и на досуге скупаю акции cdpr пачками.

Ответить
20

Всё потому что я ушёл после девятого в пту

Ответить
5

на сварщика

Ответить
4

Причём дома на вилле беспорядок. Жена топ-модель негодует, но откуда ей знать? Ты не стал посвящать её в уборку, она слишком наивна для этого...

Ответить
3

...простушка, красота не решает в таких делах, а гениальность!

Ответить
12

...но по сути, я в геймдеве)

Ответить
5

а через два года смогу мыть раковины....

Ответить
18

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

Ответить
0

А на что необходимо обратить внимание в первую очередь? Что изучать?

Ответить
5

В России сейчас популярна разработка мобильных игр. Так что можно изучать c# или c++, Unity или Unreal Engine, по ним часто есть вакансии

Ответить
0

Допустим, я выучил один из С языков. Где ещё используются эти языки? Нужно быть готовым ко всему)

Ответить
7

С# в бэкенде используется ещё, C++ это софт и любые крупные игровые движки.

Ответить
3

На данный момент:
C# - ПО и бэкенд, у которых клиенты компании покрупнее (финансовый сектор и прочее), часть, правда, уже отобрала Java. Возможно, за счет Net. Core сумеет вернуть себе отобранное или влезть в отрасли попроще.
C++ - ПО для железок, а-ля драйверы или управление каким-нибудь оборудованием, бэкенд, который больше про высокие нагрузки. Долю в бэкенде у него потихоньку начал отбирать Go сейчас, посмотрим, что будет дальше.

Ответить
2

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

Ответить
2

На самом деле какой-то особой разницы, какой конкретно из современных языков вы будете учить - нет. Переключиться, например, с Java на C# при понимании основ особой трудности не вызовет.

Ответить
0

C# - веб(чаще бэкенд), Unity, различный софт, разные также бд
C++ - софт, серьезные игровые проекты, оси и тд, очень обшироно
Obj-C - IOS, маки, не стоит недооценивать, рынок вакансий очень большой
Еще стоит знать что когда учишь более низкоуровневые языки, освоить остальные проще. Например зная C++, освоить C# крайне просто и быстро будет, а вот если знать изначально C# то освоение C++ будет достаточно трудным

Ответить
2

Плюсы дают отличную основу, и отлично отбивают желание заниматься программирование, как-то так я из университета и ушел :)

Ответить
1

не путай пожалуйста C/C#/C++ это крайне разные языки и используются в разных областях =)

Ответить
0

А почему у них такие похожие названия? Разве названия не намекают на родство и некий общий знаменатель?

Ответить
0

разве что на историческое родство =)
точно также глупо будет путать
Java / Java script
Язык С++ и вправду наследник языка С классического
Но вот тот же C# это изобретение совсем других людей из компании микромягких с целью найти аналог Java но свой
так что в этом случае даже истории будут разные =)

Ответить
0

точно также глупо будет путать Java / Java script

Да, поэтому JS это ECMA script, а вот какое оправдание у си-языков? Почему разработчики си-шарп нарекли своё детище таким образом, раз это якобы совершенно другой и непохожий язык? Вот это мне непонятно.

Ответить
4

Я изначально хотел делать не сервера, поэтому обращал внимание как сделать нормальное приложение с интерфейсом, а не эти миллион уроков "как сделать очередную консольную программу". Вообще запаривался на тему удобности юзеру, а не просто какую-то математику реализовать.
Серверистам по идее нужно больше на работу с базами данных обращать внимание.
p.s. Покупаешь книгу по технологии которую хочешь знать и читаешь подрят с реализацией всех примеров которые там есть. Например по Unity, если хочешь геймдев и хочешь клиентскую часть писать.

Ответить
0

Вообще запаривался на тему удобности юзеру

Прими мою благодарность. Для программистов это ОЧЕНЬ редкая черта :с

Ответить
0

И какие книжки посоветуете?

Ответить
4

Если по C#, то однозначно "CLR via C#" Джеффри Рихтера, лучше нет ничего. К тому же книга еще и даст отличное понимание, как .Net работает "под капотом".

По "общим вопросам" настоятельно рекомендую "Design patterns" за авторством так называемой "банды четырех".
Еще есть каноничный Дональд Кнут с его трехтомником "Искусство программирования"

Ответить
3

Начинай не с языка, а с движка, имхо. Unity, Unreal Engine. Потом когда определишься с языком - его учи в деталях, учи "базу" языка так сказать.

Ответить
3

"Совершенный код" Стива Макконелла.

Ответить
2

Dive into Python, само собой :)

Ответить
1

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

Ответить

Комментарий удален

21

Я попал в геймдев уже после 12 лет в профессии. Что только не программировал - от станков ЧПУ и 1С до сайтов. В родном поселке не было, очевидно, игровых команд, а по приезду в Мск не до игр было - надо было как-то на жизнь зарабатывать и устраиваться. А потом ушел с позиции ИТ-директора торгово-промышленного холдинга на должность стажера в НИКИТЕ в 2005-м. Через год - мидл, через два - сениор, через четыре - лид, через шесть - техдир ))
В ценность российского/советского высшего образования в моей профессии не верю от слова никак. Необходимые знания в разы эффективнее и быстрее приобретаются самостоятельно. На счет того, что институт не про знание а, про системность блаблабла - чушь. После сокращения срока призыва до года так вообще проще год оттоптать сапоги, меньше времени впустую потратишь. Хотя допускаю, что есть люди, неспособные к самообучению, и которым надо, чтобы их за ручку водили. Но я не верю, что такие люди способны на что-то выдающееся, потому что умение самостоятельно ставить себе цели, задавать вопросы и находить на них ответы - ключевой софтскил в программировании.

Ответить
0

А какими языками владеете?

Ответить
21

Русским, английским и японским))
Не считая специфичных считай что ассемблеров для всякого промышленного оборудования (да, в конце 90-х там был зоопарк) и из того, на чем писал за деньги в разное время - С/С++/C#, Java, Python, Ruby, PHP, Scheme, LISP, JS, LUA, Squirrel. Дело не в языке, любой язык на достаточном для работы уровне можно выучить ну максимум за месяц (хардкора по 12 часов в день, да, но каждый следующий дается в разы проще предыдущего). Сложность в платформах и фреймворках - даже при хорошей документации (что редкость), нужно понимать философию и архитектуру системы, а так же помнить серьезный объем справочных данных (если лезть в справку по каждому вызову STL, то результата не будет).

Ответить
7

А какими языками владеете?

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

Ответить
3

Да, но есть нюанс. Один язык в одной парадигме. ООП после итеративного С я учился заново. Как и функциональному после С++. )

Ответить
0

А потом ещё Rust :)
Вот от него получаешь реально понимание, о котором про плюсы говорят, в плане с работой с памятью и т.п.

Ответить
1

Не совсем верно, если, например, хорошо знаешь питон и решил пересесть на плюсы, то будет очень неудобно не говоря уже про шаблоны, там придётся обучение с 0 начинать

Ответить
3

Ну плюсы своя атмосфера, их надо отделньо почитать. Все остальные ООП языки с сборкой мусора работают примерно одинаково.

Ответить
0

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

Ответить
12

Около года учился сам по учебникам, применял знания делая консольный рогалик, на практике впитывается лучше. Устроился программистом за 15к в месяц (после 2-3х собеседований, образование 9 классов), был удивлен когда по итогам испытательного срока заплатили 30 и поставили зп 50, для подростка огромные деньги) Чуть меньше 3х лет работал, последние пол года все выходные и отпуска уделял игровому проекту, потом уволился и ушел на домашний фуллтайм. Переехал к маме, затянул пояс и ещё два года пилил игру вдвоем с геймдизом/художником. Пришел к успеху)

Ответить
4

А что за игра?)

Ответить
7

The Final Station

Ответить
2

Почему все начинающие и/или инди-разрабы так любят создавать ретро/пиксель-арт игры?

Ответить
1

Дешево и модно.

Ответить
0

Помню такую игру видел в индикаторе и в обзоре на стопгейм, отзывы были хорошие, но меня как-то не зацепил сеттинг, возможно как-то поиграю. Респект, что довели дело до конца!)

Ответить
9

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

Самый дельный совет - сделайте что-нибудь сам из того, чем вы бы хотели заниматься в геймдеве.
Если серверами - напишите для условной галаги или понга выносливый udp-протокол (или возьми за основу что-то опенсорсное) и поверх него организуйте протокол, взаимодействие с бд, гейммеханику, балансир, модули для внешнего api и симулируйте хотя бы 1000 подключений).
Если самой игрой - берете любой жанр, без графония делаете прототип с тем, что сможете вытянуть (стейтмашины, ИИ, поиск путей, корутины, сущности)

В любом случае это будет первым показателем, что вы можете что-то делать, а дальше смотрим код.
Если он аккуратный, читабельный, хорошо задокументированный или (что не менее круче) не нуждается в документации и подходящий под понятие совместной работы над ним - считайте место рабочее обеспечено.

Язык в целом важен, но т.к. основных всего два - C# для Unity и C++ для Unreal и selfmade, выбирайте какой больше нравится и проще для вас в освоении. Если речь про сервера, имеет смысл связываться с Java и Python например.

Плюсом никогда не помешает уметь в дополнительные языки типа Python, LUA или JavaScript, которые могут пригодиться вам для встраивания в игру под разные задачки.

Ответить
1

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

Ответить
1

Можно начать программирование с курсов для начинающих. Могу посоветовать курс по Python в Москве, там есть оффлайн и онлайн занятия. Сам когда-то их заканачивал и не жалуюсь на своё текущее положение) Туда, кстати, приходит много людей, которые хотят сменить деятельность.

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

Ответить
1

Интересно узнать) сейчас как раз ищу различные курсы, чтобы чуть позже пойти на них

Ответить
1

Я ищу возможности смены деятельности и программирование - это то, куда хотелось бы уйти

Не нужно тебе программирование, поверь.
Здесь свои проблемы. Почитай как народ из IT уходит со словами, "я устал от всего этого".

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

Ответить
1

Я даже никогда не слышал о таких профессиях) а из-за боязни ответственности лучше вообще тогда нигде не работать

Ответить
1

Все мы так когда-то считали...

Ответить
6

Я всё ещё иду, правда попутно свернул пару раз в другие предметные области. Зависит всё от того, чем конкретно хочешь заниматься. 80% работы программиста скучная рутина, 20% - придумывать алгоритмы и их взаимодействие.

Ответить
0

Работаю над тем, чтобы убрать эти 80% скучной рутины : )

Ответить
0

В тим-лиды метишь? :D

Ответить
0

Не, я про свой способ "интуитивного" программирования (https://dtf.ru/gamedev/37812-ideya-intuitivnogo-sposoba-programmirovaniya-visual-maker)
Если получится, то избавит от рутины.

Ответить
0

Судя по прототипу - оно задаёт рутину иного рода. С одной стороны интересно, с другой на высокоуровневом ЯП - это делается так же быстро, если не быстрее и оставляет после себя готовые шаблоны, который можно использовать и развивать дальше, а не каждый раз начинать обучение с нуля для немного другого поведения.

Начинание хорошее, полезное, если начал на основе этого изучать ООП языки программирования, но по факту это не сильно отличается от игрового движка, где есть ассеты и шаблоны, которыми ты создаёшь объекты и поведение.

Ответить
0

на высокоуровневом ЯП - это делается так же быстро, если не быстрее

Там разве не надо набирать текст, только копия-вставка?
Зато порог вхождения будет понижен.

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

Программа будет сохранять все эти шаблоны и предлагать их в дальнейшем. Есть даже идея p2p базы шаблонов, чтобы при самом первом запуске начиная делать, допустим, Тетрис, программа распознавала его уже по первым элементам и условиям и предлагала загрузить его. В худшем случае - просто выбор из списка всего, что было сделано энтузиастами (игры, алгоритмы...)

по факту это не сильно отличается от игрового движка, где есть ассеты и шаблоны, которыми ты создаёшь объекты и поведение.

Так и есть. Если 3D в будущем не потяну, то планирую встроить такой интерфейс в Unity / Unreal как альтернативу.

Ответить
0

планирую встроить такой интерфейс в Unity / Unreal

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

Программа будет сохранять все эти шаблоны и предлагать их в дальнейшем

Но перед этим придётся поучить программу, прежде чем она предложит. При этом совершенно непонятно, как её обучали до этого, значит не ясно какие ошибки могли быть заложены, или ты будешь часами смотреть как кто-то другой её обучал? Как самому обучить работать так же - будет вовсе непонятно. Чем этот подход снижает порог вхождения?

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

Там разве не надо набирать текст, только копия-вставка?

Нет. Просто вызываешь функцию от объекта класса. Либо наследуешь. Либо расширяешь функцию. Либо и то и другое. На начальных этапах твой подход будет выигрывать, но при усложнении и укрупнении проекта - работа с текстом ведётся быстрее (поиск, исправление, перекомпиляция, проверка).

Я не говорю, что твой путь плох) Как говорили мне когда-то - каждый программист пытается с нуля писать свой фреймворк, пока не находит такой же готовый =)

Ответить
0

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

В моём случае программа генерирует байт-код для своего интерпретатора. Маршруты и правила поведения можно будет задавать примерно как во Frozen Synapse (картинка ниже).

Но перед этим придётся поучить программу, прежде чем она предложит.

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

непонятно, как её обучали до этого, значит не ясно какие ошибки могли быть заложены

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

Как самому обучить работать так же

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

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

каждый программист пытается с нуля писать свой фреймворк, пока не находит такой же готовый

У меня особая ситуация - я не программист, а скорее художник, и готовый фреймворк не смог найти - есть HiAsm, есть Blueprints, есть программы анимации, но нигде нельзя простым перемещением объекта мышкой назначить назначить ему его направление, скорость (+ускорение) и условия начала его движения и конца.

Ответить
1

генерирует байт-код

Который человек прочитать не сможет, а для исправления придётся отматывать и смотреть, где ты не правильно обучил.
Frozen Synapse

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

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

Пока в живую не пощупаю, не пойму насколько это проще.
готовый фреймворк не смог найти

Попробуйте Unity. Нет ничего проще.

А по поводу визуальных редакторов: в студенчестве я считал, что визуальный редактор SQL верх творения, ничего проще не существует, какой он удобный и понятный. Пока не начал работать. В бою оказалось, что связать 50 таблиц в текстовом редакторе через join быстрее, чем в визуале проставить все связи между таблицами. Я уж не говорю о настройке правил выборки и результирующего набора данных.

P.S. Успеха вам, не бросайте, возможно именно вы сотворите революцию ;)

Ответить
0

Картинку забыл:

Ответить
3

Родители купли ZX-Spectrum в 8 классе. через пару месяцев, когда играть надоело, переквалифицировался в разработчики :)
п.с.
ты или делаешь что-то сам, или никакая учеба тебя не спасет.

Ответить
2

У меня условия были пожестче - в доме тупо не было кассетного магнитофона, поэтому запускать игры с прилагавшеся к спектруму кассеты было не на чем (попозже уже перекатал на бобину, да и кассетник через год прикупили). Вот и пришлось развлекать себя программированием игр :)

Ответить
1

Сразу после универа устроился.
Для программиста в геймдеве в порядке приоритетов:
1. САОД (http://publ.lib.ru/ARCHIVES/K/KNUT_Donal%27d_Ervin/_Knut_D.E..html)
2. Внутреннее устройство компьютера(Бинарные представления чисел в памяти, основные алгоритмы и преобразования)
3. Геометрия/Тригонометрия/Лин.Ал. (https://habr.com/ru/post/131931/)
4. Язык программирования (По С++ могу посоветовать, но это не совсем базовый уровень https://coollib.com/b/348102)
5. Движок

Ответить
3

Сейчас бы для геймдева Кнута советовать ещё и с первым приоритетом...

Ответить
2

Я советовал САОД.
Ну да, делать игры и не зная что такое лист и бинарное дерево. уф уф

Ответить
4

что такое лист и бинарное дерево.

Само придет в процессе обучения. Зачем заваливать новичков сложными словосочетаниями? Что бы отпугнуть?

Ответить
1

Это базовые вещи.

Ответить
1

Зато Мейерс далеко не базовые)

Что из него в работе реально применяете?

Ответить
2

1. Я написал помету про Мейерса что это не совсем базовые вещи.
2. Вопрос про применение страный. В книге описано достаточно широко. Начиная от общих рекомендаций, заканчивая конкретикой. Широко применяю, например лямбда выражения.

Яркий пример - OnlineSubsystem в Ue4. Вместо создания делегатов - использую лямбды. Понятность кода не страдает - а размер сокращен на 50%.

Ответить
1

Написал, но блин. Мейерс, паттерны (которые упомянул позже) и все подобные - не то, что не могут идти как базовые книжки. Они могут быть вредны для людей без опыта.

Ответить
1

По этому сначала Структуры->ООП->Паттерны.

Ответить
1

Где в геймдеве это нужно?

Ответить
1

О, например, одна из оптимизаций RayTracing основана на КЧД.
Поиск пути - привет графы.
АИ - О ГОСПОДИ, Behavior Tree.
Хранение данных которые часто удаляются/добавляются - привет листы.

Ответить
1

UPD: Совсем забыл про Паттерны и ООП (Вставить между п.1 и п.2). Голову мою с плеч.

Ответить

Комментарий удален

2

Тут все интересно, и приветствуется любая история

Ответить

Комментарий удален

Комментарий удален

1

Хочешь в геймдев делай на юнити, знание c# берешь из оффициальных туторов опять таки юнити. После этого ты джун. А всякие паттерны, алгоритмы, поиски пути доберешь когда это ДЕЙСТВИТЕЛЬНО понадобится. Поверь, для того чтобы колбасить матч3 все это не нужно.

Ответить
0

Если ты реально хочешь быть прогретом в геймдеве, то тебе надо начинать с общих азов а не с движков. Учишь базу, структуры данных, алгоритмы, паттерны и тд. Начинать надо с C/C++. Времени займёт не мало, но и потом все окупится с лихвой

Ответить
2

Учишь базу, структуры данных, алгоритмы, паттерны и тд.

Скорее всего 90% создателей индюшатины понятия не имели о чем ты когда делали свои игры. Потом кто-то втянулся глубже в программирование, кто-то нет.
с/с++ на сейчас нужен для анриала, либо самописных движков использующих нативно директикс, опенгл.
Для юнити нужен c#, для серверов игр с++ нужен не всегда.

Ответить
–1

Ага именно поэтому все форумы на 90% состоят из тупых вопросов которые идут от незнания первого. Открою тебе секрет, но поверхостное знание никому не нужны, даже в россии куча вакансий и жуткая нехватка программистов. Ага ну удачи, unity написан на ++, и если компания делает более менее серьезный проект и купила сорсы, то хрен что ты там на # сделаешь. И геймдев на анриле и юнити не заканчивается, практически все крупыне игры как раз и используют свои движки, либо на крайняк анрил. Так что человек знающий основы всегда будет в большем приоритете чем очередной "unity-разработчик" который кое как выучил движек и освоил только c#. Зависит от программиста, GAPI должен знать программист работающий над графической частью движка, помимо куча облостей которым он не треубется. Хотя знание низкоуровневого рендера, даже в unity даст хорошие навыки, как минимум в оптимизациий(а там ой как нужно)

Ответить
1

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

Ответить
–2

А еще куча ммо например, где надо ++, ну и если стремится к унылым мобилкам то и будешь работать до конца жизни на мобилках и делать мач 3. Да обучаться, а кто сказал что программист это взял и через месяц уже получаешь 150к? Это долгий и сложный путь, поэтому и востребован, и оплачиваемый. Ну джуниуров в россии в геймлеве вообще практически нет, так что это почти бесполезно будет, ну не 5 конечно, если при вузе, где нормально учат, то на курсе 3 уже вполне работать можно

Ответить
–1

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

Ответить
1

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

Ответить
0

Andry, ты живешь в каком-то своем выдуманном мире. В реальном мире заказчика (тот кто платит деньги) не интерисует знание программистом паттернов или с++. Заказчика интерисует успешная игра. Если программист может сделать такую игру, то вопрос КАК он это сделал заказчика не волнует (я не говорю о геймдизайне или арте). В твоем мире программист должен быть профессионалом, но время когда бородатые дядьке рвали себе волосы на жопе из-за споров какая конструкция будет работать, уже прошло. Есть конструкторы. И юнити тоже конструктор, напичканый таким количеством кода, что ни один проф программист в одно рыло их не напишет. ВОт и остается только учиться пользоваться юнькой и чегото там скриптить. Не говоря о том что даже не надо знать алгоритмы сортировки, потому что добрая Майкрософт уже реализовала это в с# для того чтобы программист БЫСТРО кодил а не полдня рисоерчил какой алгоритм ему выбрать.

А насчет " приходят когда люди новые в команду и страдают", им за это деньги платят, не хотят пусть не работают. Эта основная работа программиста в больших конторах - разбирать говнокод от предыдущих.

Ответить
0

Что и требовалось доказать выше, поэтому и в большенстве контор говнокод истенный, потому что такие как ты пишут абы как, главное работает и так сойдет. Если скажешь где работал то скажу спасибо, буду знать куда не идти при смене работы) еще скажи что отсутсвие документации и комментариев в проекты где > 1 человек это норма. То что ты описываешь большая проблема во многих компаниях, и с ней надо бороться, а не оправдывать и не советовать что это хорошо. Стыдно быть таким

Ответить
1

Для тебя это все еще ылитарная профессия, а в реальном мире это ТАКАЯ ЖЕ профессия как и сотни других. И если человеку платят деньги за то что он производит программный продукт, значит он делает то, что необходимо и достаточно. Если он делает БОЛЬШЕ и ЛУЧШЕ, ему и платят больше. Я же не говорю что программисту не надо совершенствоваться. Человек спросил что делать и как быстро войти в геймдев. А не как стать гуру абстрактного кода в вакууме.

Ответить
0

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

Ответить
0

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

Ответить
1

Стоит начать с изучения английского языка и активно прививать себе математическую культуру мышления.

Ответить
2

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

гораздо проче учить программирование и "оно" само придет. А то больно абстракто звучит "математическую культуру мышления". Что это и как этому учиться не программисту.

Ответить
1

За английски уже взялся) как раз такой логикой им руководствовался

Ответить
1

Я конечно не шарю в геймдеве, но разве без диплома какого-нибудь ИТМО, МФТИ или на худой конец Бауманки простым русским ребятам можно попасть в крупную западную ААА контору? Просто лично я бы не стал заниматься серьезно геймдевом, зная что потолок моей карьеры - мобильные игрушки для домохозяек.

Я как бы ничего не предъявляю, а скорее интересуюсь.

Ответить
1

В геймдеве в среднем по больнице насрать на образование, смотрят опыт и/или тестовое задание

Сходу проглядел несколько вакансий на западе, ни в одном не упоминаются дипломы

Ответить
1

Кстати в ноти дог требование "Bachelor’s Degree in Computer Science or equivalent work experience". Не совсем понятно что подразумевается под второй частью правда.

Ну вот кстати математику которая нужна графическим программистам я сам бы точно не выучил без ВУЗовских преподов.

Ответить
0

Самый простой, сейчас, путь программиста в геймдев: рабочий кейс - это курсы по Юнити от мейла. Потом стажировка в студиях или партнёрах мейла. И если вы себя проявите вас оставят работать на позиции джуниора.(Или как проявите)

Ответить
2

А Вы про эти курсы и их перспективы знаете на живых примерах? Всегда интересовали эти курсы и их выхлоп

Ответить
2

Есть примеры когда стажёра взяли и оставили в штате. Одного не приняли(не проявил должную заинтерисованость).

Ответить
0

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

Ответить
18

Все программисты из моей команды просто получили вышку в местном университете (и даже не все по специальностям связанным с программированием), а работали кто где, очень по-разному. Часто важнее показать скилл на тестовом задании, чем хвастаться образованием. Так что главное иметь навыки, а откуда они - уже дело десятое :)

Ответить
8

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

Ответить
5

Лет 6 назад во всех вакансиях стояло, и на собеседованиях смотрели косо на то, что у меня 9 классов всего. В одном месте сказали без всяких тз, что все в команде с вышкой, нувыпонимаете. Почему мне это не могли сказать сразу не пойму) Приятно знать, что ситуация изменилась

Ответить
2

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

Ответить
1

там наверняка лид был с комплексами, образование не интересовало и десять лет назад, если было портфолио

Ответить
2

Ну с портфолио то да, а без опыта работы самоучке устроиться тот ещё квест :)

Ответить
4

ну, я как-то наткнулся на комментарий от одного тимлида, что, мол, образование - любое, но чтобы не ветеринар какой-нибудь. так как я как ветеринар, но с 12+ годами работы в IT, это вызвало лютый баттхёрт.
в западных вакансиях какой-нибудь близзард пробегает тема "профильный башелор дигри", у юбиков видел на ряд позиций QA инженеров и прогеров такие запросы.

Ответить
1

Ахаха))) я прям не знаю, что и говорить. Прям как про меня. Только я врач по образованию и 3 года опыта(врачом). И 5 лет опыта программистом. Когда принимали, наоборот понравилось:мол свежий взгляд будет «врачебный».

Ответить
0

Кстати, знаю еще двух врачей, ушедших в программирование и хорошо устроившись)

Ответить
3

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

Ответить
13

Я всегда болел созданием игр. В детстве рисовал свои настолки, с появлением компьютера хватался за изучение разных движков. Работал при этом кем попало, специальность вообще с геймдевом не связана. Несколько лет назад натолкнулся на Юнити и стал делать "игру мечты". Собственно с ее демкой постучался в молодую студию, взяли. Вот, три года работаю. Люблю ее :)

Ответить
0

Сколько удаётся зарабатывать, если не секрет?

Ответить
0

Секрет конечно :) Во многих студиях часто даже сотрудники одного отдела не знают сколько точно получают их товарищи сидящие рядом.
Могу только сказать, что не горы денег, а просто неплохо. Если захочется больше - можно найти работу в другой студии. Особенно в Москве неплохо платят (за конкретными цифрами можно посерфить Head Hunter)

Ответить
1

Секрет конечно :) Во многих студиях часто даже сотрудники одного отдела не знают сколько точно получают их товарищи сидящие рядом.

Глупо это, конечно) Рекомендую уделить время:
https://youtu.be/-3mXL1CLlRo

Ответить
2

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

Ответить
4

В срочном порядке нужно видео «20 глупых вопросов разработчику игр» (не в обиду ТСу сказано, самому интересно)

Ответить
3

Учился в местном техническом университете. Специальность была широкая: и программирование изучали, и сисадминство, и электронику. Больше увлекся программированием. Изучал его дополнительно дома по книгам, интернету. В итоге лучше всего знал C#/.Net, а в городе тогда вакансии в геймдеве в основном были с требованием C++. Так что сперва 4 года поработал программистом, но не в геймдеве. Параллельно изучал Java, XNA, Unity. С ростом популярности Unity стали появляться соответствующие вакансии, так что потом уже попал в геймдев в местную компанию. Потом вообще на удаленку перешел.

Ответить
2

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

Ответить
1

И кстати если на юнити сделаешь следующие игры, считай ты готов работать (и они также пойдут тебе в портель в принципе):
1. Тетрис
2. Матч3 достаточно простого движка игры
3. Что-то типа Марио
4. Сокобан с редактором уровней
5. Какой-нить tower defence с редактором уровня.
Про 3д игры принципиально не говорю, так как в тренде пока 2д мобильные игры.

Ответить

Комментарий удален

0

Учите С++ и Юнити. Делаете десяток клонов примитивных игр вроде 2048 и т п - это поможет разобраться в системе. Весь код показываете на форумах - вас быстро научат работать с ним эффективнее.

Ответить
1

В юнити с++ не нужен.

Ответить
2

А что? C#? Я вечно путаю(

Ответить
0

Отучился в универе на 230100, сразу пошел делать игры джуниором :) Работаю 6 лет, всё радует.

Ответить
0

шо значит 230100?

Ответить
–2

Главное видеть себя не в России.

Ответить
0

Прямой эфир

[ { "id": 1, "label": "100%×150_Branding_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox_method": "createAdaptive", "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "ezfl" } } }, { "id": 2, "label": "1200х400", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "ezfn" } } }, { "id": 3, "label": "240х200 _ТГБ_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fizc" } } }, { "id": 4, "label": "240х200_mobile", "provider": "adfox", "adaptive": [ "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "flbq" } } }, { "id": 5, "label": "300x500_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "ezfk" } } }, { "id": 6, "label": "1180х250_Interpool_баннер над комментариями_Desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "clmf", "p2": "ffyh" } } }, { "id": 7, "label": "Article Footer 100%_desktop_mobile", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fjxb" } } }, { "id": 8, "label": "Fullscreen Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fjoh" } } }, { "id": 9, "label": "Fullscreen Mobile", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fjog" } } }, { "id": 10, "label": "Native Partner Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyb" } } }, { "id": 11, "label": "Native Partner Mobile", "provider": "adfox", "adaptive": [ "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyc" } } }, { "id": 12, "label": "Кнопка в шапке", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fdhx" } } }, { "id": 13, "label": "DM InPage Video PartnerCode", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox_method": "createAdaptive", "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "clmf", "p2": "flvn" } } }, { "id": 14, "label": "Yandex context video banner", "provider": "yandex", "yandex": { "block_id": "VI-250597-0", "render_to": "inpage_VI-250597-0-1134314964", "adfox_url": "//ads.adfox.ru/228129/getCode?pp=h&ps=clmf&p2=fpjw&puid1=&puid2=&puid3=&puid4=&puid8=&puid9=&puid10=&puid21=&puid22=&puid31=&puid32=&puid33=&fmt=1&dl={REFERER}&pr=" } }, { "id": 15, "label": "Плашка на главной", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "p1": "byudo", "p2": "ftjf" } } }, { "id": 17, "label": "Stratum Desktop", "provider": "adfox", "adaptive": [ "desktop" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fzvb" } } }, { "id": 18, "label": "Stratum Mobile", "provider": "adfox", "adaptive": [ "tablet", "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fzvc" } } } ]
В Steam появилась функция продажи
подержанных цифровых копий игр
Подписаться на push-уведомления