Domain: panda3d.org
Stories and comments across the archive that link to panda3d.org.
Comments · 24
-
Panda3D is an option
Panda3D supports Python or C++ development. My school has used it for a couple of game development related courses and the students loved it. I'm just mentioning Panda3D in case you feel the need to start out in 3D: we actually start out in 2D with something like SFML and C++, but that is part of a 2 year college program that leads to C++/OpenGL development. Panda3D with Python might work for a HS class. From the website: "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." http://www.panda3d.org/ Also worth looking at might be Alice, if Panda3D/Python is too much for them. Alice has versions for middle/HS, and lots of teaching aids. "Alice is an innovative 3D programming environment that makes it easy to create an animation for telling a story, playing an interactive game, or a video to share on the web. Alice is a teaching tool for introductory computing. It uses 3D graphics and a drag-and-drop interface to facilitate a more engaging, less frustrating first programming experience." http://www.alice.org/
-
Re:Python + Pygame
And for 3D games i would suggest to try out Panda3D
You can make pretty decent games fairly quickly with tutorials from sites like: MyGameFast -
Re:Not quite as exciting as the headline sounded
Examples for ioquake3
Examples for XreaL
Examples for Cube 2
Examples for Irrlicht
Examples for Object-Oriented Graphics Rendering Engine
Examples for Crystal Space
Examples for Blender Game Engine
Examples for Panda3DIt's quite obvious that all of these engines are much more advanced than Darkplaces. Darkplaces doesn't even do basic stuff like HDR lighting, DOF or parallax mapping. You could reproduce most effects in Darkplaces with shaders in ioquake3, which is basically just a cleaned up id Tech 3 engine. Then there is the issue of poor performance in Darkplaces...
-
Re:Not quite as exciting as the headline sounded
-
Maybe a multimedia engine.
More Python is a good thing. If you want to inspire creativity, there's nothing quite like a good multimedia engine like http://www.sfml-dev.org/ or a 3D game engine like http://www.panda3d.org/ for higher levels of creativity. The only downside to these is that they'll require decent implementations of Mesa to implement OpenGL graphics capabilities. Also some teachers are annoyed when computers make noise so they cannot hear what's going on in the classroom so you may want to hold off on the music part of the multimedia.
-
Re:Python ?
Speaking of python, check out Panda3D. It's a complete game engine written in c++ and has a nice python API that exposes pretty much everything. It's totally open-source as well (very liberal BSD license).
It ships with a large set of examples, some of which are games.
-
A lot of engines are going down this road
The Panda 3d engine has a BSD license, and you use python to develop the games. They recently released a browser plugin too. Their runtime works in Windows, Linux, Mac OS X, and of course the iPhone.
This is the way to go, to get the most platforms covered as possible. Everyone is drooling about their new iPhone/iPad or Android phone or whatever. Mobile is not the next big thing, it's the big thing right now. With a Direct X 11 browser plugin you're achieving very little, what's the use? Halo, the Internet Explorer edition?
-
Re:Didn't see that one coming....
Disney released and has been continuously updating a great 3D game engine: www.panda3d.org
-
Re:Didn't see that one coming....
This isn't a new sort of thing for Disney. Disney were (are?) the main developers behind the Panda3d game engine.
-
Re:Nonsense.
-
Panda3D
It doesn't have the cross-platform compatibility you're looking for, but you mentioned you're a Python programmer so Panda3D might interest you. I've been learning Python and decided to learn by making a game, so I've been using the Panda3D engine because it has Python bindings. I think it also has a blender exporter, but I'm not 100 percent sure about that.
-
Mod Parent Up
I couldn't agree more. I loved TGE when I first started, but eventually I spent so much time wading through WTF moments of poor documentation, broken functions and the like that I could have brewed my own, or used a well-crafted engine like Irrlicht.
Don't even get me started on its Linux "support." Linux is a second-class-citizen in Torque, the engine even stubs out(!) some important things like joysticks.
If your projects are small, I'd recommend homebrewing your own framework. If you're really not into graphics programming, try Irrlicht or Ogre.
Aaaand, if you want a full-fledged game engine that's easy to use, with Windows/Linux support (Mac support is dodgy at the moment), try Panda3D. I don't know how freely-usable it is in commercial projects (something about the libraries it links to), but it's a kickass engine, so much so that I make all my stuff with Panda3D now.
Basically, just don't be swayed by Torque's shinier logo. I mean, damn, it really is a nice logo. ./Khak -
Panda
-
HLL game engine example: Panda3dA couple of posters have mentioned that even though they would do regular desktop applications in an interpreted language, they would still leave high-performance applications (like games) to low-level native-code languages.
For those who haven't seen it, Panda3D is a game engine with a Python interface. It is the system underpinning Disney's Toontown MMO game for kids (IE required, because the website needs ActiveX). Panda3D is a full-featured game engine for Windows and Linux (with an unstable port to OS X; the Windows release tends to lead the pack). It has support for graphics, sound, networking, UI, collisions, physics, AI, and the Cg-shader language for high-end graphics cards. On top of that, the developer gets the advantage of a built-in engine profiler (for ironing out those trouble spots), an object placement tool, and the regular reflection, auto-documentation, debugging features, and libraries of the Python language. It's also open-source.
We used Panda3D on a project and were able to go from scratch to a complete product in a matter of two months. I sincerely doubt we'd have had that kind of turnaround with almost any other language / engine combination. From the nifty things specific to Python (pickling, solid dynamic typing, interactive runtime mode, runtime mutable classes) to the simple things that you expect from any high-level language (strings as a type, as opposed to "bag of characters;" automatic memory management; exception objects), we used about every aspect of the system to keep our project on-time and on-budget. If we had chosen a system such as SDL / C++, I suspect that the memory management issues alone would have bogged us down terminally.
Personally, I think there are a couple of lessons to be learned from the Panda3D example:- Many problems are well-understood and well-implemented. If you find yourself spending much of your programming energy re-inventing the wheel, you are wasting your time and your employer's money. HINT: Memory management is a terribly well-understood problem, as is capturing keyboard and mouse input, as is reading and writing a file or network socket.
- High level languages let you get to the trouble-spots of a design more quickly so that you can address them earlier in the implementation phase. During development, we found the framerate started to drop precipitously. However, the profiler showed the issue was not in the game logic, but in the render loop. A quick trip through Panda3D's 'analyze' tool told us that we were asking the graphics card to handle 500MB of texture per frame; we simply hadn't placed a limit on our texture sizes. If it had taken us twice as long to get to the point where we realized this mistake (say, if we had burned a lot of time coding memory management and file I/O, or even if we'd burned time making sure our
.h files were aligned with our .c files or tweaking our Make scripts), we'd have been in twice as much trouble. - While we never had to optimize to native code, if it was necessary it could have happened. Python has tight native bindings allowing you to expose a C or C++ interface as a Python type, which means that the "workhorse" part of that type's function is happening in native code. It is worth noting that large chunks of Panda3D are in fact written in C++; however, other chunks (the chunks that are better expressed as metamorphic constructs where components can be easily added or removed, such as the "direct" GUI widget system) are kept in Python for easy subclassing and modification. Much as C allows you to slide into assembly if you must, good high-level languages make it easy to transition to a low-level implementation where needed. I'm not sure the same can be said of the ease of accessing high-level features from a low-level language.
So there's one programmer's experience with hig
-
Panda3D
http://panda3d.org/what.php
What is Panda3D?
Panda3D is a 3D engine: a library of subroutines for 3D rendering and game development. The library is C++ with a set of Python bindings. Game development with Panda3D usually consists of writing a Python program that controls the the Panda3D library.
Panda3D is unusual in that its design emphasis is on supporting a short learning curve and rapid development. It is ideal whenever deadlines are tight and turnaround time is of the essence.
For example, in a class called Building Virtual Worlds at the Entertainment Technology Center, interdisciplinary groups of four students are asked to create virtual worlds in two weeks each. Screenshots of their projects are visible throughout this site. Panda3D is what makes this rapid turnaround possible.
Panda3D was developed by Disney for their massively multiplayer online game, Toontown. It was released as free software in 2002. Panda3D is now developed jointly by Disney and Carnegie Mellon University's Entertainment Technology Center. -
Re:AlicePiggy backing on something visible, here's a summary of some of the shorter suggestion posts:
- http://www.alice.org/
- http://www.ogre3d.org/
- http://www.yake.org/
- http://www.delta3d.org/
- http://www.panda3d.org/
- http://www.idsoftware.com/business/techdownloads/
- http://irrlicht.sourceforge.net/
- http://www.garagegames.com/products/1
And personally I think http://sauerbraten.org/ looks interesting, but I've never used it. -
Panda3D
Panda3D is pretty decent if you're using Windows (it supposedly runs on Linux and Mac OS X with increasing levels of difficulty). It supports shaders and other such fun things if you're into that, and has Python scripting, which is always fun.
-
3d engine
Try taking a look at Panda 3D
http://www.panda3d.org/
It's designed to be simple; and is in use by major game developers -
Panda 3DActually, Panda 3D makes it even easier to use python for developing games! It is a beautiful engine closer to the Torque engine than a graphics API. Check it out at:
And a little "Hello World" to show you the pwoer of it is at:
http://www.panda3d.org/wiki/index.php/A_Panda_%22
H ello_World%22Peace,
-Nick -
Panda 3DActually, Panda 3D makes it even easier to use python for developing games! It is a beautiful engine closer to the Torque engine than a graphics API. Check it out at:
And a little "Hello World" to show you the pwoer of it is at:
http://www.panda3d.org/wiki/index.php/A_Panda_%22
H ello_World%22Peace,
-Nick -
Re:I know Linux is a leper with this crowd...
I follow pygame projects as well, but what really looks promising is Panda 3D.
-
Re:Other games that use Python
Toontown Online uses plain Python. http://www.toontownonline.com/ (IE only)
It uses the open-source multi-platform Panda3D http://panda3d.org/ engine.
And the SourceForge http://sourceforge.net/projects/panda3d/ link, the Helix community https://panda3d.helixcommunity.org/, etc.
Works pretty well, 10K+ players. -
Panda3D
I was talking to Jesse Schell, the chairperson of the IGDA, about two weeks ago at the RPI GameFest about the work he's been doing at CMU. We were using Torque for our game development but he actually told me he was using Panda3D for their work. Not surprising when you consider that he's a former employee of Disney but apparently it has great qualities including editing, compiling, and modifying the engine while it's running (I believe it has some Python hooks or somesuch). Anyways, it hasn't been mentioned here so I thought I'd drop its name.
-
Panda3d
Another option for the engine could be Panda 3D.
http://panda3d.org/
(used for disney's toontown online)