Is learning panda3d a good experience for a software developer?

Hello There, First, I want to thank everyone for working on such a great engine.

Well, I am working with a company that wants to build a simulating desktop application, using Python, and they want someone to handle the 3D scene, So as I have some interest in learning new stuff and doing hard work, am thinking to take this task (maybe I will get a salary rise :smiley: ).

My question is: since am not a game developer (and it is not my interest at the current time), Should I learn panda3d, and make some extra value to myself in the company? Or this will be a wasting time for me since am not planning to become a game developer?

I may be mistaken, but I seem to recall that there have been others who have built non-game 3D applications with Panda. If I’m correct, then it might be worth looking up such projects on the forum and seeing whether you can contact their devs to hear what their experiences were like!

Otherwise, I would say that it perhaps somewhat depends on what your company might want from this application that you mention, and whether Panda is suited to that. Perhaps it’s worth trying out a simple prototype with the engine, if feasible?

Panda3d is an engine first.

What you do with it is up to you, that can be a ‘game’, but it doesn’t have to be.

It would be more important to know what kind of simulation you want to do.

E.g. if it’s just illustration stuff like traffic that should be fine, as well as mechanical stuff or combinations of mesh/model changes and heat maps. I’m not aware of anyone doing something with fluids.

1 Like

I remembered that.

1 Like

Thank you very much for the answers.

Well, the simulation is for industries something as factories and line production (placing objects and moving them from our editor must be enabled with our app). and we want it to be realistic as we can.

So to do so, what should I learn and where should I start? I’ve seen a project that Mr Wezu developed for height level and placing objects editor, which is a very awesome project it looks very realistic, I saw the code and it was not as large of lines of code as I imagined.

So can I start from his project to understand how things are done? (I just want to do the work, not aiming to become a pro in panda3d) not sure how hard it will be doing such a thing.

Please excuse my English, and again thank you very much for such a helpful community.

what should I learn and where should I start?

Ultimately, you need to load, place, move things or animate things, that’s covered by the tutorial

https://docs.panda3d.org/1.10/python/introduction/tutorial/index

Also you will probably need to deal with your machines/parts/geometry. If you don’t already have software to convert to a format that’s panda compatible, https://www.blender.org/ can probably do it. That should be easy, so if it isn’t do ask for more help.

panda3d can do the collisions for you, but maybe you prefer to do that with in house tech, that would be fine as well. The manual covers how to do that.

1 Like

Thanks, And what about the shaders and lights, shadow things? are they hard to implement? So we can have a better rendering.

Panda3D makes writing and using (GLSL) shaders quite straightforward. If you do not have experience writing shaders, there will be a significant learning curve there. However, there are some external shader libraries that people in the community have written to be drop-in replacements for the standard set_shader_auto() call.

That said, if you are expecting the ease of Unreal Engine in terms of auto-configuring shader settings for you, you will be disappointed.

To the larger point of this post, I do believe Panda3D could be a good choice for doing a factory line production simulation. I’ve seen a pretty cool looking logging simulator that is used as a museum exhibit using Panda3D and RenderPipeline, iirc.

1 Like

Regarding shaders and lights, let me note that Panda does provide some out-of-the-box shading and lighting, including shadows. The shadows are perhaps a bit jagged at times (to a degree dependent on how you set up the relevant lights), but at least functional.

For more information, see these manual pages:

https://docs.panda3d.org/1.10/python/programming/render-attributes/lighting

https://docs.panda3d.org/1.10/python/programming/shaders/shader-generator

1 Like

I would definitely encourage you to try out something new, keeping in mind the time constraints and asking yourself the right questions… my own journey with Panda started in a similar way… coming from Unity / Unreal background, I wanted to create an editor centric workflow in Panda3D for artists and game developers and so the end result was PandaEditor, you can read more about it on project homepage.

CodeCreatePlay360/PandaEditor: A level / scene editor for Panda3D engine (github.com)

2 Likes

Wow, I must say you really inspired me with your project, it is absolutely awesome. Thanks.

@Pythonic_Person thanks a lot… these kinds of remarks motivate me to improve this project even further, I am glad you really liked it, if possible, you can show your support by giving it a star on GitHub, this will help me reach more people.

2 Likes