[Edu-sig] The fate of vpython
Dethe Elza
delza at livingcode.org
Tue Oct 10 18:26:42 CEST 2006
Dave wrote:
>> Just curious, is PyOpenGL easy to install for both Mac and
>> Windows? I know
>> it's dead simple on most Linux distributions. I think it's pretty
>> easy for
>> Windows, but have no experience at all on the Mac.
>
> Someone has made binaries for it (and a number of other Python add-
> ons) at:
>
> http://pythonmac.org/packages/py24-fat/index.html
Which makes it as easy to install on OS X as on Windows. Building it
from source can be troublesome, but is far more tractable in my
experience than VPython.
Art wrote:
> Assuming that PyOpenGL *is* easy to install, we come back to the same
> question - an OpenGL windowing context, be it pygame, be it wxWindows,
> be it togl, be it gtkgl, be it whatever one does on Mac. PyOpenGL
> provides the functionality, given a windowing context, not the
> windowing
> context.
One problem with VPython is that it lives in a world all its own,
unlike most Python libraries. PyOpenGL provides contexts for PyGame,
for wx, and others (don't remember the whole list off-hand). If
VPython (or VPython-lite) were built on PyOpenGL it would inherit all
of these abilities.
> And since much of the cross-platform complexity of vpython is on the
> windowing context issue, I see that solving that issue for vpython
> is a
> more direct approach to solving the problem. But again, to me vpython
> begins to lose its charm if we have to assume wxPython installed, or
> pygame installed, or Panda3d installed.
Well, there's assuming and there's assuring. A binary installer for
VPython could simply make sure the necessary dependencies are
installed. A setuptools-based build chain could do the same.
> Togl across platforms???
The last time someone (Joe Heafner) tried to tackle this on the
VPython list, Bruce Sherwood replied:
> The fundamental issue has been discussed previously. Someone with Mac
> experience needs to write a small module to create a window and handle
> mouse and keyboard interactions. We have such modules for Windows and
> for Linux/Unix (alas, OpenGL doesn't provide this functionality).
> In the
> absence of this native-mode window/interaction module, we have to limp
> along using the Unix version, which means using X11.
Since that is exactly what GLUT provides, and GLUT is available for
every port of OpenGL that I'm aware of, I don't even know where to
begin with such a comment.
The other issue with VPython portability is threading. Instead of
using Posix threads on Linux (which would *just work* on OS X), they
pull in the gnome libraries for threading, adding an unneccesary
dependency (in my opinion). GLUT alone doesn't really help with
that, but it could be a (huge) step in the right direction.
--Dethe
"Why is Virtual Reality always posited in terms of space, when time
is the only real commodity left?" --Rich Gold
More information about the Edu-sig
mailing list