bevy/crates
patrickariel 3efef59d83
Enable/disable UI anti-aliasing (#15170)
# Objective

Currently, UI is always rendered with anti-aliasing. This makes bevy's
UI completely unsuitable for art-styles that demands hard pixelated
edges, such as retro-style games.

## Solution

Add a component for disabling anti-aliasing in UI.

## Testing

In
[`examples/ui/button.rs`](15e246eff8/examples/ui/button.rs),
add the component to the camera like this:

```rust
use bevy::{prelude::*, ui::prelude::*};

commands.spawn((Camera2dBundle::default(), UiAntiAlias::Off));
```

The rounded button will now render without anti-aliasing.

## Showcase

An example of a rounded UI node rendered without anti-aliasing, with and
without borders:


![image](https://github.com/user-attachments/assets/ea797e40-bdaa-4ede-a0d3-c9a7eab95b6e)
2024-09-16 23:06:23 +00:00
..
bevy_a11y Reflected traits for resources and components: bevy_a11y (#15192) 2024-09-14 01:43:16 +00:00
bevy_animation Reflect derived traits on all components and resources: bevy_animation (#15209) 2024-09-15 11:58:51 +00:00
bevy_app Unify crate-level preludes (#15080) 2024-09-08 17:10:57 +00:00
bevy_asset Reccomend using AssetPlugin.file_path instead of CARGO_MANIFEST_DIR (#15176) 2024-09-13 16:16:23 +00:00
bevy_audio Reflect derived traits on all components and resources: bevy_audio (#15211) 2024-09-15 14:24:00 +00:00
bevy_color Unify crate-level preludes (#15080) 2024-09-08 17:10:57 +00:00
bevy_core Unify crate-level preludes (#15080) 2024-09-08 17:10:57 +00:00
bevy_core_pipeline Reflect derived traits on all components and resources: bevy_core_pipeline (#15213) 2024-09-15 14:23:41 +00:00
bevy_derive Remove deprecated bevy_dynamic_plugin (#14534) 2024-07-30 15:31:08 +00:00
bevy_dev_tools Split OrthographicProjection::default into 2d & 3d (Adopted) (#15073) 2024-09-09 15:51:28 +00:00
bevy_diagnostic Apply unused_qualifications lint (#14828) 2024-08-21 12:29:33 +00:00
bevy_dylib Generate links to definition in source code pages on docs.rs and dev-docs.bevyengine.org (#12965) 2024-07-29 23:10:16 +00:00
bevy_ecs Add missing insert API commands (#15166) 2024-09-16 23:00:00 +00:00
bevy_encase_derive Generate links to definition in source code pages on docs.rs and dev-docs.bevyengine.org (#12965) 2024-07-29 23:10:16 +00:00
bevy_gilrs Generate links to definition in source code pages on docs.rs and dev-docs.bevyengine.org (#12965) 2024-07-29 23:10:16 +00:00
bevy_gizmos Reflect derived traits on all components and resources: bevy_gizmos (#15217) 2024-09-15 14:41:49 +00:00
bevy_gltf Reflect derived traits on all components and resources: bevy_gltf (#15218) 2024-09-15 14:47:43 +00:00
bevy_hierarchy Reflect derived traits on all components and resources: bevy_hierarchy (#15219) 2024-09-15 15:09:28 +00:00
bevy_input Use of deprecated function in example for ButtonInput (#15221) 2024-09-15 15:22:39 +00:00
bevy_internal Remove all existing system order ambiguities in DefaultPlugins (#15031) 2024-09-03 20:24:34 +00:00
bevy_log Unify crate-level preludes (#15080) 2024-09-08 17:10:57 +00:00
bevy_macro_utils Generate links to definition in source code pages on docs.rs and dev-docs.bevyengine.org (#12965) 2024-07-29 23:10:16 +00:00
bevy_math Rotation api extension (#15169) 2024-09-16 23:02:08 +00:00
bevy_mikktspace Fix underflow panic in InitTriInfo (#14893) 2024-08-25 14:13:23 +00:00
bevy_pbr Reflect derived traits on all components and resources: bevy_pbr (#15224) 2024-09-15 16:07:30 +00:00
bevy_picking Reflect derived traits on all components and resources: bevy_picking (#15225) 2024-09-15 16:17:39 +00:00
bevy_ptr Remove redundent information and optimize dynamic allocations in Table (#12929) 2024-09-16 22:52:05 +00:00
bevy_reflect Use FromReflect when extracting entities in dynamic scenes (#15174) 2024-09-15 14:33:39 +00:00
bevy_render Fix MeshAllocator panic (#14560) 2024-09-16 22:54:01 +00:00
bevy_scene add allow_all and deny_all methods to DynamicSceneBuilder (#15222) 2024-09-15 15:30:53 +00:00
bevy_sprite Reflect derived traits on all components and resources: bevy_sprite (#15227) 2024-09-15 17:10:53 +00:00
bevy_state Reflect derived traits on all components and resources: bevy_state (#15228) 2024-09-15 17:16:45 +00:00
bevy_tasks Unify crate-level preludes (#15080) 2024-09-08 17:10:57 +00:00
bevy_text Reflect derived traits on all components and resources: bevy_text (#15229) 2024-09-15 17:21:02 +00:00
bevy_time Unify crate-level preludes (#15080) 2024-09-08 17:10:57 +00:00
bevy_transform Reflect derived traits on all components and resources: bevy_transform (#15230) 2024-09-15 18:19:44 +00:00
bevy_ui Enable/disable UI anti-aliasing (#15170) 2024-09-16 23:06:23 +00:00
bevy_utils Remove remnant EntityHash and related types from bevy_utils (#15039) 2024-09-09 15:24:17 +00:00
bevy_window Reflect derived traits on all components and resources: bevy_window (#15233) 2024-09-15 17:49:00 +00:00
bevy_winit Remove ReceivedCharacter (#15126) 2024-09-10 00:22:06 +00:00