Найти - Пользователи
Полная версия: Перенос игры на смартфон
Начало » Python для новичков » Перенос игры на смартфон
1 2 3 4 5
panama555
Привет!
Хочу свою игру с использованием pygame перенести на смартфон.
Первый раз это делаю, поэтому не представляю с чего начать?
Программа для ПК готова. (Питон 3.7. Pygame)
Подскажите алгоритм действий.
Как получить файлы, которые можно загрузить на смартфон и запустить?
Спасибо
Romissevd
Для начала тут можно посмотреть что рекомендуют это для android
doza_and
panama555
Хочу свою игру с использованием pygame перенести на смартфон.
В такой постановке никак. Потому что Смартфон это может быть android,iOS,winphone,simbian,… и еще десяток других систем.

Если конкретно Андроид, то тоже никак :). https://habr.com/ru/post/119831/ На андроиде работает подмножество pygame. Т.е. при разработке игры надо было сразу писать так чтобы она шла на win/lin/android.

Если учесть то что для нормальной игры способы управления на смартфоне отличаются от таковых на десктопе то по сути объем работы будет как при написании вашей первой готовой версии под десктоп.

Но дорогу осилит идущий. Дерзайте!
https://github.com/renpytom/rapt-pygame-example
panama555
doza_and
В такой постановке никак. Потому что Смартфон это может быть android,iOS,winphone,simbian,… и еще десяток других систем.
Да, хочу попробовать под Андроид.
doza_and
Т.е. при разработке игры надо было сразу писать так чтобы она шла на win/lin/android.
Я это понимаю, поэтому ищу информацию по теме:“Как писать для Андроида?”
Алгоритм самой игры и текст программы для ПК есть, осталось перенести на Андроид.
Хочу найти русскоязычные обучалки.
doza_and
Если учесть то что для нормальной игры способы управления на смартфоне отличаются от таковых на десктопе то по сути объем работы будет как при написании вашей первой готовой версии под десктоп.
Насчёт этого у меня сомнения. Мне нужно будет только заменить перехват одних событий на другие.
Я не думаю, что это сложно. Остальной алгоритм уже отлажен. Даже если каждую функцию я буду переносить и проверять отдельно, то это не так уж сложно и долго.

Может быть ещё кто кинет ссылки на обучалки по теме переноса с ПК на Андроид?
AD0DE412
удваиваю вопрос (немного офтоп) хотя думаю ни кто не ответит

1. pygame лицензируется как lgpl - что это значит для дистребьюции?
хорошо , программа пишется с использованием компонентов под лицензией bsd или mit и с этой стороны нет проблем
возникает впрос -
2. как распростронять программу к примеру через appstore, googleplay, fdroid? (отдельный вопрос стоит ли вобще связываться с мобильной разработкой имея в активе только “почти год изучение python” и вобще на сколько python здесь уместен)
3. если встанет вопрос о монетизации то как это делать? (даже банальный донат там куча вопросов)
4. если программа продается или она многопользовательская то как реализавать защиту приложения?
5. налоги?

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

возращаясь к теме посмотрите в сторону kivy (сейчас мучаю этот фрамеворк не чего особенного обычное todo-приложение) ну или как выше писали pygame заточенные под нужную вам платформу (есть вроде еще Godot(ну почти python) и Panda3D(вроде может в андроид)) в конце концов у вас уже есть рабочий прототип (: можно наверное переписать под нужный фрамеворк-платформу

ps ТС ну конечно если вы пишете игрушки для зацини шо магху и на поучиться и дальше вашего телефона-компьютера это не пойдет то все эти 5 вопросов вам не важны

FishHook
Давайте трезво смотреть на вещи - никто в мире не пишет мобильные игры на питоне, да и вообще игры (скрипты для разных движков не в счёт).
AD0DE412
не не не … ну что вы. а это например. целых 10+ установок … покайтесь (:
PEHDOM
AD0DE412
1. pygame лицензируется как lgpl - что это значит для дистребьюции?
ничего не значит, вы дистрибутируете не pygame, а свой продукт и он может быть под любой лицензией, LGPL это позволяет если ваш продукт не является производным от LGPL. Pygame там используеться только как библиотека, вы ее никак не модифицируете.
AD0DE412
2. как распростронять программу к примеру через appstore, googleplay, fdroid?
Эт надо заходить на каждый сайт и читать, там обычно есть “ХАВТУ для погромистов” типа такого:
1 Создать аккаунт разработчика, обычно платно, но плата единоразовая от $25 у гугла до $100 у епла.(пишу по памяти, цены были актуальны 3 года назад, сейчас возможны изменения, детальнее смотрите на соответсвующих сайтах)
2. Оформить privacy policy.
3. Подготовить маркетинговые материалы (иконка, скриншоты, баннер, текст, проморолик).
4. Обеспечить сборку наличием сертификата цифровой подписи.
5. Настроить оплату за пользование приложения.
6. Отправить сборку в appstore/googleplay/fdroid и тд…

AD0DE412
(отдельный вопрос стоит ли вобще связываться с мобильной разработкой имея в активе только “почти год изучение python” и вобще на сколько python здесь уместен
не стоит, неуместен. Когда говорят о “мобильной разработке” то в оcвновном имеют ввиду Java(Script), HTML5, CSS, Swift, C(++\#).
Пайтон это скорее из разряда извращений потому как особого выбора нет, это или kivy, или BeeWare.(честно говоря, не в курсе насколько последний актуален, читал пару статей о нем пару лет назад, МБ он уже загнулся давно…)
С pygame там все сложно, непонятно как это все упаковать в один .apk, а вариант “установите пайгейм_для_андроид, установите нашу игру, запустите из консоли….” слишком сложный для ленивых пользователей смартфонов. Хотя вроде можно использовать kivy/python-for-android чтобы запихнуть пайгейм игру в .apk. Но будте готовы что даже простой “Hello word!”(helooword.apk) будет весить несколько мегабайт, так как оно работает по принципу py2exe\pyinstaller, тоесть пихает в апк-шку пайтон, пайгейм и все необходимые либы. OpenGL-я в пайгейм_для_ведроид, насколько я понимаю, нет, то есть максимум это спрайтовые игры. Хотя опять же я не в курсе последних новостей из мира pygame4android, может уже и есть.
Вроде еще Panda3d выкатила свой порт под ведроид, но тут вообще все на уровне слухов и танцев с бубном на велосипеде.

AD0DE412
3. если встанет вопрос о монетизации то как это делать? (даже банальный донат там куча вопросов)
ну тут вариантов не много: использовать стандартный механизм, у гугла это in-app purchase, https://play.google.com/about/monetization-ads/ чтото такое должно быть и у яблока. Конечно можно исхитриться, и запилить свой механизм в обход гугеля/епла но есть неилюзорный шанс нарваться на бан.

AD0DE412
4. если программа продается или она многопользовательская то как реализавать защиту приложения?
зашиту от чего?
AD0DE412
5. налоги?
налоги вы платите согласно законам страны в которой вы проживаете. Если мы говорим про Россию, то по завершении финансового года вам достаточно подать декларацию о доходах, где указать поступления от продажи своих приложений в Google Play и заплатить с них 13% НДФЛ. Это если совсем вкратце, и только если вы “продаете” свою программу (берете деньги или за право пользоваться, или продаете внутриигровой контент). А например показ объявлений Google AdSense в приложении может рассматриваться как оказание рекламных услуг, тут уже нужно регистрировать, как минимум, ИП и выводить доход от Google AdSense на банковский счет ИП со всеми вытекающими налоговыми обязанностями.

FishHook
никто в мире не пишет мобильные игры на питоне, да и вообще игры (скрипты для разных движков не в счёт).
мобильные да, а вообще пишут, таже eve online написана на python (stackless Python если точнее) чуть более чем полностью, начиная от сервера и заканчивая клиентом. Это конечно не WOW или WOT но 300К активных игроков(то есть оплачивающих подписчиков) это тоже не coles canis
так что тут скорее вопрос желания.



FishHook
PEHDOM
мобильные да, а вообще пишут, таже eve online написана на python (stackless Python если точнее) чуть более чем полностью, начиная от сервера и заканчивая клиентом.

где об этом прочитать? Меня как разработчика одной из самых массовых ММО терзают смутные сомнения на этот счет
AD0DE412
спасибо за развернытый ответ
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB