[Pythonmac-SIG] Re: Mac Python User Newbies

Bob Ippolito bob at redivi.com
Sun Feb 13 22:51:35 CET 2005


On Feb 13, 2005, at 16:06, thor wrote:

>> Well, that is a good point. I suppose everyone will have a differing
>> opinion on that, particularly in terms of goals. For me, I'd like to
>> see a single package, which includes a GUI designer, script editor
>> with colorizing, debugger, interactive console, some sort of module
>> browser for functions and syntax, resource viewer, something similar
>> to package manager... and a basic set of modules for x-plat
>> development work. Then, some tool which helps to output the whole
>> thing as a runtime package.
>
> I wholly agree that this would be a utopian environment!
>
> As a Director user myself, I have gone through some of the same
> problems as you have.
>
> I wanted to make a cross platform software that used pyGame for drawing
> and wxPython for Menus and GUI buttons, etc. This is not possible as 
> wxPython
> does not support the pyGame thread. This is a big problem. No way of 
> drawing
> 2D in python and use wxPython.

wxWidgets and SDL are definitely not compatible on OS X, I think it 
might be possible (but probably problematic) to integrate them on other 
platforms.

pygame isn't really what you want for modern multimedia stuff.  It's 
kinda slow (especially on OS X), limited to simple pixel processing 
(blits mostly, no vector stuff, no real pixel effects, etc.), and it's 
painfully low level.  On the other hand, the stuff it *does* do, it 
does fairly well, and it does it everywhere in the same way.

w.r.t the slow comment, someone on the SDL mailing list is working on 
Altivec acceleration for SDL.. which is one of the reasons I have been 
putting off a new pygame build.  It will make worlds of difference in 
performance.  Unfortunately, the first patch he posted is incomplete, 
and it is not conditionally enabled (read: disables G3 support).  
Hopefully he finds the time to finish it soon!

> Solutions:
> - Do 2D stuff in OpenGL (quite awkward) as pyOpenGL works with wxPython
> - Don't use wxPython but native libraries on each of the 3 platforms I 
> want to write for.

OpenGL (and/or DirectX), directly or indirectly, is definitely the 
right way to do multimedia.  Cairo <http://cairographics.org/> is an 
interesting project that might make doing accelerated 2D programming 
much easier, and there are Python bindings 
<http://cairographics.org/pycairo>.  Personally I never had much of a 
problem abstracting OpenGL to do 2D stuff, but I didn't have a problem 
with the 3D stuff either.  It would definitely be useful if someone 
were to create a high-level library for multimedia using PyOpenGL.  I 
remember seeing a couple nascent projects in this arena, but I don't 
remember the names -- except for slithy 
<http://isotropic.org/uw/slithy/>, which is really something altogether 
different, but it may have all the bits you need.

> For this reason I am now using Java and I draw on a Canvas inside the
> Swing GUI elements and this is easily done and cross platform.
>
> I might be missing some solutions, but I tried for months and gave up.
>
> Python rocks and is extremely nice, the user community as well, but as 
> you
> say, a lot of the time (for me) has been wasted by trying to figure 
> out a workable
> environment for what I wanted to do without luck.

Unfortunately you picked a subject area that there isn't a lot of high 
level support for.  Most of the nuts and bolts are there, though.

> Multimedia in Python is problematic but possible (as the list will 
> assure you).

I would say raw, not problematic.  There are no real problems with it 
that I'm aware of, you're just not that much better off from an 
integration perspective than you would be in one of the C languages.

> good luck and thanks for bringing up those issues, it is by discussion
> that things progress.

It takes a lot more than just talk!

-bob



More information about the Pythonmac-SIG mailing list