# shaders

Published articles for shaders.

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## Optimizing CPU-side Rendering Code

DevFeed: [Optimizing CPU-side Rendering Code](<https://devfeed.tech/articles/optimizing-cpu-side-rendering-code-26783.md>)

Original publisher: [Read original article](<https://godotengine.org/article/rendering-cpu-optimizations/>)

Author: Clay John

Published: 2026-09-15T17:00:00Z

Content type: tutorial

Language: en

Sources: [Godot Engine Official](<https://devfeed.tech/sources/godot-engine-official.md>)

Topics: [Godot](<https://devfeed.tech/topics/godot.md>), [Optimization](<https://devfeed.tech/topics/optimization.md>), [cpu](<https://devfeed.tech/topics/cpu.md>), [GPU](<https://devfeed.tech/topics/gpu.md>), [shaders](<https://devfeed.tech/topics/shaders.md>)

Tags: [batching](<https://devfeed.tech/tags/batching.md>), [bug](<https://devfeed.tech/tags/bug.md>), [cpu](<https://devfeed.tech/tags/cpu.md>), [gpu](<https://devfeed.tech/tags/gpu.md>), [optimization](<https://devfeed.tech/tags/optimization.md>), [performance](<https://devfeed.tech/tags/performance.md>), [performance-optimization](<https://devfeed.tech/tags/performance-optimization.md>), [progress-report](<https://devfeed.tech/tags/progress-report.md>), [shaders](<https://devfeed.tech/tags/shaders.md>)

### AI overview

This article explains how Godot optimizes CPU-side rendering code. It describes balancing CPU and GPU workloads, identifying performance bottlenecks, investigating solutions, measuring results, and repeating the process.

### Source excerpt

Optimizing CPU code is a lot of fun. Here's how we do it

## Figma Is Turning Designers Into Plugin Makers

DevFeed: [Figma Is Turning Designers Into Plugin Makers](<https://devfeed.tech/articles/figma-is-turning-designers-into-plugin-makers-17416.md>)

Original publisher: [Read original article](<https://webdesignerdepot.com/figmas-new-idea-is-wild-just-ask-ai-to-build-the-plugin-you-need/>)

Author: Alex Harper

Published: 2026-09-14T15:30:00Z

Content type: article

Language: en

Sources: [Web Designer Depot](<https://devfeed.tech/sources/web-designer-depot.md>)

Topics: [Figma](<https://devfeed.tech/topics/figma.md>), [Figma plugin](<https://devfeed.tech/topics/figma-plugin.md>), [Artificial Intelligence](<https://devfeed.tech/topics/ai.md>), [shaders](<https://devfeed.tech/topics/shaders.md>), [shader programming](<https://devfeed.tech/topics/shader-programming.md>), [Programming](<https://devfeed.tech/topics/programming.md>)

Tags: [ai](<https://devfeed.tech/tags/ai.md>), [ai-design-tools](<https://devfeed.tech/tags/ai-design-tools.md>), [ai-for-designers](<https://devfeed.tech/tags/ai-for-designers.md>), [ai-plugins](<https://devfeed.tech/tags/ai-plugins.md>), [artificial-intelligence](<https://devfeed.tech/tags/artificial-intelligence.md>), [creative-software](<https://devfeed.tech/tags/creative-software.md>), [design-automation](<https://devfeed.tech/tags/design-automation.md>), [design-tools](<https://devfeed.tech/tags/design-tools.md>), [figma](<https://devfeed.tech/tags/figma.md>), [figma-agent](<https://devfeed.tech/tags/figma-agent.md>), [figma-ai](<https://devfeed.tech/tags/figma-ai.md>), [figma-community](<https://devfeed.tech/tags/figma-community.md>), [figma-plugin](<https://devfeed.tech/tags/figma-plugin.md>), [figma-plugins](<https://devfeed.tech/tags/figma-plugins.md>), [figma-shaders](<https://devfeed.tech/tags/figma-shaders.md>), [future-of-design](<https://devfeed.tech/tags/future-of-design.md>), [generate](<https://devfeed.tech/tags/generate.md>), [generative-ai](<https://devfeed.tech/tags/generative-ai.md>), [generative-plugins](<https://devfeed.tech/tags/generative-plugins.md>), [no-code-tools](<https://devfeed.tech/tags/no-code-tools.md>), [procedural](<https://devfeed.tech/tags/procedural.md>), [shader-programming](<https://devfeed.tech/tags/shader-programming.md>), [shaders](<https://devfeed.tech/tags/shaders.md>), [ui-design](<https://devfeed.tech/tags/ui-design.md>), [ux-design](<https://devfeed.tech/tags/ux-design.md>), [web-design](<https://devfeed.tech/tags/web-design.md>), [web-development](<https://devfeed.tech/tags/web-development.md>)

### AI overview

Figma is enabling designers to describe and generate coded plugins with AI instead of searching for existing tools. The article explains that these plugins can solve highly specific workflow problems, be published to the Figma Community or shared privately, and include features such as bulk restyling, type-ramp generation, layer renaming, and prototype-flow checking. Figma also offers AI-generated shaders for procedural and interactive visual effects, with code inspection available for shaders and self-created generative plugins.

### Source excerpt

Figma is turning a wild idea into reality: instead of searching for the perfect plugin, you can just ask AI to build it. If this catches on, designers may stop choosing the tools in their software--and start inventing them on demand.

## Inside the First Three.js Conference in Paris

DevFeed: [Inside the First Three.js Conference in Paris](<https://devfeed.tech/articles/inside-the-first-three-js-conference-in-paris-4348.md>)

Original publisher: [Read original article](<https://tympanus.net/codrops/2026/09/10/inside-the-first-three-js-conference-in-paris/>)

Author: Manoela Ilic

Published: 2026-09-10T08:30:11Z

Content type: news

Language: en

Sources: [Codrops](<https://devfeed.tech/sources/codrops.md>)

Topics: [Three.js community](<https://devfeed.tech/topics/three-js-community.md>), [webgpu](<https://devfeed.tech/topics/webgpu.md>)

Tags: [3d-web-development](<https://devfeed.tech/tags/3d-web-development.md>), [ai](<https://devfeed.tech/tags/ai.md>), [articles](<https://devfeed.tech/tags/articles.md>), [browser](<https://devfeed.tech/tags/browser.md>), [coding](<https://devfeed.tech/tags/coding.md>), [codrops](<https://devfeed.tech/tags/codrops.md>), [community](<https://devfeed.tech/tags/community.md>), [conference](<https://devfeed.tech/tags/conference.md>), [creative-coding](<https://devfeed.tech/tags/creative-coding.md>), [creative-development](<https://devfeed.tech/tags/creative-development.md>), [creative-technology](<https://devfeed.tech/tags/creative-technology.md>), [creativity](<https://devfeed.tech/tags/creativity.md>), [creators](<https://devfeed.tech/tags/creators.md>), [developers](<https://devfeed.tech/tags/developers.md>), [digital-experiences](<https://devfeed.tech/tags/digital-experiences.md>), [event](<https://devfeed.tech/tags/event.md>), [experiments](<https://devfeed.tech/tags/experiments.md>), [frontend-development](<https://devfeed.tech/tags/frontend-development.md>), [generative-art](<https://devfeed.tech/tags/generative-art.md>), [immersive-web](<https://devfeed.tech/tags/immersive-web.md>), [interactive-web-experiences](<https://devfeed.tech/tags/interactive-web-experiences.md>), [javascript-3d](<https://devfeed.tech/tags/javascript-3d.md>), [shaders](<https://devfeed.tech/tags/shaders.md>), [three-js](<https://devfeed.tech/tags/three-js.md>), [three-js-community](<https://devfeed.tech/tags/three-js-community.md>), [three-js-conference](<https://devfeed.tech/tags/three-js-conference.md>), [three-js-conference-paris](<https://devfeed.tech/tags/three-js-conference-paris.md>), [three-js-demos](<https://devfeed.tech/tags/three-js-demos.md>), [three-js-developers](<https://devfeed.tech/tags/three-js-developers.md>), [three-js-projects](<https://devfeed.tech/tags/three-js-projects.md>), [three-js-talks](<https://devfeed.tech/tags/three-js-talks.md>), [three-js-web-development](<https://devfeed.tech/tags/three-js-web-development.md>), [three-js-workshops](<https://devfeed.tech/tags/three-js-workshops.md>), [web-3d](<https://devfeed.tech/tags/web-3d.md>), [web-design](<https://devfeed.tech/tags/web-design.md>), [webgl](<https://devfeed.tech/tags/webgl.md>), [webgpu](<https://devfeed.tech/tags/webgpu.md>)

### AI overview

A live look at the first Three.js Conference in Paris, covering community moments, opening talks, a Zelda rebuild moving from WebGL to WebGPU, and a discussion about AI and coding.

### Source excerpt

A look inside the first-ever Three.js Conference, straight from Paris.

## Building an Infinite Loom: Unravelling Images into Threads with Three.js

DevFeed: [Building an Infinite Loom: Unravelling Images into Threads with Three.js](<https://devfeed.tech/articles/building-an-infinite-loom-unravelling-images-into-threads-with-three-js-4339.md>)

Original publisher: [Read original article](<https://tympanus.net/codrops/2026/09/05/building-an-infinite-loom-unravelling-images-into-threads-with-three-js/>)

Author: Clément Grellier

Published: 2026-09-05T12:50:25Z

Content type: tutorial

Language: en

Sources: [Codrops](<https://devfeed.tech/sources/codrops.md>)

Topics: [Web Development](<https://devfeed.tech/topics/web-development.md>)

Tags: [creative-coding](<https://devfeed.tech/tags/creative-coding.md>), [creative-web-experiments](<https://devfeed.tech/tags/creative-web-experiments.md>), [digital-art](<https://devfeed.tech/tags/digital-art.md>), [frontend-animation](<https://devfeed.tech/tags/frontend-animation.md>), [generative-art](<https://devfeed.tech/tags/generative-art.md>), [glsl-shaders](<https://devfeed.tech/tags/glsl-shaders.md>), [gsap](<https://devfeed.tech/tags/gsap.md>), [html](<https://devfeed.tech/tags/html.md>), [image-animation](<https://devfeed.tech/tags/image-animation.md>), [image-distortion](<https://devfeed.tech/tags/image-distortion.md>), [image-effects](<https://devfeed.tech/tags/image-effects.md>), [image-slider](<https://devfeed.tech/tags/image-slider.md>), [images](<https://devfeed.tech/tags/images.md>), [infinite-slider](<https://devfeed.tech/tags/infinite-slider.md>), [interactive-images](<https://devfeed.tech/tags/interactive-images.md>), [interactive-web-design](<https://devfeed.tech/tags/interactive-web-design.md>), [javascript-animation](<https://devfeed.tech/tags/javascript-animation.md>), [marquee](<https://devfeed.tech/tags/marquee.md>), [playground](<https://devfeed.tech/tags/playground.md>), [ribbon-animation](<https://devfeed.tech/tags/ribbon-animation.md>), [shader-effects](<https://devfeed.tech/tags/shader-effects.md>), [shaders](<https://devfeed.tech/tags/shaders.md>), [thread-animation](<https://devfeed.tech/tags/thread-animation.md>), [three-js](<https://devfeed.tech/tags/three-js.md>), [three-js-demo](<https://devfeed.tech/tags/three-js-demo.md>), [three-js-shaders](<https://devfeed.tech/tags/three-js-shaders.md>), [unraveling-effect](<https://devfeed.tech/tags/unraveling-effect.md>), [webgl](<https://devfeed.tech/tags/webgl.md>), [webgl-animation](<https://devfeed.tech/tags/webgl-animation.md>), [webgl-demo](<https://devfeed.tech/tags/webgl-demo.md>)

### AI overview

A Three.js tutorial for an infinite image strip whose cards are split into independently animated horizontal ribbons. It explains how separate geometry and shaders create weaving, unraveling, gaps, fading, and varied thread motion.

### Source excerpt

An experimental Three.js demo that transforms images into flowing ribbons, weaving them together and unraveling them as they move across the screen.

## Beyond the Luminance Ramp: A Shape-Aware ASCII Renderer in Three.js

DevFeed: [Beyond the Luminance Ramp: A Shape-Aware ASCII Renderer in Three.js](<https://devfeed.tech/articles/beyond-the-luminance-ramp-a-shape-aware-ascii-renderer-in-three-js-4337.md>)

Original publisher: [Read original article](<https://tympanus.net/codrops/2026/09/04/beyond-the-luminance-ramp-a-shape-aware-ascii-renderer-in-three-js/>)

Author: Edoardo Lunardi

Published: 2026-09-04T15:01:38Z

Content type: tutorial

Language: en

Sources: [Codrops](<https://devfeed.tech/sources/codrops.md>)

Topics: [shape-aware rendering](<https://devfeed.tech/topics/shape-aware-rendering.md>), [ASCII art shader](<https://devfeed.tech/topics/ascii-art-shader.md>), [Three.js shaders](<https://devfeed.tech/topics/three-js-shaders.md>), [Three.js custom shaders](<https://devfeed.tech/topics/three-js-custom-shaders.md>)

Tags: [3d](<https://devfeed.tech/tags/3d.md>), [ascii](<https://devfeed.tech/tags/ascii.md>), [ascii-art-shader](<https://devfeed.tech/tags/ascii-art-shader.md>), [ascii-dithering](<https://devfeed.tech/tags/ascii-dithering.md>), [ascii-shader](<https://devfeed.tech/tags/ascii-shader.md>), [atlas](<https://devfeed.tech/tags/atlas.md>), [browser-based-ascii-renderer](<https://devfeed.tech/tags/browser-based-ascii-renderer.md>), [creative-coding-three-js](<https://devfeed.tech/tags/creative-coding-three-js.md>), [custom-element-webgl](<https://devfeed.tech/tags/custom-element-webgl.md>), [draggable](<https://devfeed.tech/tags/draggable.md>), [draggable-3d-logo](<https://devfeed.tech/tags/draggable-3d-logo.md>), [glsl-ascii-shader](<https://devfeed.tech/tags/glsl-ascii-shader.md>), [glyph-atlas-rendering](<https://devfeed.tech/tags/glyph-atlas-rendering.md>), [glyph-matching-algorithm](<https://devfeed.tech/tags/glyph-matching-algorithm.md>), [gpu](<https://devfeed.tech/tags/gpu.md>), [gpu-ascii-rendering](<https://devfeed.tech/tags/gpu-ascii-rendering.md>), [gpu-glyph-search](<https://devfeed.tech/tags/gpu-glyph-search.md>), [interactive-ascii-art](<https://devfeed.tech/tags/interactive-ascii-art.md>), [luminance-ramp-alternative](<https://devfeed.tech/tags/luminance-ramp-alternative.md>), [procedural-ascii-art](<https://devfeed.tech/tags/procedural-ascii-art.md>), [real-time-ascii-rendering](<https://devfeed.tech/tags/real-time-ascii-rendering.md>), [shaders](<https://devfeed.tech/tags/shaders.md>), [shape-aware-ascii-renderer](<https://devfeed.tech/tags/shape-aware-ascii-renderer.md>), [shape-aware-rendering](<https://devfeed.tech/tags/shape-aware-rendering.md>), [three-js](<https://devfeed.tech/tags/three-js.md>), [three-js-ascii-renderer](<https://devfeed.tech/tags/three-js-ascii-renderer.md>), [three-js-custom-shaders](<https://devfeed.tech/tags/three-js-custom-shaders.md>), [three-js-shader-tutorial](<https://devfeed.tech/tags/three-js-shader-tutorial.md>), [three-js-webgl](<https://devfeed.tech/tags/three-js-webgl.md>), [tutorials](<https://devfeed.tech/tags/tutorials.md>), [webgl](<https://devfeed.tech/tags/webgl.md>), [webgl-ascii-art](<https://devfeed.tech/tags/webgl-ascii-art.md>), [webgl-post-processing](<https://devfeed.tech/tags/webgl-post-processing.md>), [webgl-shader-tutorial](<https://devfeed.tech/tags/webgl-shader-tutorial.md>)

### AI overview

A Three.js ASCII renderer improves on luminance-only glyph selection by sampling each character cell's shape and matching it against printable glyphs on the GPU.

### Source excerpt

The Codrops mark, rebuilt as a draggable solid and printed in ASCII on the GPU, where every character cell searches 95 glyphs for its own.

## From Rays to Meshes: Building Vercel's Prism with vgpu

DevFeed: [From Rays to Meshes: Building Vercel's Prism with vgpu](<https://devfeed.tech/articles/from-rays-to-meshes-building-vercel-s-prism-with-vgpu-4334.md>)

Original publisher: [Read original article](<https://tympanus.net/codrops/2026/09/03/from-rays-to-meshes-building-vercels-prism-with-vgpu/>)

Author: Matias Gonzalez Fernandez

Published: 2026-09-03T16:01:06Z

Content type: tutorial

Language: en

Sources: [Codrops](<https://devfeed.tech/sources/codrops.md>)

Topics: [GPU](<https://devfeed.tech/topics/gpu.md>)

Tags: [3d](<https://devfeed.tech/tags/3d.md>), [3d-graphics](<https://devfeed.tech/tags/3d-graphics.md>), [adaptive-rendering](<https://devfeed.tech/tags/adaptive-rendering.md>), [articles](<https://devfeed.tech/tags/articles.md>), [creative-coding](<https://devfeed.tech/tags/creative-coding.md>), [glass](<https://devfeed.tech/tags/glass.md>), [glass-shader](<https://devfeed.tech/tags/glass-shader.md>), [glsl](<https://devfeed.tech/tags/glsl.md>), [glsl-shaders](<https://devfeed.tech/tags/glsl-shaders.md>), [gpu](<https://devfeed.tech/tags/gpu.md>), [gpu-optimization](<https://devfeed.tech/tags/gpu-optimization.md>), [gpu-rendering](<https://devfeed.tech/tags/gpu-rendering.md>), [interactive-web-graphics](<https://devfeed.tech/tags/interactive-web-graphics.md>), [javascript-graphics](<https://devfeed.tech/tags/javascript-graphics.md>), [light-refraction](<https://devfeed.tech/tags/light-refraction.md>), [mesh](<https://devfeed.tech/tags/mesh.md>), [prism-shader](<https://devfeed.tech/tags/prism-shader.md>), [ray-tracing](<https://devfeed.tech/tags/ray-tracing.md>), [real-time-rendering](<https://devfeed.tech/tags/real-time-rendering.md>), [real-time-shaders](<https://devfeed.tech/tags/real-time-shaders.md>), [shader-performance](<https://devfeed.tech/tags/shader-performance.md>), [shader-programming](<https://devfeed.tech/tags/shader-programming.md>), [shaders](<https://devfeed.tech/tags/shaders.md>), [vercel](<https://devfeed.tech/tags/vercel.md>), [vercel-prism](<https://devfeed.tech/tags/vercel-prism.md>), [vercel-vgpu](<https://devfeed.tech/tags/vercel-vgpu.md>), [vgpu](<https://devfeed.tech/tags/vgpu.md>), [web-graphics](<https://devfeed.tech/tags/web-graphics.md>), [web-shaders](<https://devfeed.tech/tags/web-shaders.md>), [webgl](<https://devfeed.tech/tags/webgl.md>), [webgl-shaders](<https://devfeed.tech/tags/webgl-shaders.md>)

### AI overview

A tutorial on creating Vercel's prism visual with vgpu shaders. It replaces costly ray-based light simulation with refracted paths connected into a 3D mesh, then adds an environment-mapped glass shader, bloom, and particles.

### Source excerpt

A look at how Vercel's vgpu creates a performant prism effect using shaders, geometry, glass, and adaptive rendering.

## Behind the build: Generative plugins and shaders at Figma

DevFeed: [Behind the build: Generative plugins and shaders at Figma](<https://devfeed.tech/articles/behind-the-build-generative-plugins-and-shaders-at-figma-9806.md>)

Original publisher: [Read original article](<https://www.figma.com/blog/how-we-built-generative-plugins-and-shaders/>)

Author: Rogie King

Published: 2026-09-01T14:39:43.296000Z

Content type: article

Language: en

Sources: [Figma Blog](<https://devfeed.tech/sources/figma-blog.md>)

Topics: [Figma](<https://devfeed.tech/topics/figma.md>), [Artificial Intelligence](<https://devfeed.tech/topics/ai.md>), [Model Context Protocol](<https://devfeed.tech/topics/model-context-protocol.md>), [GPU](<https://devfeed.tech/topics/gpu.md>), [webgpu](<https://devfeed.tech/topics/webgpu.md>), [Large Language Model](<https://devfeed.tech/topics/llm.md>), [Code](<https://devfeed.tech/topics/code.md>), [React Native](<https://devfeed.tech/topics/react-native.md>)

Tags: [agent](<https://devfeed.tech/tags/agent.md>), [ai](<https://devfeed.tech/tags/ai.md>), [code](<https://devfeed.tech/tags/code.md>), [collaboration](<https://devfeed.tech/tags/collaboration.md>), [community](<https://devfeed.tech/tags/community.md>), [design](<https://devfeed.tech/tags/design.md>), [figma](<https://devfeed.tech/tags/figma.md>), [generative](<https://devfeed.tech/tags/generative.md>), [gpu](<https://devfeed.tech/tags/gpu.md>), [llms](<https://devfeed.tech/tags/llms.md>), [mcp](<https://devfeed.tech/tags/mcp.md>), [mcp-server](<https://devfeed.tech/tags/mcp-server.md>), [product](<https://devfeed.tech/tags/product.md>), [react](<https://devfeed.tech/tags/react.md>), [shaders](<https://devfeed.tech/tags/shaders.md>), [tools](<https://devfeed.tech/tags/tools.md>), [webgpu](<https://devfeed.tech/tags/webgpu.md>)

### AI overview

Figma describes how generative plugins and shaders expand creative control through prompting, custom tools, richer context, animated effects, code access, community publishing, and MCP integration. The article connects GPU-based real-time pixel manipulation with AI-assisted movement between design and code.

### Source excerpt

Starting today, you'll have more creative control over generative plugins and shaders, and a way to share what you've made with the community. Product Designer Rogie King tells the story of how we got here.

## Introducing @huggingface/kernels: 200+ WebGPU Kernels for Local AI

DevFeed: [Introducing @huggingface/kernels: 200+ WebGPU Kernels for Local AI](<https://devfeed.tech/articles/introducing-huggingface-kernels-200-webgpu-kernels-for-local-ai-7566.md>)

Original publisher: [Read original article](<https://huggingface.co/blog/webgpu-kernels>)

Author: Nico Martin; Joshua

Published: 2026-09-01T00:00:00Z

Content type: release

Language: en

Sources: [Hugging Face - Blog](<https://devfeed.tech/sources/hugging-face-blog.md>)

Topics: [webgpu](<https://devfeed.tech/topics/webgpu.md>), [Local AI](<https://devfeed.tech/topics/local-ai.md>), [Machine learning](<https://devfeed.tech/topics/machine-learning.md>), [Inference](<https://devfeed.tech/topics/inference.md>), [benchmarking](<https://devfeed.tech/topics/benchmarking.md>), [GPU](<https://devfeed.tech/topics/gpu.md>), [Optimization](<https://devfeed.tech/topics/optimization.md>)

Tags: [benchmark](<https://devfeed.tech/tags/benchmark.md>), [gpu](<https://devfeed.tech/tags/gpu.md>), [hub](<https://devfeed.tech/tags/hub.md>), [inference](<https://devfeed.tech/tags/inference.md>), [javascript](<https://devfeed.tech/tags/javascript.md>), [kernels](<https://devfeed.tech/tags/kernels.md>), [local-ai](<https://devfeed.tech/tags/local-ai.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [optimization](<https://devfeed.tech/tags/optimization.md>), [shaders](<https://devfeed.tech/tags/shaders.md>), [testing](<https://devfeed.tech/tags/testing.md>), [webgpu](<https://devfeed.tech/tags/webgpu.md>)

### AI overview

Hugging Face releases @huggingface/kernels, a JavaScript library and collection of 207 versioned WebGPU kernel packages for browser-based local AI. It also introduces Fleet, a browser benchmarking and testing suite that gathers opted-in performance and correctness evidence across hardware.

### Source excerpt

We're on a journey to advance and democratize artificial intelligence through open source and open science.

## MiniDXNN v0.4.0: Interactive neural texture compression on DirectX 12

DevFeed: [MiniDXNN v0.4.0: Interactive neural texture compression on DirectX 12](<https://devfeed.tech/articles/minidxnn-v0-4-0-interactive-neural-texture-compression-on-directx-12-15043.md>)

Original publisher: [Read original article](<https://gpuopen.com/learn/minidxnn-v040-interactive-neural-texture-compression/>)

Author: Takahiro Harada; Sho Ikeda

Published: 2026-08-13T14:30:00Z

Content type: release

Language: en

Sources: [AMD GPUOpen](<https://devfeed.tech/sources/amd-gpuopen.md>)

Topics: [Compression](<https://devfeed.tech/topics/compression.md>), [GPU](<https://devfeed.tech/topics/gpu.md>), [Inference](<https://devfeed.tech/topics/inference.md>), [mlp](<https://devfeed.tech/topics/mlp.md>), [Machine learning](<https://devfeed.tech/topics/machine-learning.md>), [GUI](<https://devfeed.tech/topics/gui.md>), [shaders](<https://devfeed.tech/topics/shaders.md>), [Open Source](<https://devfeed.tech/topics/open-source.md>)

Tags: [agility-sdk](<https://devfeed.tech/tags/agility-sdk.md>), [announcement](<https://devfeed.tech/tags/announcement.md>), [compression](<https://devfeed.tech/tags/compression.md>), [directx](<https://devfeed.tech/tags/directx.md>), [driver](<https://devfeed.tech/tags/driver.md>), [getting-started](<https://devfeed.tech/tags/getting-started.md>), [gpu](<https://devfeed.tech/tags/gpu.md>), [gpu-open-sdks](<https://devfeed.tech/tags/gpu-open-sdks.md>), [gpu-open-tools](<https://devfeed.tech/tags/gpu-open-tools.md>), [gpuopen-sdks](<https://devfeed.tech/tags/gpuopen-sdks.md>), [gpuopen-tools](<https://devfeed.tech/tags/gpuopen-tools.md>), [graphics-apis](<https://devfeed.tech/tags/graphics-apis.md>), [gui](<https://devfeed.tech/tags/gui.md>), [inference](<https://devfeed.tech/tags/inference.md>), [maths](<https://devfeed.tech/tags/maths.md>), [memory](<https://devfeed.tech/tags/memory.md>), [microsoft](<https://devfeed.tech/tags/microsoft.md>), [microsoft-agility-sdk](<https://devfeed.tech/tags/microsoft-agility-sdk.md>), [microsoft-directx](<https://devfeed.tech/tags/microsoft-directx.md>), [ml](<https://devfeed.tech/tags/ml.md>), [mlp](<https://devfeed.tech/tags/mlp.md>), [neural](<https://devfeed.tech/tags/neural.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [product-release](<https://devfeed.tech/tags/product-release.md>), [quick-start](<https://devfeed.tech/tags/quick-start.md>), [real-time](<https://devfeed.tech/tags/real-time.md>), [shaders](<https://devfeed.tech/tags/shaders.md>), [technical-article](<https://devfeed.tech/tags/technical-article.md>), [technical-articles](<https://devfeed.tech/tags/technical-articles.md>), [tools](<https://devfeed.tech/tags/tools.md>)

### AI overview

MiniDXNN v0.4.0 is an open-source library for GPU-accelerated MLP inference and training on DirectX 12. The release adds D3D12 Linear Algebra support, input encoding for neural texture compression, and a real-time GUI application for training and visualizing texture representations.

### Source excerpt

MiniDXNN v0.4.0 introduces D3D12 Linear Algebra (SM 6.10) support, input encodings and neural texture compression, plus a real-time GUI app that trains and visualizes GPU-accelerated MLPs on DirectX® 12.

## What's new in the Jetpack Compose August '26 release

DevFeed: [What's new in the Jetpack Compose August '26 release](<https://devfeed.tech/articles/what-s-new-in-the-jetpack-compose-august-26-release-22693.md>)

Original publisher: [Read original article](<http://android-developers.googleblog.com/2026/08/jetpack-compose-august-2026-release.html>)

Author: Android Developers (noreply@blogger.com)

Published: 2026-08-12T16:00:00Z

Content type: release

Language: en

Sources: [Android Developers Blog](<https://devfeed.tech/sources/android-developers-blog-3.md>)

Topics: [Compose](<https://devfeed.tech/topics/compose.md>), [Jetpack Compose](<https://devfeed.tech/topics/jetpack-compose.md>), [Android](<https://devfeed.tech/topics/android.md>), [API](<https://devfeed.tech/topics/api.md>), [upgrade](<https://devfeed.tech/topics/upgrade.md>), [Documentation](<https://devfeed.tech/topics/documentation.md>)

Tags: [2026](<https://devfeed.tech/tags/2026.md>), [android](<https://devfeed.tech/tags/android.md>), [compose](<https://devfeed.tech/tags/compose.md>), [graphics](<https://devfeed.tech/tags/graphics.md>), [jetpack-compose](<https://devfeed.tech/tags/jetpack-compose.md>), [layout](<https://devfeed.tech/tags/layout.md>), [performance](<https://devfeed.tech/tags/performance.md>), [release](<https://devfeed.tech/tags/release.md>), [sdk](<https://devfeed.tech/tags/sdk.md>), [shaders](<https://devfeed.tech/tags/shaders.md>), [update](<https://devfeed.tech/tags/update.md>), [upgrade](<https://devfeed.tech/tags/upgrade.md>)

### AI overview

The Jetpack Compose August 2026 release is stable and brings version 1.12 to core Compose modules. It adds Mesh Gradients, Wide Color Gamut and HDR rendering support, named areas in Grid, Credential Manager integration, and testing and performance improvements. The release also includes breaking changes, including a requirement for API 37 and AGP 9.1.1.

### Source excerpt

Posted by Nick Butcher, Product Manager, Jetpack Compose Today, the Jetpack Compose August '26 release is stable! This release brings version 1.12 across core Compose modules (see the full BOM mapping), introducing rich visual APIs like Mesh Gradients and Wide Color Gamut (WCG) support, structural layout features like named areas in Grid, seamless integration with Android's Credential Manager, and significant testing and performance improvements. To update your project to today's release, upgrade your Compose BOM version to 2026.08.00: implementation(platform("androidx.compose:compose-bom:2026.08.00")) Breaking Changes AGP & Compile SDK: Compose 1.12 updates compileSdk to API 37, requiring a minimum AGP 9.1.1. As a reminder, Compose will always target the latest compileSdk. Learn more about this change here. Modifier.onFirstVisible() is deprecated: Migrate to Modifier.onVisibilityChanged(), which provides more precise visibility threshold tracking. Graphics Mesh Gradients Compose 1.12 introduces MeshGradientPainter to help you create multi-point, organic color gradients. val rows = 1 val columns = 1 val gradientPainter = remember { MeshGradientPainter(rows, columns) { // Parameters: row, column, position, color setVertex(0, 0, Offset(0f, 0f), Color.Red) // Top-Left setVertex(0, 1, Offset(1f, 0f), Color.Blue) // Top-Right setVertex(1, 0, Offset(0f, 1f), Color.Green) // Bottom-Left setVertex(1, 1, Offset(1f, 1f), Color.Yellow) // Bottom-Right } } Box( modifier = modifier .aspectRatio(16/9f) .fillMaxWidth() .paint(gradientPainter) ) For more information and examples, see the documentation. Wide Color Gamut & HDR Support Modern displays offer extended color fidelity and higher dynamic range. In Compose 1.12, full pipeline support for Wide Color Gamut (P3) and HDR rendering has been enabled across Compose graphics, paint, and shaders. Colors defined in non-sRGB color spaces (such as Display P3) are preserved through to platform rendering without color clamping. Colors wi

## Digital tools, human expression: The visual identity behind Config 2026

DevFeed: [Digital tools, human expression: The visual identity behind Config 2026](<https://devfeed.tech/articles/digital-tools-human-expression-the-visual-identity-behind-config-2026-10155.md>)

Original publisher: [Read original article](<https://www.figma.com/blog/the-visual-identity-behind-config-2026/>)

Author: Matt Alagiah

Published: 2026-07-27T16:30:00Z

Content type: article

Language: en

Sources: [Figma Blog](<https://devfeed.tech/sources/figma-blog.md>)

Topics: [Figma](<https://devfeed.tech/topics/figma.md>), [Artificial Intelligence](<https://devfeed.tech/topics/ai.md>), [shaders](<https://devfeed.tech/topics/shaders.md>), [Code](<https://devfeed.tech/topics/code.md>)

Tags: [ai](<https://devfeed.tech/tags/ai.md>), [ai-tools](<https://devfeed.tech/tags/ai-tools.md>), [conference](<https://devfeed.tech/tags/conference.md>), [design](<https://devfeed.tech/tags/design.md>), [figma](<https://devfeed.tech/tags/figma.md>), [images](<https://devfeed.tech/tags/images.md>), [shaders](<https://devfeed.tech/tags/shaders.md>), [tools](<https://devfeed.tech/tags/tools.md>)

### AI overview

Figma's Brand Studio explains the visual identity for Config 2026, combining expressive glyphs, prompted textures, generative tools, shaders, and Figma Make to balance digital experimentation with human craft and imperfection.

### Source excerpt

Here's how Figma's Brand Studio designed a conference that captured the very human ways we remix and reinvent when working with AI tools.

## Config 2026: New materials, new tools and a more expressive canvas

DevFeed: [Config 2026: New materials, new tools and a more expressive canvas](<https://devfeed.tech/articles/config-2026-new-materials-new-tools-and-a-more-expressive-canvas-9585.md>)

Original publisher: [Read original article](<https://www.figma.com/blog/config-2026-recap/>)

Author: Dylan Field

Published: 2026-06-24T15:00:00Z

Content type: release

Language: en

Sources: [Figma Blog](<https://devfeed.tech/sources/figma-blog.md>)

Topics: [Figma](<https://devfeed.tech/topics/figma.md>), [Canvas](<https://devfeed.tech/topics/canvas.md>), [Code](<https://devfeed.tech/topics/code.md>), [shaders](<https://devfeed.tech/topics/shaders.md>), [generative plugins](<https://devfeed.tech/topics/generative-plugins.md>)

Tags: [announcements](<https://devfeed.tech/tags/announcements.md>), [canvas](<https://devfeed.tech/tags/canvas.md>), [code](<https://devfeed.tech/tags/code.md>), [figma](<https://devfeed.tech/tags/figma.md>), [generative-plugins](<https://devfeed.tech/tags/generative-plugins.md>), [shaders](<https://devfeed.tech/tags/shaders.md>), [updates](<https://devfeed.tech/tags/updates.md>)

### AI overview

Figma's Config 2026 announcements introduce new materials and canvas tools, including code layers, Figma Motion, shaders, generative plugins, and Weave tools. The article explains how code layers can become interactive, be duplicated for exploration, and be iterated on collaboratively alongside design layers.

### Source excerpt

Push past what you thought was possible with code layers, Figma Motion, shaders, generative plugins and Weave tools, all on the canvas.

## What's New in WebGPU (Chrome 149-150)

DevFeed: [What's New in WebGPU (Chrome 149-150)](<https://devfeed.tech/articles/what-s-new-in-webgpu-chrome-149-150-4141.md>)

Original publisher: [Read original article](<https://developer.chrome.com/blog/new-in-webgpu-149-150?hl=en>)

Author: François Beaufort GitHub

Published: 2026-06-17T07:00:00Z

Content type: article

Language: en

Sources: [developer.chrome.com: Blog](<https://devfeed.tech/sources/developer-chrome-com-blog.md>)

Topics: [webgpu](<https://devfeed.tech/topics/webgpu.md>), [Chrome](<https://devfeed.tech/topics/chrome.md>), [GPU](<https://devfeed.tech/topics/gpu.md>), [shaders](<https://devfeed.tech/topics/shaders.md>)

Tags: [chrome](<https://devfeed.tech/tags/chrome.md>), [gpu](<https://devfeed.tech/tags/gpu.md>), [shaders](<https://devfeed.tech/tags/shaders.md>), [validation](<https://devfeed.tech/tags/validation.md>), [webgpu](<https://devfeed.tech/tags/webgpu.md>)

### AI overview

WebGPU updates in Chrome 149-150 introduce immediates for passing small, frequently changing values directly to shaders and refine validation rules for transient render attachments.

### Source excerpt

Immediates and stricter validation for transient attachments.

## 3D Graphics Without Writing Shaders: The Portable GPU API

DevFeed: [3D Graphics Without Writing Shaders: The Portable GPU API](<https://devfeed.tech/articles/3d-graphics-without-writing-shaders-the-portable-gpu-api-19440.md>)

Original publisher: [Read original article](<https://www.codenameone.com/blog/portable-3d-graphics-api/>)

Author: Shai Almog

Published: 2026-06-13T00:00:00Z

Content type: article

Language: en

Sources: [CodeName One](<https://devfeed.tech/sources/codename-one.md>)

Topics: [3D graphics](<https://devfeed.tech/topics/3d-graphics.md>), [API](<https://devfeed.tech/topics/api.md>), [Java](<https://devfeed.tech/topics/java.md>), [GPU](<https://devfeed.tech/topics/gpu.md>), [shaders](<https://devfeed.tech/topics/shaders.md>), [OpenGL](<https://devfeed.tech/topics/opengl.md>), [WebGL](<https://devfeed.tech/topics/webgl.md>)

Tags: [3d](<https://devfeed.tech/tags/3d.md>), [3d-graphics](<https://devfeed.tech/tags/3d-graphics.md>), [api](<https://devfeed.tech/tags/api.md>), [code](<https://devfeed.tech/tags/code.md>), [cross-platform](<https://devfeed.tech/tags/cross-platform.md>), [gpu](<https://devfeed.tech/tags/gpu.md>), [java](<https://devfeed.tech/tags/java.md>), [shaders](<https://devfeed.tech/tags/shaders.md>), [software](<https://devfeed.tech/tags/software.md>), [webgl](<https://devfeed.tech/tags/webgl.md>)

### AI overview

The article describes Codename One's com.codename1.gpu API, which lets applications render portable 3D graphics from one Java codebase across Metal, OpenGL ES, WebGL, Direct3D 11, and a software rasterizer. Developers describe materials while platform-specific generators produce the shader code.

### Source excerpt

The new com.codename1.gpu API renders the same Java code through Metal, OpenGL ES, WebGL, Direct3D 11, and a software rasterizer. You describe materials and the engine generates the shaders for each platform.

## New AMD Radeon Developer Tool Suite update brings shader source code, Extended PIX Markers, and command-line capture

DevFeed: [New AMD Radeon Developer Tool Suite update brings shader source code, Extended PIX Markers, and command-line capture](<https://devfeed.tech/articles/new-amd-radeon-developer-tool-suite-update-brings-shader-source-code-extended-pix-markers-and-command-line-capture-15046.md>)

Original publisher: [Read original article](<https://gpuopen.com/learn/radeon-developer-tool-suite-shader-source-code/>)

Author: Chris Hesik

Published: 2026-06-11T16:26:00Z

Content type: release

Language: en

Sources: [AMD GPUOpen](<https://devfeed.tech/sources/amd-gpuopen.md>)

Topics: [GPU](<https://devfeed.tech/topics/gpu.md>), [shaders](<https://devfeed.tech/topics/shaders.md>), [Ray Tracing](<https://devfeed.tech/topics/ray-tracing.md>), [Command-line interface](<https://devfeed.tech/topics/cli.md>), [Software](<https://devfeed.tech/topics/software.md>), [Hardware](<https://devfeed.tech/topics/hardware.md>)

Tags: [agility-sdk](<https://devfeed.tech/tags/agility-sdk.md>), [amd](<https://devfeed.tech/tags/amd.md>), [announcement](<https://devfeed.tech/tags/announcement.md>), [command-line](<https://devfeed.tech/tags/command-line.md>), [developer](<https://devfeed.tech/tags/developer.md>), [directx](<https://devfeed.tech/tags/directx.md>), [driver](<https://devfeed.tech/tags/driver.md>), [gpu](<https://devfeed.tech/tags/gpu.md>), [gpu-open-tools](<https://devfeed.tech/tags/gpu-open-tools.md>), [gpuopen-other-amd](<https://devfeed.tech/tags/gpuopen-other-amd.md>), [gpuopen-tools](<https://devfeed.tech/tags/gpuopen-tools.md>), [graphics-apis](<https://devfeed.tech/tags/graphics-apis.md>), [hardware](<https://devfeed.tech/tags/hardware.md>), [memory](<https://devfeed.tech/tags/memory.md>), [microsoft](<https://devfeed.tech/tags/microsoft.md>), [microsoft-agility-sdk](<https://devfeed.tech/tags/microsoft-agility-sdk.md>), [microsoft-directx](<https://devfeed.tech/tags/microsoft-directx.md>), [news](<https://devfeed.tech/tags/news.md>), [optimization](<https://devfeed.tech/tags/optimization.md>), [other-amd](<https://devfeed.tech/tags/other-amd.md>), [performance](<https://devfeed.tech/tags/performance.md>), [product-blogs](<https://devfeed.tech/tags/product-blogs.md>), [product-release](<https://devfeed.tech/tags/product-release.md>), [profiling](<https://devfeed.tech/tags/profiling.md>), [radeon-developer-panel](<https://devfeed.tech/tags/radeon-developer-panel.md>), [radeon-developer-tool-suite](<https://devfeed.tech/tags/radeon-developer-tool-suite.md>), [radeon-gpu-analyzer](<https://devfeed.tech/tags/radeon-gpu-analyzer.md>), [radeon-gpu-detective](<https://devfeed.tech/tags/radeon-gpu-detective.md>), [radeon-gpu-profiler](<https://devfeed.tech/tags/radeon-gpu-profiler.md>), [radeon-memory-visualizer](<https://devfeed.tech/tags/radeon-memory-visualizer.md>), [radeon-raytracing-analyzer](<https://devfeed.tech/tags/radeon-raytracing-analyzer.md>), [ray-tracing](<https://devfeed.tech/tags/ray-tracing.md>), [raytracing](<https://devfeed.tech/tags/raytracing.md>), [rdp](<https://devfeed.tech/tags/rdp.md>), [rdts](<https://devfeed.tech/tags/rdts.md>), [release](<https://devfeed.tech/tags/release.md>), [rga](<https://devfeed.tech/tags/rga.md>), [rgd](<https://devfeed.tech/tags/rgd.md>), [rgp](<https://devfeed.tech/tags/rgp.md>), [rmv](<https://devfeed.tech/tags/rmv.md>), [rra](<https://devfeed.tech/tags/rra.md>), [shaders](<https://devfeed.tech/tags/shaders.md>), [source](<https://devfeed.tech/tags/source.md>), [technical-articles](<https://devfeed.tech/tags/technical-articles.md>), [tool](<https://devfeed.tech/tags/tool.md>), [tools](<https://devfeed.tech/tags/tools.md>)

### AI overview

AMD's Radeon Developer Tool Suite update adds shader source code viewing, instruction-level divergence metrics, and Extended PIX Marker support in RGP 2.7. It also expands hardware compatibility and updates other tools in the suite.

### Source excerpt

The new AMD Radeon Developer Tool Suite release delivers RGP 2.7 with shader source code viewing, instruction-level divergence metrics, and Extended PIX Marker support, expanded hardware compatibility, and updates across RGD, RRA, RMV, RGA, and RDP.

## Video Encoding and Decoding with Vulkan Compute Shaders in FFmpeg

DevFeed: [Video Encoding and Decoding with Vulkan Compute Shaders in FFmpeg](<https://devfeed.tech/articles/video-encoding-and-decoding-with-vulkan-compute-shaders-in-ffmpeg-15121.md>)

Original publisher: [Read original article](<https://www.khronos.org/blog/video-encoding-and-decoding-with-vulkan-compute-shaders-in-ffmpeg>)

Author: jphilips (jeff@khronosgroup.org)

Published: 2026-03-16T17:04:00Z

Content type: article

Language: en

Sources: [Blogs Khronos Blog](<https://devfeed.tech/sources/blogs-khronos-blog.md>)

Topics: [FFmpeg (Fast Forward Moving Picture Experts Group)](<https://devfeed.tech/topics/ffmpeg.md>), [GPU](<https://devfeed.tech/topics/gpu.md>), [shaders](<https://devfeed.tech/topics/shaders.md>), [Compression](<https://devfeed.tech/topics/compression.md>), [coding](<https://devfeed.tech/topics/coding.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [blog-vulkan-vulkan-vide](<https://devfeed.tech/tags/blog-vulkan-vulkan-vide.md>), [compression](<https://devfeed.tech/tags/compression.md>), [ffmpeg](<https://devfeed.tech/tags/ffmpeg.md>), [gpu](<https://devfeed.tech/tags/gpu.md>), [performance](<https://devfeed.tech/tags/performance.md>), [shaders](<https://devfeed.tech/tags/shaders.md>), [video](<https://devfeed.tech/tags/video.md>), [vulkan](<https://devfeed.tech/tags/vulkan.md>)

### AI overview

This article explains how FFmpeg uses Vulkan Compute shaders to accelerate encoding and decoding of professional-grade video on consumer GPUs. It describes the parallel and serial stages of codec pipelines and how this approach complements Vulkan Video's fixed-function support.

### Source excerpt

In this blog we explore how FFmpeg uses Vulkan Compute to seamlessly accelerate encoding and decoding of even professional-grade video on consumer GPUs -- unlocking GPU compute parallelism at scale, without specialized hardware. This approach complements Vulkan Video's fixed-function codec support, extending acceleration to formats and workflows it doesn't cover.

## Finger Shadows in Compose

DevFeed: [Finger Shadows in Compose](<https://devfeed.tech/articles/finger-shadows-in-compose-25611.md>)

Original publisher: [Read original article](<https://www.romainguy.dev/posts/2025/finger-shadows/>)

Author: Romain Guy

Published: 2025-11-29T00:00:00Z

Content type: tutorial

Language: en

Sources: [Posts on Romain Guy](<https://devfeed.tech/sources/posts-on-romain-guy.md>)

Topics: [Compose](<https://devfeed.tech/topics/compose.md>), [Android](<https://devfeed.tech/topics/android.md>), [GPU](<https://devfeed.tech/topics/gpu.md>), [shaders](<https://devfeed.tech/topics/shaders.md>), [ui](<https://devfeed.tech/topics/ui.md>), [Programming](<https://devfeed.tech/topics/programming.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [compose](<https://devfeed.tech/tags/compose.md>), [developer](<https://devfeed.tech/tags/developer.md>), [gpu](<https://devfeed.tech/tags/gpu.md>), [graphics](<https://devfeed.tech/tags/graphics.md>), [kotlin](<https://devfeed.tech/tags/kotlin.md>), [programming](<https://devfeed.tech/tags/programming.md>), [shaders](<https://devfeed.tech/tags/shaders.md>), [ui](<https://devfeed.tech/tags/ui.md>)

### AI overview

A tutorial on using Android 13's RuntimeShader API in Jetpack Compose to simulate soft shadows cast by a user's finger, stylus, or pointing device. It models the finger as an oriented capsule in 3D space and computes light visibility using cone and spherical-cap intersections.

### Source excerpt

I recently realized that I have never discussed graphics programming on this blog, and decided it was time to correct this. A few years ago, Android 13 introduced the RuntimeShader API that allows you to write custom GPU shaders and apply them to UI elements. In this blog post I will show you how this API can be used to simulate shadows projected by the user's finger (or stylus/pointing device) onto your UI.

## Fast calculation of the distance to cubic Bezier curves on the GPU

DevFeed: [Fast calculation of the distance to cubic Bezier curves on the GPU](<https://devfeed.tech/articles/fast-calculation-of-the-distance-to-cubic-bezier-curves-on-the-gpu-26120.md>)

Original publisher: [Read original article](<http://blog.pkh.me/p/46-fast-calculation-of-the-distance-to-cubic-bezier-curves-on-the-gpu.html>)

Published: 2025-10-18T09:21:56Z

Content type: article

Language: en

Sources: [The Last Static Blog RSS](<https://devfeed.tech/sources/the-last-static-blog-rss.md>)

Topics: [GPU](<https://devfeed.tech/topics/gpu.md>), [glsl](<https://devfeed.tech/topics/glsl.md>), [WebGL](<https://devfeed.tech/topics/webgl.md>), [shaders](<https://devfeed.tech/topics/shaders.md>), [pixel](<https://devfeed.tech/topics/pixel.md>), [Code](<https://devfeed.tech/topics/code.md>)

Tags: [glsl](<https://devfeed.tech/tags/glsl.md>), [gpu](<https://devfeed.tech/tags/gpu.md>), [graphics](<https://devfeed.tech/tags/graphics.md>), [math](<https://devfeed.tech/tags/math.md>), [maths](<https://devfeed.tech/tags/maths.md>), [pixel](<https://devfeed.tech/tags/pixel.md>), [prog](<https://devfeed.tech/tags/prog.md>), [shaders](<https://devfeed.tech/tags/shaders.md>), [source](<https://devfeed.tech/tags/source.md>), [visualization](<https://devfeed.tech/tags/visualization.md>), [webgl](<https://devfeed.tech/tags/webgl.md>), [webgl-demo](<https://devfeed.tech/tags/webgl-demo.md>)

### AI overview

This article explains how to calculate the distance from a point to a cubic Bézier curve on the GPU. It derives the distance function and its derivative, reducing the problem to solving a fifth-degree polynomial, and demonstrates the method with self-contained GLSL fragment shaders and WebGL visualizations.

### Source excerpt

Bézier curves are a core building block of text and 2D shapes rendering. There are several approaches to rendering them, but one especially challenging problem, both mathematically and technically, is computing the distance to a Bézier curve. For quadratic curves (one control point), this is fairly accessible, but for cubic (two control points) we're going to see why it is so hard. A glyph from the Virgil font, composed of multiple Bézier curves Having this distance field opens up many rendering possibilities. It's hard, but it's possible; here is a live proof: Distance to a cubic Bézier curve In this visualization, I'm borrowing your device resources to compute the distance to the curve for every single pixel. The yellow points are the control points of the curve (in white) and the blue zone is a representation of the distance field. Note All the demos and code in this article are self-contained GLSL fragment shaders. Most of the code can be found in the article, but feel free to inspect the source code of any of these WebGL demo for the complete code. They can be run verbatim using ShaderWorkshop. The basic maths In a previous article, we explained that a Bézier curve can be expressed as a polynomial. In our case, a cubic polynomial: B_3(t) = \textbf{a}t^3 + \textbf{b}t^2 + \textbf{c}t + \textbf{d} Where a, b, c and d are the vector coefficients derived from the start (P_0), end (P_3), and control points (P_1, P_2) using the following formulas (you can refer to the previous article for details): \begin{aligned} \textbf{a} &= -P_0 + 3(P_1-P_2) + P_3 \\ \textbf{b} &= 3P_0 - 6P_1 + 3P_2 \\ \textbf{c} &= -3P_0 + 3P_1 \\ \textbf{d} &= P_0 \end{aligned} For a given point p in 2D space, the distance to that Bézier curve can be expressed as a length between our curve and p: \begin{aligned} d(t) &= ||B_3(t) - \textbf{p}|| \\ &= ||\textbf{a}t^3 + \textbf{b}t^2 + \textbf{c}t + \textbf{d} - \textbf{p}|| \end{aligned} Our goal is to find the t value where d(t) is the smallest.

## Figma rendering: Powered by WebGPU

DevFeed: [Figma rendering: Powered by WebGPU](<https://devfeed.tech/articles/figma-rendering-powered-by-webgpu-9703.md>)

Original publisher: [Read original article](<https://www.figma.com/blog/figma-rendering-powered-by-webgpu/>)

Author: Alex Ringlein; Luke Anderson

Published: 2025-09-18T00:00:00Z

Content type: article

Language: en

Sources: [Figma Blog](<https://devfeed.tech/sources/figma-blog.md>)

Topics: [Figma](<https://devfeed.tech/topics/figma.md>), [webgpu](<https://devfeed.tech/topics/webgpu.md>), [WebGL](<https://devfeed.tech/topics/webgl.md>), [Optimization](<https://devfeed.tech/topics/optimization.md>), [GPU](<https://devfeed.tech/topics/gpu.md>), [browser](<https://devfeed.tech/topics/browser.md>), [Chromium](<https://devfeed.tech/topics/chromium.md>), [cpu](<https://devfeed.tech/topics/cpu.md>), [shaders](<https://devfeed.tech/topics/shaders.md>)

Tags: [browser](<https://devfeed.tech/tags/browser.md>), [chromium](<https://devfeed.tech/tags/chromium.md>), [compatibility](<https://devfeed.tech/tags/compatibility.md>), [cpu](<https://devfeed.tech/tags/cpu.md>), [figma](<https://devfeed.tech/tags/figma.md>), [gpu](<https://devfeed.tech/tags/gpu.md>), [graphics](<https://devfeed.tech/tags/graphics.md>), [optimization](<https://devfeed.tech/tags/optimization.md>), [performance](<https://devfeed.tech/tags/performance.md>), [shaders](<https://devfeed.tech/tags/shaders.md>), [webgl](<https://devfeed.tech/tags/webgl.md>), [webgpu](<https://devfeed.tech/tags/webgpu.md>)

### AI overview

Figma explains its migration from WebGL to WebGPU to improve rendering performance. The article describes compute shaders, moving work from the CPU to the GPU, reducing reliance on global state, modernizing the rendering interface, and maintaining WebGL compatibility during the rollout.

### Source excerpt

We've updated our renderer to use WebGPU, unlocking new performance optimization opportunities. Here's how we did it.

## Zed for Windows Progress Update

DevFeed: [Zed for Windows Progress Update](<https://devfeed.tech/articles/zed-for-windows-what-s-taking-so-long-13568.md>)

Original publisher: [Read original article](<https://zed.dev/blog/windows-progress-report>)

Author: Max Brunsfeld

Published: 2025-08-19T00:00:00Z

Content type: article

Language: en

Sources: [Zed Industries - Blog](<https://devfeed.tech/sources/zed-industries-blog.md>)

Topics: [Windows](<https://devfeed.tech/topics/windows.md>), [DirectX](<https://devfeed.tech/topics/directx.md>), [GPU](<https://devfeed.tech/topics/gpu.md>), [shaders](<https://devfeed.tech/topics/shaders.md>)

Tags: [directx](<https://devfeed.tech/tags/directx.md>), [gpu](<https://devfeed.tech/tags/gpu.md>), [shaders](<https://devfeed.tech/tags/shaders.md>), [windows](<https://devfeed.tech/tags/windows.md>), [zed](<https://devfeed.tech/tags/zed.md>)

### AI overview

Zed's Windows team reports progress on a DirectX 11 rendering backend intended to avoid Vulkan compatibility issues and reduce memory use. The work also involved shader debugging, a switch from Direct2D to DirectWrite for glyph rasterization, and investigation of GPU-memory allocation failures.

### Source excerpt

An update on what the Zed for Windows team has been doing in July and August.

## Introducing Skia Graphite: Chrome's rasterization backend for the future

DevFeed: [Introducing Skia Graphite: Chrome's rasterization backend for the future](<https://devfeed.tech/articles/introducing-skia-graphite-chrome-s-rasterization-backend-for-the-future-4195.md>)

Original publisher: [Read original article](<https://blog.chromium.org/2025/07/introducing-skia-graphite-chromes.html>)

Author: Chromium Blog (noreply@blogger.com)

Published: 2025-07-08T17:46:00Z

Content type: article

Language: en

Sources: [Chromium Blog](<https://devfeed.tech/sources/chromium-blog.md>)

Topics: [Chrome](<https://devfeed.tech/topics/chrome.md>), [GPU](<https://devfeed.tech/topics/gpu.md>), [Interaction to Next Paint](<https://devfeed.tech/topics/interaction-to-next-paint.md>), [browser](<https://devfeed.tech/topics/browser.md>), [OpenGL](<https://devfeed.tech/topics/opengl.md>), [shaders](<https://devfeed.tech/topics/shaders.md>), [Web](<https://devfeed.tech/topics/web.md>), [glsl](<https://devfeed.tech/topics/glsl.md>)

Tags: [chrome](<https://devfeed.tech/tags/chrome.md>), [gpu](<https://devfeed.tech/tags/gpu.md>), [graphics](<https://devfeed.tech/tags/graphics.md>), [graphics-apis](<https://devfeed.tech/tags/graphics-apis.md>), [interaction-to-next-paint](<https://devfeed.tech/tags/interaction-to-next-paint.md>), [multithreading](<https://devfeed.tech/tags/multithreading.md>), [none](<https://devfeed.tech/tags/none.md>), [performance](<https://devfeed.tech/tags/performance.md>), [render](<https://devfeed.tech/tags/render.md>), [screen](<https://devfeed.tech/tags/screen.md>), [shaders](<https://devfeed.tech/tags/shaders.md>), [the-fast-and-the-curious](<https://devfeed.tech/tags/the-fast-and-the-curious.md>), [vulkan](<https://devfeed.tech/tags/vulkan.md>), [web](<https://devfeed.tech/tags/web.md>)

### AI overview

The article introduces Skia Graphite, a new GPU rasterization backend for Chrome on Apple Silicon Macs. Graphite uses fewer code paths, supports modern graphics APIs such as Metal, Vulkan, and D3D12, and is multithreaded by default. It improved Motionmark 1.3 scores by almost 15% on a MacBook Pro M3 and improved several real-world performance metrics.

### Source excerpt

Today's The Fast and the Curious post covers the launch of Skia's new rasterization backend, Graphite, in Chrome on Apple Silicon Macs. Graphite is instrumental in helping Chrome achieve exceptional scores on Motionmark 1.3 and is key to unlocking a ton of future improvements in Chrome Graphics. A brief history of Skia in Chrome In Chrome, Skia is used to render paint commands from Blink and the browser UI into pixels on your screen, a process called rasterization. Skia has powered Chrome Graphics since the very beginning. Skia eventually ran into performance issues as the web evolved and became more complex, which led Chrome and Skia to invest in a GPU accelerated rasterization backend called Ganesh. Over the years, Ganesh matured into a solid highly performant rasterization backend and GPU rasterization launched on all platforms in Chrome on top of GL (via ANGLE on Windows D3D9/11). However, Ganesh always had a GL-centric design with too many specialized code paths and the team was hitting a wall when trying to implement optimizations that took advantage of modern graphics APIs in a principled manner. This set the stage for the team to rethink GPU rasterization from the ground up in the form of a new rasterization backend, Graphite. Graphite was developed from the start to be principled by having fewer and more comprehensible code paths. This forward looking design helps take advantage of modern graphics APIs like Metal, Vulkan and D3D12 and paradigms like compute based path rasterization, and is multithreaded by default. Results With Graphite in Chrome, we increased our Motionmark 1.3 scores by almost 15% on a Macbook Pro M3. At the same time, we improved real world metrics like INP (interaction to next paint time), LCP (time to largest contentful paint), graphics smoothness (percent dropped frames), GPU process malloc memory usage, and others. This all means substantially smoother interactions, less stutter when scrolling, and less time waiting for sites to show

## Make your site interactive with code layers

DevFeed: [Make your site interactive with code layers](<https://devfeed.tech/articles/make-your-site-interactive-with-code-layers-9872.md>)

Original publisher: [Read original article](<https://www.figma.com/blog/introducing-code-layers/>)

Author: Alex Mullans

Published: 2025-06-17T00:00:00Z

Content type: article

Language: en

Sources: [Figma Blog](<https://devfeed.tech/sources/figma-blog.md>)

Topics: [Figma](<https://devfeed.tech/topics/figma.md>), [Code](<https://devfeed.tech/topics/code.md>), [React](<https://devfeed.tech/topics/react.md>), [AI Chat](<https://devfeed.tech/topics/ai-chat.md>), [Canvas](<https://devfeed.tech/topics/canvas.md>), [Web](<https://devfeed.tech/topics/web.md>), [shaders](<https://devfeed.tech/topics/shaders.md>), [draggable](<https://devfeed.tech/topics/draggable.md>)

Tags: [ai](<https://devfeed.tech/tags/ai.md>), [code](<https://devfeed.tech/tags/code.md>), [component](<https://devfeed.tech/tags/component.md>), [design](<https://devfeed.tech/tags/design.md>), [developer](<https://devfeed.tech/tags/developer.md>), [draggable](<https://devfeed.tech/tags/draggable.md>), [features](<https://devfeed.tech/tags/features.md>), [figma](<https://devfeed.tech/tags/figma.md>), [generate](<https://devfeed.tech/tags/generate.md>), [react](<https://devfeed.tech/tags/react.md>), [shaders](<https://devfeed.tech/tags/shaders.md>), [tool](<https://devfeed.tech/tags/tool.md>), [web](<https://devfeed.tech/tags/web.md>), [website-design](<https://devfeed.tech/tags/website-design.md>), [workflow](<https://devfeed.tech/tags/workflow.md>)

### AI overview

Figma introduces code layers for Figma Sites, enabling users to add custom React-powered interactions and motion to website designs. Users can create or convert components into code layers, use Figma's AI chat to build and refine behavior, edit code directly, and generate variations for comparison on the canvas.

### Source excerpt

Today we're launching code layers--a new way to build custom interactions in Figma Sites.

## Doom GPU Flame Graphs

DevFeed: [Doom GPU Flame Graphs](<https://devfeed.tech/articles/doom-gpu-flame-graphs-13603.md>)

Original publisher: [Read original article](<http://www.brendangregg.com/blog//2025-05-01/doom-gpu-flame-graphs.html>)

Published: 2025-04-30T14:00:00Z

Content type: article

Language: en

Sources: [Brendan Gregg's Blog](<https://devfeed.tech/sources/brendan-gregg-s-blog.md>)

Topics: [GPU](<https://devfeed.tech/topics/gpu.md>), [shaders](<https://devfeed.tech/topics/shaders.md>), [intel](<https://devfeed.tech/topics/intel.md>), [Open Source](<https://devfeed.tech/topics/open-source.md>), [Code](<https://devfeed.tech/topics/code.md>)

Tags: [blog](<https://devfeed.tech/tags/blog.md>), [doom](<https://devfeed.tech/tags/doom.md>), [dust](<https://devfeed.tech/tags/dust.md>), [flame-graph](<https://devfeed.tech/tags/flame-graph.md>), [games](<https://devfeed.tech/tags/games.md>), [gaming](<https://devfeed.tech/tags/gaming.md>), [gpu](<https://devfeed.tech/tags/gpu.md>), [intel](<https://devfeed.tech/tags/intel.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [performance](<https://devfeed.tech/tags/performance.md>), [plugin](<https://devfeed.tech/tags/plugin.md>), [profile](<https://devfeed.tech/tags/profile.md>), [shaders](<https://devfeed.tech/tags/shaders.md>), [svg](<https://devfeed.tech/tags/svg.md>)

### AI overview

The article demonstrates full-stack GPU flame graphs and GPU FlameScope using GZDoom, including Intel Battlemage GPU support. It shows how synchronized CPU and GPU profiling can correlate workload periods and identify GPU shader compilation and NIR preprocessing as sources of CPU activity.

### Source excerpt

AI Flame Graphs are now open source and include Intel Battlemage GPU support, which means it can also generate full-stack GPU flame graphs for providing new insights into gaming performance, especially when coupled with FlameScope (an older open source project of mine). Here's an example of GZDoom, and I'll start with flame scopes for both CPU and GPU utilization, with details annotated: (Here are the raw CPU and GPU versions.) FlameScope shows a subsecond-offset heatmap of profile samples, where each column is one second (in this example, made up of 50 x 20ms blocks) and the color depth represents the number of samples, revealing variance and perturbation that you can select to generate a flame graph just for that time range. Update: the row size can be ajusted (it is limited by the sample rate captured in the profile), e.g., you could generate 60 rows to match 60fps games. Putting these CPU and GPU flame scopes side by side has enabled your eyes to do pattern matching to solve what would otherwise be a time-consuming task of performance correlation. The gaps in the GPU flame scope on the right - where the GPU was not doing much work - match the heavier periods of CPU work on the left. CPU Analysis FlameScope lets us click on the interesting periods. By selecting one of the CPU shader compilation stripes we get the flame graph just for that range: This is brilliant, and we can see exactly why the CPUs were busy for about 180 ms (the vertical length of the red stripe): it's doing compilation of GPU shaders and some NIR preprocessing (optimizations to the NIR intermediate representation that Mesa uses internally). If you are new to flame graphs, you look for the widest towers and optimize them first. Here is the interactive SVG. CPU flame graphs and CPU flame scope aren't new (from 2011 and 2018, both open source). What is new is full-stack GPU flame graphs and GPU flame scope. GPU Analysis Interesting details can also be selected in the GPU FlameScope for generating

## Vibecoding a Totoro tribute with Junie

DevFeed: [Vibecoding a Totoro tribute with Junie](<https://devfeed.tech/articles/vibecoding-a-totoro-tribute-with-junie-32084.md>)

Original publisher: [Read original article](<https://www.maiatoday.net/p/vibecoding-a-totoro-tribute-with-junie/>)

Published: 2025-03-02T21:02:23Z

Content type: tutorial

Language: en

Sources: [maiatoday](<https://devfeed.tech/sources/maiatoday.md>)

Topics: [junie](<https://devfeed.tech/topics/junie.md>), [Compose](<https://devfeed.tech/topics/compose.md>), [Kotlin Multiplatform](<https://devfeed.tech/topics/kotlin-multiplatform.md>), [Canvas](<https://devfeed.tech/topics/canvas.md>), [shaders](<https://devfeed.tech/topics/shaders.md>)

Tags: [animate](<https://devfeed.tech/tags/animate.md>), [canvas](<https://devfeed.tech/tags/canvas.md>), [code](<https://devfeed.tech/tags/code.md>), [compose](<https://devfeed.tech/tags/compose.md>), [junie](<https://devfeed.tech/tags/junie.md>), [kotlin](<https://devfeed.tech/tags/kotlin.md>), [kotlin-multiplatform](<https://devfeed.tech/tags/kotlin-multiplatform.md>), [screen](<https://devfeed.tech/tags/screen.md>), [shaders](<https://devfeed.tech/tags/shaders.md>)

### AI overview

The article describes using Junie to experiment with visual drawing techniques in a Kotlin Multiplatform Compose desktop project. The project combines canvases, gradients, paths, shapes, text, shaders, animations, and interaction to create a Totoro tribute, without aiming for production readiness.

### Source excerpt

Sunday afternoon. Perfect time to hang out with Junie. I want to refresh my memory on some Compose drawing techniques. I am not really in the mood for Googling. I don't need a production ready app. I really just want to mess around. How far can I vibe code this. I'll start off by setting Junie to brave mode. I added an image and some colours to the repo of a blank compose desktop project. I also put a copy of an older blogpost of mine with some drawing techniques. I set some ground rules with the first prompt and then just keep asking Junie to add things. Create a guidelines file with the following information and update the README.md file. Let's explore some visual techniques in this Kotlin multiplatform project. The aim is to go for variety of techniques. Feel free to use the canvas, brush, paint, gradient, lines, paths, rounded polygons, skia shaders, text, colours, shapes. Or anything that will create an interesting visual effect. Animations are not necessary but can be added. The project does not have a practical application other than to demonstrate how to create interesting visual elements and to have some fun. It is a visual tribute to the Studio Ghibli film, [My Neighbor Totoro](https://en.wikipedia.org/wiki/My_Neighbor_Totoro). * It does not need any tests * Layer all the visual techniques on the main composable screen. * Find the suggested fonts in the resources folder * Find inspiration in the docs/looks folder and in the docs/blogpost folder I think Junie got what I wanted to do, I never explained what Totoro looks like but it figured out something from the included inspiration image. The early experiments needed some tweaking The only time the project didn't run was when Junie didn't download the new fonts but I found the instructions on where to get the fonts added to the README.md. I had no real expectations so I'm pretty happy with the final result. Animating rain and clickable wobbling Totoro. No explanations really what can I say I didn't read the

[Next page](<https://devfeed.tech/tags/shaders.md?cursor=WyIyMDI1LTAzLTAyVDIxOjAyOjIzKzAwOjAwIiwgIjcwNmRiOTI1LWE1M2YtNDlkYi1iZmFlLTE3YzQ0M2IyZGQ3ZCJd>)