El-gpu and pix-el: GNU Emacs 2D and 3D game programming
Emanuel Berg (he/him) - Pronunciation: Swenglish, IRC: lacni, incal@dataswamp.org
Format: 20-min talk ; Q&A: BigBlueButton conference room Etherpad: https://pad.emacsconf.org/2026-el-gpu
Etherpad: https://pad.emacsconf.org/2026-el-gpu
Status: Waiting for video from speaker
Description
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.
https://dataswamp.org/~incal/el-gpu
Questions or comments? Please e-mail emacsconf-org-private@gnu.org
