[[!meta title="El-gpu and pix-el: GNU Emacs 2D and 3D game programming"]] [[!meta copyright="Copyright © 2026 Emanuel Berg"]] [[!inline pages="internal(2026/info/elgpu-nav)" raw="yes"]] # El-gpu and pix-el: GNU Emacs 2D and 3D game programming Emanuel Berg (he/him) - Pronunciation: Swenglish, IRC: lacni, incal@dataswamp.org [[!inline pages="internal(2026/info/elgpu-before)" raw="yes"]] In this project, prepared especially for EmacsConf 2026, two modules - `el-gpu` and `pix-el` - for graphics on-board the GPU and CPU, respectively - have joined forces and been adapted to the newly added canvas format, an exciting new feature included in vanilla GNU Emacs. In this video we show no less than three games - a snake clone, which operates on a per-pixel basis; a Tetris game, with tiles loaded on the fly from any visual creation even as it only exists in drawing program, still a dynamic, editable object; and a Descent-like space shooter, powered-up by SDL and OpenGL, executing part CPU-side Emacs Lisp (Elisp), part CPU-side dynamic module C, and part all-GPU GLSL. el-gpu and pix-el, like their predecessor, bad.el (boxing after dark), which was demonstrated at EmacsConf 2025, comes with an interactive studio, that has its own UI; it offers OOP-style drawing, as well as explicit pixel-plotting, with layerjs, procedural shaders, functional alpha masks, and RGB bitwise blenders, including for transparency; with image editing, effects, rotation, and transformation, with new idiomatic GNU Emacs lisp, e.g. the `with-pixels` macro; also offering several ways of drawing text on the CPU as well as GPU; and much more. [[!inline pages="internal(2026/info/elgpu-after)" raw="yes"]] [[!inline pages="internal(2026/info/elgpu-nav)" raw="yes"]]