Python Arcade / Python 2D game frameworks

Python Arcade / Python 2D game frameworks

Postby c_xong » 30 Aug 2018, 01:06

Maybe this is old news to many of you, but TIL about the Python Arcade game library (http://arcade.academy/index.html), which seems like an improvement over pygame.
From the comparison (http://arcade.academy/pygame_comparison.html), the improvements are mostly minor, with the exception of using OpenGL / Pyglet instead of SDL 1, so accelerated scaling/rotations are possible.

There was a pycon talk:

youtu.be/DAWHMHMPVHU

Has anyone used this library before? What's your experience? Speaking of python 2D game frameworks and libraries, there's also SGE game engine by our resident @onpon4, which is also an improvement over pygame but is still using SDL 1 and suffers from its limitations.
User avatar
c_xong
 
Posts: 233
Joined: 06 Sep 2013, 04:33

Re: Python Arcade / Python 2D game frameworks

Postby themightyglider » 01 Sep 2018, 06:56

Python Arcade is an interesring Framework and if I had known about it when I started my own project this would have been the way to go. Sadly the API isn't compatible to pygame so switching the libs now is no option to me.

As far as I understand SGE engine uses pygame as a dependancy. So its more like an extra layer on top of it to make development easier.

The positive thing about pygame is that they work on SDL2 support. AFAIK the upcomming release 1.9.5 will be the last one with SDL1 and 2.0 will have SDL2 support. At least I saw this news on reddit.com/r/pygame a while ago (I hope they are not fake).
I guess pygame with proper SDL2 support would be the solution of most performance issues it has right now.
User avatar
themightyglider
 
Posts: 123
Joined: 23 Feb 2016, 12:13

Re: Python Arcade / Python 2D game frameworks

Postby onpon4 » 01 Sep 2018, 17:50

Yeah, I haven't really had a chance to do it yet, but I really want to add a SGE implementation that uses PySDL2 or Pyglet (in fact that was my intention from the beginning). In fact it would have another advantage, being able to use PyPy for (potentially) better performance.

I never heard of Python Arcade. It seems to offer some nice features, but I note that its physics engine is a lot more simplistic than mine. I do rather like the idea of including an engine specifically for platformers, though; maybe I should abstract some of Hexoshi and ReTux into another xSGE module.
User avatar
onpon4
 
Posts: 440
Joined: 13 Mar 2014, 18:38

Re: Python Arcade / Python 2D game frameworks

Postby c_xong » 03 Sep 2018, 00:26

I don't think it's important to have a very good physics engine, but rather just make sure your framework can easily support the best engines. For example, Arcade contains examples on how to use pymunk with it: http://arcade.academy/examples/index.html#pymunk

Platformers are an exception; they are (a) popular, (b) not simple, and (c) not suited to standard physics engines. So it probably makes sense to provide a platformer-specific physics library. I'm not sure if such a thing exists, because there are so many different kinds of platformer physics.
User avatar
c_xong
 
Posts: 233
Joined: 06 Sep 2013, 04:33

Re: Python Arcade / Python 2D game frameworks

Postby onpon4 » 03 Sep 2018, 14:10

I generally just find that implementing the physics is one of the most tedious parts of making a game. Especially if you're doing things like unisolid tiles, slopes, moving platforms, and whatnot. So it's been a strong focus for me.
User avatar
onpon4
 
Posts: 440
Joined: 13 Mar 2014, 18:38

Who is online

Users browsing this forum: No registered users and 1 guest