답변:
파이썬은 그 자체로 이식성이 뛰어나지 만 (많은 플랫폼에서 실행 됨) 다음을 고려해야합니다.
대상으로하는 플랫폼의 한계는 무엇입니까? 모바일 상점을 통해 판매 하시겠습니까?
예를 들어 WP7 마켓 플레이스는 관리 코드 (.NET)로 작성된 앱만 판매 할 수 있습니다. AppStore도 꽤 잠겨 있으며 Objective-C로 작성된 기본 응용 프로그램 만 허용합니다. Android는 NDK를 통해 Java 및 원시 코드를 모두 실행할 수 있습니다. 사람들은 iOS의 기본 앱에서 JavaScript를 실행 하거나 웹 앱을 기본 앱으로 변환 할 수있는 해결 방법을 개발 했습니다.
사용하려는 라이브러리는 얼마나 이식성이 좋습니까?
예를 들면 다음과 같습니다. Cocos2D 는 Objective-C 포트가있는 Python 라이브러리입니다. 데스크톱 플랫폼 용 Python으로 게임을 빌드하고 Objective-C로 다시 작성하여 라이브러리 덕분에 대부분의 구조를 유지할 수 있습니다. 그러나 데스크톱 + iOS 만 지원합니다.
전반적으로 파이썬은 지원이 부족하기 때문에 모바일 플랫폼에 적합하지 않습니다. 다음 세 가지 실행 가능한 대안이 있습니다.
XNA 는 Windows, Xbox 360 및 Windows Phone 7 용 게임을 만들기 위해 만들어졌습니다.거의 수정하지 않고 해당 게임을 iOS 앱 (MonoTouch를 통해), Android 앱 (MonoDroid를 통해)으로 바꿀 수있는 두 가지 프로젝트 ( MonoGame 및 ExEn )가 있습니다. ). MonoTouch와 MonoDroid는 라이센스 비용 이 있습니다.
Unity 는 이식성이 뛰어나 거의 모든 플랫폼을 대상으로 할 수 있습니다 ( 아직 Linux 지원은 없지만 )
데스크톱 게임에서는 무료입니다. 그들은 Pro 버전을 가지고 있지만 대부분의 게임에서는 그것 없이도 잘 할 수 있습니다. 각 플랫폼에 대한 다양한 버전을 비교 한 차트가 있습니다. http://unity3d.com/unity/licenses
Canvas 2D API 또는 WebGL이 포함 된 웹 응용 프로그램 (소위 HTML5)은 최신 브라우저 및 스마트 폰에서 실행됩니다. 지원은 시간이 지남에 따라 더 나아질 것입니다. 앞서 언급 한 ImpactJS 또는 Three.JS와 같은 3D 물건 제작을위한 많은 엔진이 있습니다.
PyGame 은 정보 페이지 에서 다음과 같이 말합니다 .
진정한 휴대용. Linux (파이 게임은 대부분의 주요 리눅스 배포판과 함께 제공), Windows (95, 98, ME, 2000, XP, Vista, 64 비트 Windows 등), Windows CE, BeOS, MacOS, Mac OS X, FreeBSD, NetBSD, OpenBSD, BSD / OS, Solaris, IRIX 및 QNX. 이 코드에는 AmigaOS, Dreamcast, Atari, AIX, OSF / Tru64, RISC OS, SymbianOS 및 OS / 2에 대한 지원이 포함되어 있지만 공식적으로 지원되지는 않습니다. 휴대용 장치, 게임 콘솔 및 OLPC (One Laptop Per Child) 컴퓨터에서 사용할 수 있습니다.
파이썬 자체는 이식성이 뛰어나고 새로운 플랫폼으로 포팅하기에 충분히 쉽다 (아직 누군가가 당신을 위해 그것을하지 않았다고 가정). PyGame이 사용자가보고있는 플랫폼을 지원하거나 포팅 할 수있는 플랫폼 특정 비트에 액세스해야 할 때마다 "흥미로운"상황이 발생합니다.
반 관련 문제는 일부 배포 방법 (앱 스토어)에서 알 수없는 타사 코드를 실행할 수있는 응용 프로그램을 허용하지 않을 수 있다는 것입니다. 파이썬과 그 스크립트를 잠 가야 응용 프로그램 외부의 어떤 것에도 액세스 할 수 없으며 게임의 일부로 제공하지 않은 스크립트를 실행하지 못하게 할 수 있습니다.