Sunday 1:50 p.m.–2:20 p.m.

2D/3D graphics with Python on mobile platforms

Niko Skrypnik

Audience level:


Games, application with rich graphic for mobile platforms? Yes! You can do it for Android, iOS and other platforms with using Python. In this talk I speak about tools you may use for developing applications with using OpenGL ES for different platforms, the ways and concepts which are used in those tools, some tips and tricks you may use to make a cross-platform game with Python for fun and profit.


Mobile platforms are becoming very important area of IT industry and part of our live, and sure if you are Python fun you'll be interested in how can you develop some cool stuff for such platforms using your favorite language. What if you want to write simple game(or even not simple) with Python or write some application with rich graphic and even 3D elements for Android/iOS? You can do it! In my talk I'll speak about tools which may help you develop cross-platform applications with using OpenGL ES(OpenGL subset for embedded systems). Mostly my talk is about Kivy project as it's good implementation of cross-platform framework. But it's not about Kivy as a framework for creation applications with UI, it's about Kivy's way for drawing all graphical elements which is based on the using OpenGL ES and its API you may use to develop fast graphical application. Through this API it's possible to call raw OpenGL functions, to use shaders and create fantastic graphical things if you are experienced with OpenGL. As an alternative in my talk I'll say about using some other projects like Ignifuga, another Python based framework for cross-platform game development and Panda3D, which also may be used for developing 3D applications with Python for mobile platforms. And sure if you want to make full-featured game with using some complex graphical logic, I'll say how can you optimize it with using Cython and how can you port your extensions to different platforms. During this talk some simple graphical application will be demonstrated right on the mobile device. These demos includes examples of simple 2d graphical application with integrated physics, simple 2D puzzle game, demo with basic 3D figures, Rubik's cube game(see appropriate images below): **Simple 2D primitives with physic simulation** ![][1] **Simple puzzle demo** ![][2] **Basic 3D figures demo** ![][3] **Rubik's cube game written on Python** ![][4] [1]: [2]: [3]: [4]: