Carter Anderson
791c475354
RenderGraph2: Finish porting, refactor, cleanup
2020-04-24 17:46:54 -07:00
Carter Anderson
3c83e34cc1
re-enable opt=3 for debug
2020-04-19 22:31:14 -07:00
Carter Anderson
1143f16743
model loading works!
2020-04-19 19:29:33 -07:00
Carter Anderson
7fe2288814
pipeline specialization (support different primitive topologies within the same pipeline)
2020-04-19 19:06:41 -07:00
Carter Anderson
e59693fe67
exit events and systems
2020-04-19 12:13:04 -07:00
Carter Anderson
649ffebb7f
New Mesh implementation (adapts to arbitrary vertex descriptors). Initial gltf model loading.
2020-04-19 10:08:47 -07:00
Carter Anderson
dcd71d1b72
Rework AppBuilder system interfaces. Remove setup() in favor of startup_system
2020-04-15 19:42:17 -07:00
Carter Anderson
837e1dc139
Port remaining functionality to RenderContext and remove Renderer
2020-04-12 14:47:41 -07:00
Carter Anderson
1d44b4034f
asset handle batcher system
2020-04-12 00:54:51 -07:00
Carter Anderson
b9f4c0a53b
move shader defs updates to their own systems. make UniformResourceProvider::update World read-only
2020-04-11 20:27:46 -07:00
Carter Anderson
394b7ce940
RenderContext, RenderResourceContext and wgpu implementations
2020-04-11 18:40:30 -07:00
Carter Anderson
f2b2065fbe
make CommandBufferBuilder non-consuming
2020-04-07 13:29:11 -07:00
Carter Anderson
2565a69230
make WorldBuilder non-consuming
2020-04-07 13:25:01 -07:00
Carter Anderson
bd97da3a51
Add comments to examples and fix example_showcase script timing
2020-04-06 21:33:18 -07:00
Carter Anderson
574bc93e4f
expand top level crate docs slightly and add hello world example
2020-04-06 17:39:06 -07:00
Carter Anderson
0af36cfaed
make every bevy dependency optional in bevy crate
2020-04-06 17:03:21 -07:00
Carter Anderson
b5d78477cf
cargo fmt
2020-04-06 16:15:59 -07:00
Carter Anderson
683a70d8e7
add SchedulePlans
2020-04-06 01:57:00 -07:00
Carter Anderson
686e1422db
Crate-ify (almost) everything
2020-04-05 20:19:02 -07:00
Carter Anderson
0202dcb009
Use type_name as plugin name default
2020-04-05 14:12:14 -07:00
Carter Anderson
6d53100ff3
mouse motion
2020-04-05 00:32:53 -07:00
Carter Anderson
ec65cfef4a
Add mouse input
2020-04-04 23:42:39 -07:00
Carter Anderson
f089df3a49
keyboard input events
2020-04-04 14:59:49 -07:00
Carter Anderson
4c3af427e9
dont force static lifetime on appplugin string
2020-04-04 13:00:52 -07:00
Carter Anderson
ef8c85f0c7
cargo fmt
2020-04-04 12:43:16 -07:00
Carter Anderson
5cbf606ef7
make window its own plugin and rename add_defaults to add_default_plugins
2020-04-04 12:40:32 -07:00
Carter Anderson
f6f8ba2cb6
Document and test Events. Rename EventHandle to EventReader. Fix buffer indexing. Customizable bevy path for proc macros
2020-03-31 18:04:54 -07:00
Carter Anderson
70b4100132
using consistent system naming conventions
2020-03-30 15:51:41 -07:00
Carter Anderson
dcb292e00a
quad uses size. polish examples
2020-03-30 15:44:29 -07:00
Carter Anderson
29bbc05eae
add support for multiple windows
2020-03-30 14:53:32 -07:00
Carter Anderson
7c121563db
headless apps
2020-03-30 11:52:33 -07:00
Carter Anderson
13da707aee
add event example
2020-03-29 23:51:13 -07:00
Carter Anderson
d8e7a3dcca
fix material shader example
2020-03-29 01:34:08 -07:00
Carter Anderson
3d261f72de
move plugin to app module
2020-03-29 01:15:47 -07:00
Carter Anderson
ec84a33b43
everything is a plugin
...
... well almost everything
2020-03-28 23:18:33 -07:00
Carter Anderson
ed9eb88835
only create wgpu swap chain when surface is ready
2020-03-28 13:57:41 -07:00
Carter Anderson
26ff878469
add default diagnostics wait time
2020-03-28 13:55:55 -07:00
Carter Anderson
92c421b5e1
add empty_defaults example
2020-03-27 18:00:21 -07:00
Carter Anderson
93bf728475
new Diagnostics system
2020-03-27 15:03:47 -07:00
Carter Anderson
e523dc92d8
shader_def: use to_upper instead of to_screaming_snake
2020-03-25 13:24:17 -07:00
Carter Anderson
a0fa4d2d79
cargo fmt
2020-03-22 11:06:08 -07:00
Carter Anderson
eaff311a80
simplify render graph builder interface
2020-03-22 03:06:08 -07:00
Carter Anderson
c6d7402318
add bevy_derive to prelude
2020-03-22 01:33:53 -07:00
Carter Anderson
5d893a83f2
remove unneeded light rotation
2020-03-22 01:16:29 -07:00
Carter Anderson
c9aec26f88
CommandBufferBuilder and setup systems
2020-03-21 22:35:57 -07:00
Carter Anderson
d2e160d44a
refactor cameras. add defaults
2020-03-21 21:55:33 -07:00
Carter Anderson
fb496a6172
validate VertexBufferDescriptors and fill in blanks when possible
2020-03-21 21:10:58 -07:00
Carter Anderson
a4eed18800
RenderGraph is now a Resource. RenderGraph owns vertex buffer descriptors. Assorted cleanup
2020-03-21 19:57:59 -07:00
Carter Anderson
7660b8bf3f
batched resource creation, vertex buffer macro
2020-03-21 18:12:30 -07:00
Carter Anderson
ae0d5abf45
use RenderResourceAssignments in place of Entity
2020-03-20 17:49:29 -07:00
Carter Anderson
71d091e10c
entities with renderable.is_instanced are now removed from normal rendering
2020-03-20 16:58:21 -07:00
Carter Anderson
cbba656f16
replace appbuilder::new() with app::build()
2020-03-20 16:35:19 -07:00
Carter Anderson
9881f64715
cargo fmt
2020-03-20 12:47:33 -07:00
Carter Anderson
04590de678
separate albedo color and make it required
...
I worked really hard to make ColorSource work, but sadly we need color to be instanceable and making it optional would add too much complexity. Maybe at some point in the future we can add it back. On the plus side, albedo color now modulates the albedo texture
2020-03-17 22:02:01 -07:00
Carter Anderson
28fb0fdfc8
Reflect Vertex Buffer Attributes
...
Must follow VertexBufferDescriptorName_AttributeName format
I_VertexBufferDescriptorName_AttributeName indicates that an attribute is instanced
Currently all attributes must be defined in shaders or offsets will be incorrect.
2020-03-17 13:20:54 -07:00
Carter Anderson
5d99f3a7e8
Add Handle<T> support to uniform resource provider. Use Handle<StandardMaterial> instead of StandardMaterial
2020-03-16 00:45:28 -07:00
Carter Anderson
63f40589e3
begin instancing work
2020-03-14 12:58:22 -07:00
Carter Anderson
56e79d5225
reorganize texture and mesh
2020-03-14 12:56:37 -07:00
Carter Anderson
ad654a3c25
add fps printer system to diagnostics mod
2020-03-11 01:44:46 -07:00
Carter Anderson
7342f96174
named pipelines (makes custom shaders easier)
2020-03-10 02:46:27 -07:00
Carter Anderson
fb4752532b
rename pipelinebuilder.build() to finish()
2020-03-10 02:16:01 -07:00
Carter Anderson
807929f9e3
fix plugin example
2020-03-09 23:50:17 -07:00
Carter Anderson
99cdf56e7d
add Color type
2020-03-09 23:43:40 -07:00
Carter Anderson
aa09e93980
reorganize render modules
2020-03-09 23:08:09 -07:00
Carter Anderson
440d883322
use static dispatch in add_resource_provider
2020-03-09 12:07:16 -07:00
Carter Anderson
e4550aaab2
tweak add_children
2020-03-09 02:08:27 -07:00
Carter Anderson
8eec5653b6
rename add_archetype to add_entity
2020-03-09 02:02:17 -07:00
Carter Anderson
a790332505
better parenting ergonomics in world builder
2020-03-09 02:00:59 -07:00
Carter Anderson
91a6c0d9db
remove "asset scopes" now that resources are separate from world
2020-03-09 01:40:04 -07:00
Carter Anderson
f6dd6a5ca9
fix parenting example, add missing transform components, add parenting to world builder
2020-03-09 01:31:15 -07:00
Carter Anderson
9355a53980
upgrade legion (breaks plugins)
2020-03-08 23:19:07 -07:00
Carter Anderson
9d2909b43e
cleanup
2020-03-08 20:29:21 -07:00
Carter Anderson
e0a1a83bc9
create entities as a separate step before starting a render pass
2020-03-08 20:06:59 -07:00
Carter Anderson
cadea8deb0
Break up wgpu renderer
2020-03-08 19:26:50 -07:00
Carter Anderson
baac7ff296
add png image loading and enable transparency
2020-03-02 20:33:46 -08:00
Carter Anderson
9d71d0d3fc
clean up examples
2020-03-02 08:33:52 -08:00
Carter Anderson
22be0b3366
reset uniform count on each update (oops)
2020-03-02 08:32:15 -08:00
Carter Anderson
ca563ea1b3
fix uniform providers with different field sets
2020-03-02 00:19:28 -08:00
Carter Anderson
5154320f70
textures work!
2020-03-01 17:48:37 -08:00
Carter Anderson
9e5f4aeefc
implement Copy for Handle
2020-02-23 23:50:44 -08:00
Carter Anderson
1a4bd98434
more texture work
2020-02-23 23:41:48 -08:00
Carter Anderson
f84e71d051
cargo fmt
2020-02-22 15:02:01 -08:00
Carter Anderson
2f1a0cb4a4
macros are now fully screaming snake
2020-02-18 22:59:33 -08:00
Carter Anderson
8a10c06ad5
add texture to frag shader. fix weird macro name collision bug
2020-02-18 20:26:02 -08:00
Carter Anderson
b809b22589
add ColorSource and remove test macro from StandardMaterial
2020-02-18 09:16:34 -08:00
Carter Anderson
f820e4207c
add macro example to custom_shader
2020-02-18 09:06:24 -08:00
Carter Anderson
e0e0e41c33
Add "standard config" to pipeline builder
2020-02-17 20:43:50 -08:00
Carter Anderson
ad7acb111a
fix custom_shader example
2020-02-17 20:23:00 -08:00
Carter Anderson
6cf981c610
use full path in macro references
2020-02-17 19:53:48 -08:00
Carter Anderson
a76b40bbb4
Fix pipeline name
2020-02-17 19:15:28 -08:00
Carter Anderson
57f798c0bd
cleanup
2020-02-17 19:06:12 -08:00
Carter Anderson
6f376b5f3f
remove old render graph
2020-02-17 18:36:31 -08:00
Carter Anderson
acebeb924c
shader reflection for dynamic uniforms
2020-02-17 16:33:46 -08:00
Carter Anderson
c208945833
add assigned meshes render target
...
dynamic compiling w/ entity-specifc macros works!
2020-02-15 22:17:24 -08:00
Carter Anderson
56e5414b63
only update pipelines when macros change. better handle debug print
2020-02-15 19:00:30 -08:00
Carter Anderson
cd6ccc45b1
resolve warnings
2020-02-11 19:10:38 -08:00
Carter Anderson
f24a274a2a
add renderable to render related queries
2020-02-11 19:09:05 -08:00
Carter Anderson
d58c5e7f5c
tweak simple new
2020-02-11 18:54:04 -08:00
Carter Anderson
7cdc2351ba
add default to MeshEntity
2020-02-11 18:29:39 -08:00
Carter Anderson
eedec80e89
add shader def fields / proc macro
2020-02-10 19:26:04 -08:00