Panda3D Open Game Project

Id say add it.
From what Ive heard 2.0 will be a rewrite of the engine, so it will take awhile. So if you have completed it, no need to wait.

Im just interested in fluid/softbodies though.

What about intergrating opencl and ode or bullet to allow the physics done on the GPU which would allow fluids.

Yes, it will be a while until 2.0. Perhaps even longer until the physics re-design is done.

It’s not complete. It never is.
Something is done already, which is similar to the level of integration which are available for ODE or PhysX. It is not tested, and it won’t get much support from my side. It has been just a project to learn how to work with Bullet.

Plans are to find ways of a much tighter integration. For this level nothing is ready. I’m thinking about how to do it right, for example how Panda3D’s CollisionSolids could be utilized by the Bullet integration. There won’t be result before next year.

Softbodies are possible already, both in PhysX and Bullet integration. Fluids not. Fluid means to have a second (third, …) particle system in parallel to what Panda3D already has.

I don’t know if ODE already can use OpenCL, of if ODE developers plan to implement this. Integrating ODE and OpenCL yourself means to write a new physics engine based on ODE and OpenCL. Is this what you meant?
For Bullet the OpenCL is experimental stuff, work in progress, and far from stable. Nothing which can be integrated yet. Bullet fluids are even more experimental, some “how it could be done” demos OUTSIDE the Bullet API.
Sorry guys, if you want fluids and hardware then PhysX is currently the only stable way (Windows only).

My aim is first to work on “basics” (collision system, rigid body physics, character controllers etc.), and when this is done then later on add the more advanced features.

Hey, but you could spend some time on proposing a nice API for how softbody and fluids should be available in Panda3D. Don’t forget to think about the content pipelines (How to create and load softbodies or fluids? Extending .egg maybe? COLLADA doesn’t have these features yet). This would speed this a lot.

Well theres always room for improvements, nothing can be perfected. If thats what you mean.
I think if its at the level of ODE integration then thats good enough.

PhysX is so limiting, like its license and Linux support appearing and disappearing over time. I also heard that it wont run on all hardware.

I guess fluid would require messing with the panda particle system code. Way over my skills.

For softbodies, I think it could be done the same way as with setting collision solids. The chicken exporter for Blender allows objects to be set as collision and invisible, by adding a Blender “Property” to it. That info is then taken by the exporter and added to the egg file.

I dont know if egg file supports comments or custom information though, so it may require extending the format.
At least I can’t think of any other way.

Actually egg files DO have comments… but I think it would be a weird way of solving this.

No, it’s not that simple. Softbodies are not made up from triangles, but from tetrahedra. Usually you have a tetrahedron-mesh at low resolution for the soft body simulation, and a triangle mesh “linked” to the tetrahedron-vertices at higher resolution for the visual proxy. Neither Blender nor .egg can hold tetrahedra so far.

Hmm… the last few post lead away from the topic of this thread, so I suggest to stop here. I will open a new thread for physics discussion. Maybe a few good ideas will come from this.

Yeah, I’m sure a lot of developers would be interested in a Bullet integration :wink:
So it’s quite a must-have for panda.

I’ve read most of your replies…and I accept the idea of making an open game project before enhancing the engine for two reasons:

1- If someone decide to make a trial video for panda3d engine…what will the video contain?? and the answer is “parts of different games” to show the strength of the engine

2- During the making of the game,new ideas will appear on surface that will make the contributers think hard to put them in the game and add them also to the engine as a new features other than trying to copy the features of another engine
At last this is my opinion that you may agree or disagree with it

Thanks

So porting Yo Frankie to panda3D would be a good thing as it would help to integrate bullet physics or improve ode. If others agree I might consider it however I haven’t even played it yet, might try tonight. Are there any other open games that could be ported that might help to showcase panda3D?

It’s my entirely personal opinion that if we port Yo Frankie that people will ask “Why?” our main answer that will pick anyone’s interest is “Oh you can run it in the web”

I think we might be known as the people who “made Yo Frankie playable in your web browser” instead of the people who “build amazing virtual games”

It’s only my thoughts and I know that lots of people may very well disagree.

~powerpup118

You both dont seem get it.

I didnt say its for integrating Bullet or support for blend files.

Nor is it for showing Panda can do more than BGE.

Where did you get these ideas?

Its to simply show that panda is capable of handling such games. The whole point of porting yo frankie rather than making a new open game is that all the assets are done and under creative commons license.

Again its simply to showcase Panda. Pirates and toontown are kinda old now and arent very impressive visually.

0ad (wildfiregames.com/0ad/) has nice models, however we’d need to improve the collada importer. as they currently dont even import into blender correctly (i could fix some of them with a script) but it has nice models for a strategy game.

I agree with porting Yo Frankie will help showcase panda3D however I think we should also see if bullet could be integrated that is just my view on what an open game project. If I am wrong please let me know.

Porting a game that uses Bullet to panda wont help in integrating Bullet. If we wanted to we could just integrate Bullet? Whats the point?

You have been asked to suggest an API for JUST a tiny part of Bullet, the softbody. No implementation, JUST making a suggestion. So far we have seen no results.

It’s not JUST a small job for one or two weekends. That’s the point.

What?

JASGames said that porting Yo Frankie to Panda might help in integrating Bullet. I just said that if we wanted to integrate bullet we would just integrate bullet. Why is porting a whole game going to help here?

Thats my point. What are you talking about?

It’s the word JUST. Your words sound like you have no clue how much work it is.

Besides, porting other games to Panda3D or creating new games can very well help with integrating new components. This way you get use cases for these components, and you know what to focus on and what not.

I honestly have no idea what you are talking about.
Can you please quote what lead you to believe I think like that?

Sure, here is the quote, a second time:

By the way: Are you aware that we already have more than one approach to integrate Bullet?

And the second time I’ll say that I meant I don’t think porting a game will help. Its just my opinion. I might be wrong, but thats not the point, is it? You think Im arrogant and think adding support for Bullet is easy, but I havent said that anywhere in my posts. By “just integrate” I meant adding Bullet support without porting Yo Frankie. I think this is clear enough, but if you have anything else you want to tell me than please pm me instead.

“If we wanted to we could just integrate Bullet? Whats the point (of porting Yo Frankie)?”

We don’t have to port Yo Frankie or intergrate bullet I just thought that that way we have a new game to showcase panda and a new feature thats all. If there are better games that could be ported let me know. The reason I thought about Yo Frankie is that all the models have been made which mean that all we have to do is script.