Skip to content
Related Articles

Related Articles

Difference between Pygame VS Arcade Library in Python

View Discussion
Improve Article
Save Article
  • Difficulty Level : Hard
  • Last Updated : 19 Feb, 2022
View Discussion
Improve Article
Save Article

Game programming is very rewarding nowadays and it can also be used in advertising or as a teaching tool. Game development encompasses mathematics, logic, physics, AI, and much more and it can be amazingly fun. In Python, up until now, Pygame library was employed for the same, but there is a new module: Arcade Library. Here we will discuss how they differ from each other, but first, let’s understand what exactly they are.

Pygame:  It is a Python module used for designing video games, by allowing computer graphics and sound libraries in order to develop high-quality and user interactive games. Pygame was developed by Pete Shinners. Till 2000, it was a community project, later on, it was released under open source free software General Public License. Pygame is portable and its code is compatible with all operating systems. It is also possible to create open-source, free, freeware, shareware, and commercial games with it. Pygame code is written in C language and the module comes with installers for Windows, Linux and macOS. It can be easily used on handheld devices too.

Arcade: It is a Python module but works for Python 3.6 and above only. It tries to cover most of the functionalities that were not supported by Pygame. This also uses computer graphics and sound libraries in order to develop high-quality and user interactive games.  Arcade was developed by Paul Vincent Craven. Arcade needs support for OpenGL 3.3+. It is built on top of OpenGL and Pyglet and is compatible with Windows, Linux, and macOS X. It is also possible to create open-source, free, freeware, shareware, and commercial games with it.

Table of Differences between Arcade and PyGame

Arcade

PyGame

 Arcade is based on Open GLPyGame is using the newest and older versions of SDL 2
It has new features of Python 3, like decorators and type-hintingSupports python 2 and python 3
Supports animated spritesDoesn’t support animated sprites

API documentation for the commands is good

Command names are consistent i.e to add to a sprite list append() is usedCommands are consistent i.e to add to a sprite set add() is used
Less boiler-plate code than Pygame and also much easier to write and to understand.No such facility
Encourages separation of logic and display codeTends to put both into the same game loop.
 Runs on top of OpenGL 3+ and PygletRuns on SDL2 library.
Arcade uses SoLoud.Pygame uses Avbin library.
Less flexibility about, what can be done with the library that author didn’t think of.More flexibility about, what can be done i.e 3d games (even when the library is normally for just 2d)
Can’t be deployed on androidCan be deployed on android
Runs on GPURuns on CPU
Has smaller community.Has bigger community.
Has many things build-in, like ray-casting shadows or physics engine. Has many extension-libraries made by community, that fill gaps in possibly needed features. 
My Personal Notes arrow_drop_up
Recommended Articles
Page :

Start Your Coding Journey Now!