{"id":2581,"date":"2026-06-13T15:58:46","date_gmt":"2026-06-13T14:58:46","guid":{"rendered":"https:\/\/nicolas-lebrun.fr\/?post_type=project&#038;p=2581"},"modified":"2026-06-13T15:58:47","modified_gmt":"2026-06-13T14:58:47","slug":"signal-zero","status":"publish","type":"project","link":"https:\/\/nicolas-lebrun.fr\/en\/project\/signal-zero\/","title":{"rendered":"Signal zero"},"content":{"rendered":"<p class=\"wp-block-paragraph\">These animations work on the basis of two elements: a somewhat special font created in 2023 for a series called Barrage, and a grid.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This font is not really a font in the traditional sense, since it cannot be used in a word processing application. It works like a program \u2014 you give it a letter or a word along with dimensions, and it returns a list of coordinates used to draw the letter or letters. The outlines are never filled, so if you change the text dimensions you will get different coordinates, but this will not affect the stroke width. The second characteristic of this font is that you can give it two different sizes for height and width. Flexible, it extrapolates and adapts to the frame you give it.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The second fundamental element in this project is the grid, and this grid has quite an interesting feature: whatever the width and height of each cell, it will resize them to preserve its own dimensions \u2014 the grid neither shrinks nor grows even if the column or row sizes change abruptly. As with the font, the grid reflects a certain flexibility; it absorbs and organises internal disorder to maintain its own coherence, its own dimensions.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped is-style-tiled wp-block-gallery-2 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/nicolas-lebrun.fr\/wp-content\/uploads\/2026\/06\/flexible-font.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"1024\" data-id=\"2587\" src=\"https:\/\/nicolas-lebrun.fr\/wp-content\/uploads\/2026\/06\/flexible-font-1024x1024.jpg\" alt=\"\" class=\"wp-image-2587\" srcset=\"https:\/\/nicolas-lebrun.fr\/wp-content\/uploads\/2026\/06\/flexible-font-1024x1024.jpg 1024w, https:\/\/nicolas-lebrun.fr\/wp-content\/uploads\/2026\/06\/flexible-font-250x250.jpg 250w, https:\/\/nicolas-lebrun.fr\/wp-content\/uploads\/2026\/06\/flexible-font-768x768.jpg 768w, https:\/\/nicolas-lebrun.fr\/wp-content\/uploads\/2026\/06\/flexible-font-400x400.jpg 400w, https:\/\/nicolas-lebrun.fr\/wp-content\/uploads\/2026\/06\/flexible-font.jpg 1200w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/nicolas-lebrun.fr\/wp-content\/uploads\/2026\/06\/flexible-grid-2.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"1024\" data-id=\"2588\" src=\"https:\/\/nicolas-lebrun.fr\/wp-content\/uploads\/2026\/06\/flexible-grid-2-1024x1024.jpg\" alt=\"\" class=\"wp-image-2588\" srcset=\"https:\/\/nicolas-lebrun.fr\/wp-content\/uploads\/2026\/06\/flexible-grid-2-1024x1024.jpg 1024w, https:\/\/nicolas-lebrun.fr\/wp-content\/uploads\/2026\/06\/flexible-grid-2-250x250.jpg 250w, https:\/\/nicolas-lebrun.fr\/wp-content\/uploads\/2026\/06\/flexible-grid-2-768x768.jpg 768w, https:\/\/nicolas-lebrun.fr\/wp-content\/uploads\/2026\/06\/flexible-grid-2-400x400.jpg 400w, https:\/\/nicolas-lebrun.fr\/wp-content\/uploads\/2026\/06\/flexible-grid-2.jpg 1200w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The creation and animation of the grid cells happen in two distinct processes. For each of these two stages, the program has a palette of possible choices, a list of available functions from which it can draw a type of organisation and a type of animation \u2014 so the program contains two families of algorithms that work in tandem: the composers and the animators.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The composers are used to select letters and signs (punctuation marks, numbers, symbols\u2026) and their order. It might seem trivial to entrust a mathematical function with the task of truncating text, but in reality it is not. Each of the thirty-four rule functions applies a pattern that is unique to it \u2014 for example, one might count the position of a sign and remove all those whose position falls on an even index; by making this rule more complex with additional thresholds and operations, one can begin to see repeating shapes, emerging patterns. It is no coincidence that this evokes looms and the punch cards of early computers \u2014 this work is rooted in the earliest or pioneering forms of Generative Art.<\/p>\n\n\n<figure class=\"wp-block-video\">\n             <media-player title=\"\" src=\"https:\/\/nicolas-lebrun.fr\/wp-content\/uploads\/2026\/06\/SZ.rain-rythm-@1.mp4\" loop=\"true\">\n                 <media-provider><\/media-provider>\n               \t<media-video-layout><\/media-video-layout>\n             <\/media-player>\n         <\/figure>\n\n\n<p class=\"wp-block-paragraph\">The second family of algorithms, the animators, handle changing the size of each letter based on its position and time (counter). They interface between the font and the grid, taking advantage of the fact that the font can be stretched in two dimensions and that the grid, whatever happens, will maintain its dimensions. In a sense, they disrupt the grid, triggering shifts in columns or rows \u2014 they do not change position as such, only size, but this, coupled with the grid&#8217;s auto-resizing function, produces movement: a cascade reaction. Size changes in one cell affect all the cells in its row and column, as well as their positions.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">There is an autopoietic dimension here; one can view the different parts of this mechanism as an ecosystem that evaluates conditions and reacts to stimuli while maintaining its organisation and structure. The grid distributes the forces created by the animators across its columns and rows \u2014 the structure is preserved, but sometimes, when the loads are too great, when there is too much turbulence, this regulation happens at the expense of certain cells&#8217; integrity, rendering them invisible.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The animators have one constraint: they evolve the dimensions over a period, ensuring that the sizes at the end of the period and at the beginning are identical, so as to create a perfect loop, a cycle like a breath.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Lexicon and collection \u2014 the grid as an element multiplied across several layers<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">In programming, the grid is the underlying element (screen pixels, database tables\u2026) but it is also a rigid structure that the artist attempts to deform under the action of simulated forces.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Although other elements in this series introduce variations \u2014 such as the different colour palettes and the choice of words used \u2014 a large part of the visual result comes from the choice of a composer and an animator. One can therefore mentally structure the possible variations of the series in the form of a grid: on the vertical axis, the thirty-four composers, and on the horizontal axis, the thirty-three animators \u2014 at each intersection one finds one of the one thousand and fifty-six possible visuals.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">These two lists of composers and animators reflect a need to catalogue possibilities, to enumerate and annotate them. Creating a directory of forms and expressions is, in a sense, mapping the visible \u2014 not to exhaust it, but to reveal its internal logic. Each composer, each animator is an entry in a dictionary of behaviours, a way of naming what the program can do, even before it does it.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This collecting approach is not unlike a certain scientific tradition: that of the naturalist who classifies species, the linguist who catalogues morphemes, the chemist who builds the periodic table. There is in this act of cataloguing a form of systematic curiosity \u2014 the intuition that richness lies not in a single masterwork but in the ordered proliferation of possibilities, in the tension between rule and variation.<\/p>","protected":false},"featured_media":2600,"template":"","meta":{"footnotes":""},"class_list":["post-2581","project","type-project","status-publish","has-post-thumbnail","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.8 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Signal zero - Nicolas Lebrun<\/title>\n<meta name=\"description\" content=\"Test metadescription projet\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/nicolas-lebrun.fr\/project\/signal-zero\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"[:fr]Signal z\u00e9ro[:en]Signal zero[:] - Nicolas Lebrun\" \/>\n<meta property=\"og:description\" content=\"Test metadescription projet\" \/>\n<meta property=\"og:url\" content=\"https:\/\/nicolas-lebrun.fr\/project\/signal-zero\/\" \/>\n<meta property=\"og:site_name\" content=\"Nicolas Lebrun\" \/>\n<meta property=\"article:modified_time\" content=\"2026-06-13T14:58:47+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/nicolas-lebrun.fr\/wp-content\/uploads\/2026\/06\/SZ.D3GR4D3.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1920\" \/>\n\t<meta property=\"og:image:height\" content=\"1080\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:site\" content=\"@nclslbrn\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"5 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/nicolas-lebrun.fr\\\/project\\\/signal-zero\\\/\",\"url\":\"https:\\\/\\\/nicolas-lebrun.fr\\\/project\\\/signal-zero\\\/\",\"name\":\"[:fr]Signal z\u00e9ro[:en]Signal zero[:] - Nicolas Lebrun\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/nicolas-lebrun.fr\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/nicolas-lebrun.fr\\\/project\\\/signal-zero\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/nicolas-lebrun.fr\\\/project\\\/signal-zero\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/nicolas-lebrun.fr\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/SZ.D3GR4D3.jpg\",\"datePublished\":\"2026-06-13T14:58:46+00:00\",\"dateModified\":\"2026-06-13T14:58:47+00:00\",\"description\":\"Test metadescription projet\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/nicolas-lebrun.fr\\\/project\\\/signal-zero\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/nicolas-lebrun.fr\\\/project\\\/signal-zero\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/nicolas-lebrun.fr\\\/project\\\/signal-zero\\\/#primaryimage\",\"url\":\"https:\\\/\\\/nicolas-lebrun.fr\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/SZ.D3GR4D3.jpg\",\"contentUrl\":\"https:\\\/\\\/nicolas-lebrun.fr\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/SZ.D3GR4D3.jpg\",\"width\":1920,\"height\":1080},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/nicolas-lebrun.fr\\\/project\\\/signal-zero\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Accueil\",\"item\":\"https:\\\/\\\/nicolas-lebrun.fr\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Projets\",\"item\":\"https:\\\/\\\/nicolas-lebrun.fr\\\/project\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Signal zero\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/nicolas-lebrun.fr\\\/#website\",\"url\":\"https:\\\/\\\/nicolas-lebrun.fr\\\/\",\"name\":\"Nicolas Lebrun\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/nicolas-lebrun.fr\\\/#\\\/schema\\\/person\\\/be9e5e7b3dddc1665dcce551d8cb9ee2\"},\"alternateName\":\"N.Lebrun\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/nicolas-lebrun.fr\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/nicolas-lebrun.fr\\\/#\\\/schema\\\/person\\\/be9e5e7b3dddc1665dcce551d8cb9ee2\",\"name\":\"Nicolas\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/nicolas-lebrun.fr\\\/wp-content\\\/uploads\\\/2022\\\/10\\\/nicolas-lebrun-self-portait.png\",\"url\":\"https:\\\/\\\/nicolas-lebrun.fr\\\/wp-content\\\/uploads\\\/2022\\\/10\\\/nicolas-lebrun-self-portait.png\",\"contentUrl\":\"https:\\\/\\\/nicolas-lebrun.fr\\\/wp-content\\\/uploads\\\/2022\\\/10\\\/nicolas-lebrun-self-portait.png\",\"width\":1080,\"height\":1080,\"caption\":\"Nicolas\"},\"logo\":{\"@id\":\"https:\\\/\\\/nicolas-lebrun.fr\\\/wp-content\\\/uploads\\\/2022\\\/10\\\/nicolas-lebrun-self-portait.png\"},\"sameAs\":[\"https:\\\/\\\/www.instagram.com\\\/nclslbrn\",\"https:\\\/\\\/x.com\\\/nclslbrn\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"[:fr]Signal z\u00e9ro[:en]Signal zero[:] - Nicolas Lebrun","description":"Test metadescription projet","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/nicolas-lebrun.fr\/project\/signal-zero\/","og_locale":"en_US","og_type":"article","og_title":"[:fr]Signal z\u00e9ro[:en]Signal zero[:] - Nicolas Lebrun","og_description":"Test metadescription projet","og_url":"https:\/\/nicolas-lebrun.fr\/project\/signal-zero\/","og_site_name":"Nicolas Lebrun","article_modified_time":"2026-06-13T14:58:47+00:00","og_image":[{"width":1920,"height":1080,"url":"https:\/\/nicolas-lebrun.fr\/wp-content\/uploads\/2026\/06\/SZ.D3GR4D3.jpg","type":"image\/jpeg"}],"twitter_card":"summary_large_image","twitter_site":"@nclslbrn","twitter_misc":{"Est. reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/nicolas-lebrun.fr\/project\/signal-zero\/","url":"https:\/\/nicolas-lebrun.fr\/project\/signal-zero\/","name":"[:fr]Signal z\u00e9ro[:en]Signal zero[:] - Nicolas Lebrun","isPartOf":{"@id":"https:\/\/nicolas-lebrun.fr\/#website"},"primaryImageOfPage":{"@id":"https:\/\/nicolas-lebrun.fr\/project\/signal-zero\/#primaryimage"},"image":{"@id":"https:\/\/nicolas-lebrun.fr\/project\/signal-zero\/#primaryimage"},"thumbnailUrl":"https:\/\/nicolas-lebrun.fr\/wp-content\/uploads\/2026\/06\/SZ.D3GR4D3.jpg","datePublished":"2026-06-13T14:58:46+00:00","dateModified":"2026-06-13T14:58:47+00:00","description":"Test metadescription projet","breadcrumb":{"@id":"https:\/\/nicolas-lebrun.fr\/project\/signal-zero\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/nicolas-lebrun.fr\/project\/signal-zero\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/nicolas-lebrun.fr\/project\/signal-zero\/#primaryimage","url":"https:\/\/nicolas-lebrun.fr\/wp-content\/uploads\/2026\/06\/SZ.D3GR4D3.jpg","contentUrl":"https:\/\/nicolas-lebrun.fr\/wp-content\/uploads\/2026\/06\/SZ.D3GR4D3.jpg","width":1920,"height":1080},{"@type":"BreadcrumbList","@id":"https:\/\/nicolas-lebrun.fr\/project\/signal-zero\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Accueil","item":"https:\/\/nicolas-lebrun.fr\/"},{"@type":"ListItem","position":2,"name":"Projets","item":"https:\/\/nicolas-lebrun.fr\/project\/"},{"@type":"ListItem","position":3,"name":"Signal zero"}]},{"@type":"WebSite","@id":"https:\/\/nicolas-lebrun.fr\/#website","url":"https:\/\/nicolas-lebrun.fr\/","name":"Nicolas Lebrun","description":"","publisher":{"@id":"https:\/\/nicolas-lebrun.fr\/#\/schema\/person\/be9e5e7b3dddc1665dcce551d8cb9ee2"},"alternateName":"N.Lebrun","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/nicolas-lebrun.fr\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":["Person","Organization"],"@id":"https:\/\/nicolas-lebrun.fr\/#\/schema\/person\/be9e5e7b3dddc1665dcce551d8cb9ee2","name":"Nicolas","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/nicolas-lebrun.fr\/wp-content\/uploads\/2022\/10\/nicolas-lebrun-self-portait.png","url":"https:\/\/nicolas-lebrun.fr\/wp-content\/uploads\/2022\/10\/nicolas-lebrun-self-portait.png","contentUrl":"https:\/\/nicolas-lebrun.fr\/wp-content\/uploads\/2022\/10\/nicolas-lebrun-self-portait.png","width":1080,"height":1080,"caption":"Nicolas"},"logo":{"@id":"https:\/\/nicolas-lebrun.fr\/wp-content\/uploads\/2022\/10\/nicolas-lebrun-self-portait.png"},"sameAs":["https:\/\/www.instagram.com\/nclslbrn","https:\/\/x.com\/nclslbrn"]}]}},"_links":{"self":[{"href":"https:\/\/nicolas-lebrun.fr\/en\/wp-json\/wp\/v2\/project\/2581","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/nicolas-lebrun.fr\/en\/wp-json\/wp\/v2\/project"}],"about":[{"href":"https:\/\/nicolas-lebrun.fr\/en\/wp-json\/wp\/v2\/types\/project"}],"version-history":[{"count":12,"href":"https:\/\/nicolas-lebrun.fr\/en\/wp-json\/wp\/v2\/project\/2581\/revisions"}],"predecessor-version":[{"id":2599,"href":"https:\/\/nicolas-lebrun.fr\/en\/wp-json\/wp\/v2\/project\/2581\/revisions\/2599"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/nicolas-lebrun.fr\/en\/wp-json\/wp\/v2\/media\/2600"}],"wp:attachment":[{"href":"https:\/\/nicolas-lebrun.fr\/en\/wp-json\/wp\/v2\/media?parent=2581"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}