[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

[pygame] Pygame for Android



Hi. I'm the creator of the Ren'Py visual novel engine
(http://www.renpy.org), a tool for digital storytelling. Ren'Py has
been using Pygame since at least 2004.

For the past month or so, I've been porting Ren'Py to the Android
platform. A few days ago, I had the first success. This required
porting Python and Pygame to Android. (I used an existing port of SDL
to Android.) As I don't believe I've seen a port of Pygame to Android,
I thought it would be useful if I broke out the pygame support into its own
distribution.

The result is Pygame for Android, which can be downloaded from:

   http://www.renpy.org/android-test/pygame_for_android-1.0.zip

Despite the number in the URL, this is far from a 1.0 release, having
just begun testing. There is essentially nothing in the way of
documentation or error handling - I'm releasing this publicly just to
show that the project has begun.

It requires an Android 2.0 or higher device, with working OpenGL
support. To use it, unzip the zip file, install
PygameLauncher-debug.apk on your device, and copy the pygame/ directory
to the root of the device's sd card. Then run the launcher icon. After
showing the Pygame logo for a few seconds, a small test program is
loaded and run.

The test program can be changed by editing /pygame/main.py on the
sdcard. main.py is imported as a module, and then has its main
function called - so code should live in the main function. The
main.py file has a few comments in it.

The functionality included is largely selected by what I use in
Ren'Py. Most notably, the mixer module is not included - the
android_sound module uses the Android media player code, which
potentially might use hardware acceleration.

My eventual plan for this, apart from bug-fixes and documentation, is
to put together a launcher, that allows users to select from projects
that live on the SD card.

Again, this hasn't been tested on may devices - so feedback is
encouraged. I'll try to get the full source code up shortly.


The following modules are available in this release, although many of
them have not been tested thoroughly.

android
android_sound

pygame.base
pygame.bufferproxy
pygame.colordict
pygame.color
pygame.compat
pygame.constants
pygame.cursors
pygame.display
pygame.draw
pygame.event
pygame.fastevent
pygame.font
pygame.gfxdraw
pygame.imageext
pygame.image
pygame.__init__
pygame.joystick
pygame.key
pygame.locals
pygame.mask
pygame.mouse
pygame.overlay
pygame.rect
pygame.rwobject
pygame.sprite
pygame.surface
pygame.surflock
pygame.sysfont
pygame.time
pygame.transform
pygame.version

_abcoll
abc
aliases
array
ast
atexit
base64
bisect
binascii
calendar
cmath
codecs
collections
compileall
contextlib
copy
copy_reg
cStringIO
cPickle
datetime
difflib
dis
dummy_threading
dummy_thread
encodings.__init__
encodings.raw_unicode_escape
encodings.utf_8
encodings.zlib_codec
errno
fcntl
fnmatch
functools
__future__
genericpath
getopt
glob
gzip
hashlib
heapq
inspect
itertools
keyword
linecache
math
md5
opcode
optparse
os
operator
parser
pickle
platform
posix
posixpath
pprint
py_compile
pwd
Queue
random
repr
re
select
sets
shlex
shutil
site
socket
sre_compile
sre_constants
sre_parse
ssl
stat
StringIO
string
struct
subprocess
symbol
symtable
strop
tarfile
tempfile
textwrap
_threading_local
threading
time
tokenize
token
traceback
types
UserDict
warnings
weakref
webbrowser
zipfile
zipimport
zlib