Автор Тема: Python и pygame  (Прочитано 597 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Lunar Laser

  • Пользователь
  • Сообщений: 82
    • Просмотр профиля
Python и pygame
« : 17 Апрель 2023, 23:32:18 »
Пайтонисты есть?

Вы используете модуль Sprite? Или юзаете только Rect'ы и Surface'ы?

Есть ли в Sprite удобство / реальная необходимость?

Онлайн Sharpnull

  • Пользователь
  • Сообщений: 4602
    • Просмотр профиля
Python и pygame
« Ответ #1 : 18 Апрель 2023, 02:00:51 »
Не использую pygame. По описанию Sprite более высокоуровневый класс, чем Rect и Surface, и, если он вам не нравится, можете сами создать аналог. Вопрос из серии: использовать x, y или Vector2. Вообще, не знаю кто использует pygame, вроде он медленный и возможностей не много, скорее для учёбы или простых проектов для себя.
P. S. Доки pygame заблокированы для российских IP-адресов - гениально, что за олени там сидят.

Оффлайн Lunar Laser

  • Пользователь
  • Сообщений: 82
    • Просмотр профиля
Python и pygame
« Ответ #2 : 18 Апрель 2023, 10:53:16 »
pygame - Python-обёртка над сишной SDL. Что, скорее, библиотека, чем настоящий игровой движок.

Добавлено позже:
P. S. Доки pygame заблокированы для российских IP-адресов - гениально, что за олени там сидят.

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

Онлайн Sharpnull

  • Пользователь
  • Сообщений: 4602
    • Просмотр профиля
Python и pygame
« Ответ #3 : 18 Апрель 2023, 16:32:34 »
pygame - Python-обёртка над сишной SDL. Что, скорее, библиотека, чем настоящий игровой движок.
Я бы так не сказал, учитывая: Other features that SDL does have include vector math, collision detection, 2D sprite scene graph management, MIDI support, camera, pixel-array manipulation, transformations, filtering, advanced freetype font support, and drawing. Просто не подходит для игр, даже если нужен примитивный пазл за 30 рублей в Steam. Меньше лишнего может быть плюсом, должно помочь в случае переноса кода, только на Python лучше игры вообще не писать.
Из бесплатных движков вспоминается Godot, там основной язык вдохновлён Python, ещё можно реальный Python использовать.

Оффлайн Lunar Laser

  • Пользователь
  • Сообщений: 82
    • Просмотр профиля
Python и pygame
« Ответ #4 : 21 Апрель 2023, 02:09:39 »
Как тема относится к ромхакингу?

А может быть она относится к программированию?

Оффлайн Lunar Laser

  • Пользователь
  • Сообщений: 82
    • Просмотр профиля
Python и pygame
« Ответ #5 : 26 Апрель 2023, 14:06:16 »
Если я что-то сделал не то - сообщи админам. Они рассудят. Ко мне ты зачем обращаешься? Я вообще фиг знает, кто прав.

Оффлайн Werton

  • Пользователь
  • Сообщений: 827
  • Пол: Мужской
    • Youtube
    • Просмотр профиля
Python и pygame
« Ответ #6 : 26 Апрель 2023, 19:19:44 »
Вообще, не знаю кто использует pygame, вроде он медленный и возможностей не много, скорее для учёбы или простых проектов для себя.
По поводу производительности, писал на нем (а точнее на его подмножестве для symbian, он там урезанный был, и питон еще версии 2.2) наколенные платформеры по типу марио еще под symbian, тогда производительности аппаратов тех времен немного не хватало, фпс 10 - 20 выходило, сейчас же на любой самой бюджетной лопатке летать все будет (проверял, моя говно игра летала :lol:), не говоря у же о пк.
Просто не подходит для игр, даже если нужен примитивный пазл за 30 рублей в Steam. Меньше лишнего может быть плюсом, должно помочь в случае переноса кода, только на Python лучше игры вообще не писать.Из бесплатных движков вспоминается Godot
Есть такой движок для визуальных новелл как renpy, написан на питоне с использованием  pygame, так вот этот движок 5ый в рейтинге стима по колличеству написанных на нем игр, обгоняет многие именитые двиги, в т.ч. и godot, а перед ним только unity, unreal, gamemaker и rpgmaker. Конечно это только порно новеллы и вообще не показатель, но все же :)

Онлайн Sharpnull

  • Пользователь
  • Сообщений: 4602
    • Просмотр профиля
Python и pygame
« Ответ #7 : 26 Апрель 2023, 20:21:14 »
Есть такой движок для визуальных новелл как renpy, написан на питоне с использованием  pygame
С 2015 года (https://www.renpy.org/release/6.99) renpy использует https://github.com/renpy/pygame_sdl2 - воссоздание pygame API и там код реализации отличается от оригинала, потому что в pygame медлили с переходом на SDL2 до 2020 года :facepalm:. И я говорил про pygame, а не про renpy, есть большая разница использовать низкоуровневый модуль/библиотеку с необходимостью всё реализовывать для игры и полноценный игровой движок где кинул пару картинок и у тебя игра.
UPD:
писал на нем (а точнее на его подмножестве для symbian, он там урезанный был, и питон еще версии 2.2)
Я тоже писал под Symbian на Python, более скромно, для Nokia 3230 писал на самом смарте - решение квадратных и кубических уравнений, перевод между системами счисления, простые операции над матрицами, оболочку для текстового квеста.
сейчас же на любой самой бюджетной лопатке летать все будет
Всё равно это медленно, если нужно использовать много кода на Python, там быстрые только вызовы самого Python (хэш, например). Дробилка байтов как сжатие - крайне медленно, операции с изображениями - нужно использовать тяжёлый numpy или опять же специальную библиотеку. Т. е. всё пишется на C, а на Python только несколько вызовов делать, иначе край.
« Последнее редактирование: 26 Апрель 2023, 20:33:10 от Sharpnull »

Оффлайн Werton

  • Пользователь
  • Сообщений: 827
  • Пол: Мужской
    • Youtube
    • Просмотр профиля
Python и pygame
« Ответ #8 : 27 Апрель 2023, 03:28:30 »
Всё равно это медленно, если нужно использовать много кода на Python, там быстрые только вызовы самого Python (хэш, например).
Ну питон и медленно это синонимы, помню, чтобы ускорить код искал инфу по оптимизации, т.к. в си тогда не умел, такие извраты там приходилось делать. А вот уже androidе на cython можно было  тонкие места переписать.
Я тоже писал под Symbian на Python, более скромно, для Nokia 3230 писал на самом смарте - решение квадратных и кубических уравнений, перевод между системами счисления, простые операции над матрицами, оболочку для текстового квеста.
Щас вспомнил, что до питона на symbian был такой прикольный интерпритируемый яп как mshell (со своим редактором под смарт), сначала в виде скриптов, а потом запилили упаковку (видимо вместе с интерпритатором в установочный пакет), вот я сначало на нем пытался писать, а потом когда разрабы на него забили, перешел на питон. "лучшее" что написал, это типа граф. редактора, примитивный конечно, но тогда казалось что круто :lol: До сих пор эта хрень на различных замшелых сайтах валяется, даже вот нагуглил, первый вариант это под кнопочные, а второй это под тач уже
263103-0

Потом пытался на pygame (pgs4a) и под android, но тот мультитач не поддерживал, поэтому перешел на kivy, там уже был и мультитач и opengl, и собственно свой достаточно гибкий и кастомизируемый gui, а потом плюнул, наигрался видимо :lol:

Оффлайн Lunar Laser

  • Пользователь
  • Сообщений: 82
    • Просмотр профиля
Python и pygame
« Ответ #9 : 05 Май 2023, 04:37:42 »
А есть ведь возможность СКОМПИЛИРОВАТЬ код на Python с использованием pygame для Windows и Linux?