Arcade Library in Python
For many years, Python game programmers were limited to the Pygame Module. But, now we have other choices as well i.e Arcade Python Library. The Arcade library is a modern Python Module used widely for developing 2D video games with compelling graphics and sound. Arcade is an object-oriented library. It can be installed like any other Python Package. It was written by Paul Vincent Craven, a computer science professor at Simpson College in Iowa, USA.
Installation
To install this module, just simply run the following command on your command prompt:
pip install arcade
Implementation
The following steps illustrate how to create a basic drawing using an arcade module:
- Import module.
- Specify the parameters for your output screen like width, height, etc.
- Open the window using the inbuilt open_window() in the arcade. This command opens a window with a given size i.e width and height along with the screen title.
Syntax-
arcade.open_window(Width, Height, Title)
- Set a background color (optional). It can be done using set_background_color() method built into arcade
Syntax-
arcade.set_background_color(arcade.color.color_name)
- Tell your module to start drawing using start_render() command which is again built into arcade.
Syntax-
arcade.start_render()
- Start designing, you can use functions already available with arcade to do so.
- Tell arcade module that you have completed the drawing using finish_render().
Syntax-
arcade.finish_render()
- Run your code using run().
Syntax-
arcade.run()
Example 1: Python program that uses arcade to draw a circle.
Python3
# Import module import arcade # Specify Parameters Width = 500 Height = 700 Title = "Welcome to Arcade" Radius = 100 # Open the window arcade.open_window(Width, Height, Title) # Set the background color arcade.set_background_color(arcade.color.BLUE) # start drawing arcade.start_render() # Draw a Pink circle arcade.draw_circle_filled( Width / 2 , Height / 2 , Radius , arcade.color.PINK ) # Finish drawing arcade.finish_render() # Display everything arcade.run() |
Output:
Example 2: Python program that creates a pattern of circles using the arcade
Python3
# Import module import arcade #Specify Parameters Width = 500 Height = 700 Title = "Welcome to Arcade" Radius = 200 # Open the window arcade.open_window(Width, Height, Title) # Set the background color arcade.set_background_color(arcade.color.BLACK) # start drawing arcade.start_render() # Draw a BLUE circle arcade.draw_circle_filled( Width / 2 , Height / 2 , Radius , arcade.color.BLUE ) # Draw a Red circle arcade.draw_circle_filled( Width / 2 , Height , Radius , arcade.color.RED ) # Finish drawing arcade.finish_render() # Display everything arcade.run() |
Output:
Arcade is a set of python modules which is a modern Python framework used in designing 2D video games. In Arcade, we have gripping computer graphics and sound libraries in order to design high quality and user-friendly games. Arcade was developed by Paul Vincent Craven. Arcade needs support for OpenGL 3.3+.
Interesting facts about Arcade Library:
- Arcade is built on top of Pyglet and OpenGL.
- In order to replace Pygame, Arcade came into existence.
- Arcade runs on Windows, Mac OS X, and Linux.
- Arcade requires Python 3.6 or newer. It does not run on Python 2.x.
- Arcade needs support for OpenGL 3.3+. It does not run on Raspberry Pi or Wayland. If on Linux, sound support needs at least GLIB 2.29+.
- Arcade uses SoLoud. which Supports panning and volume.
- It is possible to create open-source free, shareware, and commercial games with it.
- Supports Python 3 type hinting.
- Basic drawing does not require knowledge on how to define functions or classes or how to do loops.
- Uses a standard coordinate system you learned about in math. (0, 0) is in the lower left, and not upper left. Y-coordinates are not reversed.
- API documentation for the commands is better.
Active road-map of Arcade version 2 development :
- Version 2.4.3 was released 2020-09-30. It is the latest version of arcade that has Added PyInstalled hook and tutorial, ShapeLists have no longer share position between instances and with GUI improvement.
- Version 2.4.2 was released 2020-09-08. It has GPU transformations with the mouse and Updates downloadable .zip for platformer example code to match current code in documentation and much more.
- Arcade 2.4.1 was released 2020-07-13. Support for defining your own frame buffers, shaders, and more advanced OpenGL programming, PyMunk engine for a platform, etc.