Exploring progressive image rendering across JPEG, PNG, WebP, AVIF, and JPEG XL.| jakearchibald.com
TL;DR Mac users can instantly convert images to different file formats (JPG, PNG, HEIC, etc.) without extra software—using the built-in “Quick Actions” tool.| ChurchTechToday.com | Resources for today's church
Dithering is still a surprisingly applicable technique, not just for practical reasons (such as preparing a full-color image for output on a non-color printer), but for artistic reasons as well. Dithering also has applications in web design, where it is a useful technique for reducing images with high color counts to lower color counts, reducing file size (and bandwidth) without harming quality. It also has uses when reducing 48 or 64bpp RAW-format digital photos to 24bpp RGB for editing.| tannerhelland.com
Concrete tetrapods are used to dissipate wave energy in| dotat.at
GTK has been using SVG for symbolic icons since essentially forever. It hasn't been a perfect relationship, though. Pre-History For the longest time (all through the GTK 3 era, and until recently), we've used librsvg indirectly, through gdk-pixbuf, to obtain rendered icons, and then we used some pixel tricks to recolor the resulting image according...| GTK Development Blog
As a writer I have (unsurprisingly) something of a bias towards the written word. I hate getting information from videos because they are so slow at putting stuff across - when I've had to do an online course with videos, I always use the transcript instead if available and get through it in half the time. I'm just not very visually oriented. But that said, I can of course see the benefit of graphics as a way of putting across a piece of information where words can be clumsy.When I help stude...| Now Appearing
These satisfying alphabets are from the 1900 and 1910 editions of The New Zanerian Alphabets, archived at The Weinberg Memorial Library’s Zaner-Bloser Penmanship Collection, an extensive collections of American ornamental penmanship from the late 19th and early 20th centuries. The company was founded in 1888 by Charles P. Zaner as the Zanerian School of Penmanship. … Continue reading "Alphabets From The Zanerian School of Penmanship, c.1910" The post Alphabets From The Zanerian School of ...| Flashbak
I have recently explored (again) the possibility of writing a high-res display driver for virtualized OS/2. But I ran (again) into a dizzying array of possible solutions, each with its own advantages and a good deal of drawbacks.| www.os2museum.com
Bézier curves are a core building block of text and 2D shapes rendering.| blog.pkh.me
The well oiled wheel of the Linux release cycle has just produced another kernel: Linus Torvalds announced the release of v6.17, which contains a number of contributions from Igalia. This cycle, which started immediately after the release of kernel v6.16 on the July 27 and ended on September 28 (63 days), includes 13089 new commits: $ git log --oneline --no-merges v6.16..v6.17 | wc -l 13089 And, as usual, the list of new features and changes is huge and scattered all over the code. Here are s...| Igalia
This post is about the usage of gamma correction on fragment shaders, what it is and when it is appropriate to apply gamma correction.| riccardoscalco.it
You copied the green screen.| The Old New Thing
Professional home page of Csaba SZELL, software engineer| cv.co.hu
The X.Org Developer’s Conference (XDC) is the key annual event for developers shaping the future of Open Graphics technologies, including the Linux kernel, Mesa, DRM, Wayland, and X11. It is taking place on Sep 29, Sep 30 and Oct 1 in Vienna, Austria.| Bootlin
The last feature of the class; light refraction. I use Snell’s Law for calculating the refracted light-vectors, and Beer’s Law for calculating light absorbance through mediums. I’ve got my render-farm running at full-tilt now, so I was able to get some really nice renders. AS A NOTE: WordPress seems to be resizing my images when […]| Matt Yan
Shiny ray-traced reflections!| Matt Yan
I just finished the last touches on the first project for the class I’m taking on path-tracing, and I’m pretty pleased with the result! Most of the work so far has been writing intersection code and testing everything with an incredibly basic ray-tracer (not worth showing!). I’m happy to finally have something to show for […]| Matt Yan
As the last project in my graphics class we were instructed to choose any white-paper, then research and implement it. I decided to implement depth of field (DoF). It’s an effect that simulates how lenses (cameras, our eyes, etc) focus light. I had to give a presentation which you can find here. In reality, we have to fake depth of […]| Matt Yan
The last graphics project of this semester was ambient occlusion (AO). This is a really subtle effect that mimics the shadowing you would see when something has a lot of folds/creases/occluding geometry on the surface of an object. For example, here’s a render of the bunny model without AO: Doesn’t look terrible right? The bunny has nice detailing […]| Matt Yan
I’ve knocked down the next graphics feature: exponential soft shadow mapping! Prior, I implemented traditional shadow-mapping, and they looked like this if you got close: See those pixelated edges? Not very pretty, and it gets worse the closer you get. With these new shadows, they can have varying penumbra, and look much better at close […]| Matt Yan
A long, long time ago, when I was just a wee freshman at DigiPen, I saw an awesome photo. The array of PBR balls; every graphics programmer has probably seen it at least once. It was crazy to me that you could get something to look so real on a computer. This was the moment I […]| Matt Yan
A topic I’ve never really been able to read a lot on is how one sets up their CPU-side pipeline. I’m not talking about how you treat your objects, but the actual definition of each pass, deciding what objects it will handle, resources it needs, etc. Up to about a month ago, my pipeline had remained […]| Matt Yan
Now that I’ve walked through the history of OpenGL and seen what I can do at what points in history, I can attack one of the long-standing problems I had with my old pixmap library. It’…| Bumbershoot Software
It Happened.| www.supergoodcode.com
1k LEDs Is No Limit| xayax.net
EEZ Studio is a free and open source IDE for embedded graphics development that supports LVGL and common Arduino targets like the ESP32 with a visual and “low code” layout experience. It generates code that can be compiled and uploaded to displays using the Arduino IDE or PlatformIO, and is actually the basis for a few commercial embedded display toolkits.| Tao of Mac
Beginners coming into our little corner of the programming world have it rough. Normal CPU-centric programming tends to start out with a “Hello World” sample, which can be completed in mere minutes. It takes far longer to simply download the toolchains and set them up. If you’re on a developer friendly OS, this can be completed in seconds as well.| Maister's Graphics Adventures
An exploration and explanation of how to generate interesting swoopy art.| nedbatchelder.com
A few weeks ago, I made a tiny demo that fits into 448 characters:| blog.pkh.me
Bootlin had a very strong presence at the recent Open Source Summit Europe, with 26 members of our team attending the event, 8 talks given by our engineers, and a booth at the technical showcase.| Bootlin
The way we write scientific papers doesn’t change very quickly. Once we settled into the AIMRaD (Abstract, Introduction, Methods, Results, and Discussion) format, we pretty much stuck with it: the vast majority of scientific papers use that format, or one of a few minor variations on it.* But we do tinker; and so, there’s a […]| Scientist Sees Squirrel
Bevy, Rust, Graphics, etc| jms55.github.io
Why does Space Station 14 crash with ANGLE on ARM64? 6 hours later…| slugcat.systems
I convert my Vulkan test program from C to OCaml and compare the results, then continue the Vulkan tutorial in OCaml, adding 3D, textures and depth …| roscidus.com
DaVinci Resolve is a professional video editing and color grading software developed by Blackmagic Design, and it happens to have a free ver...| Tao of Mac
For those of us that have been using it from the start, it can be hard to believe that Direct3D 12 has been around for ten years now. Windows 10 was released on July 29th 2015, and D3D12 has been with us ever since. While it’s true that this is the longest we’ve gone between major D3D version updates, it’s also not fair to say that the API has remained static.| therealmjp.github.io
Explore how to recreate Apple's stunning Liquid Glass effect using CSS, SVG Displacement Maps, and refraction calculations.| kube.io
Let's talk about our plans for Wayland support for Budgie Desktop and the work we are doing to make it a reality.| buddiesofbudgie.org
There have been numerous creative logo design showcases, logo designresources and logo design tutorials posted across the Web. While these help you to create a powerful toolbox for your logo designs, first you need to gain a solid understanding of what makes a logo design good and what you need to consider before starting using this toobox.| Smashing Magazine
How to build realtime blurs on the GPU and how the best blur algorithm works - "Dual Kawase"| blog.frost.kiwi
Physically based rendering from first principles| imadr.me
BPI Color’s August Newsletter What’s Happening in The Color Lab This season, our team has seen a strong wave of signage projects centered on ADA signage, directional wayfinding, and branded environmental graphics. These projects reflect both ongoing compliance needs and the growing emphasis businesses place on creating accessible, easy-to-navigate spaces. Branded environmental signage, in particular, has been on […]| BPI Color
Who didn't once want to roll their own user interface toolkit?| pwy.io
Overview| cprimozic.net
Meschers: Geometry Processing of Impossible Objects| anadodik.github.io
Mixbox is a new blending method for natural color mixing. It produces saturated gradients with hue shifts and natural secondary colors during blending. Yellow and blue make green.| scrtwpns.com
Courtesy of Amazon Prime Video| blog.selfshadow.com
Here we are on RetroRGB.com. And let's take a moment to really ponder that last bit - RGB. What's in a colour? Pretty simple right? Red is red, green is green, blue is blue. Or is it? Let's ask our little buddy Link what he thinks: Can you pick which is the "right" colour? In their| RetroRGB
Introduction| glfmn.io
Most monitors are capable of displaying RGB values in the range of [0,255][0, 255][0,255] . However, in real life, there is no limit on the amount of light 'energy' incident on a point. Most renderers output linear radiance values in [0,∞)[0, \infty)[0,∞) , which needs to be mapped into a viewable range. Those radiance values are described as High Dynamic Range (HDR), because they are unlimited, and the viewable target range is described as Low Dynamic Range (LDR), because there is a fixe...| 64.github.io
SVGs are one of the most remarkable technologies we have access to on the web. They’re first-class citizens, fully addressable with CSS and JavaScript. In this tutorial, I’ll cover all of the most important fundamentals, and show you some of the ridiculously-cool things we can do with this massively underrated tool. ✨| www.joshwcomeau.com
State lawmakers, inspired by Trump, have passed dozens of anti-immigration bills this year.| The Marshall Project
An infographic that presents a short overview of early anti-ace blogging, 2010-2015.| The Ace Theist
Doing anti-aliasing on SDF is not as straightforward as it seems. Most of the| blog.pkh.me
I've built a demo of a single| rust-gpu.github.io
BPI Color’s July Newsletter The right tools and the right partner make all the difference! When your business has the right print, signage, and digital tools in place, you can focus on what matters most—your work. That’s where BPI Color comes in, with solutions designed to simplify, support, and scale. Business Printing From business cards […]| BPI Color
This year there was another “Display Next Hackfest”, this time thanks to AMD organizing and hosting the event at their office in Markham, Toronto. Just like the last hackfests, there were other compositor developers and driver developers present, but in addition we had the color experts Charles Poynton and Keith Lee to pester with questions, which was very useful. In general, the event was very productive.| Xaver’s blog
Bad Apple!! CD+G| gashlin.net
The latest alpha of the upcoming Blender 5.0 release comes with High Dynamic Range (HDR) support for Linux on Wayland which will, if everything works out, make it into the final Blender 5.0 release on October 1, 2025. The post on the developer forum comes with instructions on how to enable the experimental support and how to test it. If you are using Fedora Workstation 42, which ships GNOME version 48, everything is already included to run Blender with HDR. All that is required is an HDR comp...| swick's blog
Thanks to a fun garage sale by a certain IronicBadger, I picked up an Intel Arc Pro A40 graphics card for a very reasonable price and decided to put it to use for transcoding. This post is going to be documenting some of my failures/issues in the dream of a single VM to house all my transcoding apps (Jellyfin, Handbrake, and Frigate).\nI wrote this post for 2 reasons. First, I wanted to document my failures for the USB Coral TPU passthrough in case someone searching for answers comes across m...| Random Musings
After years in development, we will be releasing WebGPU on Windows in Firefox 141! WebGPU gives web content a modern interface to the user’s graphics processor, enabling high-performance comp…| Mozilla Gfx Team Blog
Fourth entry of my build log| Lucas Sifoni
Fifth entry of my build log| Lucas Sifoni
Back in 2021 I looked at OpenEXR lossless compression options (and I think| Aras' website
The packing of data is good practice for many reasons, including disk space and efficient RAM or cache access. If we know the meaning of data we can often narrow down the range and precision, making informed decisions as to the amount of bytes we need. I was inspired once… Continue reading| The Code Corsair
Recurrent internet discussions show a divide between programmers working in different industries. Topics like code clarity, performance, debuggability, architecture or maintainability are a source of friction. We are, paraphrasing the quote, industries divided by a common language. I am curious about other programmers’ experiences, and I wanted to present a… Continue reading| The Code Corsair
Mafia: Definitive Edition (2020) is a remake of the much-loved gangster classic Mafia (2002), originally released for PS2 and Xbox. The game is relatively linear and very story focused, whose narrative I personally found gripping and worthy of being compared to Scarface or Goodfellas. Hangar 13 use their own technology… Continue reading| The Code Corsair
After showing an impressive demo last year and unleashing recently with the UE5 preview, Nanite is all the rage these days. I just had to go in and have some fun trying to figure it out and explain how I think it operates and the technical decisions behind it using… Continue reading| The Code Corsair
Jurassic World: Evolution is the kind of game many kids (and adult-kids) dreamed of for a long time. What’s not to like about a game that gives you the reins of a park where the main attractions are 65-million-year-old colossal beasts? This isn’t the first successful amusement park game by… Continue reading| The Code Corsair
Within the arsenal of lights provided by game engines, the most popular are punctual lights such as point, spot or directional because they are cheap. On the other end, area lights have recently produced incredible techniques such as Linearly Transformed Cosines and other analytic approximations. I want to talk about… Continue reading| The Code Corsair
[latexpage] Rise of the Tomb Raider (2015) is the sequel to the excellent Tomb Raider (2013) reboot. I personally find both refreshing as they move away from the stagnating original series and retell the Croft story. The game is story focused and, like its prequel, offers enjoyable crafting, hunting and… Continue reading| The Code Corsair
When I married last year, my wife and I went on our honeymoon to Thailand. Their king Bhumibol had died a month ago and the country was mourning. Everywhere we found good wishes and memorials, and people would dress in black and white as a sign of sorrow. The Thai… Continue reading| The Code Corsair
Middle Earth: Shadow of Mordor was released in 2014. The game itself was a great surprise, and the fact that it was a spin-off within the storyline of the Lord of the Rings universe was quite unusu…| The Code Corsair
Deploying and developing royalty-free open standards for 3D graphics, Virtual and Augmented Reality, Parallel Computing, Neural Networks, and Vision Processing| The Khronos Group
I used AI to port virtually all of the shaders from Sascha Willems' [popular Vulkan| rust-gpu.github.io
This post will be a bit different than my normal technical posts. Rather than covering a successful finished system, this will be a glimpse into the process of (hopefully) getting to that point in the future.| Hypersect
Particle Life simulation in browser using WebGPU| lisyarus blog
In this post, I want to shed some light on something I’ve been wondering about for a while: How exactly are mipmap levels selected when sampling textures on the GPU? If you already know what mipmapping is, why we use it, and what pixel derivatives (ddx() / ddy()) are, you can skip to the section Derivatives to mipmap levels. The post does, however, assume some knowledge of graphics programming.| pema.dev
Discover how promotional products can boost connection and visibility at your next event. Engage your audience effectively.| BPI Color
Developing a Boids program from scratch without restarting it.| kevingal.com
An introduction to writing WebGL shaders using gradient noise and cool math.| alexharri.com
Procedurally generated bushes and trees are the latest addition to my engine. Although I used pre-made textures for the bark and leaves, the geometry for the trunk is generated entirely through code and each leaf is drawn separately through GPU instancing. This scene has some of the largest numbers I’ve ever had to deal with in any application: each tree has 467,856 triangles making up the trunk and branches and it comes with 30,600 leaves made of 4 triangles each.| Sandilya Jandhyala
When I first started implementing the SSD1306 OLED on my prototype, I grabbed the quickest and easiest to implement driver I could find - a driver Espressif shipped as part of ESP-BSP that has since been removed. It worked great, updated the screen at about 40 hz, and was very| subalpine circuits
Blaster Web Services, based in Long Beach, California, offers a comprehensive suite of digital solutions designed to enhance your online presence.| Blaster Web Services | Long Beach CA
There’s been a lot of buzz about GUI stuff lately, which made mebriefly reflect on the state of the art and share something I’ve beenworking on as of late.| tomscii.sig7.se
Many people are, understandably, confused about brightness levels in content creation and consumption - both for SDR and for HDR content. Even people that do content creation as their job sometimes get it really wrong.| Xaver’s blog
Graphite's Q4 2024 update introduces quality of life features across drawing tools and procedural editing.| Graphite
Evaluate a 7866-clause math expression for fame and glory| www.mattkeeter.com
I dig into the math, the APIs, SteamVR, and finally: my own sanity| slugcat.systems
About| www.mattkeeter.com
Published on| joshleeb.com
An exploration of the layout models of TeX and Typst.| Laurenz's Blog
Dudemanguy's Musings| dudemanguy.github.io