WHAT IS SOYA 3D ?
Soya 3D is an object oriented "high level" 3D engine for Python. Somehow, Soya is to 3D what Python is to programming. Soya allows to develop very rapidly games of other 3D apps, entirely in the Python language (contrary to most of the other engine, in which Python is limited to scripting tasks). Moreover, Soya is easy to learn and offers pretty good performances.
Soya offers the features one can expect from a 3D engine, like basic scene management, cell-shading, shadows, particles systems,... as well as some unique features aiming at making 3D development easier and more rapid :
* Soya takes care of coordinate system conversion automatically
* Soya imports Blender models automatically
* Soya automatically regulate the rendering speed by modifying the animation quality
* Soya is able to determine automatically which objects are static, and to optimize their rendering (work in progress)
* Soya's object, including the ones you may create using inheritance, can be saved without writing additional code, using serialization (Pickle or Cerealizer)
Soya 3D has been successfully used in the games Slune, Balazar and Balazar Brothers, as well as in scientific simulations, teaching,...
WHAT'S NEW ?
The 0.11.x release adds support for Cerealizer (a secure Pickle-like module, useful e.g. for network games), a listbox component for the widget system, and adds handy aliases to rotation methods.
Finally, there are several bugfixes on shadows, cellshading and raypicking on animated models.
Get Soya here:
(BTW, http://soya3d.org has NEVER be the Soya 3D "official" page; it is owned by a guy that forked Soya, and now uses it to discredits the project. Please don't use this URL)
webstring is a template system designed for programmers whose preferred
template languages are Python and HTML (and XML for people that swing
Highlights of 0.3 include:
- an HTMLTemplate class for taking questionable HTML and outputting it
as correct XHTML 1.0, XHTML 1.1, or HTML 4.0
- better support for integrating string.Template and Python string
formatting so they can be used to format XML/HTML element and attribute
- better batch templating
- support for pickling webstring's Template objects
- more tests including doctests
- removal of unit tests from the main module
- support for elementtree as an XML processing backend
- speed enhancements
- code changes to increase ease of use
- more documentation and examples
Changelog is available here:
The webstring module is available for download at:
More information on webstring including documentation and a tutorial
can be found at:
Hi all. Don't forget tomorrow's ZPUG meeting. If you plan to
attend, an email to me tonight or tomorrow morning would be
appreciated, but is not necessary.
- Chris McDonough will talk about meld3, a Python HTML/XML templating
system in the spirit of PyMeld and other 'push-based' templating
- Tres Seaver will present "Using memcached in Python and Zope",
including a demo of using his 'mcdutils' product to do shared session
management in Zope.
- good snacks.
The deadline for submitting a talk or tutorial for the Vancouver Python
Workshop is fast approaching. Talks will be accepted until Friday June
To submit a talk, see:
About the Vancouver Python Workshop
The conference will begin with keynote addresses on August 4st by Guido
van Rossum , Jim Hugunin , and Ian Cavén . Further talks (and
tutorials for beginners) will take place on August 5th and 6th. The
Vancouver Python Workshop is a community organized and designed for both
the beginner and for the experienced Python programmer with:
* tutorials for beginning programmers
* advanced lectures for Python experts
* case studies of Python in action
* after-hours social events
* informative keynote speakers
* tracks on multimedia, Web development, education and more
More information see: http://www.vanpyz.org/conference/
or contact Brian Quinlan at: brian(a)sweetapp.com
In addition to the opportunity to learn and socialize with fellow
Pythonistas, the Vancouver Python Workshop also gives visitors the
opportunity to visit one of the most extraordinary cities in the world
. For more information about traveling to Vancouver, see:
Talk proposals accepted: May 15th to June 15th
Early registration (discounted): May 22nd to June 30th
Normal registration: from July 1st
Keynotes: August 4th
Conference and tutorial dates: August 5th and 6th
 Guido van Rossum (Google) is the inventor of Python and has managed
its growth and development for more than a decade. Guido was
awarded the Free Software Foundation Award in 2002 and Dr.Dobb's
1999 Excellence in Programming Award. Guido works at Google and
spends half of his time on Python.
 Jim Hugunin (Microsoft) is the creator of numerous innovations that
take Python into new application domains. Jim's most recent project,
IronPython integrates Python into Microsoft's .NET runtime. Jim's
previous project, Jython is Python for the Java runtime and was the
second production-quality implementation of Python. Before that,
Jim's Numeric Python adapted Python to the needs of number crunching
applications. Jim works at Microsoft adapting the .NET runtime to
the needs of dynamic languages like Python.
 Ian Cavén is the primary developer of the Lowry Digital Images
motion picture restoration system. This Python and Zope-based system
has been used to restore over 150 motion pictures. Highlights
include Citizen Kane, Sunset Boulevard and both the Indiana Jones
and Star Wars trilogies. While Ian was Chief Scientist at Lowry
Digital, his rack of computers grew from a few Macintoshes on his
desktop to over six hundred Macintosh and Linux servers - at
one point earning Lowry the title as the second biggest installation
of parallel processing Maintoshes in the world. In 2005, Lowry
Digital Images was acquired by DTS (the famous movie audio company)
and renamed DTS Digital Images. The motion picture restoration
system has been discussed in publications as diverse as IEEE
Spectrum, USA Today, the BBC NEWS, the New York Times and Apple.com.
Ian has been a Python enthusiast since 1999.
Create a game in 64kbytes of source code using only pygame. No additional
libraries, no external files (even ones loaded from a network). That means no
PyOpenGL, no PNGs, no OGGs.
Start as soon as you read this announcement.
Human-readable, Linux-compatible entries must be received by
richard(a)pyweek.org before midnight on the 25th of June, 2006. That's
Australian Eastern Standard Time, which is UTC +10.
Multiple entries are allowed. Teams are allowed. Monkeys are allowed! Ponies,
sadly, are not allowed.
All entries will be posted to a page on the http://www.pyweek.org/ website.
Entry gameplay instructions and license must be included in the source or in
the game itself.
I will probably choose one of the entries as my favourite, and declare this in
various obscure fora and private email messages. No other mention of rankings
or favourites will be made.
Thanks to Phil Hassey for the challenge inspiration!
Visit the PyWeek website:
RERP (Robot Exclusion Rules Parser) is an alternative to Python's
standard robotparser module. I was motivated to write this because the
Python's robotparser doesn't gracefully handle non-ASCII which occurs in
about .1% of robots.txt files. This module (RERP) handles non-ASCII and
also adds a few other niceties (like the ability to customize the
user-agent string sent when fetching a robots.txt file).
The code, documentation, background, discussion of the specs and
examples are all here:
Bulk HTML validation, link checking and more
Metavolv.py is a computer program that searches for a better set of
parameters for some other program, which we call the target program. The
target program determines what "better" means, and it writes a merit
value to the screen. The parameters appear in a configuration file for
the target program. Although metavolv.py is written in Python, the target
program can be any executable file that meets two conditions: It must
read a configuration file to get values for parameters, and it must
eventually write a result to the screen. Metavolv will repeatedly execute
the target program, each time re-writing the configuration file with new
parameter values. Metavolv.py will use two other Python files, modify.py
and editThis.py. The three files together comprise the program. Metavolv
is primarily designed for stochastic target programs, and also for those
that require significant execution time. For such programs we cannot be
sure of finding a global optimum in a reasonable time span; we are
primarily interested in improving the set of parameters that we start
with. Hence we are primarily attempting to move toward a local optimum.
The Metavolv package, with thorough documentation, is a free download
from the URL below.
I'm proud of http://ANNEvolve.sourceforge.net. If you want to write software,
or articles, or do testing or research for ANNEvolve, let me know.
Humans may know that my email address is: (but remove the 3 digit number)
zenguy at shaw666 dot ca