[Edu-sig] The fate of vpython

Dethe Elza delza at livingcode.org
Mon Oct 9 19:54:53 CEST 2006


I agree with John, and will make a stronger statement that C++ and  
Boost are part of the problem, not part of the solution as far as  
future development of VPython goes.  I don't at this point have time  
to work on VPython (I've tried to get the V4 betas to compile on OS  
X, but they aren't even close, even with all the prerequisite  
libraries installed).  So I'm following this discussion with interest  
(both here on edu-sig and over on the vpython list).

I have two hopes for the future of VPython.  One is a more python- 
based extension mechanism, using Ctypes or Pyrex, possibly based on  
ctypes-PyOpenGL.  The problem with this is that Mike Fletcher, who is  
doing the ctypes-PyOpenGL work, says that initially the ctypes branch  
will be slower than the existing PyOpenGL (but easier to maintain,  
and eventually may be faster).  Jonathan Brandemeyer, the most recent  
maintainer of VPython, said that he did make some attempts to use  
PyOpenGL but found it to be too slow for VPython.  That's why I think  
Pyrex might be the way to go--it looks mostly like Python code, but  
lets you call C code inline to make more optomized calls into the  
OpenGL infrastructure.

My other hope for VPython would be to build it on a more capable 3D  
system, such as Ogre or Panda3D (Mike Fletcher keeps a large list of  
such systems: http://www.vrplumber.com/py3d.py).  In this scenario,  
VPython would be an easier entry point into one of these more capable  
(and correspondingly more complex) systems, an Ogre-lite so to  
speak.  This would create a new dependency on an external library,  
which is bad, but may give VPython better evolutionary legs, which  
would be good.  My measure of how likely this scenario is, is based  
on having one of the scenegraph tools Just Work for the three main  
platforms (Windows, Linux, OS X), and that hasn't happened yet.

There is so much of interest going on in the 3D world right now, with  
good working systems finally available for X3D[1], open-source tools  
to build 3D avatars for Second Life[2], machinima systems[3], and  
tools like Google SketchUp[4] making 3D accessible to anyone who is  
interested.  It is sad to see VPython atrophy right now, but I'm sure  
that the ideas in it will find a home somewhere, whether the code  
does or not.

[1] http://www.web3d.org/
[2] http://www.avimator.com/
[3] http://orange.blender.org/

--Dethe

On 9-Oct-06, at 10:16 AM, Arthur Siegel wrote:

> On Mon, 2006-10-09 at 11:48 -0500, John Zelle wrote:
>> I am also very concerned about this situation, as I think VPython  
>> is a
>> wonderful tool (to which I've contributed).
>
> Hi John -
>
> Thanks for that concern.
>
> If you are following the vpython list you see that I am digging  
> into the
> immediate issues.  I have no C++ skills to have atrophied, but - as I
> said there  - getting an understanding of building Python  
> extensions has
> been on my agenda and something concrete to dig into helps, so that  
> I am
> having some fun with it.
>
> But I agree that for all the simplicity on the surface, there is more
> complexity underneath than one would hope for. It had Dethe, for
> example, throwing up his hands in trying a port to native Mac.
>
> The project funding is over, so that only volunteer resources are
> available to salvage it.
>
> I agree with you that more radical strategy than following the current
> path is probably necessary.
>
> Py-OpenGL is itself moving to a ctypes implementation, and ctypes  
> is now
> in the core Python distribution.
>
> Slight problem being that I have no understanding of what that means.
> Intuition is that the best solution might be there, someplace.
>
> Meantime I am getting more familiar with the current C++ code, so  
> that I
> should be in a position to contribute to a re-implementation, given a
> strategy to do so.
>
> But it is OTOH scary that as to the vpython list, I seem to be the  
> guru
> at the moment, since I certainly don't consider myself qualified to
> think this through without folks with more low-level skills.
>
> I am holding off to going the scipy list with things until I at least
> can talk with some measure of intelligence - but I am still thinking
> that is where the best hope might be.
>
> Art
>
>
>
> _______________________________________________
> Edu-sig mailing list
> Edu-sig at python.org
> http://mail.python.org/mailman/listinfo/edu-sig


There are two ways of constructing a software design.  One way is to  
make it so simple there are obviously no deficiencies and the other  
way is to make it so complicated that there are no obvious  
deficiencies.  --C.A.R. Hoare




More information about the Edu-sig mailing list