{"id":2628,"date":"2022-02-20T23:59:57","date_gmt":"2022-02-20T23:59:57","guid":{"rendered":"https:\/\/baselunaire.fr\/?p=2628"},"modified":"2022-03-09T01:04:57","modified_gmt":"2022-03-09T01:04:57","slug":"shady-032","status":"publish","type":"post","link":"https:\/\/baselunaire.fr\/?p=2628","title":{"rendered":"Shady #032"},"content":{"rendered":"<p>Le <strong>Shady<\/strong> du dimanche, c&rsquo;est maintenant !<\/p>\n<p>Pour la 3D, le code de rendu fondamental propos\u00e9 habituellement (sur <strong>Shadertoy<\/strong>) est une boucle de <em>raymarching<\/em>, un algo qui permet de d\u00e9finir math\u00e9matiquement pas mal de formes et de volumes \u00e9l\u00e9mentaires. Comme <strong>Iq<\/strong> (&#8230;le cr\u00e9ateur de <strong>Shadertoy<\/strong>, on en parlera bient\u00f4t) a d\u00e9j\u00e0 bien d\u00e9frich\u00e9 la chose, l&rsquo;utilisateur peut facilement importer les fonctions <em>cube<\/em>, <em>sphere<\/em>, etc, dans son <em>shader<\/em> d\u00e8s le d\u00e9part. Et apr\u00e8s \u00e7a, zou !<br \/>\nCoder devient alors un genre de jeu de construction, une mod\u00e9lisation 3D un peu perch\u00e9e. Du diorama \u00e0 base de cylindres, de plans, de c\u00f4nes, et d&rsquo;op\u00e9rations bool\u00e9ennes (addition, soustraction, intersection, etc). Le tout napp\u00e9 d&rsquo;une sauce de matrices et de vecteurs (translations, rotations, projections, + couleurs). Comme le <strong>lego<\/strong> ou <strong>Minecraft<\/strong>, avec des maths, quoi.<br \/>\nPour illustrer la richesse et la s\u00e9rendipit\u00e9 du processus, voici une petite anecdote&#8230;<br \/>\nR\u00e9cemment, je bossais sur une sc\u00e8ne 2D (du coup, m\u00eame plus besoin de la boucle <em>raymarching<\/em>) et en moins de 5 minutes (et moiti\u00e9 par accident) je me suis retrouv\u00e9 \u00e0 r\u00e9inventer <strong>1)<\/strong> la transformation de M\u00f6bius (&#8230;\u00e0 laquelle j&rsquo;ai toujours rien compris !), <strong>2)<\/strong> l&rsquo;effet tunnel (classique des d\u00e9mos), et <strong>3)<\/strong> une m\u00e9thode simple pour produire des kal\u00e9idoscopes (&#8230;et \u00e7a franchement, c&rsquo;est cool).<br \/>\nJe voulais juste afficher UN triangle ! Il s&rsquo;est pass\u00e9 quoi, bon Dieu !? \ud83d\ude00<\/p>\n<p>&nbsp;<\/p>\n<p><iframe loading=\"lazy\" width=\"100%\" height=\"166\" scrolling=\"no\" frameborder=\"no\" allow=\"autoplay\" src=\"https:\/\/w.soundcloud.com\/player\/?url=https%3A\/\/api.soundcloud.com\/tracks\/373159919&#038;color=%23ff5500&#038;auto_play=false&#038;hide_related=false&#038;show_comments=true&#038;show_user=true&#038;show_reposts=false&#038;show_teaser=true\"><\/iframe><\/p>\n<div style=\"font-size: 10px; color: #cccccc;line-break: anywhere;word-break: normal;overflow: hidden;white-space: nowrap;text-overflow: ellipsis; font-family: Interstate,Lucida Grande,Lucida Sans Unicode,Lucida Sans,Garuda,Verdana,Tahoma,sans-serif;font-weight: 100;\"><a href=\"https:\/\/soundcloud.com\/littlevmills\" title=\"Little V Mills\" target=\"_blank\" style=\"color: #cccccc; text-decoration: none;\" rel=\"noopener\">Little V Mills<\/a> \u00b7 <a href=\"https:\/\/soundcloud.com\/littlevmills\/star-wars-the-force-theme-epic-metal-cover-little-v\" title=\"STAR WARS - The Force Theme [EPIC METAL COVER] (Little V)\" target=\"_blank\" style=\"color: #cccccc; text-decoration: none;\" rel=\"noopener\">STAR WARS &#8211; The Force Theme [EPIC METAL COVER] (Little V)<\/a><\/div>\n<p>&nbsp;<\/p>\n<p>Bref, le <em>shader<\/em> du jour, <a href=\"https:\/\/www.shadertoy.com\/view\/4tj3zV\" rel=\"noopener\" target=\"_blank\"><strong>Starwars Ship Thing<\/strong><\/a>, est un beau <em>Star Destroyer<\/em> en 3D mod\u00e9lis\u00e9 par <strong>Alleycatsphinx<\/strong> (y&rsquo;a plus simple comme nom) et il contient suffisamment de d\u00e9tails pour \u00eatre convaincant. Il se manipule \u00e0 la souris (bord gauche et bas de l&rsquo;\u00e9cran). On peut faire tourner le vaisseau et il y a m\u00eame une fen\u00eatre avec 4 aper\u00e7us. J&rsquo;ai aussi pr\u00e9vu une musique d&rsquo;accompagnement, si vous \u00eates d&rsquo;humeur.<\/p>\n<p>Bravo \u00e0 l&rsquo;auteur, donc. Et \u00e0 la semaine prochaine !<\/p>\n<p>&nbsp;<\/p>\n<p><iframe loading=\"lazy\" width=\"640\" height=\"360\" frameborder=\"0\" src=\"https:\/\/www.shadertoy.com\/embed\/4tj3zV?gui=true&#038;t=10&#038;paused=true&#038;muted=false\" allowfullscreen><\/iframe><\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Le Shady du dimanche, c&rsquo;est maintenant ! Pour la 3D, le code de rendu fondamental propos\u00e9 habituellement (sur Shadertoy) est une boucle de raymarching, un algo qui permet de d\u00e9finir math\u00e9matiquement pas mal de formes et de volumes \u00e9l\u00e9mentaires. Comme &hellip; <a href=\"https:\/\/baselunaire.fr\/?p=2628\">Continuer la lecture <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[15],"tags":[],"class_list":["post-2628","post","type-post","status-publish","format-standard","hentry","category-shady"],"_links":{"self":[{"href":"https:\/\/baselunaire.fr\/index.php?rest_route=\/wp\/v2\/posts\/2628","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/baselunaire.fr\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/baselunaire.fr\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/baselunaire.fr\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/baselunaire.fr\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2628"}],"version-history":[{"count":7,"href":"https:\/\/baselunaire.fr\/index.php?rest_route=\/wp\/v2\/posts\/2628\/revisions"}],"predecessor-version":[{"id":2635,"href":"https:\/\/baselunaire.fr\/index.php?rest_route=\/wp\/v2\/posts\/2628\/revisions\/2635"}],"wp:attachment":[{"href":"https:\/\/baselunaire.fr\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2628"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/baselunaire.fr\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2628"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/baselunaire.fr\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2628"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}