bevyengine / bevyengine/bevy

Support resizing with CompressedImageSaver

Open
#25,310 0 comments 0 reactions 0 assignees View on GitHub
A-Assets C-Feature D-Trivial S-Ready-For-Implementation
Dominant language
Rust
Stars
48.2k
Forks
4.8k
Avg merge
3d 16h
Merged PRs (30d)
171

Description

## What problem does this solve or what need does it fill?

It's a common operation to impose a maximum size (via downscaling) on texture assets in engines, usually because you don't need the full resolution of source assets in many cases. This will save install size and memory usage.

## What solution would you like?

Support a setting/field on [CompressedImageSaver](https://dev-docs.bevy.org/bevy/image/struct.CompressedImageSaverSettings.html) for setting the maximum texture size since we're likely already converting to a completely different image format.

## What alternative(s) have you considered?

Manual external preprocess step.

## Additional context

Jasmine [suggested](https://discord.com/channels/691052431525675048/866787577687310356/1534900573147631616) this on discord!

This kind of operation is supported in other engines.

Image Image

Contributor guide

Open the contributing guide

Research direction

Start with CompressedImageSaverSettings and the surrounding image-processing API linked in the issue, then trace how source textures are converted before compression. Done means the saver exposes a maximum texture-size setting and applies it to oversized textures before producing the compressed asset.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
game-dev
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
68/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.