Soya3D
Encyclopedia
Soya3D is a high-level Python
module for creating 3D
video games. Soya is free software
, licensed under the GPL
. As a multi-platform game engine, it is known to run under Linux
, Mac OS X
, and Microsoft Windows
.
Creator Jean-Baptiste "Jiba" Lamy describes Soya as a game engine focused on rapid development and ease of use. Its goal is to enable amateur developers to create sophisticated 3D games entirely in the Python language.
Computationally demanding components of Soya are written with Pyrex, which helps it to stay competitive in performance against more conventional game engines. The engine also relies heavily upon open-source libraries such as Cal3D
, OpenAL
, ODE
, among others.
The most recent stable version is 0.14.
PySoy Beta-1 was released in July 2007 http://www.pysoy.org/milestone/beta1 and development remains active with further releases.
Python (programming language)
Python is a general-purpose, high-level programming language whose design philosophy emphasizes code readability. Python claims to "[combine] remarkable power with very clear syntax", and its standard library is large and comprehensive...
module for creating 3D
3D computer graphics
3D computer graphics are graphics that use a three-dimensional representation of geometric data that is stored in the computer for the purposes of performing calculations and rendering 2D images...
video games. Soya is free software
Free software
Free software, software libre or libre software is software that can be used, studied, and modified without restriction, and which can be copied and redistributed in modified or unmodified form either without restriction, or with restrictions that only ensure that further recipients can also do...
, licensed under the GPL
GNU General Public License
The GNU General Public License is the most widely used free software license, originally written by Richard Stallman for the GNU Project....
. As a multi-platform game engine, it is known to run under Linux
Linux
Linux is a Unix-like computer operating system assembled under the model of free and open source software development and distribution. The defining component of any Linux system is the Linux kernel, an operating system kernel first released October 5, 1991 by Linus Torvalds...
, Mac OS X
Mac OS X
Mac OS X is a series of Unix-based operating systems and graphical user interfaces developed, marketed, and sold by Apple Inc. Since 2002, has been included with all new Macintosh computer systems...
, and Microsoft Windows
Microsoft Windows
Microsoft Windows is a series of operating systems produced by Microsoft.Microsoft introduced an operating environment named Windows on November 20, 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces . Microsoft Windows came to dominate the world's personal...
.
Creator Jean-Baptiste "Jiba" Lamy describes Soya as a game engine focused on rapid development and ease of use. Its goal is to enable amateur developers to create sophisticated 3D games entirely in the Python language.
Features and implementation
Soya3D aims to provide all that is needed to support a modern 3D game. Rendering, sound, input, physical simulation, and networking are all provided via simple Python interfaces. Soya is provided with a detailed - though incomplete - user guide which describes its architecture, operation, and interfaces. Also included are over sixty tutorial scripts which provide working examples of the engine's features.Computationally demanding components of Soya are written with Pyrex, which helps it to stay competitive in performance against more conventional game engines. The engine also relies heavily upon open-source libraries such as Cal3D
Cal3D
Cal3D is a skeletal animation based 3D character animation library written in C++ in a platform-/graphic API-independent way. Originally designed to be used in a 3D client for Worldforge, it evolved into a stand-alone product which can be used in many different kinds of projects...
, OpenAL
OpenAL
OpenAL is a cross-platform audio API. It is designed for efficient rendering of multichannel three dimensional positional audio. Its API style and conventions deliberately resemble those of OpenGL.- History :...
, ODE
Open Dynamics Engine
The Open Dynamics Engine is a physics engine in C/C++. Its two main components are a rigid body dynamics simulation engine and a collision detection engine...
, among others.
Version history
- Soya was originally a JavaJava (programming language)Java is a programming language originally developed by James Gosling at Sun Microsystems and released in 1995 as a core component of Sun Microsystems' Java platform. The language derives much of its syntax from C and C++ but has a simpler object model and fewer low-level facilities...
3d game system called Opale. Soya.
- 2003: The authors of Opale. Soya rewrote it in PythonPython (programming language)Python is a general-purpose, high-level programming language whose design philosophy emphasizes code readability. Python claims to "[combine] remarkable power with very clear syntax", and its standard library is large and comprehensive...
and CC (programming language)C is a general-purpose computer programming language developed between 1969 and 1973 by Dennis Ritchie at the Bell Telephone Laboratories for use with the Unix operating system.... - 2003: Opale. Soya renamed Soya3d with its version 0.3 release
- July, 12th 2004: Version 0.7 released as a complete rewrite in Pyrex
- October, 16th 2004: Version 0.8.1 release added Open Dynamics EngineOpen Dynamics EngineThe Open Dynamics Engine is a physics engine in C/C++. Its two main components are a rigid body dynamics simulation engine and a collision detection engine...
support - December, 12 2004: Version 0.9 released added support for Microsoft WindowsMicrosoft WindowsMicrosoft Windows is a series of operating systems produced by Microsoft.Microsoft introduced an operating environment named Windows on November 20, 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces . Microsoft Windows came to dominate the world's personal...
and Mac OS XMac OS XMac OS X is a series of Unix-based operating systems and graphical user interfaces developed, marketed, and sold by Apple Inc. Since 2002, has been included with all new Macintosh computer systems...
exporters for 3D Studio Max3D Studio MaxAutodesk 3ds Max, formerly 3D Studio MAX, is for making 3D animations. It was developed and produced by Autodesk Media and Entertainment. It has modeling capabilities, a flexible plugin architecture and can be used on the Microsoft Windows platform. It's frequently used by video game developers, TV...
and MayaMaya (software)Autodesk Maya , commonly shortened to Maya, is 3D computer graphics software that runs on Microsoft Windows, Mac OS and Linux, originally developed by Alias Systems Corporation and currently owned and developed by Autodesk, Inc. It is used to create interactive 3D applications, including video...
. - July, 9th 2005: Version 0.10, released including a new widget system called Pudding and support for Cal3d 0.10 (Soya previously used Cal3DCal3DCal3D is a skeletal animation based 3D character animation library written in C++ in a platform-/graphic API-independent way. Originally designed to be used in a 3D client for Worldforge, it evolved into a stand-alone product which can be used in many different kinds of projects...
0.9.2) - June 11, 2006 : Version 0.11 This release allows to use Cerealizer instead of cPickle. See on website for more information
- July 19, 2006 : Version 0.12 This new version proposes a new sound API, a new automatic system for optimizing static object
- January 24, 2007: Version 0.13 ODE integration, Blender exporter, BSP system (work in progress), bugfixes
The most recent stable version is 0.14.
PySoy
In June 2006, due to dissatisfaction with Lamy's leadership approach and technical decisions, some developers launched a fork of Soya3D called PySoy. http://arcriley.blogspot.com/2006/12/pysoy-historical-perspective.html The project promises a more inclusive, community-oriented development environment.PySoy Beta-1 was released in July 2007 http://www.pysoy.org/milestone/beta1 and development remains active with further releases.