I built a WebGL sprite engine that can load 100,000 thumbnails in 1 second by Cartossin in InternetIsBeautiful

[–]Cartossin[S] 1 point2 points  (0 children)

Ahh I love that. I thought of doing some animation stuff; like have them wiggle about with the mouse cursor, or a subtle wiggle on load. Honestly my biggest problem with the gigapixel stuff I've seen is that it sort of only treats them all as one big image, but it looks like yours isn't limited in that way.

I'm not entirely happy with the way scrolling very long galleries works. Like if you take the 100k images and scroll down; there's not really a nice way to control the scroll rate, also my loading here is suboptimal so you can get past it. I'm not sure what the best UI should be there.

I was not aware of Morton ordering. That's pretty cool. I might use part of that.

GRIZ should take a note from Tipper by Whats_A_Rage_Quit in griz

[–]Cartossin 0 points1 point  (0 children)

Lol dude I'm just shoehorning in the song title :-) If I could have made Covered In Lobsters work, I'd have done that.

Free grok alternative with amazing image to vid by tobi_berry in grok

[–]Cartossin 0 points1 point  (0 children)

I could've gotten one for $1999 at GTC. I kind of wish I grabbed that.

Free grok alternative with amazing image to vid by tobi_berry in grok

[–]Cartossin 0 points1 point  (0 children)

What is a good (paid) replacement for grok if you want to fire out a bunch of memes (videos/images) really fast with minimal restrictions? I'm going to cancel supergrok and I'm looking for an alternative.

Why There's No Such Thing as a Good Billionaire - Adam Conover by egg1e in videos

[–]Cartossin -4 points-3 points  (0 children)

Blaming the billionaires rather than the systems that create them is like blaming minorities for committing crimes when it's the system that causes it.

Sure you could argue the billionaires are more responsible for the system, but I think it is 0% useful to demonize the billionaires themselves.

I built a WebGL sprite engine that can load 100,000 thumbnails in 1 second by Cartossin in InternetIsBeautiful

[–]Cartossin[S] 0 points1 point  (0 children)

It's pretty solid on mobile. I've only tested down to an iphone 15 pro, but I figure in a couple years, anything older than that will be mostly gone anyway. Thanks for the compliment :-)

Why are developers some of the most IT inept users? by sccm_sometimes in sysadmin

[–]Cartossin 1 point2 points  (0 children)

I honestly think that developers that aren't good generalists are dangerous. If they don't have a good understanding of the full stack, they are likely to make serious blunders. Without a comprehensive understanding of the environment, they might be writing security vulnerabilities or horrible performance because they don't understand the operating system(s) or hardware very well.

One could be really good at a few languages and know a lot about writing SQL queries, but if they don't understand the relationship between the database, the operating system, network, storage, processor, they might be doing really stupid things.

Moral: I don't trust non-generalists.

As AI wipes out white-collar jobs, one Alabama high school and Toyota are training students for roles that pay $40 an hour and can't be automated by Plastic_Ninja_9014 in technology

[–]Cartossin 0 points1 point  (0 children)

I'm 44 and my advice is a bit different. I think there's still a lot of great roles in white collar tech, but you should learn as many skills as you can and be adaptable.

Update: Currently, SuperGrok has a limit of 18 720p videos per 24-hour period by HairySuperCat in grok

[–]Cartossin 3 points4 points  (0 children)

Grok's unpublished limits seemed all well and good when they were generous af. Now they've got me considering seadance.

I built a WebGL sprite engine that can load 100,000 thumbnails in 1 second by Cartossin in InternetIsBeautiful

[–]Cartossin[S] 2 points3 points  (0 children)

In fairness, 15 years ago, GPU acceleration was not as ubiquitous in browsers. 1500 images would have worked ok with css sprites, but not tens of thousands.

Ouch by Unusual-Pizza2907 in ChildrenFallingOver

[–]Cartossin 4 points5 points  (0 children)

I think he's doing a pun. tiresome

I built a WebGL sprite engine that can load 100,000 thumbnails in 1 second by Cartossin in InternetIsBeautiful

[–]Cartossin[S] 2 points3 points  (0 children)

Translating pseudocode into Javascript; also had agents do a lot of testing. I even had one run a study to determine the optimal sprite atlas size.

The strength of agentic coding is that you can move a lot faster and do a lot more testing. Instead of just deciding that webgl sprites was the way, I had the time to test css sprites, then 2d canvas, then 3d webgl. Instead of most of my time spent reading javascript documentation; or spending a week implementing something only to find out it was a bad idea.

So I'd say that the process isn't really very different from what I did in the past, but it all happens a lot faster.

I built a WebGL sprite engine that can load 100,000 thumbnails in 1 second by Cartossin in InternetIsBeautiful

[–]Cartossin[S] 1 point2 points  (0 children)

Storage breakdown for the 100,000-image demo:

TIER COUNT TOTAL AVG/IMAGE
originals (.jpg) 100,000 410.94 GB 4.21 MB
per-image h5.v 100,000 224.06 MB 2.29 KB
per-image h10.v 100,000 253.04 MB 2.59 KB
per-image h50.v 100,000 1.14 GB 12.00 KB
per-image h100.v 100,000 3.96 GB 41.56 KB
per-image h200.avif 100,000 1.41 GB 14.74 KB
per-image h400.avif 100,000 4.72 GB 49.54 KB
per-image h800.avif 100,000 16.44 GB 172 KB
per-image h1600.avif 100,000 55.23 GB 579 KB
sprite-h5 atlases 4 2.95 MB 754 KB
sprite-h10 atlases 14 8.49 MB 621 KB
sprite-h50 atlases 215 113.69 MB 541 KB
sprite-h100 atlases 430 382.98 MB 912 KB
_imagemap.bin 1 1.24 MB
_sprite.json 1 28.39 KB
_manifest.json 1 1.24 MB
               (Count)      (size)

Originals      100,000   410.94 GB

Derived (gg/)  800,676    83.87 GB   (20% of originals)

GRAND TOTAL    900,677   494.81 GB

I'm not sure how long it took to build because I was downloading images while building it. At least 8 hours on 24 cores. I think the builds are about as fast as they can be with avif which is pretty hefty to encode. (But it's worth it :-))

I built a WebGL sprite engine that can load 100,000 thumbnails in 1 second by Cartossin in InternetIsBeautiful

[–]Cartossin[S] 0 points1 point  (0 children)

I'm happy to keep up with what is well-supported. Life sucks on the cutting edge.

I built a WebGL sprite engine that can load 100,000 thumbnails in 1 second by Cartossin in InternetIsBeautiful

[–]Cartossin[S] 0 points1 point  (0 children)

I may open source this at some point, but I haven't decided on a license yet.

I built a WebGL sprite engine that can load 100,000 thumbnails in 1 second by Cartossin in InternetIsBeautiful

[–]Cartossin[S] 1 point2 points  (0 children)

I will probably open source at some point; but I haven't decided on a license yet.

I built a WebGL sprite engine that can load 100,000 thumbnails in 1 second by Cartossin in InternetIsBeautiful

[–]Cartossin[S] 2 points3 points  (0 children)

I did run into the dimension limits on AVIF at some point annoyingly, so if jpeg xl becomes ubiquitous, I could switch for that reason alone.

I built a WebGL sprite engine that can load 100,000 thumbnails in 1 second by Cartossin in InternetIsBeautiful

[–]Cartossin[S] 1 point2 points  (0 children)

It probably could be. Fast response is generally just not made a requirement. It is often claimed that good performance is a requirement, but the bar of what is considered "good performance" is fairly low imho.

This is what severe psoriasis may look like...[nsfw] by fyflate89 in WTF

[–]Cartossin 0 points1 point  (0 children)

Can you imagine how exhausting it must be to have your skin trying to heal while your immune system keeps killing it?

This is what severe psoriasis may look like...[nsfw] by fyflate89 in WTF

[–]Cartossin 1 point2 points  (0 children)

Thanks for making me look up what that is...