Mario Breskic

Mario Breskic

Grafikdesigner

Kategorien

  • Baukasten
  • Blog
  • Hört
  • Liest
  • Macht
  • Notiert
  • Schaut
  • Spielt

Seiten

  • About
  • Bücherregal
  • Datenschutzerklärung
  • Design-Websites
  • Freunde
  • Impressum
  • Kontakt
  • Medienfeed
  • Now
  • Social Media
  • Werkzeuge

Webroll

  • Ariane Konzepterin
  • Alexander Auffermann
  • Andreas Ken Lanig
  • Andreas Maxbauer
  • Andreas Rauth
  • David Sickinger
  • Harald Geisler
  • Jenny Habermehl
  • Kamman Rossi
  • Kyle T. Webster
  • Marco Hayek
  • Martina Wetzel
  • Narrata.io
  • Rémy & moi
  • Rene Stach
  • Stephanie Kowalski
  • Tilo Staudenrausch
Startseite › Baukasten › BlackInk Brush: CRT Melt (Procedural) › 25. Januar 2026, 12:32

BlackInk Brush: CRT Melt (Procedural)

Autor: 

Mario Breskic

Publiziert am: 

25. Januar 2026

Zuletzt editiert: 

25. Januar 2026

Zwischen den Seiten von Neuromancer, und Zen & The Art of the Macintosh, habe ich wieder ChatGPT ausgepackt, und mit Hilfe folgender Dokumente BSL Doc und BSL Samples, diesen Pinsel rekonstruiert:1

cfg{
name = "CRT Melt (Procedural)";
}

globals{

uiTab "CRT";

float rgbOffset = 0.03;
{
uiTab = "CRT";
uiName = "RGB Separation";
uiMin = 0;
uiMax = 0.2;
}

float meltStrength = 0.5;
{
uiTab = "CRT";
uiName = "Vertical Melt";
uiMin = 0;
uiMax = 2;
}

float wobbleStrength = 0.3;
{
uiTab = "CRT";
uiName = "Horizontal Wobble";
uiMin = 0;
uiMax = 2;
}
}

float4 main( idatas i )
{
// ----- stroke space -----
box2 b = box2FromCenterAxe(
i.strokeStartPos,
length(i.strokePos - i.strokeStartPos),
normalizeSafe(i.strokePos - i.strokeStartPos)
);

float2 uv = b.toCenter(i.pos) / b.size;

// ----- CRT distortions -----
float melt = uv.y + sin( uv.x * 10 + i.time * 2 ) * meltStrength;
float wobble = sin( uv.y * 40 + i.time * 4 ) * wobbleStrength;

// ----- RGB sampling positions -----
float ur = uv.x + wobble + rgbOffset;
float ug = uv.x + wobble;
float ub = uv.x + wobble - rgbOffset;

// ----- stripe signal -----
float sr = step( 0, sin( ur * 60 ) );
float sg = step( 0, sin( ug * 60 ) );
float sb = step( 0, sin( ub * 60 ) );

float3 col = float3( sr, sg, sb );

return float4( col, 1.0 );
}

Das dabei entstandene ChatGPT‑Projekt kann man bis auf weiteres hier abrufen und selbst verwenden, um eigene Pinsel für BlackInk zu entwickeln.

  1. Die Dokumente habe ich auf https://steamcommunity.com/app/233680/discussions/0/4031351002388283519/ gefunden ↩︎
blackink brush shader language bsl build in public chatgpt procedural art snippets

Kommentare

Schreibe einen Kommentar Antwort abbrechen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Meta

  • Datenschutz­erklärung
  • Impressum
  • Kontakt
  • Humans.txt
  • Llms.txt
  • Sitemap

Projekte

  • Code and Canvas
  • Medienfeed
  • Mastodon Server
  • Social Wall

Socials

  • Are.na
  • Artbreeder
  • Artstation
  • Bēhance
  • Bluesky
  • Cara
  • Das Auge
  • Doměstika
  • Facebook
  • Facebook Page
  • Flickr
  • Github
  • Goodreads
  • Instagram
  • LinkedIn
  • Mastodon
  • Medium
  • Page Online
  • Pinterest
  • Stackoverflow
  • Substack
  • Tumblr
  • Twitter
  • Xing

Twenty Twenty-Five

Gestaltet mit WordPress