Там, где живет Python: разработка игр на одном из популярнейших языков программирования
Записаться на Python и другие курсы можно на сервисе Skillfactory, а по промокоду ZONA вы получите скидку 50% (действует до 30 сентября)!
Ушли те времена, когда вся без исключения детвора метила в космонавты. Сегодня каждое второе юное дарование со взором горящим желает стать программистом. А еще лучше — разработчиком видеоигр. И совсем уж было бы круто стать фулстек-разработчиком. То есть, специалистом, владеющим всеми без исключения технологиями процесса разработки.
Ну а фулстек-разработчику обязательно свести близкое знакомство с «питоном», он же Python. Нет, искать во влажных джунглях змею огромных размеров не придется. Ведь речь идет о проверенном и популярном языке программирования.
Если давать краткую характеристику для языка Python, то этот инструмент эффективен, универсален и имеет при этом высокий коэффициент полезного действия. При этом Python доступен в изучении, его ядро отличается несложным структурным построением.
Первые шаги по разработке Python начались более тридцати лет назад, в конце 80-х годов прошлого века. Но не спешите зачислять этот программный язык в число ископаемых. Python активно развивается по сей день, и не будет лишним предположить, что вершина развития еще впереди.
Одно из самых очевидных достижений Python — универсальность. Его используют и в производстве видеоигр, особенно небольших. Чтобы не показаться голословными, приведем примеры — они скажут вам больше, чем любые громкие эпитеты. Да, Python сгодится для создания чего-нибудь незамысловатого, вроде «Змейки». Но команда спецов с хорошим бюджетом способна создать настоящий блокбастер, и вот вам доказательства.
Абсолютная кассика жанра слэшер, игра испанских разработчиков Severance: Blade of Darkness (2001, студия Rebel Act Studios) использовала язык Python в максимальном объеме: практически все, из чего состоит Severance, исполнено на Python. А игра стала культовой благодаря сложной, реалистичной и брутальной системе боя с холодным оружием. Отрубленные руки орков и обезглавленные гоблины запомнились надолго.
В 2002 вышла в свет неординарная и яркая ролевая аркада Freedom Force. Создателем стала, на минуточку, студия Irrational Games (System Shock, BioShock, SWAT 4). С задорным юмором, с прицелом на стеб и пародию нам рассказали историю команды супергероев, спасавших в очередной раз Америку. Кроме удачной клоунады игра запомнилась тактической глубиной и интерактивностью окружения — злодеев можно было гонять выдернутым из асфальта столбом или светофором.
Что бы не говорили о контенте для одиночной игры и о королевском троне Call of Duty, но по накалу онлайн-баталий никто не переплюнул бренд Battlefield. Python применялся в разработке нескольких игр франшизы, таких как Battlefield 2, Battlefield 2142 и Battlefield Heroes. Перечисленные проекты заслужили признание как критиков, так и игроков. Именно такие тайтлы доказывают, что игра с живым соперником всегда будет совершенно иным, более насыщенным опытом по сравнению с противостоянием искусственному интеллекту. Про ценность нарратива одиночных игр поговорим как-нибудь в следующий раз.
На языке Python был написан популярнейший онлайновый космический симулятор EVE Online. Этот проект, пожалуй, крупнейший пример использования Python. EVE — игра во многом уникальная. Она обладает довольно высоким порогом вхождения и быстро отсеивает случайный людей, казуалам здесь не место. К тому же здесь вы не найдете никакой условно-бесплатной системы; путь к звездам откроется только за звонкую монету. Так испаряется еще одна группа случайных пользователей. И при всем этом EVE популярна невероятно, в одной из самых масштабных космических баталий мира EVE Online было взорвано кораблей на 300 тысяч вполне себе реальных долларов США!
Python применили и турецкие разработчики из команды TaleWorlds для своего «спящего хита» Mount and Blade (2008). Не располагая большим бюджетом, ребята из Турции выдали игру, ставшую для многих проектом мечты. Высочайшая степень свободы и открытые просторы средневекового мира привлекли целую армию геймеров, а Mount and Blade на сегодняшний день стала успешной серией, новая игра с подзаголовком Bannerlord собрала вокруг себя многочисленное сообщество, находясь на стадии раннего доступа в сервисе Steam. Своеобразная система сражений на мечах и копьях, боевые лошади, многочисленные армии под вашим началом — всего этого могло и не быть, если бы не умелое использование языка Python.
Монументальная серия глобальных стратегий от маэстро Сида Мейера перешла в три измерения только в 2005 году с выходом четвертой номерной части. Sid Meier's Civilization IV на тот момент выглядела и звучала просто потрясающе. Да и по исполнению игровых механик претензий к игре не было; исправно работало то самое волшебство из пошаговых стратегий — еще один ход, и спать. Для разработки своего безоговорочного хита Сид Мейер, как вы уже поняли, применял язык Python.
И эта игра, продавшаяся тиражом более одного миллиона копий также написана на языке Python. Речь о The Sims 4. Игра с симуляцией жизни покорила своим уровнем проработки и глубиной даже людей, максимально далеких от мира видеоигр. Два года этот проект не покидал вершины чартов продаж по обе стороны Атлантики. Python в данном хите применяли для обеспечения поддержки любительских модификаций. И поклонники свободного творчества обеспечили игре вторую жизнь — сработали десятки и сотни самых различных модов на основе The Sims 4. Это ли не показатель популярности и успеха?
Из холодной Финляндии в 2006 году пришла музыкальная игра Frets on Fire. Да, во многом этот проект похож на Guitar Hero. Но есть одна особенность, которая выделяет финскую игру из общей массы. У Frets on Fire открыт исходный код. И на базе этой игры можно изучать программирование как таковое и беспрепятственно практиковаться. Помимо открытости код игры еще и очень проста в освоение, вам не понадобится высшее специализированное образование. Игра полностью написана на Python.
Если вы дочитали этот текст до конца, то вы, вероятно, хотите стать успешным разработчиком игр. Хотите подарить маме розовый кадиллак и раздавать автографы на американской выставке Е3. Быть может, пора сделать первый шаг к мечте? Курсы изучения Python доступны и эффективны.
Записаться на Python и другие курсы можно на сервисе Skillfactory, а по промокоду ZONA вы получите скидку 50% (действует до 30 сентября)!
Новости и статьи по тегам:
- Блог 1 Что такое игры слоты «Авиатор» и как в них играть?
- Блог 5 Будущее Cloud9 в CS2: есть ли у «облачков» шансы стать лучшими в мире
- Блог 5 Фанаты призвали Valve открыть новую студию для разработки обновлений по Dota 2
- Промо 1 Новые слоты в казино пинап
- 11 [Промо] Почему лучшим игроком мира стал именно Zywoo?
- Блог 7 Ставки на киберспорт: проходящая блажь, или серьезная возможность заработать?
Ээээ, я все конечно понимаю, но в Unity пишут на C#, в Unreal Engine на C++. Питон как основной язык разработки в геймдеве это как не пришей #@!%^ рукав
Текст вообще не про это.
Какой рекламный статья. Вах!
Мне кажется скоро питонисты (если не уже) будут считаться за веб-макак, столько их развелось, с соответствующим уровнем зп. А хороших питонистов еще придется поискать.
Так вот к чему была эта пустая статья)))
А про то, что на геймресурсе надо дать рекламу с использованием игр как наглядных примеров?
А теперь о главном, как часто по ссылке в статье на самом сайте упоминаются компьютерные игры:
Ну, угадайте)))
@rainmind ссылочку то уже того )) гонорары не поделили ))
Не могу знать, так как не моя стезя, ибо сеньор-помидор плюсовик. Но количество питонистов на рынке реально зашкаливает. Прям как похапэ-погромистов.
Web-программисты сейчас очень неплохо оплачиваются, по сравнению с тем же C++ больше вакансий и в среднем выше зарплата.
Количество веб-погромистов несравнимо больше с количеством C++. А вот качество этих погромистов соответственно под вопросом. Изучить и понять C++ сложнее, поэтому там с навыками людей найти проще (кроме индусов), но самих людей меньше.
С питонистами так же, как с вебом - лёгкий язык, в тренде, почему бы и да? И чем больше вот таких неясных реклам на 2-3 курса в интернете — тем больше таких недопрограммистов выпускается. А насчёт зп не скажу, что они сильно отличаются так-то, но найти работу веб-макакой или питонистом несравненно проще, соглашусь. Никого не хотел обидеть макаками, просто нравится это выражение, сам помимо плюсов на Java веб-сервисы с фронтом пишу.
По хорошему, хочешь много получать — изучай 2-3 языка, работу с БД, становись фул-стак, и всё. С одним языком далеко не уедешь, особенно, когда этот язык до невозможности простой и его не изучал разве что совсем ленивый.
Красивые картинки тут (Work —> Salary): https://insights.stackoverflow.com/survey/2020#work-salary-by-developer-type-global
Вот срез за 18 год:
...Я сперва подумал, что по ошибке оказалсо на йяндехбздене.
А много это сколько?
Это когда ты можешь себе позволить комфортную жизнь
Данные за первое полугодие 2020г https://habr.com/ru/article/511700/
Зарплаты у программистов Python в среднем по России выше C++.
А комфортная жизнь — это какая? А то может ты там депутитишь потихонечку и у тебя она особенная.
Ну как это какая? Тебе хватает на еду, ты можешь себе купить автомобиль “здесь и сейчас” без необходимости копить на него, съем жилья отнимает 10-20% заработка и т.д.
Это норма для хайповых и трендовых языков. Время скорректирует всех все равно.
@rainmind у каждого свои планки. Кому-то и 30к норм, а кому-то и 100к мало. Я исхожу из средней зп погромистов по больнице с учетом хотелок нынешней молодежи. Вот и считайте - 150-180к net где-то. Кому-то и того мало. Все люди разные.
Понятно. Но не очень тогда понятно зачем тут фулстек. Нужен соответствующий проект. По опыту могу предположить, что нанимать фулстек — это действие дурного тона, когда управление так себе и хотят банально сэкономить на кадрах. Смысла рвать жопу себе в таких проектах за 150-180 нет никакого.
Проект проекту рознь. Если это разработка, например, узкоспециализированного ПО, где есть морда, обработка и БД, например, то искать ради такого сразу трех человек нет никакого смысла. Такие проекты закрываются в одно лицо и поддерживаются после им же.
Если это магазин, то достаточно пары рукастых прогеров и одного 1Сника.
А вот если это хипстерский стартап с майнингом и прочей модной шляпой - да, один не вытянет. Надо команду, лидов, агиль-скрум-пум-зум, тонны переговоров, 80-20 и прочие умные весчи. Иначе никак, стартап жешь.
По мне, ниша C++ постепенно сокращается.
C++ позволяет выжать бОльшую производительность, чем, например, Java или C# ценой сложности разработки и высоким требованиям к программистам.
Поэтому на нём пишется части кода, в которых важна производительность. Это высоконагруженные системы, AAA геймдев и т.д., а остальное пишется на более дружелюбных языках.
Так же используется для работы с железом(драйвера, прошивки и т.д.), т.к. там нужен unmanaged код, работа с указателями, а синтаксический сахар и всякие фреймворки не нужны. Хотя в этой области чаще используется чистый C.
Так что хорошо заработать на C++ можно, только если ты очень хороший программист и придёшь, допустим, в компанию, у которой есть высоконагруженные проекты и перепишешь часть кода, написанную на Java быдлокодерами, на C++ и ускоришь тем самым производительность.
А если ты средненький C++ программист, то придётся работать либо в древних проектах, написанных 15 лет назад на C++ Builder или MFC, либо в оборонке, либо во ФГУП, НИИ или заводе инженером-программистом, программирующем железки. Все эти места низкооплачиваемые.
Средненькому Web-программисту гораздо проще найти хорошо оплачиваемую работу, чем такого же уровня программисту C++.
Нафига этот пост по новой закреплять, тут даже рекламная ссылка потерта…
О чем мы вообще когда многие используют готовые решения и уж точно готовую систему отрисовки, так что сверхзадач именно в знании языка не надо, а реализовать игровой алгоритм можно на любом разница в сложности минимальна. Вообще хорошему программисту язык реализации должен быть по барабану, в основах языков нет ничего, что нужно долго учить… Но современных кодеров одного языка сложно назвать программистами. Программисты составляют алгоритмы, накодить особого ума не надо. Опыт работы с различными готовыми решениями это совсем другое, а у вас все в одной каше получилось.