Rapid 2D/3D AI prototyping


Totally new to Panda. I was going to do some python wrappers for my own “engine” - the term collection of libraries glued together by a few wrappers is a better description :wink: - but since i stumbled upon Panda3D that looks like a very capable 3d engine with excellent python programability i am starting to evaluate it for my project: ParaParaBola some info can be found at moddb.com/games/paraparabola … -interview - old but has some concept artwork.

There was a 2 year hiatus on development hehe, this time i am going at it in a more manageable manner and with a team of Indie developers, mostly because i still love the concept.

Anyway, i have a few questions regarding Panda, hope someone can help out.

  1. Does panda come with basic AI library to do stuff like pathfinding and other stuff like HFSM, or Behavior Trees?

  2. To start i would like to create some 2D tactics, using very simple graphics just to have smart Team AI. Is this feasible in Panda? How easy is it to get 2D graphics rolling… i looked at the Asteroids demo it looks like you have to jump a few hoops to get stuff done in 2D. Should i look at something like cocos2d to do this?

  3. Are there anymore resources on using panda3d as a 2D game engine, other than the asteroids demo? Is there a tile editor or some way to quickly prototype some 2D sprites behaving intelligently?

  4. Where can i find some assets just to play around with? i need some running biped characters. Are there many problems with the egg format, is it stable to export from XSI/Collada to egg?

edit: 5) what kind of animation support do you have, like blending, procedural animation, ragdoll support, physics based animation?

I took a look at the documentation, the helloword example is very nice, and made me droll with how much you don’t worry about details (plumbing code) but i doubt it is a testament to how complex things can get.

General question: How much time do you estimate is saved by using Panda3d and python vs C++

Anyway ill be writing some code to better assess if panda3d is a good fit :slight_smile:

  1. No. It has a simple FSM.
  2. 2d is just like 3d just use the z coordinate for sorting.
  3. No. Tile editor is easy to make and you probably want it solve specific case.
  4. there is the samples and “Art Gallery” on download page just for that purpose.
  5. There is bone based animation. And with that you can roll your own ragdoll using any of the 3 physics engines.
  6. a lot of time is saved.

addition to point 5) panda supports (besides)bone-based animations, vertex based ones (aka morph-targets), it comes with support for multi-part actors, animation blending etc.

Thank you for both your replies.

I believe that Panda3D will be a good fit to write a decent demo with good animation showcase.

Question about Mesh loading: 10 to 12 meshes (about 2.500 polys each with normal maps and bone based animations) blending multiple animations acceptable in terms of performance?

(I will be testing this, but i don’t have the animations for the models yet, just a walk cycle.)

Are there any examples of a ragdoll (demo)?

OT: I was playing Pirates the other day to see what the engine can do. I was a bit disturbed that the in world movement was not interpolated. The other players moved in jumps instead of interpolating between locations. Is this a limitation of the system? I really need to have 5 to 10 animated characters on screen at all time. For the time being they don’t need to be networked, but in the future it would be nice to have the option.

Conceptually our demo is very similar to staggan.com/ United Football but the graphics and gameplay are totally different.


there was some ragdoll with pyode somewhere here on the forum. you might be able to digg it out.
10 to 12 characters,fully animated with normal maps should be no problem on somewhat modern hardware. 2500 polys are concidered “low poly” these days. so it should run fine :slight_smile:

bout the pirate stuff. panda can interpolate. positions of characters, animations, colors, pretty much everything you want. if there are jumps in pirates. then they simply didnt turn on the interpolation.
this might be cause interpolation of animation can take some cpu-usage.
since pirates targets old hand-me-down hardware of children. they might have made the rational choice. i doubt kids will complain if something isnt moving quite smooth.