Markus Ort
efc7dc0859
Fix panic when using image in UiMaterial ( #10591 )
...
# Objective
- Fix the panic on using Images in UiMaterials due to assets not being
loaded.
- Fixes #10513
## Solution
- add `let else` statement that `return`s or `continue`s instead of
unwrapping, causing a panic.
2023-11-16 21:31:25 +00:00
François
72a6106f2e
UI Materials: ignore entities with a BackgroundColor
component ( #10434 )
...
# Objective
- Entities with both a `BackgroundColor` and a
`Handle<CustomUiMaterial>` are extracted by both pipelines and results
in entities being overwritten in the render world
- Fixes #10431
## Solution
- Ignore entities with `BackgroundColor` when extracting ui material
entities, and document that limit
2023-11-07 20:04:10 +00:00
François
aaef5577cd
UI Material: each material should have its own buffer ( #10422 )
...
# Objective
- When having several UI Material, nodes are not correctly placed
## Solution
- have a buffer per material
2023-11-07 09:51:40 +00:00
François
6ce33d0267
ui material: fix right border width ( #10421 )
...
# Objective
- When writing a custom UI material, the right border doesn't have the
correct value
## Solution
- Fix the calculation
2023-11-07 01:54:34 +00:00
Markus Ort
fd232ad360
Add UI Materials ( #9506 )
...
# Objective
- Add Ui Materials so that UI can render more complex and animated
widgets.
- Fixes #5607
## Solution
- Create a UiMaterial trait for specifying a Shader Asset and Bind Group
Layout/Data.
- Create a pipeline for rendering these Materials inside the Ui
layout/tree.
- Create a MaterialNodeBundle for simple spawning.
## Changelog
- Created a `UiMaterial` trait for specifying a Shader asset and Bind
Group.
- Created a `UiMaterialPipeline` for rendering said Materials.
- Added Example [`ui_material`
](https://github.com/MarkusTheOrt/bevy/blob/ui_material/examples/ui/ui_material.rs )
for example usage.
- Created
[`UiVertexOutput`](https://github.com/MarkusTheOrt/bevy/blob/ui_material/crates/bevy_ui/src/render/ui_vertex_output.wgsl )
export as VertexData for shaders.
- Created
[`material_ui`](https://github.com/MarkusTheOrt/bevy/blob/ui_material/crates/bevy_ui/src/render/ui_material.wgsl )
shader as default for both Vertex and Fragment shaders.
---------
Co-authored-by: ickshonpe <david.curthoys@googlemail.com>
Co-authored-by: François <mockersf@gmail.com>
2023-11-03 22:33:01 +00:00