Conference paper Open Access
We describe a system for live coding procedural textures on implicit surfaces, and how its implementation led to foundational changes in the end-user API for the live coding environment marching.js. The texturing additions to marching.js enable users to use predefined texture presets, to live code their own procedural textures, or to use other systems for fragment shader authoring, such as Hydra, to generate textures. It also affords using the browser’s 2D canvas API to define textures, providing an entry point for performers who might be familiar with web APIs but unfamiliar with lower-level GPU languages like GLSL. We describe how demoscene culture led us to initially adopt design decisions that were inappropriate for our particular system, and the changes to both our underlying engine and end-user interface that resulted from reconsidering these decisions in the context of procedural texturing.