bevy/crates
Robert Swain 936468aa1e bevy_render: Use RenderDevice to get limits/features and expose AdapterInfo (#3931)
# Objective

- `WgpuOptions` is mutated to be updated with the actual device limits and features, but this information is readily available to both the main and render worlds through the `RenderDevice` which has .limits() and .features() methods
- Information about the adapter in terms of its name, the backend in use, etc were not being exposed but have clear use cases for being used to take decisions about what rendering code to use. For example, if something works well on AMD GPUs but poorly on Intel GPUs. Or perhaps something works well in Vulkan but poorly in DX12.

## Solution

- Stop mutating `WgpuOptions `and don't insert the updated values into the main and render worlds
- Return `AdapterInfo` from `initialize_renderer` and insert it into the main and render worlds
- Use `RenderDevice` limits in the lighting code that was using `WgpuOptions.limits`.
- Renamed `WgpuOptions` to `WgpuSettings`
2022-02-16 21:17:37 +00:00
..
bevy_app small and mostly pointless refactoring (#2934) 2022-02-13 22:33:55 +00:00
bevy_asset small and mostly pointless refactoring (#2934) 2022-02-13 22:33:55 +00:00
bevy_audio Update rodio 0.15 (#3846) 2022-02-03 04:25:44 +00:00
bevy_core small and mostly pointless refactoring (#2934) 2022-02-13 22:33:55 +00:00
bevy_core_pipeline small and mostly pointless refactoring (#2934) 2022-02-13 22:33:55 +00:00
bevy_crevice Don't panic in macro shape validation (#3647) 2022-01-15 22:14:43 +00:00
bevy_derive small and mostly pointless refactoring (#2934) 2022-02-13 22:33:55 +00:00
bevy_diagnostic small and mostly pointless refactoring (#2934) 2022-02-13 22:33:55 +00:00
bevy_dylib Release 0.6.0 (#3587) 2022-01-08 10:18:22 +00:00
bevy_dynamic_plugin Release 0.6.0 (#3587) 2022-01-08 10:18:22 +00:00
bevy_ecs SystemState usage docs (#3783) 2022-02-15 21:53:52 +00:00
bevy_ecs_compile_fail_tests Release 0.6.0 (#3587) 2022-01-08 10:18:22 +00:00
bevy_gilrs Release 0.6.0 (#3587) 2022-01-08 10:18:22 +00:00
bevy_gltf small and mostly pointless refactoring (#2934) 2022-02-13 22:33:55 +00:00
bevy_input small and mostly pointless refactoring (#2934) 2022-02-13 22:33:55 +00:00
bevy_internal bevy_render: Use RenderDevice to get limits/features and expose AdapterInfo (#3931) 2022-02-16 21:17:37 +00:00
bevy_log Implement init_resource for Commands and World (#3079) 2022-02-08 23:04:19 +00:00
bevy_macro_utils small and mostly pointless refactoring (#2934) 2022-02-13 22:33:55 +00:00
bevy_math Release 0.6.0 (#3587) 2022-01-08 10:18:22 +00:00
bevy_pbr bevy_render: Use RenderDevice to get limits/features and expose AdapterInfo (#3931) 2022-02-16 21:17:37 +00:00
bevy_reflect small and mostly pointless refactoring (#2934) 2022-02-13 22:33:55 +00:00
bevy_render bevy_render: Use RenderDevice to get limits/features and expose AdapterInfo (#3931) 2022-02-16 21:17:37 +00:00
bevy_scene small and mostly pointless refactoring (#2934) 2022-02-13 22:33:55 +00:00
bevy_sprite small and mostly pointless refactoring (#2934) 2022-02-13 22:33:55 +00:00
bevy_tasks small and mostly pointless refactoring (#2934) 2022-02-13 22:33:55 +00:00
bevy_text small and mostly pointless refactoring (#2934) 2022-02-13 22:33:55 +00:00
bevy_transform small and mostly pointless refactoring (#2934) 2022-02-13 22:33:55 +00:00
bevy_ui Add FocusPolicy to NodeBundle and ImageBundle (#3952) 2022-02-15 22:31:51 +00:00
bevy_utils Release 0.6.0 (#3587) 2022-01-08 10:18:22 +00:00
bevy_window small and mostly pointless refactoring (#2934) 2022-02-13 22:33:55 +00:00
bevy_winit small and mostly pointless refactoring (#2934) 2022-02-13 22:33:55 +00:00