Arcade 2.6.11 has been released
Python Arcade, a library for creating 2D arcade games, has released version 2.6.11.

Website: [https://arcade.academy](https://arcade.academy)

Release notes: [https://api.arcade.academy/en/latest/development/release\_notes.html](https://api.arcade.academy/en/latest/development/release_notes.html)

Demo video: [https://www.youtube.com/watch?v=QClDvEwcxmg](https://www.youtube.com/watch?v=QClDvEwcxmg)

&amp;#x200B;

**Release notes**

* Sections - Add support to divide window into sections. (Thanks [janscas](https://github.com/janscas) for the contribution.)  
   * Add [arcade.Section](https://api.arcade.academy/en/latest/api/window.html#arcade.Section) to the API.
   * Add [arcade.SectionManager](https://api.arcade.academy/en/latest/api/window.html#arcade.SectionManager) to the API.
   * Add examples on how to use: [Dividing a View Into Sections](https://api.arcade.academy/en/latest/examples/index.html#section-examples)
* New Example Code:  
   * Add parallax example: [Parallax](https://api.arcade.academy/en/latest/examples/parallax.html#parallax).
   * Add GUI flat button styling example: [Flat Text Button Styled](https://api.arcade.academy/en/latest/examples/gui_flat_button_styled.html#gui-flat-button-styled).
   * Add [Perspective](https://api.arcade.academy/en/latest/examples/perspective.html#perspective) example.
* New functionality:  
   * Add [arcade.get\_angle\_degrees()](https://api.arcade.academy/en/latest/api/geometry.html#arcade.get_angle_degrees) function.
   * Add easing functions and example. See [Easing Example 1](https://api.arcade.academy/en/latest/examples/easing_example_1.html#easing-example-1) and [Easing Example 2](https://api.arcade.academy/en/latest/examples/easing_example_2.html#easing-example-2).
   * Add arcade.Sprite.facePoint()  
 to face sprite towards a point.
* Fixes:  
   * Fixed issue [\#1074](https://github.com/pythonarcade/arcade/issues/1074) to prevent a crash when opening a window.
   * Fixed issue [\#978](https://github.com/pythonarcade/arcade/issues/978), copy button in examples moved to the left to prevent it disappearing.
   * Fixed issue [\#967](https://github.com/pythonarcade/arcade/issues/967), CRT example now pulls from resources so people don’t have to download image to try it out.
   * PyMunk sample map now in resources so people don’t have to download it.
   * [arcade.draw\_points()](https://api.arcade.academy/en/latest/api/drawing_primitives.html#arcade.draw_points) no longer draws the points twice, improving performance.
* Documentation:  
   * Update [Pygame Comparison](https://api.arcade.academy/en/latest/pygame_comparison.html#pygame-comparison).
   * Improve Sprite.texture  
 docs.
   * When building Arcade docs, script now lets us know what classes don’t have docstrings.
   * Spelling/typo fixes in docs.
* Misc:  
   * Update arcade.Sprite  
 to use decorators to declare properties instead of the older method.
   * [\#1095](https://github.com/pythonarcade/arcade/issues/1095), Improvements to [arcade.Text](https://api.arcade.academy/en/latest/api/text_pyglet.html#arcade.Text) and its documentation. We can now also get the pixel size of a Text contents though content\_width, content\_height and content\_size.
   * Force GDI text on windows until direct write is more mature.
   * Optimized text rendering and text rotation
   * [arcade.draw\_text()](https://api.arcade.academy/en/latest/api/text_pyglet.html#arcade.draw_text) and [arcade.Text](https://api.arcade.academy/en/latest/api/text_pyglet.html#arcade.Text) objects now accepts any python object as text and converts it into a string internally if needed.
   * [SpriteList](https://api.arcade.academy/en/latest/api/sprite_list.html#arcade.SpriteList) now exposes several new members that used to be private. These are lower level members related to the underlying geometry of the spritelist and can be used by custom shaders to do interesting things blazingly fast. SpriteList interaction example with shaders can be found in the experimental directory. Members include [write\_sprite\_buffers\_to\_gpu()](https://api.arcade.academy/en/latest/api/sprite_list.html#arcade.SpriteList.write_sprite_buffers_to_gpu), [geometry](https://api.arcade.academy/en/latest/api/sprite_list.html#arcade.SpriteList.geometry), [buffer\_positions](https://api.arcade.academy/en/latest/api/sprite_list.html#arcade.SpriteList.buffer_positions), [buffer\_sizes](https://api.arcade.academy/en/latest/api/sprite_list.html#arcade.SpriteList.buffer_sizes), [buffer\_textures](https://api.arcade.academy/en/latest/api/sprite_list.html#arcade.SpriteList.buffer_textures), [buffer\_colors](https://api.arcade.academy/en/latest/api/sprite_list.html#arcade.SpriteList.buffer_colors), [buffer\_angles](https://api.arcade.academy/en/latest/api/sprite_list.html#arcade.SpriteList.buffer_angles) and [buffer\_indices](https://api.arcade.academy/en/latest/api/sprite_list.html#arcade.SpriteList.buffer_indices)
* OpenGL:  
   * Added support for indirect rendering. This is an OpenGL 4.3 feature. It makes us able to render multiple meshes in the the same draw call providing significant speed increases in some use cases. See [arcade.gl.Geometry.render\_indirect()](https://api.arcade.academy/en/latest/gl/geometry.html#arcade.gl.Geometry.render_indirect) and examples in the experimental directory.
   * Added support for unsigned integer uniform types
   * arcade.gl.Geometry.transform  
 no longer takes a mode parameter.

Special thanks to [einarf](https://github.com/einarf), [eruvanos](https://github.com/eruvanos), [janscas](https://github.com/janscas), [MrWardKKHS](https://github.com/MrWardKKHS), [DragonMoffon](https://github.com/DragonMoffon), [pvcraven](https://github.com/pvcraven), for their contributions to this release. Also, thanks to everyone on the Pyglet team! We depend heavily on Pyglet’s continued development.