Commit graph

110 commits

Author SHA1 Message Date
Zhixing Zhang
81809c71ce
Update to wgpu-rs 0.7 (#542)
Update to wgpu-rs 0.7
2021-01-31 20:06:42 -08:00
Renato Caldas
0a39c81be6
Add support for reading from mapped buffers (#1274)
* Add support for mapping buffers for reading.

* Add support for reading from a mapped buffer.
2021-01-21 17:53:43 -08:00
Zhixing Zhang
cf0e9f9968
Adding copy_texture_to_buffer and copy_texture_to_texture (#1236)
* Adding copy_texture_to_buffer and copy_texture_to_texture

* Adding CopyTextureToTexture and CopyTextureToBuffer in CommandQueue
2021-01-14 11:01:07 -08:00
Al M
2c9b7956d1
Live reloading of shaders (#937)
* Add ShaderLoader, rebuild pipelines for modified shader assets
* New example
* Add shader_update_system, ShaderError, remove specialization assets
* Don't panic on shader compilation failure
2020-12-07 12:32:13 -08:00
François
a3bca7e464
Fix ci (#1024)
* fix format

* fix clippy

* used fixed nightly
2020-12-07 11:57:15 -08:00
Carter Anderson
7699f8b6db
optimize asset gpu data transfer (#987) 2020-12-03 12:39:29 -08:00
Carter Anderson
ccb31bc949
Optimize Text rendering / SharedBuffers (#972)
optimize Text rendering / SharedBuffers
2020-12-02 12:38:20 -08:00
Joshua J. Bouw
9f4c8b1b9a
Fix errors and panics to typical Rust conventions (#968)
Fix errors and panics to typical Rust conventions
2020-12-02 11:31:16 -08:00
Carter Anderson
b5ffab7135
Renderer Optimization Round 1 (#958)
* only update global transforms when they (or their ancestors) have changed

* only update render resource nodes when they have changed (quality check plz)

* only update entity mesh specialization when mesh (or mesh component) has changed

* only update sprite size when changed

* remove stale bind groups

* fix setting size of loading sprites

* store unmatched render resource binding results

* reduce state changes

* cargo fmt + clippy

* remove cached "NoMatch" results when new bindings are added to RenderResourceBindings

* inline current_entity in world_builder

* try creating bind groups even when they havent changed

* render_resources_node: update all entities when resized

* fmt
2020-12-01 13:17:48 -08:00
Carter Anderson
72b2fc9843
Bevy Reflection (#926)
Bevy Reflection
2020-11-27 16:39:59 -08:00
Vladyslav Batyrenko
d11be437cb
Switch to default PartialEq implementation for RenderResourceBinding (#877)
* Switch to default PartialEq implementation for RenderResourceBinding
* Move specialized RenderResourceBinding Hash implementation to BindGroupBuilder
2020-11-21 11:52:44 -08:00
Mariusz Kryński
515d750004
wasm32: non-spirv shader specialization (#843)
wasm32: non-spirv shader specialization
2020-11-15 12:07:17 -08:00
Mariusz Kryński
fae628797f
bevy_render: delegate buffer aligning to render_resource_context (#842) 2020-11-11 14:08:27 -08:00
Mariusz Kryński
60fa2d5f93
delegate layout reflection to RenderResourceContext (#691)
* delegate layout reflection to RenderResourceContext
Also:
 * auto-reflect DynamicBindings
 * use RenderPipeline::new, update dynamic_bindings

linting.

* add dynamic binding generation

Co-authored-by: Carter Anderson <mcanders1@gmail.com>
2020-11-10 13:20:05 -08:00
Julian Heinken
4645da30c8
Mesh overhaul with custom vertex attributes #592 (#599)
Mesh overhaul with custom vertex attributes
2020-10-30 19:21:53 -07:00
Carter Anderson
c32e637384
Asset system rework and GLTF scene loading (#693) 2020-10-18 13:48:15 -07:00
Marek Legris
5acebed731
Transform and GlobalTransform are now Similarities (#596)
Transform and GlobalTransform are now Similarities.

This resolves precision errors and simplifies the api

Co-authored-by: Carter Anderson <mcanders1@gmail.com>
2020-10-18 13:03:16 -07:00
Grayson Burton
354d71cc1f
The Great Debuggening (#632)
The Great Debuggening
2020-10-08 11:43:01 -07:00
Carter Anderson
dd07674b59
github actions: use stable clippy (#577) 2020-09-25 21:34:47 -07:00
Marek Legris
474bb5403e
Transform Rewrite (#374)
Remove individual Translation / Rotation / Scale components in favor of a combined Transform component
2020-09-14 14:00:32 -07:00
Robbie Davenport
4aabe983ec
Switch usage of std HashMap/HashSet default hasher, to aHash algo (#258)
switch to ahash for HashMaps and HashSets via a new bevy_utils crate
2020-08-28 17:08:51 -07:00
Carter Anderson
89a1d360c1
Fix despawn (#361)
* simplify RenderResourcesNode gpu array management

* support removals in RenderResourcesNode
2020-08-26 23:03:55 -07:00
multun
022a31fd8f
fix formatting / clippy warnings (#295) 2020-08-22 18:35:40 -07:00
Carter Anderson
7c3b49cb6f upgrade to latest wgpu 2020-08-21 18:36:32 -07:00
Lachlan Sneff
1eca55e571
Replace std synchronization primitives with parking_lot (#210)
* Replace std::sync::Mutex with parking_lot::Mutex
* Replace std::sync::RwLock with parking_lot::RwLock
2020-08-21 14:55:16 -07:00
Carter Anderson
e31f576484
Merge pull request #206 from multun/clippy
Add clippy support and fix all warnings / errors
2020-08-19 21:33:28 -07:00
Carter Anderson
6ffe0696db
Merge pull request #203 from lachlansneff/ironing-out-uniforms
Replace vector of UniformProperty with a single UniformProperty
2020-08-18 13:44:10 -07:00
Victor "multun" Collod
e36b26c226 render: fix RenderResourceBinding PartialEq impl 2020-08-16 07:20:06 -07:00
Victor "multun" Collod
c38420f1e9 enforce clippy for all target and features 2020-08-16 07:20:06 -07:00
Victor "multun" Collod
d138647818 enforce cargo fmt --check 2020-08-16 05:02:06 -07:00
Lachlan Sneff
9883cd15cd Replace vector of UniformProperty with a single property 2020-08-16 01:16:00 -04:00
John Mitchell
02b1907738 Use BindingShaderStage to pass which program the binding is attached to. 2020-08-13 12:44:21 -04:00
Carter Anderson
7212b70478 rustfmt changes 2020-07-28 14:24:03 -07:00
Carter Anderson
cadbb4c1b0 render: fix "next swap chain texture" bug 2020-07-19 16:15:19 -07:00
Carter Anderson
b12c4d0a48 render: simplify imports and cleanup prelude 2020-07-16 18:26:21 -07:00
Carter Anderson
17f3860d12 remove unsafe Clone implementation on Res/ResMut in favor of UnsafeClone 2020-07-12 12:06:43 -07:00
Carter Anderson
6d58a5a033 render: add direct buffer mapping/unmapping 2020-07-11 12:29:07 -07:00
Carter Anderson
c81ab99dac cargo fmt 2020-07-10 01:37:06 -07:00
Carter Anderson
a4afa4e7f3 render: only attempt to create camera bind group when the camera bind group descriptor exists
this fixes panics in empty scenes
2020-06-26 14:27:22 -07:00
Carter Anderson
e855995145 cargo fmt 2020-06-15 12:47:35 -07:00
Carter Anderson
574656b767 render: remove RenderResources wrapper type 2020-06-14 12:32:06 -07:00
Carter Anderson
0fec350411 render: rename "Assignment" to "Binding" and "AssignmentSet" to "BindGroup" 2020-06-14 12:02:19 -07:00
Carter Anderson
0f608fc90f render: add "specific" ids for buffers, textures, and samplers. Use them instead of RenderResourceIds wherever possible 2020-06-14 11:41:42 -07:00
Carter Anderson
3d07fbdc81 render: "Immediate Mode" draw api
This replaces Renderable with Draw/RenderPipelines components and makes various aspects of the renderer much simpler and legible
2020-06-09 23:16:48 -07:00
Carter Anderson
fd8f87400d add RenderResources/RenderResource traits to replace Uniforms/Uniform 2020-06-07 19:12:41 -07:00
Carter Anderson
4a71cd128d render: rename RenderResource to RenderResourceId 2020-06-07 12:10:14 -07:00
Carter Anderson
e72b5583d1 wgpu: upgrade to latest master. use pollster instead of futures. texture copy alignment 2020-06-04 15:58:02 -07:00
Carter Anderson
6eea96366d cargo fmt 2020-06-03 20:08:20 -07:00
Carter Anderson
e65fe0e736 Clear bind groups on each frame 2020-05-18 14:42:15 -07:00
Carter Anderson
33d4d5f562 Add asset removal. Clean up old/removed meshes 2020-05-17 18:48:14 -07:00
Carter Anderson
2bcb8a2a41 cargo fmt 2020-05-13 18:05:18 -07:00
Carter Anderson
70f122b92a Rename AssetStorage to Assets 2020-05-13 16:45:18 -07:00
Carter Anderson
10637c1010 add TextureDescriptor to ResourceInfo 2020-05-11 21:28:11 -07:00
Carter Anderson
7a71873a32 RenderResourceAssignment refactor 2020-05-11 13:55:23 -07:00
Carter Anderson
20cc41a639 create shader module from source 2020-05-06 19:26:55 -07:00
Carter Anderson
c5ca59dc4d cargo fmt 2020-05-05 18:44:32 -07:00
Carter Anderson
0d87ebe866 simplify / consolidate wgpu resource mangement 2020-05-05 12:45:37 -07:00
Carter Anderson
012a33ed32 add headless render resource context 2020-05-04 22:02:03 -07:00
Carter Anderson
2fd7020646 rename GlobalRenderResourceContext to RenderResources 2020-05-04 19:34:15 -07:00
Carter Anderson
87066cafd3 move bevy crates to their own folder 2020-04-24 17:57:20 -07:00