Теперь Кью работает в режиме чтения

Мы сохранили весь контент, но добавить что-то новое уже нельзя

Насколько актуален Python для игр?

Насколько мне известно python очень не оптимизирован из-за своей внутренней структуры, где каждый тип данных или даже функция являются объектом. Поэтому python используют в основном для работы с данными или делают нейросети с его помощью, так как существует огромное множество модулей для этого. Но насколько эффективен данный язык программирования для игр, даже с использованием NumPy? Возможно ли сделать рабочую 3д игру с примитивной графикой так, чтобы в это комфортно было играть?
ПрограммированиеВидеоигры+3
Валера Валерьевич
  ·   · 9,2 K
Представитель хостинг-провайдера Eternalhost...  · 9 авг 2022
Благодаря лёгкости освоения и простому пользовательскому интерфейсу, Python — отличный язык программирования для начинающего гейм-девелопера.  На нем основано большое количество известных игр: 
  • Battlefield 2;
  • Freedom Force;
  • Star Trek: Bridge Commander;
  • World of Tanks;
  • The Sims 4;
  • Pirates of the Caribbean Online.
Python позволяет новичку оперативно освоить различные фундаментальные навыки программирования, которые потребуются при разработке игр. Например, научиться использовать переменные, циклы, условные операторы, функции, объектно-ориентированное программирование и множество других алгоритмов и методов.
Одним из факторов, повышающим эффективность разработки игр на Python является обилие разноплановых инструментов, библиотек и фреймворков, специализированных на гейм-деве.  
Популярные фреймворки Python для разработки игр
Бесплатный набор инструментов Python с открытым исходным кодом предназначен для создания мультимедийных приложений, включая видеоигры. Pygame создан по образцу известной библиотеки SDL. Библиотека сочетает в себе C, Python, Native и OpenGL. 
Pygame позволяет пользователям создавать полнофункциональные игры и мультимедийные пакеты на Python. Библиотека чрезвычайно портативна, она работает практически на любой платформе и операционной системе.
Pygame — отличный выбор для эффективного прототипирования игр. Однако у него есть ограничения по производительности. Поэтому для более ресурсоемких игр следует использовать отраслевой стандарт C# (Unity) или C++ (Unreal).
Pyglet — это кроссплатформенный набор инструментов Python для работы с окнами и графикой с открытым исходным кодом. Помимо непосредственно работы с окнами, он включает множество полезного функционала — управление событиями пользовательского интерфейса, джойстики, графику OpenGL, импорт изображений и видео и воспроизведение звука. Pyglet совместим с Python 3.5+ и другими интерпретаторами Python, такими как PyPy.
Это популярная кроссплатформенная привязка Python к OpenGL и связанным API, которая строится с использованием стандартной библиотеки ctypes. PyOpenGL совместим с широким спектром внешних библиотек графического интерфейса Python, включая Pygame, PyQt, Raw XLib.
PyKyra — мощная среда разработки игр на Python, построенная на SDL (локализация программного обеспечения и документации) и движке Kyra.
Помимо основных возможностей фреймворка, он дополнительно поддерживает видео MPEG, звуковые форматы, прямое чтение изображений и многое другое.
Кроссплатформенный набор инструментов Python с открытым исходным кодом для быстрой разработки приложений, который включает в себя уникальные пользовательские интерфейсы, такие как мультитач-приложения. 
Kivy изначально работает на Linux, Windows, OS X, Android, iOS и Raspberry Pi. Он поддерживает большинство входов, протоколов и устройств. Библиотека ускоряется с помощью графического процессора и включает более 20 чрезвычайно расширяемых виджетов.
Panda3D — это бесплатный движок с открытым исходным кодом для динамических 3D-игр, визуальных эффектов, симуляций, демонстраций и многого другого, написанный на Python и C++. Panda3D поставляется с инструментами командной строки для анализа и оптимизации исходных ресурсов, что позволяет пользователям управлять и программировать рабочий процесс создания контента.
Это платформа с открытым исходным кодом, написанная на Python, C++ и Objective C, которую можно использовать для разработки игр, приложений и других кроссплатформенных интерактивных продуктов на основе графического интерфейса.
Python-Ogre или PyOgre — привязка Python к библиотеке C++ 3D-движка OGRE. Этот движок 3D-рендеринга, полностью разработанный на C++, обладает надежным набором функций и используется для создания визуально насыщенных игр.
Это бесплатный кроссплатформенный концептуальный движок, написанный на Python и Cython, который позволяет легко смешивать текст, графику и аудио для создания визуальных историй и живых симуляций.
Поддержка языка сценариев Python в Ren'Py позволяет разработчикам работать со сложной игровой логикой. Основное преимущество Ren'Py в том, что он может работать практически на любой компьютерной системе.
Просто о настройках и администрировании сайта в нашем блоге.Перейти на eternalhost.net/blog
3 эксперта согласны
Очень хороший ответ в плане возможностей python на конкретных примерах.
Веб-разработчик, геймер, специалист по этике  · 16 авг 2022
Дело не в том, что абстрактная модель данных питона предполагает, что всё является объектами. В яваскрипте делается попытка сделать точно такое же предположение и он прекрасно используется в HTML5-играх. Главное ограничение... Читать далее
1 эксперт согласен
Пофигист с большим жизненным опытом, обремененный...  · 10 авг 2022
Python вообще актуален и для игр в частности. Это язык общего назначения и вы можете его использовать для решения любых задач. К тому же игры бывают разные…  B силу объективных причин у программ написанных на python достаточно... Читать далее
1 эксперт согласен
Программист. ML, DataSience, Python  · 10 авг 2022
Создание игры - это прежде всего выбор игрового движка. Нормального движка для написания игра на Python, сейчас нет. По крайней мере несколько лет назад так было. Сейчас ситуация могла поменяться. Есть, конечно, библиотека... Читать далее