×Закрыть

Тяну ли на junior c++ game dev?

Касательно гейм дева:
1) Моё закинутое творение по плюсам:
github.com/…​ce1/SDL2.0-Game-CarRacing
2) Здесь базовая линейная алгебра на ДжаваСкрипт:
jsfiddle.net/yu4Lvraf

Отрывок моего резюме:
Experience:
Sep 2012 — present
Self-improvement

Learned fundamentals of C++11, STL, OOP. Submitted own programming efforts to GitHub.
Passed entry JavaScript, HTML, CSS course at MVAcademy.
Earned 720 points at CodinGame (all easy puzzles solved).
Passed Algorithms course at KhanAcademy.
Put linear algebra basic operations into action by means of KhanAcademy Pontiac Firebird project.

Languages:
English (upper intermediate) Russian (fluent) Ukrainian (native)

IT-skills:
Above entry: C++11, STL containers & algorithms, OOP, (haven’t dealt with threads and smart pointers)
Entry: JavaScript (without OOP), HTML, CSS

Во общем, есть тут кто дев из львовского Геймлофт? По вашему мнению, тяну иль нет?

Про себя:
Я сам изначально лингвист, мне 30, Львов. Депресняк напал, паникую, шлю резюме на QA, Front-end. На плюсах не писал, как проект бросил. Хз, что делать. 4 года прошло, а я не айтишник ещё, хотя вроде не тормоз. В PHP возьмут, ежели осилю?

Короче, с пятницой меня и тебя, народ!

LinkedIn

Лучшие комментарии пропустить

Надеюсь, когда тебе предложат $5000 в месяц, ты не дашь заднюю из за кондиционера? Успехов!

Депресняк напал, паникую, шлю резюме на QA, Front-end. На плюсах не писал, как проект бросил.

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

Допустимые теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Допустимые теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

На С++ код неплохой, но мне не понравился микс с использованием stl.

То есть у вас cout через using вызывается а string уже через неймспейс, как по мне нужно писать однозначно, или так или так.

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

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

Просмотрев код, я очень глубоко сомневаюсь что человек с «entry» уровнем — знает что такое Синглтон и Фабрика, а текстуру нужно хранить отдельно в менеджере текстур. Даже если кто то и заинтересуется, он сразу раскусит что код не ваш.
Что бы писать на С++ надо по настоящему его любить, потому что он сложный и нужно терпение.
Лучше всего идти в Веб в вашем случаи: Javascript Html Css. Там работу не так тяжело найти, к тому же можно фрилансить.

Как-то вы несправедливы.

Из вашего же топика:

«Первый вопрос: Что такое таблица виртуальных функций?
Я приблизительно представлял что это такое, но четкого ответа не дал.
Мне кажется что это „базовое понятие“ для какого то Java разработчика, но для плюсов это уже тонкости.»

То есть вы считали в своё время, что джун с++ не должен этого знать. И вам там многие написали, что считают, что должен, что это базовые вещи (с чем я согласна). Я не могу гарантировать, что ТС выложил свой код, но мне кажется, что судить типа «у начинающего должен быть вот такой уровень и не выше» это некорректно, как минимум. Я знаю, что такой Синглтон и Фабрика, хотя у меня и «entry» уровень. Если пользоваться вашей логикой, то я не существую.

Я знаю, что такой Синглтон и Фабрика, хотя у меня и «entry» уровень
Невероятно!!! Только начала постигать учение, а уже достигла просветления!

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

Я ошибался — про таблицу виртуальных функций знать стоит, так как тогда становится понятно почему наследования работает так, а не иначе. Но к сожалению в книгах об этом не пишут.
На счёт entry уровня — я предполагаю что человек прочитал 1-2 книжки, и написал змейку в консоли.

Вы предполагаете, а не располагаете фактами. И при этом выдвигаете нормальные такие обвинения и оскорбления.

Вообще-то это всего-лишь один из устоявшихся способов в нескольких языках реализации виртуальности.

ru.wikipedia.org/…​блица_виртуальных_методов

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

Я не читал предибущие комментарии автора (много насобиралось=))
«Большая часть кода , ~75%, взято из книги „SDL Game Development“ — фактически весь фреймворк скопипастен».
Это все объясняет.
А вообще по моему опыту скажу что лучше всего выбрать что то одно и ходить по собеседования — там и понятно сразу где пробелы, и это практика хорошая, особенно если дают фидбэк.
А если хорошо знаешь иностранный язык — могут только по этому взять( такие случаи были).

Мой вам совет, хотите в геймдев? Учите популярный и востребованый нынче движок, вот Unity например или Unreal Engine(если так уж хотите с++). И пишите игру, хотя бы елементарную, с хотя бы парой уровней. Будьте готовы, что первый оффер будет в какую-то но-нейм контору с зп < 400$ и без какого-либо договора о наймe. Могу рассказать свою историю. Я получила первый оффер на втором собеседовании, после выполнения тестового задания, суть которого была в том, чтоб написать игру на движке Unity в жанре Tower Defence за 2 дня, минимум 2 уровня, ИИ и возможность выбирать разные пушки, так же чтоб мобы ходили по разны путям, усложняя выбор куда поставить пушку игроку. Вот сорци, если интересно: github.com/Infatum/Tower_Defence На тот момент я 5 месяцев учила с# из которых 2 недели Unity. Но будьте готовы к тому,что могут позвать в компанию у которой нет даже сайта и где никакого ни официального оформления, ни договора на работу у вас не будет. Если готовы так рискнуть и не боитесь,что кинут — вперед =) Надеюсь, удалось хоть немного замотивировать.

Я получила первый оффер на втором собеседовании,
5 месяцев учила с# из которых 2 недели Unity
— фигасе метеор...
написать игру на движке Unity в жанре Tower Defence за 2 дня, минимум 2 уровня
Ну ты хоть спала между 1-м и 2-м днём?

попробуйте! Unity очень простой и шикарный движок + по нему есть масса подробнейших туториалов =) Просто смотрите туториал и повторяете у себя в коде =)

unity3d.com/...ojects/roll-ball-tutorial вот, самый простой урок. На сайте у юнити их много + вы всегда можете скачать ассеты уже созданных прототипов игр,чтоб посмотреть что и как у них в коде =)

Наверное потому, что на рынке труда для того, чтобы начать работать, нужно суметь продать свою будущую работу. Английский и soft-skills у лингвиста примем как в наличии by default.

Попробуйте подчеркнуть на собеседовании свое умение браться за что-либо и доводить это до конца. «Вот, есть проект, я подумал, начал, прошелся по граблям 1, 2, 3, сделал 4, 5, и смотрите, что получилось. Сделал бы еще 6,7, но пока решил остановиться и подготовить релиз».
Конечно, релиз на гитхабе — это не релиз. Хочется взять и собрать поиграть. Или хотя бы увидеть скриншоты. Если они будут оформлены в статью — вообще хорошо.

А дальше у вас получается заметное преимущество перед таким же выпускником курсов, который по факту не имеет опыта совсем. Продайте его. И само собой, не обязательно в геймдев. Через X лет придете на собеседование в геймдев с опытом Х лет на крестах и парой игровых pet-project.

O_O это в шарпе так принято кодить?))

public GameObject curTarget;
public float currentHP;
public float baseTurretRotationSpeed;
public float towerPrice = 100.0f;
public float attackMaximumDistance = 50.0f;
public float attackMinimumDistance = 1.0f;
public float seingMaximumDistance = 1.8f;
public float attackDamage = 10.0f;
public float reloadTIME = 2.5f;
public float turretRotationSpeed = 1.5f;
public float reloadCooldown = 2.5f;
public int FireOrder = 1;
private GameObject turretHead;

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

[SerializeField]
private float foo = 10f;
И меняете себе из движка.

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

смотри, если хочешь в геймдев — нужна математика. вектора, матрицы, вот это вот всё. тригонометрию до кучи. алгоритмы — тоже хорошо, хоть большинство их уже давно написано и оформлено в библиотеки, но иногда в борьбе за лишних 3 ФПСа пригодятся)
не совсем понятно кем в геймдеве ты себя видишь? графика, физика, геймплей, анимации, АИ, УИ, тулзы, и т.д. и т.п. если в индюшатине нормальная ситуация когда два-три прогера тянут всё вместе, то на больших проектах такого нет.
ещё почитай вот тут — web.archive.org/...//blog.gamedeff.com/?p=64. там не то, чтоб про джунов, и некоторые вопросы уж откровенно дибильные, но общий вектор того что требуется в ГД можно понять.
ЗЫЖ
я не знаю ищут ли у нас сейчас прогеров, но ради интереса (и если готов переехать из Львова) можешь закинуть резюме с примерами кода (и желательно не ссылки на гит, а зипчик) — www.4a-games.com/contact.html

Про «кем себя видишь?» — сам конкретно не задумывался, но из списка уже отсеял физику, АИ, тулзы. За ссылку почитать — спасибо. Я вас, серьёзных дядек из 4А, наверняка ничем не удивлю, так как нечем. Но за совет про отравить зип — спасибо.
Рас уж 4А заглянул, извольте пару вопросов:
1) Как жизнь на Мальте?
2) Насколько готова игра про космос? А то после Метро — тишина.

на Мальте тепло и море
не могу сказать

на Мальте тепло и море
как я вас понимаю...

ты умеешь разрабатывать игры ровно на столько, сколько готовых разработанных и какого уровня у тебя уже есть

Судя по количеству слов entry, basic и easy в топике — нет, не тянете.

Да, эти слова лучше убрать.
Или , как индусы любят писать: outstanding, excellent, brilliant, proficient, expert

А че вы не подадите резюме в геймлофт?

Депресняк напал, паникую, шлю резюме на QA, Front-end. На плюсах не писал, как проект бросил.

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

«Войти вайти» и «долларовая зп» это мотивации не того порядка, что вам нужны
А как по мне так не плохая мотивация :) Или давайте все сделаем серьезную мину и выдадим фразу, от которой я помню чуть ляхи не обо*ал, когда увидел на форуме: «......и тут я понял, что тестирование программного обеспечения мне было предначертано судьбой и в этом мое призвание ....»
А как по мне так не плохая мотивация :)
Это плохая мотивация и разрушительна для психики.
Лучше работает мотивация, когда делаешь то, что приносит тебе удовольствие, а деньги потом прикладываются.

Некоторых в этой профессии мотивирует то, что особо много ума не надо (а платят хорошо). Следует признать.

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

Лично мое ИМХО:

Sep 2012 — present
Self-improvement
Выбросить. Самосовершенствование — ни о чем. Хотя бы Actively studying new technologies или что-то в этом духе.
Learned fundamentals of C++11, STL, OOP. Submitted own programming efforts to GitHub.
Passed entry JavaScript, HTML, CSS course at MVAcademy.
Earned 720 points at CodinGame (all easy puzzles solved).
Passed Algorithms course at KhanAcademy.
Put linear algebra basic operations into action by means of KhanAcademy Pontiac Firebird project.
Я бы выбросил. Ни о чем. Можно перечислить скилы, библиотеки, проекты (завершенные, рабочие проекты), участие в опен-сорсах, если таковое было.
Languages:
English (upper intermediate) Russian (fluent) Ukrainian (native)
Выбросить слово «Languages», оставить только English.
IT-skills:
Above entry: C++11, STL containers & algorithms, OOP, (haven’t dealt with threads and smart pointers)
Entry: JavaScript (without OOP), HTML, CSS
Не стоит делить на above entry и entry — просто перечень скилов. HR не разбирается в терминологии достаточно, чтобы понять, а остальные спросят на собеседовании, или это проявится во время выполнения тех.задания.

Могу посоветовать то, что мне посоветовали товарищи:
Прекратить гоняться за языками (я уже знаю 7 языков программирования), выбрать одно направление и работать с ним. Набраться опыта, написать несколько проектов, собрать портфолио, сформировать вменяемое резюме (задача резюме — попасть на собеседование, не больше, всю нужную информацию спросят во время собеседования). ВСЁ. Но одно направление, не прыгать постоянно с языка на язык, с направления на направление.

Можно взять старый проект и довести его до ума — сделать executable, без установки. Запустил — работает. Будет проект для портфолио. Можно написать еще несколько аналогичных проектов. Но очень желательно, чтобы проекты все были на одном языке. Можно на одном движке. Можно с повторным использованием 90% кода. Главное — чтобы они корректно работали и давали общее представление о возможностях специалиста написать что-то вменяемое. Исходники должны быть доступны, но и готовый демо проект тоже должен быть — Вы ведь не собираетесь компилировать проект во время собеседования?

Про меня — более года не могу устроиться даже джуном, хотя по скилам и английскому потяну даже позицию мидла. Просто нет Х лет опыта работы, потому HR-ы фильтруют резюме. Жена работает ИТ рекрутером, имеет представление об этой «кухне».

Совет один: выбрать направление, развиваться, писать свои проекты, формировать и обновлять портфолио и тыкать резюме всюду, где только можно. Само резюме должно занимать не более 1 страницы вменяемым размером шрифта, его цель — получить приглашение на собеседование. Только по резюме Вас никто не наймет.

Депресняк напал, паникую, шлю резюме на QA, Front-end. На плюсах не писал, как проект бросил. Хз, что делать. 4 года прошло, а я не айтишник ещё, хотя вроде не даун. В PHP возьмут, ежели осилю?
Воу-воу, полегче. Может хватит скакать направлениям?)

Неделю назад отправил на QA в геймлофт — получил отказ, обосновано.
Пару дней назад отправил на QA trainee в GL- ответа не было, хотя обосновано; отправил на junior front-end — тоже, по моему мнению, обосновано не ответили.

1-е собеседование с HR(по скайпу) в PFSoft — не ответили.
2-е собеседование(скайп+по телефону с интервьювером) в Luxoft — сказали, что заказчик требует разговорный английский, отказ.
3-Собеседование в Noname контору-отказ(а там я и не понял почему).
100500 отправленных резюме в разные конторы-нет ответа.
Вам полегчало?)
P.S. Я сам вижу, что по скиллам я не дотягиваю до требований рынка.

Мое личное мнение — на любое письмо должен быть ответ. За это, собственно, HR-ам и платят зарплату. Обоснованно могут отказать, например, после технического собеседования. Или после визита в компанию. За все остальное я бы уволил HR-а. Но им повезло — у меня нет своей фирмы xD

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

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

Ну толсто же и очень, у меня аж жир из монитора потек.

Посмотрел исходники, они на какой-то SDL2.0 упираются. Никогда не видел эту либу, загуглил, нашёл только статью на хабаре: habrahabr.ru/post/201392

Вы из геймдева и никогда не слышали про SDL?

www.libsdl.org/download-2.0.php

Есть DirectX и OpenGL, где есть весь необходимый API.

SDL относится (исторически) к OpenGL так же как DirectX к Direct3D. Адово популярная в Open Source библиотека.

Чувак, ты никогда в жизни так не ошибался ;)

SDL 2.0 и правда малоизвестна, но 1.2 версия — это классика, тысячи игр и других приложений написаны на ней.

Я аккуратно считаю что пункт из резюме нужно выпилить из Experience и разнести по Skills, Awards, Feats&Accomplishments итд. Если бы я был HR-ом я бы сломал мозг в попытках осознать это.

код лаконічний. єдине що не оч то це бінарники в папці bin/Debug краще ліби тягнути з інших репозиторіїв

А я, кстати, оценил, автор как по мне, всё правильно сделал.

Поясните позицию, пожалуйста.

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

А вдруг это на самом деле хитрый план, и тс сейчас собирает ботнет?:D

ботнет с гонками на машинкаx и с полной дебагеровской информацией? да бог в помощь тогда :)

Все что надо для запуска в ОС и среде близкой к среде автора или держать в VCS все возможные комбинации бинарей под любую платформу? Если уже так то есть Travis и Jenkins на «попробовать».

Ну тоді автору треба зробити ще резюлізну папку і в неї покласти релізні версії ліб. Далі, ви будете заручником даної версії бібліотеки. На інших машинах можуть бути проблеми з компіляцією. Як приклад ви помістили файли .dll and .lib на лінуксі ви проект не зберете. Як наслідок людині яка буде компілити ваш проект скоріш за все доведеться повозитись з лібами. Якщо ви використовуєте реп ліби, то вам тільки раз доведеться її збілдити і все.
Це кажу як не профі. Скажіть чому автор правильно робить? Бо ваш комент нижче руйнується моїм коментом про платфори

Як приклад ви помістили файли .dll and .lib на лінуксі ви проект не зберете.
Почему?
Скажіть чому автор правильно робить? Бо ваш комент нижче руйнується моїм коментом про платфори
dou.ua/...orums/topic/17160/#910259

Наскільки я знаю на нікс сістємах статичні і динамічні ліби мають інше розширення і прога їх не буде сприймати навіть якщо ви перекомпілити проект.
Ок, автор дає дебажну збірку, я хочу подивитись як програма буде в релізній збірці збирати. Я роблю релізний білд, а він або не компілиться, або в рантаймі вилітає. А якщо я хочу збілдити прогу на убунту чи мак? Або мобільну платформу? І мені потрібно шукати ті ліби, качати додати в проект, короч геморой

Наскільки я знаю на нікс сістємах статичні і динамічні ліби мають інше розширення і прога їх не буде сприймати навіть якщо ви перекомпілити проект.
Расширение файла — не более, чем условность. Может вы кросскомпилируете с помощью mingw. Да может быть тысяча вариантов и все рабочие.
А якщо я хочу збілдити прогу на убунту чи мак? Або мобільну платформу?
Тут целая группа умных собралась, вот скажите, если начальник вас просит проверить соберётся ли ваш проект под новый процессор и будет ли сходу работать, то вы тоже начинаете с установки Jenkins, написания хуевой тучи скриптов для создания нового продукта, прописывании в билд сервере нового кросс-компилятора, либ, и прочей хоботни или сделаете за пол часа и доложите результат?
Расширение файла — не более, чем условность. Может вы кросскомпилируете с помощью mingw
Що саме? Проект чи ліби? Бо якщо проект то він не буде робити на лінуксі, а якщо ліби то немає сенсу тримати бінарники для всіх платформ і конфігурацій.
то вы тоже начинаете с установки Jenkins, написания хуевой тучи скриптов для создания нового продукта, прописывании в билд сервере нового кросс-компилятора, либ, и прочей хоботни или сделаете за пол часа и доложите результат?
Якщо проект серйозний то СІ і все інше мало б бути давно настроєний і все інше. Вам тільки треба зробити білд під конкретний процесор, то це має робитись додаванням декількох рядків в СІ сервер. І тут не треба пів години робити все. А якщо у вас серйозний проект і ви не користуєтесь сі то це дивно

Ну так відправ резюме ейчарам, пришлють тестове завдання, якщо зробиш, знач тянеш.
А чого саме геймдев? С++ джунів час від часу набирають різні контори, той же глобал, софтсерв і т.д. Періодично бачу джуновські вакансії в розсилці і попасти на таке легше ніж в геймдев, хоча й не так цікаво.
Ну і знову ж таки фрілансу ніхто не відміняв, може пощастить, попрацюєш там над декількома проектами, можна вже буде показувати як комерційний досвід.

С++ trainee только и глобал набирает, время от времени. Все разы (~3и), что оправлял на trainee резюме, получал отказ. На самих началах, пробовал попасть на С++ курсы глобал, но или теорию, или тех. задание не проходил. Мой последний раз был, когда они разыгрывали powerbank, на тех. задание даже не попал, так как HR мне перезванивал(-а) два раза, длительностью по 2е секунды — я просто не успевал на кнопку «Ответить» нажать. Не знаю, перебрал ли я количество попыток (около 5ти), то ли меня умышленно дисквалифицировали.
Также пробовал попасть на курсы софтсерв, 2а раза на iOS и раз на AQA, но после личного интервью получал отказ.
Изначально нацелился на геймдев, так как это направление вызывало наибольший интерес, пока я не испугался неофигительной математики, которая выходит за рамки базовой линейки, той математики, которая лингвисту и не снилась.

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

Кроме вращений, столкновений, на примере division от ubisoft, каким образом достигнута реалистичность таяния снега, отпечатки протекторов на снегу?

Столкновения — это уже физика сплошных твёрдых тел, физический движок, и другая тема :)
Реалистичность — совокупность всего, что предоставляет движок, и конечно дизайнеры.

Советую глубже покопать в сторону движков. В вашем случае UE4, к примеру.
Физику коллизий никто с нуля не пишет. Векторной алгебры вполне достаточно для начала.
Таяние снега — это уже работа с шейдерами. Протекторы на снегу — система частиц (particle system). Не знаю как UE4, но Unity позволяет сделать это без глубокого математического бэкграунда.

декали(отпечатки)+шейдера(таянье), скорей всего

Надеюсь, когда тебе предложат $5000 в месяц, ты не дашь заднюю из за кондиционера? Успехов!

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

А её там нет. Машинка прекрасно выезжает за пределы дороги в воду, а также за экран. Игры там не увидел. Во вторых непонятно, сколько кода взято из туториала, а сколько своего.

Большая часть кода , ~75%, взято из книги «SDL Game Development» — фактически весь фреймворк скопипастен. Переход между игровыми состояниями, описанный там, вызывал SEGFAULT, и вот с этого момента начинаются мои 25%. Как реализован templated object factory, и заодно, game state machine, подсмотрел из книги «SFML Game Development». Логика — это должен был быть мой основной взнос, которого я избежал. Тут признаю, не вложился. В основу логики должна была лечь игра Электроника «Автослалом».

Ну блин, орхетегтуры наворотил, а игра-то где?) Я, признаться, не использовал даже templated object factory, и частенько один enum стейт машину из себя изображал.

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

Игровой логики хоть и нет, но писать её на C++ неуместно. Лучше всего скриптовать на Lua. Вместо состояний игры и длинных switch-case блоков с ветвящимися условиями поместить логику в коротины.
Организуется это примерно так. Во время рендеринга очередного фрейма вызывается код в Lua-скрипте, который возобновляет работу ряда коротинов. Каждый коротин выполняет квант какого-то действия для какого-то объекта. Например, 1 коротин поворачивает колесо машины на угол dt*k, другой перемещает машинку на расстояние V*dt, и так далее. После выполнения кванта работы коротин выполняет yield. Таким образом, никаких состояний игры вообще не нужно хранить, поскольку состояния коротинов сохраняются между вызовами, а логика действий объектов может быть очень сложной.
Код коротинов может быть независимым, в то время как в switch-case вермишели всё взаимосвязано, надо тестировать сотни условий, и при модификациях могут вылазить баги в неожиданных местах.

Большая часть кода , ~75%, взято из книги «SDL Game Development» — фактически весь фреймворк скопипастен.
Спасибо, что признались. Я открываю исходники — а там куски моего кода %) Автор книги надёргал тоже много кода из SDL 2.0 тестов и примеров, когда я ещё работал над ним, но потом мне идея 2.0 разонравилась окончательно и я бросил работу.

На junior c++ game dev в геймлофт не отравлял, так как сдрейфил, и требование «good c++ knowledge» не конкретное, может им потоки нужны.

Нет, там нет потоков. Они только в С++ /11 начали относиться к С++, собсно. Там правда по основам вопросы. Ссылка/указатель, основы полиморфизма (виртуальный метод, деструктор, что в конструкторе при вызове вирт. метода происходит), основы темплейтов (настолько основы, что пробивает на хихи от формулировки). Там, правда, кроме С++ есть вопросы, по математике, меньше по физике, рендеру, логике. Но вообще именно к джунам довольно дружественная контора. Да, самое неприятное на тесте у них — нельзя копировать код из вопроса. И в довольно ушлёпной формочке код ответа писать, лучше в блокнотике сперва)

Депресняк напал, паникую
Ты это, успокойся. Еще ничего не пропало. Просто не всегда всё проиходит сразу и хочется кричать «Всё пропало, я в жопе». Это не так. Я проходил через оное и еще не до конца выкарабкался (но мне 48).
С колесами не посоветую ничего, кроме валерьянки. Остальное без врача (это психиатр, если ты по симптомам до него не дотягиваешь, пошлет к психотерапевту за разговорами) опасно. Можешь еще фенибут(ноофен) пару недель попить. Алкоголь не более поллитра пива в пятницу вечером, если чуть больше еще в большую депрессию загонит.

По коду я внимательно не смотрел, но так он аккуратный и читабельный. Мне было приятно его смотреть. Если он делает, то что ты хотел и не падает, то ты молодец.

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

З.Ы. Да, у массы HR в головах дикий бардак и на них особо не рассчитывай. Ну и еще закидывай резюме по С++ вакансиям, что на ДОУ, Работа.уа. Где-нибудь да сработает. Ну, а раз хороший английский посмотри на одеск тот же.

Мне пока-что поговорить и вылить изнутри наружу тут, рассчитываю поможет. Например, от «молодец» вот легчает — спасибо.
По лингвистике мои воспоминания скудны. У меня про семантические, морфологические, и ещё там какие, анализы, одни отголоски — закончил НУ «ЛП» в 2008. Помню, что диплом писал про слова паронимы (в англоязычном мире известны как «homophones») — слова созвучные, но разные по смыслу и написанию, поэтому и часто несознательно неверно употребляемые. Например: «affect — effect»; «alternately — alternatively; «elicit — illicit»; «insure — assure»; «precede — procede»; «principal — principle»; «sensible — sensitive». Вот точное название темы: «Paronyms in Ukrainian and English contexts as communicative deviation». Прошу прощения за лингвистический поверхностный brainwash :) Тогда времени назад, Grammarly бы влил луч надежды того, а кому это вся прикладная лингвистика нужна, которой страдали многие, но в конце-концов попёрлись в QA, райтеры, ПМы и переводы, как я, в гос. контору. Теперь переводы ненавижу.

можно спросить,почему стали ненавидеть переводы?

За три года работы в переводах у меня росло чувство, что меня не ценят, меня эксплуатируют, мой труд ничего не стоит. Чувство доросло до ненависти и отвращения к этой работе. Фактически что я заработал — так это бумажную «Благодарность за высокие показатели в работе» и пару ссылок на меня среди списка переводчиков и редакторов.

Чувство что вас эксплуатируют — будет расти на любой работе, а также что ваш труд ничего не стоит.

а не пробовали податься во фрилансеры?

За три года работы в переводах у меня росло чувство, что меня не ценят, меня эксплуатируют
Лол, а то когда код будете писать на галере, этого не будет? :D

Подписаться на комментарии