Devenish Smith

@devenish
13 Followers
59 Following
33 Posts

Passionate about: 3D Art • Video Games • Various Geekery • Plant-Based

Views are my own.

KDE supports the "Keep Android Open" campaign

#Google will cut off independent developers to #Android if they do not register with Google first. This will kill independent platforms like @fdroidorg and severely impede FLOSS devs from creating apps for Android.

https://keepandroidopen.org/

Many KDE apps are deployed for Android: KDE Connect, Itinerary, Tokodon, and there's even a test version of Krita for Android.

KDE calls on Google to reverse course and @keepandroidopen.

https://keepandroidopen.org/open-letter/

There's one thing that's always boggled my mind. The official PSD file handling Adobe makes official partners use. It's been broken for over 20 years now and as far as I can tell intentionally so.

It fades transparent pixels to white.

If you're hearing a lot about the fediverse these days, you should know: Mastodon is not the whole fediverse and the fediverse is not simply a Twitter replacement. The fediverse is an entire ecosystem, built on something called ActivityPub. Learn more: https://www.eff.org/deeplinks/2022/11/leaving-twitters-walled-garden
Leaving Twitter's Walled Garden

This post is part of a series on Mastodon and the fediverse. We also have a post on privacy and security on Mastodon, why the fediverse will be great—if we don't screw it up, and how to make a Mastodon account. You can follow EFF on Mastodon here.A wave of people have announced that they're leaving...

Electronic Frontier Foundation

When you post on Twitter(1) or Bluesky(2) you grant them a broad perpetual license to use, modify, and sublicense your content. You effectively make them co-owners of your content. They can mine it and monetize it. They can even sell it. When you post on Mastodon(3) most instances take no license at all. That's right, they tell you what they are doing with your content—storing posts and delivering them—but no license.

1/2
#twittermigration #TermsOfService #PrivacyPolicy #ContentLicense

Rotation with three shears

There's a graphics trick that used to be widely known that has now probably almost vanished from the graphics consciousness - you can do rotations by applying three shears in a row. This should surprise you! It surprised me. And it re-surprises me every time I remember it. ---------------------------------------- Shears are very simple graphics operations to do - you just render the sprite, but shifting the lines or columns a bit each time. But rotations are gnarly things that involve lots of maths and interpolation and so on. So how could you possibly construct one from the other? The derivation is relatively simple, but I won't do it here because there's a perfectly good explanation over here: https://www.ocf.berkeley.edu/~fricke/projects/israel/paeth/rotation_by_shearing.html [https://www.ocf.berkeley.edu/~fricke/projects/israel/paeth/rotation_by_shearing.html] But the TL;DR is you do three shears: 1. shear in X by -tan(angle/2) 2. shear in Y by sin(angle) 3. shear in X by -tan(angle/2) (that's not a typo - the third shear is exactly the same as the first!) This works for all angles -90 degrees to +90 degrees, which is fantastic! Beyond that you just need to apply an X and Y flip first (i.e. a rotation by 180), which can usually be done as part of the first shear. Here's a GIF of the R-Type fighter being smoothly rotated. Each image is a sheared version of the one to its left, with the final rotated image on the right. Sorry I didn't get the looping perfect. The three successive shears to make up a full rotation [https://staging.cohostcdn.org/attachment/4bac39e8-5454-425f-ab1a-e8b02dc6093e/Rotation%20with%20shears%201.gif] But why go to all this trouble though? Why not get your GPU to do it? Well, what if you don't have one? Back in the days of 16-bit and 32-bit machines, we didn't have fancy GPUs that could do arbitrary rotations. But we did have "blitters" that could copy rectangles of pixels from one place to another. And if you were clever you could persuade them to do a shear at the same time, because it's just offsetting the rows or columns as you go. So using this trick you could get arbitrary rotations done. Now, you are doing three of them for a single rotated sprite, so it's not exactly free, but the fact that you could do them at all was pretty magical. Doing rotations this way also has some very interesting characteristics that doing them with a more general GPU operation does not: 1. There is no "maths" needed on the pixel data. We're just copying bits - there's no interpretation of what the bits actually mean. This means you can do this with any pixel format - it can be bitplaned 4-bit-per-pixel, 8-bit palettised, 565 format, or true-colour - the algorithm doesn't know or care. 2. Every pixel in the source image is there exactly once in the final rotated image. Shears are exact - they copy each pixel exactly once. So therefore the rotated version has every pixel in the source exactly once. There's no duplicates, and none are removed. 3. Therefore the area of the final image is perfectly identical. It has to be - same number of pixels! 4. Therefore there are no problems with "aliasing" from over-sampling or under-sampling data. This is a problem with most image manipulation - if you have a single very bright pixel, as you manipulate the image, sometimes you miss it entirely, sometimes you duplicate it multiple times, and if this happens differently each frame, you get annoying flickers. Doesn't happen here - each source pixel is always present exactly once. (of course you get spatial aliasing because of "the jaggies") 5. It's perfectly reversible. I'm actually not sure how helpful this is in practice, but it's a cool fact! I find it very odd watching the final result, especially as it rotates veeeeery slowly. As it rotates, every pixel is always present - they don't appear and vanish, they just migrate. I find it very difficult to wrap my brain around how they move around the screen in circles, without causing any gaps, and without overwiritng each other. Mesmerising. Anyway, this knowledge is probably of limited use these days - I just thought it was neat, and as I happened to be working on a project that has a blitter but no GPU, I remembered this and decided to implement it - that's where the GIF above comes from. Marge says "I just think they're neat" [https://staging.cohostcdn.org/attachment/774c907e-f9ec-498d-81b0-118a522a2b9a/I%20just%20think%20theyre%20neat.png]

Tom Forsyth on cohost

I finally got frustrated with Bing results popping up in my Windows Start Menu searches. There's a registry key you can use to turn the "feature" off entirely. Hugely helpful: https://www.howtogeek.com/224159/how-to-disable-bing-in-the-windows-10-start-menu/

Here are the Windows 11 instructions: https://www.howtogeek.com/826967/how-to-disable-bing-in-the-windows-11-start-menu/

How to Disable Bing in the Windows 10 Start Menu

Windows 10, by default, sends everything you search for in the Start Menu to their servers to give you results from Bing search — so you better make sure that you don’t type anything private into your own PC’s Start Menu. Or, you could just disable the Bing integration in the Start Menu.

How-To Geek

This is gross. #Adobe seems to have opted everyone into a process that automatically ingests images into their machine learning system. You have to opt-out and you can't do that through the apps.

Here's how you can. Go to:

https://account.adobe.com/privacy

Then, turn off the "Content analysis" option.

If you're not familiar with #DarkPatterns this is one.

#photography #privacy #photoshop #lightroom

Adobe Account

Manage your Adobe Account profile, password, security options, product and service subscriptions, privacy settings, and communication preferences.

It's official that I've been flagged and may be unsafe. You have been warned. 🤣

Mastodon which is incredibly hot, supports RSS beautifully.

Just add .rss to any account to get the feed. Amazing!

https://mastodon.social/@davew.rss

Open that in your favorite feed reader. It’ll work.

Post a screenshot, say what the reader app is.

And pass this on to everyone who uses a feed reader.

Spread the word!

This is a huge deal for the open web.

In early spring I had the unfortunate experience of having my motherboard & CPU suddenly die. Quickly ordered and replaced them with something newer. Very aware a clean OS install is best, but no time for that. I'll live dangerous, do it later and upgrade the drive at the same time.

Later finally arrived.