Pyxel: A retro game engine for Python
github.com
github.com
They may be useful to someone here if not too much has changed with pyxel since then.
Pyxel is (I think) unique among Python game engines in that it can run on the web.
Some others I’ve played with are PyGame and Arcade, mostly geared toward 2D, but you can see some impressive 3D examples on the youtube channel DaFluffyPotato.
Ursina is another that’s more 3D, fairly expressive, and runs fairly well for being Python.
I do feel like I’m going to be forced to cross over into something more powerful to build a real game though. Either Godot or Unity.
Truth be told you can build a game on any tool, obviously the tool you choose will help shape the game you make - but it's more about keeping at it then the underlying technology.
Personally I really like Panda3D and feel like it doesn't get enough attention. It's scene graph [3] is interesting because it splits it into nodes and nodepaths. A node is what gets stored in the graph but you manipulate them using the nodepaths which simplifies programming.
It also has a really amazing aync task manager [2] which makes game programming no problem. You can just pause in a task (or even a event) which sounds simple but you'd be suprised by who many engines won't let you do that.
It also has a multiplayer solution [6] that was battle tested for 2 mmos.
Finally I really like it's interval [4] system which is like Unreal or Unity's timeline but code based.
It's also on pypi [5] so super easy to install.
[1] https://pypi.org/project/pygbag/
[2] https://docs.panda3d.org/1.10/python/programming/tasks-and-e...
[3] https://docs.panda3d.org/1.10/python/more-resources/cheat-sh...
[4] https://docs.panda3d.org/1.10/python/programming/intervals/i...
[5] https://pypi.org/project/Panda3D/
[6] https://docs.panda3d.org/1.10/python/programming/networking/...
harfang-wasm: https://github.com/harfang3d/harfang-wasm
pygbag: https://github.com/pygame-web/pygbag
https://news.ycombinator.com/item?id=38772400 :
> FWIU e.g. panda3d does not have a react or rxpy-like API, but probably does have a component tree model?
Is there a react-like api over panda3d, or are there only traditional events?
The redux DevTools extension also works with various non-react+redux JS frameworks.
Manim has a useful API for teaching. Is there a good way to do panda3d with a manim-like interface, for scripting instructional design? https://github.com/ManimCommunity/manim/issues/3362#issuecom...
I believe using intervals and async tasks/events you could do something similar to Manim.
I absolutely love that it uses a language I actually know instead of some niche thing or a DSL.
I'll have to check it out when I have some spare time.
Something comparable to the Nintendo SNES or DS's hardware capabilities, which seemed like the perfect sweet spot between artistic freedom and "helpful" limitations which actually improved creativity by lowering complexity.
The closest thing today is RaspberryPI, and boot to a linux in text mode, you're basically there.
What is more difficult to find is the combo hardware/software, but the Pi 400 includes keyboard and a mouse comes with as a kit.
Just like in the old days, find a (~TV) cheap LCD monitor and plug and play.
And you have hundreds of games for free, thousands possibly with emulators etc. And you can program in virtually every languages on the planet.
If anything, what you have now paralysis by choice. There is just too much you can do with a basic computers, so you wind up on youtube and social medias instead of being bored with 1 compiler and 1 book.
ref: I grew up on ZX Spectrum+! :)
These kinds of projects are becoming more and more common in retrocomputing circles.
An intersection of simple and impressive - I feel like Raspberry Pi Pico and the likes embody this spirit nowadays.
https://shop.pimoroni.com/products/picosystem?variant=323695...
https://shop.pimoroni.com/products/picovision?variant=410489...
(Not affiliated nor trying to sell it, the shop is just the best link for information.)
EDIT: Also it's not quite boot into IDE, but the vibe of both is similar in every other way.
An open issue [1] makes a point that MMIXX [2], which adds graphics to Knuth's MMIX, is a fantasy computer.
It's a platform specifically made for games (as opposed to a Raspberry Pi for example), has a library of great games and is ostensibly easy to develop for.
It's a "computer" that boots straight to your program. MicroPython (I even did it with TinyGo), and you can make lights blink! But seriously... there's some very interesting stuff with it, and you can also add on another chip that lets you rock and roll with motors, speakers, etc. https://www.adafruit.com/product/3093
EGA also used 16 colors out of a possible 64 (although the the 16 colors from CGA were most often used), and the colors here also approximate a selection from the EGA palette: https://en.wikipedia.org/wiki/Enhanced_Graphics_Adapter#/med...
https://en.wikipedia.org/wiki/Amiga_Advanced_Graphics_Archit...
As contemporary of 8-bit arch's it seems retro enough to count.