Найти - Пользователи
Полная версия: Перенос игры на смартфон
Начало » Python для новичков » Перенос игры на смартфон
1 2 3 4 5
AD0DE412
PEHDOM
какие именно пользовательские данные вы обираетесь защищать?
хз всякие от всяких шляп … белых и черных

зы для меня наверное рано думать о таких проблемах … спасибо за ответы
PEHDOM
FishHook
питон в этой игре реализует игровую логику, это не значит что игра ниписана на питоне. Можно так же заявить, что она написана на SQL. Понятно, что почти каждый движок использует тот или иной скриптовый язык для реализации конкретных квестов, событий и пр.
Именно в данном случе это не так, например я пишу на пайтоне какойнить планировщик-органайзер времени, где данные храняться в SQL. для доступа к БД я использую pyodbc написаном на С++, а для отрисовки интерфейса- pyQt, тоже написано на С++ , а теперь вопрос знатокам на каком ЯП написан мой “ежедневник”? Делает ли то, что я использовал либы на Си, меня Си-програмистом а мой “еженедельник” программйо написаной на СИ?
в том то и дело что В EVE пайтон не используеться только для “реализации конкретных квестов, событий и пр.” он реализует вообще всю логику в игре,. Хотя понятно, что они не писали на пайтоне реализацию конектора к БД, или рендеринга картинки, а взяли уже готовые либы: для конекта к БД pyodbc, , а для отрисовки векторной графики cario.
вот небольшой девблог где разрабы рассrазывают как они боролись с GIL:
https://www.eveonline.com/article/carbonio-and-bluenet-next-level-network-technology-1
кусок перевода:
Система Machonet выполняет ряд важных функций ― маршрутизация, управление сессиями, постановка пакетов данных в очередь и их отправка; по сути дела, это «нервная система» EVE. Она написана на Python, поэтому все данные со всех узлов сервера EVE обязаны в какой-то момент проходить через GIL.
Да в статье говориться что они заменили этот питонячий кусок на левую либу BlueNet, но наврядли бы это было актуально если бы пайтон там использовался только для “реализации конкретных квестов, событий и пр.”
FishHook
PEHDOM
а теперь вопрос знатокам на каком ЯП написан мой “ежедневник”
Это некорректное сравнение. Есть разница между скриптом и программой. Скрипт реализуется на встроенном языке. Браузерный JavaScript он потому и скрипт, что встроен в браузер и неотделим от него. Скрипты встроены в страницу, страница рендерится браузером и скриптовый движок являющийся частью браузера исполняет скрипт в контексте внутреннего состояния браузера, и браузер целиком управляет этим исполнением. Программы написанные на Node.js - это не скрипты, так как являются самостоятельными программными единицами выполняющимися только в контексте операционной системы и не управляемые больше ничем. Когда мы говорим “а для отрисовки интерфейса- pyQt” это отношение “программа - библиотека”, они связаны только через API библиотеки. Все игровые движки, которые я видел, используют встроенные в них интерпретаторы, и соответственно скрипты для них не являются самостоятельными программами. Сетевая игра, это прежде всего кластер и система управления этим кластером. Отдельные единицы кластера - это машины мягкого реального времени, они усредняют игровые события по игровым тактам и передают управление встроенному инрерпретатору скриптов под строгим контролем тактового генератора кластера. Скрипты не управляют ни временем своей жизни, ни даже собственными переменными, всё что им позволено - лишь нежно щупать движок за ограниченное количество предоставленных им функций. И у меня бы не повернулся язык сказать, что игра написана на питоне. Это бы подразумевало, что отдельные части игры запускаются как отдельные питоньи процессы. Я такого не видел. Я конечно могу ошибаться, и вполне возможно всё вышесказанное не касается конкретно EVE. Но в этом случае архитектура проекта весьма своеобразна.



PEHDOM
FishHook
Все игровые движки, которые я видел, используют встроенные в них интерпретаторы, и соответственно скрипты для них не являются самостоятельными программами. Сетевая игра, это прежде всего кластер и система управления этим кластером. Отдельные единицы кластера - это машины мягкого реального времени, они усредняют игровые события по игровым тактам и передают управление встроенному инрерпретатору скриптов под строгим контролем тактового генератора кластера. Скрипты не управляют ни временем своей жизни, ни даже собственными переменными, всё что им позволено - лишь нежно щупать движок за ограниченное количество предоставленных им функций. И у меня бы не повернулся язык сказать, что игра написана на питоне. Это бы подразумевало, что отдельные части игры запускаются как отдельные питоньи процессы. Я такого не видел. Я конечно могу ошибаться, и вполне возможно всё вышесказанное не касается конкретно EVE.
Я конечно, могу ошибаться,потому как не видел исходников сервера игры, но то что мне удалось в свое время узнать из статей или комментариев разработчиков про ЕВУ говорит как раз о том что там как раз отдельные части игры запускаются как отдельные питоньи процессы. Именно поэтому можно говорить что игра написана на питоне. А клиент у них и сейчас запускается как отдельные питонячий процес, в этом можно убедиться просто скачав этот самый клиент.
panama555
Теперь я на распутье.
То ли попробовать и всё-таки в питоне переделать программу для андроида,
то ли почитать JavaScript и попробовать разобраться.
А Java очень сильно отличается от питона?
FishHook
panama555
то ли почитать JavaScript и попробовать разобраться.
А Java очень сильно отличается от питона?
1) JavaScript и Java - очень сильно разные вещи
2) Сильно, но ИМХО лучше подходит для обучения программированию
panama555
1) Я имел ввиду “ JavaScript очень сильно отличается от питона?”
2) На чём лучше писать простые игра - Java или JavaScript?
FishHook
panama555
Я подозреваю, что игры писать у вас не получится в ближайшие пять лет
panama555
FishHook
Вы хотите сказать, что JavaScript намного сложнее питона?
doza_and
panama555
На чём лучше писать простые игра - Java или JavaScript?
Простые игры пишутся на С++/С.
А про не простые смотрите Unreal Engine, Unity, godot. И по сути язык написания это некий внутренний язык движка слегка похожий на некотороые из языков общего назначения.

panama555
Вы хотите сказать, что JavaScript намного сложнее питона?
На мой взгляд он хаотичнее. В нем при создании не заложили механизмов для написания больших приложений. Язык проще питона. Писать большое приложение на нем сложнее чем на питоне.
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