Skip to content

Conversation

@ChristopherBiscardi
Copy link
Contributor

adopted version of #2085 that includes images and some adjustments based on feedback.

Copy link
Contributor

@doup doup left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, just be aware of the 1.6mb decals.png image, I would change it to jpg/webp.

@ChristopherBiscardi
Copy link
Contributor Author

I wouldn't use webp or jpg personally. avif is the best option on the web at the moment if there's a desire to use a modern format. It enjoys wide support.

I chose .png because all of the other images in the directory are also png. anamorphic-car-bloom is 5.8mb and meshlet-bunnies is 1.2mb, which puts the image in the lower end of images that contain actual information (that is, leaving out things like the 200px trait-tags.png).

IMO avif is the clear winner. Its also what I use for https://thisweekinbevy.com/ . For future consideration, here's the sizes for the original 4k decals.png image (not the 1080p one in this PR) which starts out just under 7mb. squoosh can be used on the web if anyone wants to compare an arbitrary image between formats.

format size
avif 80kb
webp 165kb
jpg 3-400kb (depending on tool/config)
png 5mb

@doup
Copy link
Contributor

doup commented Apr 22, 2025

AVIF sounds great, amazing compression ratio.

Be aware though that Baseline discerns between newly and widely available. AVIF is still considered "newly" available… although it's been like that for a while: since January 2024. I mention this because we had a regression report because I used a "newly available" CSS feature and had to change it later on. I wasn't aware of this distinction and bite me later on… and it's just a 4% user support difference (although AVIF has been available for muuuch longer time). 😩

Buuut, if you're already using it on This Week in Bevy and no one has complained… I would consider it seriously. It's 53% widely available, half-way there. 🙃

@ChristopherBiscardi
Copy link
Contributor Author

AVIF is still considered "newly" available

Its worth examining the browser support behind this. The reason avif is "newly" available is that Edge gained support in January 2024. Other evergreen browsers have supported avif still images since 2020, 2021, and 2022. So its a pretty safe bet at this point. The set of "unsupported users" is basically "Edge users who haven't upgraded in over a year".

It's 53% widely available, half-way there

I'm not sure where you're getting 53% from. Is that the 1 year left for Edge to trigger the "widely available" 2.5 year mark? If so, the 53% number is pretty misleading. All other browsers already pass the 2.5 year mark. Also worth noting that 2.5 years is like, enterprise software levels of browser support in my experience. I actually don't know of any consumer websites that use that length of time for their browser support goals.

Buuut, if you're already using it on This Week in Bevy and no one has complained… I would consider it seriously.

Yeah I think the support here is well beyond usable tbh. One of the most well supported new features that exists at the moment.


This might be getting a little off topic but it also seems we haven't decided on a browser support policy so IMO: I do think supporting current-version evergreen browsers is a perfectly fine target for an open-source volunteer-heavy project.

So when it comes to web-related issues like #1951 , no changes should be made to solve an issue without knowing what version a user is using ("Linux, Firefox" is not good enough to justify a change). Especially since Firefox is an evergreen browser, which means the user has to have turned off updates intentionally (or kept firefox open without restarting for 4+ months) and thus should be aware they've turned off updates. "Linux, Firefox" could mean a Firefox version from 5 years ago, and we definitely should be telling users to upgrade if they have turned off updates for 5 years.

If someone wants to use an out of date browser, they can take advantage of user styles to fix the websites that will be broken as a result (especially if they are a technically-savvy linux user choosing to not upgrade). Bevy/maintainers/contributors shouldn't have to take on the maintenance burden for supporting that usage.

Personally I would say the bar for support should be something like "current evergreen browsers". "evergreen - 3 months" or something would also be acceptable, but 2.5 years is way too much and would prevent taking advantage of CSS improvements for half the time bevy has existed 😓 .

I wasn't aware of this distinction and bite me later on

I actually don't think this bit you. The user upgraded their browser, as they should, and we probably shouldn't have driven changes based on supporting an out of date software configuration that the user who filed the issue isn't even using anymore.

@doup
Copy link
Contributor

doup commented Apr 23, 2025

Thanks for the reply, I really liked it. You gave me some new perspective and made me realize how a poor and lazy analysis I made. 🤣😅

Anyway, I would go for "last 2/3 versions" or "last 3 months". I'll share the discussion in #website-dev and let's see if there is a consensus.


53% (16 months since full support / 30 months to be considered "widely supported")… again, lazy. ;-)
It should be weighted by browser and usage… 🙃

Copy link
Member

@alice-i-cecile alice-i-cecile left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm happy with the writing and images here. No strong feelings on the avif discussion!

@alice-i-cecile
Copy link
Member

@ChristopherBiscardi I'm ready to merge this once CI is passing.

@alice-i-cecile alice-i-cecile added this to the Release 0.16 milestone Apr 23, 2025
@alice-i-cecile alice-i-cecile added S-Ready-For-Final-Review Ready for a maintainer to consider for merging C-Content A-Release-Notes labels Apr 23, 2025
@alice-i-cecile alice-i-cecile added this pull request to the merge queue Apr 23, 2025
Merged via the queue into bevyengine:main with commit d1f046f Apr 23, 2025
10 checks passed
@cart cart mentioned this pull request Apr 23, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-Release-Notes C-Content S-Ready-For-Final-Review Ready for a maintainer to consider for merging

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants