Browser build in any plans?

I have seen several old threads about a build for browsers, but not recent, and not encouraging. Is it fair to conclude that work making a browser build is not moving ahead, or not soon?

By a browser build I mean help in packaging a panda3d game for running from a server in a browser.

The old browser plug-in is no longer supported by browsers. New efforts are focused on the WebGL port:

This effort is alive on the webgl-port branch, and it does work, though it’s not currently a high priority. It currently lacks an easy way for people to build their games for this target. It requires a lot of manual compilation work at the moment.

Thank you, I did see that post, but did now know how to get from here to there.

‘It does work’ is great news, and I would like to try. I am happy to do ‘a lot of manual compilation’, not afraid of that. But my experience with all these tools (eg, emscripten, even WebGL) is pretty light. Just a matter of time, but lots (I am old). Is there a ‘recipe’ I can follow? I don’t mean do it for me or steps for beginners, I welcome doing it myself, just a list of the major steps that I could figure out the details (dependencies, installations, configuration) for myself?

An ignorant side question: is Pyiodide a future option, or overkill, or wrong-parts?

There’s no recipe other than what you can put together from the parts in that thread. You’d need to:

  • Get the emscripten SDK
  • Compile the Python interpreter using emscripten
  • Check out the webgl-port branch from GitHub
  • Build an application using a modified version of pfreeze, I think there is a zip file somewhere in that thread

Let me know if you need any help. The last time I tried building the WebGL port with Python was still with Python 2, but we no longer support that.

pyodide looks interesting, and it would be worth investigating whether it makes sense for Panda to integrate with that.

Thank you! I will get started probably next week and let you know. Thanks for your offer of help, I am sure I will be back asking.

(I remember the python 2 comment, that is why I didn’t pursue it deeper. I hadn’t realized all the steps were there.)

It looks like pyodide is still using an old version of the emscripten toolchain, it may be better to wait until they update to the newer pipeline before trying to integrate with them.