PYGGEL - 0.075-alpha3b
PYGGEL (PYthon Graphical Game Engine and Libraries) is a 3d game development engine, written using Pygame/PyOpenGL.
PYGGEL has a large amount of features, geared towards making 3d game development as simple and quick as possible.
FPS and third-person cameras,
2d and 3d (billboarded) image loading and rendering,
OBJ mesh loading,
Collision detection objects (Vector, Sphere, AABox),
Simple Geometry rendering objects,
VertexArray and other speed optimizers,
and many more.
The engine is very young and alpha, but it is already possible to make simple games in it.
Included in this release is the game "Robocalypto", developed primarily by pymike, with help from me.
It is a FPS that is being developed lock-step with PYGGEL itself, as our main stress, feature and API tester.
To run, simply go into the Robocalypto directory in the pyggel install directory, and run "run_game.py" - it will automatically find pyggel one directory up...
Currently there is no documentation, as we are focusing on getting the engine to version 0.1 as soon as possible.
You can grab the source from the homepage, to keep up to date between releases as well.
Currently, I am currently the only core developer of PYGGEL itself, so, if anyone is interested in helping out with the project, please just leave a comment, or send an email to (roebros AT gmail DOT com).
You can take a look at the TODO page for the project here:
And a GoogleGroups discussion group here:
So if you are interested, just come on over :)
There were also some unfixable bugs with some things that required slight API modifications, and a couple new features.
* Added get_mouse_pos2d method to view.screen
* Updated Tutorials
* Speed optimizations
* Fixed bug where geometry.Cube objects were too big
* Misc other bugfixes
* Changed Quads and Planes so they act as you would expect, instead of like a cube with the rest of the faces invisible.
* Removed deprecation of texture flipping arg for Textures - as OBJ files (and other things) require it.
* Updated test_safe function so kwargs work correctly.
* Changed Font3D fsize arg to size, to match other fonts.
* Made Radio/MultiChoiceRadio? widgets "change" event return current state of all options.
* Replaced old pick method of scenes, now the render method returns any picked objects.
* Updated randfloat so you can specify how many digits to the right of the decimal point to use.
* Added a function to math3d that calculates the lighting normals for triangles.
Pygame.org account Comments
Mr.Mr 2013-04-19 00:04:39
Reminds me of metroid prime. But... THE BEST ENGINE EVER!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Minecraftjien 2014-05-03 09:20:43
Nice ... Can u make blocks like minecraft ?
Matt Roe 2014-10-05 00:17:05
You could yes, am thinking of updating this since I haven't touched it in years.
Tim Hartmann 2014-12-14 22:42:43
Please do! I don't think there is anything like it for python.
Matt Roe 2015-01-22 00:34:14
I have had 3 or 4 people interested in this lately.
Sadly the entire engine is way behind the times, still using display lists and static OBJ models for the vast majority of things.
I've been kicking around starting to make games (and engines, more importantly) again (even doing a weekly video series called "Let's Make a Game") - and I think I will be rebooting PYGGEL now. I am quite busy with work so no promises on when it will come, and I'll need to either brush up on my OpenGL, or get some other people who know how to do some of the more modern things, but I hope to get it going soon.
Ramius Antillies 2015-03-03 21:34:58
Please do! I could have use of this too. Not many openGL Pygame libraries to begin with.