The Panda Development Group
Windows, Linux, Mac OS X, SunOS
Languages Written In:
- User Reviews
Panda3D is a game engine, a framework for 3D rendering and game development for Python and C++ programs. Panda3D is Open Source and free for any purpose, including commercial ventures, thanks to its liberal license.
- Object-Oriented Design
- Support for ARtoolkit
- Development in C++ or Python
- Web plugin for deployment over the web
- "all-into-one" application packaging system
- Wide range of user-provided features and examples (PhysX integration, AI, GUI, particle system etc.)
- Stereo Rendering
- GUI Rendering for red/cyan stereo glasses
- Particle System
- Motion Blur
- Fog Post-effects (bloom, blur, volumetric lighting, cartoon look etc.)
- Volumetric A variety of lights that work by vertex lighting
- Animated textures
- Support for video textures (AVI, MPG, MOV)
- Pointer textures (direct access to graphics card memory)
- 3D textures
- High Level
- Support Cg
- GLSL support
- Shader generator for basic shaders and combinations (bump, parallax, specular etc.)
- Mesh Loading
- Supports 3D Studio Max, Maya, and blender models via plug-ins.
- Low-level mesh manipulation
- Skeletal Animation Soft skin animation and a sophisticated actor interface for character animation
- Generate terrain meshes from heighfields.
Several options for physics simulation:
- Built-in simple physics engine
- Support for the Bullet physics engine
- Support for the ODE physics engine
- Support for the PhysX physics engine
- Client-Server a networking library and a mmo-grade patching system
Simple AI library "PandaAI" included:
- Steering behaviors: Seek, Flee, Pursue, Evade, Wander, Flock, Obstacle Avoidance, Path Following
- Path Finding
- Navigation Mesh generator for EGG files
Several options for adding sounds to your game:
- Support for the OpenAL audio engine
- Support for the FMOD audio engine
- Support for the Miles audio engine
- Direct tools for GUI-based scene editing
- Particle effects API and GUI-based particle panel
- Future plans: An easy to use but powerful and generic scene/level editing tool
Panda3D comes with a set of tools for the creation of a graphical interface:
- Native DirectGUI system
- Support for the libRocket GUI library
- Python scripting interface
- Programming on the fly using interactive scripting in the Python shell
|License Name||Price in $US||Source Code Included?||Additional information|
A perfect engine
I tried many other engines, and this was my choice.
First point: it's an *engine*. If you want to commit yourself on the game aspects (and not on the lower - technical - ones), this is the best choice, because it provides all the tools you need.
It isn't a subsystem, a middleware, it gives you all the stuff. Many other "engines" gives you only subsystems, so you need to code all the remaing stuff yourself.
It offers 3d and 2d graphics, shaders support, GUI, postprocessing effects, terrains, particles, multithreading, physics, networking, audio, AI, and many tools for performance tuning. It has very important tools for profiling (this is fundamental for serious projects), and other tools such as model viewers, editors (particles, level editor, ...).
The engine is very fast (the core is developed in C++) and also the developing of games is very fast (you can develop in Python, so you can script games). However, if you are C++ programmers, C++ support for the "client side" is there, and they're removing the gap between C++ and Python as "client" languages (without lowering Python support).
A very important feature is that you can deploy your games with their browser plugin, so you can also reach web users. And it also provides tools to build installers - so you can easily deploy your games (this is very useful because make games that run on many system is very difficult).
The engine is also going to be more modern: if you check on their project site they are going to support newer releases of DirectX and OpenGL.
It supports a smooth pipeline to import your assets into the engine.
The documentation is great: it's well-structured and cover all the aspects you need to know. If the documentation is not sufficient, there is a wonderful community support.
Great Engine, Very Easy to Use
Python is a fantastic language, and this is a fantastic game engine to complement it. It is incredibly simple to use, and beginners with basic Python knowledge should have no trouble accomplishing a lot in very little time. Add to that the fact that it's actively maintained by Carnegie Mellon University (as opposed to a team of a dozen guys that could theoretically get a new job/get sick/die/lose interest/etc. at any moment), and is being used by Disney, so there is virtually no chance that development will stop at any time in the near future.
excellent for both experts and start-ups
I've read about most engines featured here as well as in other directories.
I've installed about 10 engines, both paid and free.
For now I've stopped at Panda, and it's probably a good call. Time is to tell.
If you are a hobyst programmer with some experience in any language, if you want to get started with the inner-workings of a game-engine and focus on design and concept rather than selling a mmortspg opera, if you want to see results in the first day of effort and be able to have a game prototype done in less than a week, then Panda3D is for you.
Also, Panda is a great opportunity to learn python, a thing I always planned but never got to it.
If you are looking for features, be advised that Panda3d has a HUGE list of additional features that are not featured on their website. To name a couple: integrated AI library, support for 3D goggles.
Panda 3D from a beginner
I have only recently started looking at programming. I am a 3D artist, and using Blender as my modeling suite, I naturally gravitated towards Python. When I found Panda 3D, I was instantly interested. As I learned to program, I found the manual, and the forum both were extremely beneficial. The community is probably the one feature that made Panda stand out to me. They really helped, and are all very active in the development scene. Panda is a great tool for game design, that just takes a little more effort to learn. I guess it pays off, the learning, in the freedom it allows you.
Thank you ,
I have some friends in professional game industry, and I have seen bunch of game engines, and i have seen how hard is to code with most of them.
I tried a lot of game engines, they were all good and powerful, but they were also a bit hard to use.
Now that i think about how i wrestled with other engines, something came to my mind. Panda3D does not get in your way. I used for quite some time, and i was never in need of doing workaround for anything.
Panda is so easy to use that even an unexperienced kid could get up with it really fast.
More features are being added all the time, and support is really awesome, user community is very friendly and helpful.
Good learning tool, with real life power
I have tried a number of free, as well as having bought game engines in the past. Surprisingly the commercial engine was less complete than the free ones.
Panda3D, however, has been the easiest to learn and implement. Supporting python also makes it easier to work with.
The documentation has a few holes in it, but the forum support is absolutely unparalleled. Questions and answers in the forum frequently feel like a chat discussion with the speed of the reply.
Networking excellent, multi-player support is strong, fast rendering, physics engine, great support of zones-of-interest, the list goes on...
About the only missing thing I have seen is a "level editor", however, there is a blender plug-in that makes exporting objects and scenes from blender into Panda3D's .egg file format very easy to do.
I have abandoned the commercial engine I bought in favor of Panda3D!
I have been a coder for years but have always done Rich Internet Applications so when i decided to make a game i looked into a lot of engines and hands down this one was the best i especially liked the python coding part of it because i knew i was going to have to learn a new coding language no matter what but it only took me a week to learn python where as im sure if i was trying to use something else i would still be trying to learn C++ or Java
In a 3 months of using this engine I realized it's extremely easy to make small and fast games.Now I'm using it to do a real big game and I know it will make wonderful work for me. It's so easy to write game especially with the support of Python
Panda3D nice and easy
well documented, having disney and Carnegie Mellon's Entertainment Technology Center as developer, used by disney to produce Commercial game (ToonTown and Pirates of the Caribbean Online), great community, use both python(primary) and c++.
This game engine is the easiest to use ive ever seen. You can make a little game in a day from start on if you speak some python and read the manual.
Its very well designed, stable and gives you all the power of python with 'batteries included' (look on python.org if you don't know what that means) and an engine written in c++.
One further good thing is: You have to download just one self-installer and you can start right over. All dependencies are included and you need to do nothing but viewing the samples and start coding your applications.
Panda3D includes very usefools tools: packpanda to make an installer for your game in 5 minutes, pview to view your models, good exporter for blender and maya (and a good converter from the x-format) besides supporting some other formats without animation, pstats that shows you real-time how your application performs and more!
The community is real good too. You get fast answers in the forums or you will find almost all your answers with the search-function. There even are free video courses to download.
I cant say more: This engine rocks.
Edit: Im writing about Panda3D 1.5.0.
exactly what I spent two weeks looking for..
I spent two weeks digging around for a 3d engine to fit my exact needs and this is the engine that I finally settled on..
I wrote a review of my process and how I settled on this engine.
gave support a 4 because there are some issues some people have had with linux and mac that are issues still.
following is my review I posted on my blog at blog.peoplesdns.com but will repost it here.
I have a somewhat simple idea I want to make into a game. I ‘know’ that I can do it in PHP with a mix of css/ajax/json tied together with JQuery but I would like it to be something that I do not have to maintain as heavily as a browser app where I need to worry about various browsers and what might be coming along in the next incarnation of Firefox or the dreaded IE (which has been a horrendous thorn in my side on every web project I have ever built). I decided that I should look into a game engine for speed and OMG I entered a whole new world of hobby projects, half-baked ideas, expensive solutions, HUGE specialty engines, paid as your go solutions shamelessly pandered like a vanity press (Torque) and then the do-it-yourself engines.
After reading reviews and actually looking through a WHOLE slough of these various engines I came to the conclusion that like everything else there are ‘tools for the job’ and you need to pick the right tool for the exact job at hand while maintaining flexibility for things that you may need to do later and for growth. It is also helpful to work with languages and tools you currently know and enjoy working with. So I came up with some basics for what I need for my project because picking a game engine is perhaps one of the single most important parts of coding a game.
1. Cross platform - windows/linux/mac in that order of preference with at least win/linux
2. scriptable - Lua/Squirrel or Python bindings with good network support
3. large and active community - Busy forums that are helpful where people share code (I personally like to share code when I solve a particularly vexing problem)
4. ability to handle 3d - but NOT specifically a FPS engine (this was a major issue with a lot of the engines I looked at), I am much more interested in third person and or 3d/iso’ish with bounded-selects for my particular game.
5. Free or very cheap - Why on earth would I want to pay a lot of money for something that I would then be limited in my ability to share my enhancements with the community later? (especially when this is a small project with one coder) There are many other ways to make money on software.. Host servers for games, write books, paid support contracts etc.
6. Speed of use and decent learning curve - I do not want to spend a year learning some crazy API or some language some developers made up to create their own games.
7. No click and drag / piecemeal engines - I.E. If an engine states that you just need to click together parts and then fill in some info to create your game I get really suspicious.
8. Customizable - Why would I want my game to look just like someone else’s game and have reviews go “Oh this game is just like ___ but acts sort of like ___ don’t bother because you have seen it all before”
Once I started comparing a lot of the engines to my list they dropped off like flies. So in the end, because of my particular needs and want of simplicity, I was left with OGRE3d and Irrlicht, both of which fit the bill nicely and are well documented and used render engines that are not specifically boxed into one corner or another or limited by insane design schemes and/or unusable for my purposes. While being somewhat simple (Irrlicht is dead simple and I would highly recommend for hacking out quick 3d visualizations). Both engines are specifically for C++, which is all good but after taking a nice close look at my projects needs, and the fact that it really is not that complex graphically, working with optimized C++ is really not a big need as I am thinking I might have at most 20 characters/models on my screen at the most and the rest will interface changes that are done via network. Having to comb through the myriad of C++ libraries that I am only passingly familiar with and having to learn their syntax, quirks and funky compile issues all while ‘also’ learning a render engine left me with a foul taste in my mouth. However I pressed on and started to brush up on my C++ (which I have not used Visual C++ or Code::Blocks in a very long time and both these have changed dramatically since my last foray into C++). Then, I ran across something interesting while perusing the OGRE wiki.
PyOgre is a python binding to Ogre and I started looking into it and thought to myself “hey, I know python and I know a lot of the libraries as well.. this could speed up my development time.. hrm”. PyOgre bindings hook directly into the Ogre libs and Python runs anywhere. This might actually fit the bill, it easily fits into my list of needs and is lightweight enough and has a very good learning curve for me. So to be thorough off I went to the python game resources on the python site and I decided to look into the other engines that are out there for python that may been an even better fit for my particular needs. Most of these are HIGHLY specialized libs for doing things like math visualization or specific bindings to other engines I had already thrown out. Then while combing through the list I found ONE engine (unfortunately) named Panda3D (also see the wikipedia article) (it rises above it’s cheeseball name upon inspection) that seems like a decent fit and I am now in early stage playing around with it. So far I have found sample code for almost all the elements of the game I want to create and it appears to have the full features of other engines as well, though I would not be locked into having to deal with more than I want and can easily crank out a server app using stackless python (which on a low end box could handle many more clients than I could probably find for my game)
So finally at the end of two weeks of downloading, compiling and trying out engines, attempting to interact with the various communities and ducking shyster companies that want to nickel and dime every naive, hobby or wanna-be game maker (which by the way I find deplorable as some companies could actually be discouraging a lot of potential talent from actually creating their games by doing this, thus hurting the industry as a whole) *cough* Torque *cough* I have found that I came full circle back to python (pygame was the first engine I worked on the initial stages of this idea, that was three years ago) and ended up blending some preconceptions I naively had about game engines.
I am left with a choice between two engines that are different but fit the bill.
On one hand I have the very open ended and extensible OGRE via PyOGRE which it easy enough to be up and running with and on the other I have Panda 3d which already has many of the Pathfinding, audio, animation and import modules I need but I could extend it out quickly (and if I want can also program in C++ for parts or all of it)
In a straight comparison to be up and running quickly I am leaning towards Panda3d but I am still doing a little research into PyOGRE. Hopefully my next post I will plop some code and screen shots in here.
In the meantime, I hope this post saves someone some time their search for an engine for a game that is NOT an FPS (sorry they all look the same to me now, and are boring) but it not some 2d 1990 nintendo looking mess.
If you looking to build an RTS (real time strategy) or simulation style game (think ISO’ish) I would recommend you look into what Python has to offer.
This is a great engine. The community is extremely helpful when you are just starting out. Panda3d uses python making it an extremely powerful and flexable engine. Panda3d was used in the Disney games: ToonTown, Pirates of the Caribbean online. Both online games, with decent graphics, but this isn't the limit of the power. It may require a little python scripting but its really easy to learn. You'll be started making your own games, in a very short time.
Best engine I ever worked with.
All I can say is WOW.
I have never seen anything like this in an engine, the stability, the ease of use, the performance, and how rapidly you can program a game.
I am new to programming in python for other than mathematical purposes, and yet I find it easier than Java which I used almost a year on learning.
Don't let the name fool you! Install panda3d and use it for an hour to try the examples and program something yourself, I PROMISE you that you will get that time back in time of development.
Panda3d has matured lot since the first reviews, and now it has tons of amazing features to offer.
Panda is the most Completo engine I ever seen, it completely takes care of rendering so you don't have to know how or when it uses OpenGL, Directx, etc, though it gives you the flexibility to alter any aspect.
Panda3d should be one of the 1st engine considerd
I would recommend using http://panda3d.org ( don't get fooled by the childish look of their site)
and really really like it :) Why would some one not want to use it?
Its a 3d engine that was made to be scripted with python 1st and lots of parts are python only. While c++ support is there to write extensions for more speed!
It has 2 games written in it Toon Town and Pirates of The Caribbean. Unfortunately it is stuck with an odd license ( http://panda3d.org/phpbb2/viewtopic.php?t=2993&highlight=opensource ) while it is like BSD.
I myself ditched pyOpenGL and looked for python solutions like python-ogre (which is very buggy and does not run well on Linux and did not run for me that well on windows either).
I develop only on Linux and only if i can use python, i set the rules - its a hobby! But after using, and liking it, i would definitely want to be using it for a projects to feed myself.
My programs run without change on windows (mac os X support is there but... there is no nice package b/c of low demand) and on many different hardware.
Developing games is much easier with panda3d then pyOpenGL it takes batteries-included python mentality taken to the next level . Its a full game engine from Cg shaders to perlin noise, from reading zipped virtual directorates ( if you don't want to show your data ) to patching them, from network to sound FMOD and openAL , from openGL to DirectX7,8, or 9. It has lots and lots of stuff you would want from a 3d engine and then some! But if you are missing some thing you can always hack it together with python or c++; the engine is very modular.
Oh an here is some screens of my hobby game "Angels Fall First : The Second Antarean War" made with panda - with me being the only programmer http://affuniverse.com/2aw/2awscreens1/ (still alpha version) and i hope to finish this MMORTS some time next year ( http://aff2aw.com alpha site of the project )
Do look at it and don't be fooled by the ugly site like it did me at first! http://panda3d.org
Panda3D is just an amazing engine. It's cross-platform, it's not hard to program a game in a very short time, (also because it makes use of the easy Python language.)
In one word: Awesome!
"2 - No convenient executable '.exe' to distribute. And no real way to hide your "source code" when using Python."
This is not true. The engine comes with utilities to easily distribute your game as an EXE which automatically generates an installation file for your game. Also can you compile your .py file into a binary file.
-I wont name them, because that doesnt fit in this small textbox here :) And if I only post part of them, I feel I'm not doing good to Panda3d ;)
It's now almost a year later and it improved A LOT. Great community, hundreds of extra features like OpenAL, loads of more c++ documentation, you name it. The old 2005/2006 reviews which talk about missing features are old and Panda3D has improved a lot since.
Plus, theres now a website where you can host your panda projects, for free, at p3dp.com !!!
If I could add more than 5 stars, I definately would!
Oh, and did I forget to mention? GREAT crossplatform support, this engine details page don't list Mac OS X, but Panda3D definately supports Mac!
Now, the Panda3D developers are developing a system that can generate shaders for any material type or any effects you like! For example, you will be able to easily setup HDR effects, and you name it its gonna be there, without having to write any complex shaders or so.
Best game engine for me !
I have tried some engine like 3DGameStudio , Blender game engine , Ogre , Irrlicht , Crystal Space ... and I can say that Panda is the greatest game engine :)
- short learning curve ( yes , because of Python , API , I haven't use CXX but I think it's same :D ), I 'm translating its manual from English to Vietnamese
- Its rendering looks nice ...
- It's game engine , it support physical walker , FSM AI state ...
- If alsmost game engine use loop while , CPU always in 99 % , Panda use its own method run() , CPU always in 30 - 50 % (in samples and Airblade , I have AMD 3500+ 2,2 ; 240 MB RAM and 16 MB graphic share onboard :) ) I hate use loop while for game loop directly :(
such a nice work !!!
Happy fosing !!!
omg awesome engine11111111111
omg this is an awesome engine! it uses an extrememly easy to learn and use language: pyhton!!!!!11 it makes it extrememly easy to use and the engine has good performance and stabiliy. it supports shaders to make it look coolz. i luv it. i marked it down in ease of use dou cuz its not perfectly extrememyl easy
I like pandas
...including the game engine
Lets see, theres shaders which will make your game better
+Its a game engine
+Can read alot of file formats(.x, .bam, .egg and more but i dont remember them now)
Ease of Use 5/5
Ease of use astounds me. Not as easy to use as the point and click engines(D'oh) but much more powerful and better. It is based on pure coding, so get reality factory if you dont want that. But as pure coding its really easy thanks to python. In a day I could make a simple game where you play as a panda and eat things and customize how i like! And I'm a noob at python!
Panda hasnt crashed on me unless i did something wrong.
Panda is slow when you do something wrong and/or dont optimize it correctly
Panda has extensive Documentation and a large community. Plus there a tutorials that come with it and on the internet.
Overall 10/10, 5/5, 1/1, whatever. Panda is an awesome Game engine(not just a rendering engine!)
IT FITS ME GOOD !!!
... started with no 3D experience at all, here is my short history :
May 2005 :
started learning Maya : modeling, rendering, animation, physics, effects
Oct 2005 :
hungried for something more, I decided to learn 3D programming. I searched for some free 3D engine, but most of them use C/C++ interface, which I haven't mastered yet.
Dec 2005 :
tried Panda3D (v1.0.5-v1.1) and Python for the first time. Realized that Python is rich of features and much much easier than any high-level language I've ever learned, has kept me from leaving it.
During 1 year learning Panda3D (excluding 3 months I got my MoBo RMAed), I managed to do (chronological) :
1. an FPS-style architectural walkthrough, featuring :
- some different movement modes
- easy switch of different alternative of design parts, great to be used during design evolution & evaluation
- easy arrangement & auto-layout of the technical drawings, grouped based on the drawing's type, sequentially displayed over the 3d world (+ abilty to zoom on the drawing using mouse position as zoom focus)
2. some real physics interaction using ODE + easy Object Oriented scene setup
3. some Cg shaders, including the standard "raw" shadow mapping
4. automated lightmapping (layered texture) pipeline from Maya -> Panda3D
5. mix of script and visual layout tool of 2D scene, using Panda3D's native GUI
Since none of my close buddies has programming experience, I did those things all alone, only accompanied by the GREAT community.
I still can't believe I've done them all, what a wonderful year for a newB !
Missing features :
1. built-in shadow volume.
I just can't do that since I don't have any C++ experience needed to do the silhouette extrusion which can't be done in GPU :P.
2. the other features simply covered by the community :D
sry 4 my English...
Great to prototype 3d application.!!!
It uses Python for quick prototyping (or to build) an interactive 3D application!
Visually? compared to Gamebryo, people might say..."panda3d is not quite there yet", but then again, Game engine doesn't make great graphics, it's the team (read: your team) that makes great graphics.
My favourite game (not only 3D) engine
Yes, in term of features, Panda3D is often compared to Ogre. But there's a huge difference : Panda3D is a mature, professional quality game engine.
The professional side of Panda is that it was written by game industry professionals (the Disney studios), for making a professional game (Toontown by Disney), and has as its main maintainer a professional game programmer (the C++ programmer of the game "A Tale in The Desert").
Then, you'll not only find a stable as rock game engine, but also a lot of professional tools, such as graphical real time profiler, lot of converters, a scene debugger, that allows to navigate through the scenegraph, move objects, move the camera etc.
It's sometimes said that Panda is a python engine, but it's not. It's a fast engine written in C++, with a great wrapper to Python. Then, you create all the logic of your code with this easy and object oriented language. If there's a performance issue, just implement the bottleneck in C++ with a python extension. Or maybe will you prefer to write your hole game in C++.
Python is most productive game engine I know. You'll create your first hello world scene in 2 minutes.