bevy/crates/bevy_render/src
Clar Fon 8adc9e9d6e
Feature-gate all image formats (#15586)
# Objective

Bevy supports feature gates for each format it supports, but several
formats that it loads via the `image` crate do not have feature gates.
Additionally, the QOI format is supported by the `image` crate and
wasn't available at all. This fixes that.

## Solution

The following feature gates are added:

* `avif`
* `ff` (Farbfeld)
* `gif`
* `ico`
* `qoi`
* `tiff`

None of these formats are enabled by default, despite the fact that all
these formats appeared to be enabled by default before. Since
`default-features` was disabled for the `image` crate, it's likely that
using any of these formats would have errored by default before this
change, although this probably needs additional testing.

## Testing

The changes seemed minimal enough that a compile test would be
sufficient.

## Migration guide

Image formats that previously weren't feature-gated are now
feature-gated, meaning they will have to be enabled if you use them:

* `avif`
* `ff` (Farbfeld)
* `gif`
* `ico`
* `tiff`

Additionally, the `qoi` feature has been added to support loading QOI
format images.

Previously, these formats appeared in the enum by default, but weren't
actually enabled via the `image` crate, potentially resulting in weird
bugs. Now, you should be able to add these features to your projects to
support them properly.
2024-10-07 16:37:45 +00:00
..
batching Remove remnant EntityHash and related types from bevy_utils (#15039) 2024-09-09 15:24:17 +00:00
camera Use global clear color for camera driver node. (#15688) 2024-10-07 15:59:51 +00:00
diagnostic Add core and alloc over std Lints (#15281) 2024-09-27 00:59:59 +00:00
mesh Split out bevy_mesh from bevy_render (#15666) 2024-10-06 14:18:11 +00:00
primitives Migrate cameras to required components (#15641) 2024-10-05 01:59:52 +00:00
render_graph Add core and alloc over std Lints (#15281) 2024-09-27 00:59:59 +00:00
render_phase Add core and alloc over std Lints (#15281) 2024-09-27 00:59:59 +00:00
render_resource Split out bevy_mesh from bevy_render (#15666) 2024-10-06 14:18:11 +00:00
renderer Remove render_resource_wrapper (#15441) 2024-09-30 17:37:07 +00:00
texture Feature-gate all image formats (#15586) 2024-10-07 16:37:45 +00:00
view Inverse bevy_render bevy_winit dependency and move cursor to bevy_winit (#15649) 2024-10-06 18:25:50 +00:00
alpha.rs Simpler lint fixes: makes ci lints work but disables a lint for now (#15376) 2024-09-24 11:42:59 +00:00
color_operations.wgsl move wgsl color operations from bevy_pbr to bevy_render (#13209) 2024-05-04 10:30:23 +00:00
extract_component.rs The Cooler 'Retain Rendering World' (#15320) 2024-09-30 18:51:43 +00:00
extract_instances.rs Add core and alloc over std Lints (#15281) 2024-09-27 00:59:59 +00:00
extract_param.rs Deprecate get_or_spawn (#15652) 2024-10-07 16:08:22 +00:00
extract_resource.rs Add core and alloc over std Lints (#15281) 2024-09-27 00:59:59 +00:00
globals.rs Refactor App and SubApp internals for better separation (#9202) 2024-03-31 03:16:10 +00:00
globals.wgsl
gpu_component_array_buffer.rs Add core and alloc over std Lints (#15281) 2024-09-27 00:59:59 +00:00
gpu_readback.rs Gpu readback (#15419) 2024-09-30 17:28:55 +00:00
lib.rs Split out bevy_mesh from bevy_render (#15666) 2024-10-06 14:18:11 +00:00
maths.wgsl add tonemapping LUT bindings for sprite and mesh2d pipelines (#13262) 2024-05-28 12:09:26 +00:00
pipelined_rendering.rs The Cooler 'Retain Rendering World' (#15320) 2024-09-30 18:51:43 +00:00
render_asset.rs Split off bevy_image from bevy_render (#15650) 2024-10-04 20:16:47 +00:00
settings.rs Add core and alloc over std Lints (#15281) 2024-09-27 00:59:59 +00:00
spatial_bundle.rs Clearer spatial bundle pub const docs (#14293) 2024-07-15 16:03:09 +00:00
storage.rs Simpler lint fixes: makes ci lints work but disables a lint for now (#15376) 2024-09-24 11:42:59 +00:00
world_sync.rs Allow World::entity family of functions to take multiple entities and get multiple references back (#15614) 2024-10-07 15:21:40 +00:00