The Python Arcade Library Overview and Comparison with Pygame
Features that the Arcade Library has that Pygame does not: * Supports Python 3 [type hinting](https://docs.python.org/3/library/typing.html). * Thick ellipses, arcs, and circles do not have a [moiré pattern](http://stackoverflow.com/questions/10148479/artifacts-when-drawing-primitives-with-pygame). * Ellipses, arcs, and other shapes can be easily rotated. * Supports installation via standard Python package manager, using ‘pip install’ * Uses standard coordinate system you learned about in math. (0, 0) is in the lower left, and not upper left. Y-coordinates are not reversed. * Has built-in physics engine for platformers. * Supports animated sprites. * API documentation for the commands is better. Many commands include unit tests right in the documentation. * Command names are consistent. For example, to add to a sprite list you use the `append()` method, like any other list in Python. Pygame uses `add()` . * Parameter and command names are clearer. For example, open_window instead of set_mode. * Less boiler-plate code than Pygame. * Basic drawing does not require knowledge on how to define functions or classes or how to do loops. * Encourages separation of logic and display code. Pygame tends to put both into the same game loop. * Runs on top of OpenGL and Pyglet, rather than the old SDL1 library. * With the use of sprite lists, uses the acceleration of the graphics card to improve performance. * Easily scale and rotate sprites and graphics. * Images with transparency are transparent by default. No extra code needed. * Lots of [Example Code](http://arcade.academy/examples/index.html#example-code). Features that Pygame has that the Arcade Library does not: * Python 2 support * Does not require OpenGL * Supports hardware like cameras, cdroms, MIDI * Has better support for pixel manipulation in a memory buffer that isn’t displayed on screen.