Carter Anderson
|
1110f9b877
|
create bevy_math crate and move math types there
|
2020-07-16 17:11:52 -07:00 |
|
Carter Anderson
|
4712e96aa8
|
ecs: make parallel executor resource-aware
|
2020-07-15 17:20:36 -07:00 |
|
Carter Anderson
|
a7bab755ee
|
ecs: add query get safety checks
|
2020-07-14 19:05:39 -07:00 |
|
Carter Anderson
|
50335e21e2
|
derive: allow manually forcing modules to "crate", which prevents the need for ambiguous crates
this fixes a failing doc test
|
2020-07-14 16:16:01 -07:00 |
|
Carter Anderson
|
0dc810a37a
|
ecs: add thread local system support to parallel executor
|
2020-07-14 14:19:17 -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
|
2ca6de2b81
|
upgrade wgpu
|
2020-07-10 13:47:31 -07:00 |
|
Carter Anderson
|
2508a59f68
|
remove darling
|
2020-07-10 02:53:31 -07:00 |
|
Carter Anderson
|
c81ab99dac
|
cargo fmt
|
2020-07-10 01:37:06 -07:00 |
|
Carter Anderson
|
950e50bbb1
|
Bevy ECS migration
|
2020-07-10 01:06:21 -07:00 |
|
Carter Anderson
|
5787bcb2c5
|
legion: upgrade
|
2020-06-27 14:32:50 -07:00 |
|
Carter Anderson
|
1f12964026
|
legion: remove foreach system functions
this is a bit sad, but upstream legion's new lifetimes appear to be incompatible with our foreach approach
|
2020-06-27 12:06:12 -07:00 |
|
Carter Anderson
|
981687ae41
|
remove ui camera now that default 2d camera is identical
|
2020-06-27 10:21:20 -07:00 |
|
Carter Anderson
|
e75496772e
|
legion: change query system ordering
|
2020-06-27 10:18:27 -07:00 |
|
Carter Anderson
|
1e614e41f1
|
render: make ClearColor a tuple struct
|
2020-06-26 21:39:30 -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
|
69925f0817
|
render: multi-window cameras ready to go!
passes now bind camera buffers and cameras can now be assigned non-primary windows
|
2020-06-25 23:04:08 -07:00 |
|
Carter Anderson
|
ca4726ea7d
|
render to second window in multiple_windows example
|
2020-06-25 16:02:21 -07:00 |
|
Carter Anderson
|
8a8d01aa88
|
render: add ClearColor resource
|
2020-06-25 15:24:27 -07:00 |
|
Carter Anderson
|
4a0f8b8869
|
add root ui node to example
|
2020-06-25 13:19:48 -07:00 |
|
Carter Anderson
|
92c44320ee
|
ecs: rename EntityArchetype to ComponentSet
|
2020-06-25 11:21:56 -07:00 |
|
Carter Anderson
|
1ef4fbf005
|
ui: rework so Nodes now use transforms and z-sort happens
|
2020-06-25 10:13:00 -07:00 |
|
Carter Anderson
|
75429f4639
|
render: use left-handed coordinate system and y-up
|
2020-06-24 15:29:10 -07:00 |
|
Carter Anderson
|
4ba2f72572
|
render: is_transparent flag. draw transparent object back-to-front and opaque objects front-to-back
|
2020-06-24 11:35:01 -07:00 |
|
Carter Anderson
|
2b8fe144a8
|
render: rename MainPassNode to PassNode
there will be more than one and it is suitably generic
|
2020-06-24 10:29:26 -07:00 |
|
Carter Anderson
|
2c74560283
|
render: draw in back-to-front mode to be safe (until we can do both at the same time). expand texture example
|
2020-06-23 19:29:12 -07:00 |
|
Carter Anderson
|
3ee8aa8b0f
|
camera: make camera transform in world coordinates instead of the inverse
|
2020-06-23 19:18:32 -07:00 |
|
Carter Anderson
|
41dc8a5967
|
render: add front-to-back drawing
MainPassNodes now have assigned cameras and draw using those camera's VisibleEntities
|
2020-06-23 16:52:50 -07:00 |
|
Carter Anderson
|
ca8625c407
|
render: ActiveCameras resource and system
|
2020-06-23 15:58:06 -07:00 |
|
Carter Anderson
|
2f5f6e017a
|
render: intitial VisibleEntities component and sort system
|
2020-06-22 17:55:48 -07:00 |
|
Carter Anderson
|
031a0c6d58
|
camera: add scale component to camera entities
|
2020-06-22 13:26:49 -07:00 |
|
Carter Anderson
|
06b2b06e9d
|
camera: update cameras when windows are created
|
2020-06-22 13:21:39 -07:00 |
|
Carter Anderson
|
c654987ae3
|
fix bug where pipelines used unspecialized shaders
|
2020-06-21 18:55:22 -07:00 |
|
Carter Anderson
|
faacd2778d
|
sprite: add color to TextureAtlasSprite and make Vec3 16 bytes again to account for glsl UBO layout
|
2020-06-21 17:43:36 -07:00 |
|
Carter Anderson
|
da3d6983a7
|
text: immediate-mode atlased text rendering works, but theres no character positioning/layout yet
|
2020-06-19 13:45:26 -07:00 |
|
Carter Anderson
|
a3c1b7930e
|
render: fix SharedBuffers render resource context
|
2020-06-19 13:44:21 -07:00 |
|
Carter Anderson
|
4246d47fec
|
render: move pipeline compilation and bind group creation into draw stage. impl ResourceSet for DrawContext. progress on text drawing. general cleanup
|
2020-06-18 17:27:20 -07:00 |
|
Carter Anderson
|
74d0055a3d
|
render: move dynamic_bindings to PipelineSpecialization
This is a temporary step back in ergonomics as we are no longer automatically inferring dynamic bindings from RenderResourceBindings
|
2020-06-17 18:10:29 -07:00 |
|
Carter Anderson
|
e89c693c4d
|
render: add SpecializedPipeline and SpecializedShader types
|
2020-06-17 13:27:10 -07:00 |
|
Carter Anderson
|
e57fdca1bc
|
render: more progress on immediate mode rendering and DrawableText
|
2020-06-17 13:10:33 -07:00 |
|
Carter Anderson
|
f4acbdddad
|
SharedBuffersNode
|
2020-06-16 22:23:33 -07:00 |
|
Carter Anderson
|
e855995145
|
cargo fmt
|
2020-06-15 12:47:35 -07:00 |
|
Carter Anderson
|
8a704a3e28
|
render: add AssetRenderResourceBindings
|
2020-06-15 12:45:18 -07:00 |
|
Carter Anderson
|
f799d3ac93
|
render: add RenderPipeline and begin moving logic there
|
2020-06-15 00:08:50 -07:00 |
|
Carter Anderson
|
97edaa7343
|
render: rename ResourceType to RenderResourceType
|
2020-06-14 15:24:33 -07:00 |
|
Carter Anderson
|
3786224b28
|
render: replace ResourceInfo with ResourceType
|
2020-06-14 15:22:31 -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
|
5f0363a4f5
|
render: move more render code into system scheduler
|
2020-06-13 18:38:25 -07:00 |
|
Carter Anderson
|
eed40fee9c
|
render: initial SharedBuffer
|
2020-06-13 18:37:02 -07:00 |
|
Carter Anderson
|
6362b2a516
|
render: support arbitrary RenderResource byte lengths and temporarily disable RenderResource asset change events
|
2020-06-13 18:34:50 -07:00 |
|
Carter Anderson
|
8803bcd92e
|
include buffer range when hashing RenderResourceAssignments
|
2020-06-11 11:12:23 -07:00 |
|
Carter Anderson
|
fc4160ea41
|
AssetRenderResourceNodes now consume asset change events. Remove EntitiesWaitingForAssets in favor of DrawState.
|
2020-06-10 18:54:17 -07:00 |
|
Carter Anderson
|
2e48269923
|
migrate UniformNode / AssetUniformNode to query system fns
|
2020-06-10 16:02:50 -07:00 |
|
Carter Anderson
|
3c3449b719
|
RenderResourceSet builder pattern
|
2020-06-10 15:45:33 -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
|
1426208e2f
|
remove DrawTargets in favor of PassNodes and in preparation for "immediate mode" drawing api
|
2020-06-08 14:35:13 -07:00 |
|
Carter Anderson
|
4568f5dae3
|
remove specialization. bevy now builds on stable rust!
|
2020-06-07 23:36:39 -07:00 |
|
Carter Anderson
|
be23f119d5
|
remove old uniform system
|
2020-06-07 22:32:55 -07:00 |
|
Carter Anderson
|
62c434274f
|
shader_defs: new leaner shader defs. they are now separate from uniforms
|
2020-06-07 22:24:53 -07:00 |
|
Carter Anderson
|
fd8f87400d
|
add RenderResources/RenderResource traits to replace Uniforms/Uniform
|
2020-06-07 19:12:41 -07:00 |
|
Carter Anderson
|
5add29f8cf
|
rename LocalToWorld -> Transform and LocalToParent -> LocalTransform
|
2020-06-07 13:39:50 -07:00 |
|
Carter Anderson
|
d0298a4f89
|
split AsVertexBufferDescriptor out from Uniforms
|
2020-06-07 13:00:58 -07:00 |
|
Carter Anderson
|
70e9892e00
|
remove bevy_derive from bevy crate and export derives from specific crates
|
2020-06-07 12:22:16 -07:00 |
|
Carter Anderson
|
4a71cd128d
|
render: rename RenderResource to RenderResourceId
|
2020-06-07 12:10:14 -07:00 |
|
Carter Anderson
|
6164ea6ecc
|
sprite: dynamically resize atlas during build
|
2020-06-06 16:16:58 -07:00 |
|
Carter Anderson
|
2705e5cbb4
|
add texture atlases
|
2020-06-06 00:12:38 -07:00 |
|
Carter Anderson
|
ffc4246a74
|
remove TextureType
|
2020-06-05 19:38:03 -07:00 |
|
Carter Anderson
|
db6a365b13
|
saner orthographic projection
|
2020-06-04 17:09:24 -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
|
69ac775bfb
|
ignore reflected gl_VertexIndex attribute
|
2020-06-04 11:30:43 -07:00 |
|
Carter Anderson
|
ab31bf9d9e
|
impl Default for EventReader
|
2020-06-03 23:53:00 -07:00 |
|
Carter Anderson
|
6eea96366d
|
cargo fmt
|
2020-06-03 20:08:20 -07:00 |
|
Carter Anderson
|
5927bad382
|
sprite sheets are fully operational
|
2020-06-03 19:00:19 -07:00 |
|
Carter Anderson
|
13d56907ed
|
sprite: more sprite sheet work (not quite operable yet)
|
2020-06-03 11:39:10 -07:00 |
|
Carter Anderson
|
c9ae10a8a9
|
make mesh byte conversion zero-copy again
|
2020-06-03 11:15:58 -07:00 |
|
Carter Anderson
|
97142a68d1
|
remove redundant mesh binding code
|
2020-06-01 22:24:36 -07:00 |
|
Carter Anderson
|
5bcd594cb4
|
bytes: AsBytes trait, remove zerocopy, remove glam fork
|
2020-06-01 19:38:05 -07:00 |
|
Carter Anderson
|
d5d0107ada
|
bytes: remove AsBytes in favor of Bytes
|
2020-06-01 14:33:00 -07:00 |
|
Carter Anderson
|
21a79c56a7
|
camera: add position and rotation components to Perspective camera. add "sync" toggle to LocalToWorld transform.
|
2020-05-31 10:31:18 -07:00 |
|
Carter Anderson
|
a463c040d7
|
use bottom left origin for ui
|
2020-05-30 21:15:55 -07:00 |
|
Carter Anderson
|
e59385472c
|
camera: always update camera uniform buffers
|
2020-05-30 12:43:27 -07:00 |
|
Carter Anderson
|
6e76296ce0
|
sprite: create sprite crate. center 2d camera (split from ui camera). add 2d camera movement
|
2020-05-30 12:31:04 -07:00 |
|
Carter Anderson
|
71b3755633
|
camera: split 2d and ui camera. remove resource_name mod
|
2020-05-29 22:30:07 -07:00 |
|
Carter Anderson
|
51d41b2302
|
camera: remove active camera components in favor of camera names
|
2020-05-29 22:07:55 -07:00 |
|
Carter Anderson
|
fec9034644
|
camera: break out projection components
|
2020-05-29 17:25:14 -07:00 |
|
Carter Anderson
|
8a14e61d0f
|
fix test and tweak github action
|
2020-05-28 23:43:45 -07:00 |
|
Carter Anderson
|
0472cbfc7c
|
start porting "query" systems from SystemBuilder to functions
|
2020-05-28 17:32:51 -07:00 |
|
Carter Anderson
|
830565ae2b
|
scene: type registry refactor. use short type names when possible
|
2020-05-27 19:27:55 -07:00 |
|
Carter Anderson
|
3ee5a67cdb
|
scenes: polish scene example. prop->property attribute. derive(Resources) to derive(FromResources)
|
2020-05-27 15:57:12 -07:00 |
|
Carter Anderson
|
a76bb8b507
|
props: fix small issues. scene loading now works!
|
2020-05-27 13:46:43 -07:00 |
|
Carter Anderson
|
d2d02f63f6
|
props: "Seq" properties
|
2020-05-26 19:47:33 -07:00 |
|
Carter Anderson
|
e337ff59b8
|
props: register "pbr" components
|
2020-05-25 21:57:48 -07:00 |
|
Carter Anderson
|
c8d55fe030
|
register bevy_transform and bevy_render components
|
2020-05-25 18:49:29 -07:00 |
|
Carter Anderson
|
cb3d60a87f
|
props: add Property derive and implement Properties for Camera
|
2020-05-25 18:27:04 -07:00 |
|
Carter Anderson
|
f0cbe8cd86
|
prop: impl prop macro. add impls for glam, legion, smallvec
|
2020-05-25 17:50:17 -07:00 |
|
Carter Anderson
|
c5ab7df98f
|
automatically detect bevy meta crate in derive macros
|
2020-05-24 12:39:23 -07:00 |
|
Carter Anderson
|
d920100d35
|
scenes: deserialization and refactor
|
2020-05-21 17:21:33 -07:00 |
|
Carter Anderson
|
e65fe0e736
|
Clear bind groups on each frame
|
2020-05-18 14:42:15 -07:00 |
|
Carter Anderson
|
c5a78d4616
|
TextureCopy render graph node, texture_resource_system
Removed textures are now freed
|
2020-05-18 11:31:11 -07:00 |
|
Carter Anderson
|
33d4d5f562
|
Add asset removal. Clean up old/removed meshes
|
2020-05-17 18:48:14 -07:00 |
|
Carter Anderson
|
86c18edbfd
|
Label component
|
2020-05-17 18:09:29 -07:00 |
|
Carter Anderson
|
870f715df3
|
Hot asset reloading
|
2020-05-16 20:18:30 -07:00 |
|
Carter Anderson
|
623c8a8d9a
|
remove unused fn
|
2020-05-16 12:53:49 -07:00 |
|
Carter Anderson
|
b1f07e3749
|
cargo fmt
|
2020-05-16 00:27:30 -07:00 |
|
Carter Anderson
|
fcc0a6303b
|
update mesh on gpu when it changes
|
2020-05-16 00:21:04 -07:00 |
|
Carter Anderson
|
ad66f87ff6
|
Entities wait for meshes to load
|
2020-05-15 19:32:49 -07:00 |
|
Carter Anderson
|
bf7f222318
|
Support async texture loading
|
2020-05-15 19:30:02 -07:00 |
|
Carter Anderson
|
35adad6556
|
Async mesh loading works
|
2020-05-15 17:22:45 -07:00 |
|
Carter Anderson
|
4e1abea161
|
AssetServer: multithreaded sync/async asset loading
|
2020-05-15 16:55:44 -07:00 |
|
Carter Anderson
|
2bcb8a2a41
|
cargo fmt
|
2020-05-13 18:05:18 -07:00 |
|
Carter Anderson
|
6381611e89
|
Resource -> Res, Ref->Com
|
2020-05-13 17:57:08 -07:00 |
|
Carter Anderson
|
fb8f9e8636
|
RenderGraph::add_node now requires a name
|
2020-05-13 17:35:48 -07:00 |
|
Carter Anderson
|
06f3a4efb9
|
Use system fns for all setup code
|
2020-05-13 17:31:56 -07:00 |
|
Carter Anderson
|
70f122b92a
|
Rename AssetStorage to Assets
|
2020-05-13 16:45:18 -07:00 |
|
Carter Anderson
|
b58db0749e
|
use init_resource everywhere
|
2020-05-13 16:35:38 -07:00 |
|
Carter Anderson
|
16b568e00e
|
Asset events and AddAsset builder
|
2020-05-13 16:17:44 -07:00 |
|
Carter Anderson
|
c18ecf2a55
|
initial text rendering
|
2020-05-13 13:22:12 -07:00 |
|
Carter Anderson
|
73cc20768c
|
remove pathfinder code
its not ready yet so it shouldnt be on master :)
|
2020-05-12 16:35:49 -07:00 |
|
Carter Anderson
|
44717c7b10
|
pathfinder: small tweaks
|
2020-05-12 14:31:03 -07:00 |
|
Carter Anderson
|
7508e6f02e
|
pathfinder: minor fixes
|
2020-05-12 13:36:28 -07:00 |
|
Carter Anderson
|
6c29a2f52b
|
pathfinder: fill in missing uniforms
|
2020-05-12 12:04:10 -07:00 |
|
Carter Anderson
|
10637c1010
|
add TextureDescriptor to ResourceInfo
|
2020-05-11 21:28:11 -07:00 |
|
Carter Anderson
|
4eb562975f
|
pathfinder: data binding
|
2020-05-11 20:12:48 -07:00 |
|
Carter Anderson
|
f98918fd5c
|
remove buffer array info
|
2020-05-11 14:07:09 -07:00 |
|
Carter Anderson
|
7a71873a32
|
RenderResourceAssignment refactor
|
2020-05-11 13:55:23 -07:00 |
|
Carter Anderson
|
ef2e5a1ba3
|
pathfinder: set vertex buffer descriptors
|
2020-05-11 12:37:04 -07:00 |
|
Carter Anderson
|
35e1d8b498
|
pathfinder: more backend work. it now renders the clear color without crashing
|
2020-05-11 09:01:31 -07:00 |
|
Carter Anderson
|
0fdf331552
|
pathfinder: vertex buffers, samplers, and glsl layout
|
2020-05-07 23:10:57 -07:00 |
|
Carter Anderson
|
5e5df2bb87
|
toggle-able "bevy conventions" in shaders
|
2020-05-07 19:09:25 -07:00 |
|
Carter Anderson
|
3d65a0d236
|
move pipeline layout reflection to pipeline descriptor
|
2020-05-07 11:21:25 -07:00 |
|
Carter Anderson
|
20cc41a639
|
create shader module from source
|
2020-05-06 19:26:55 -07:00 |
|
Carter Anderson
|
e459b42418
|
handle::new now creates a new random handle
|
2020-05-06 19:26:28 -07:00 |
|
Carter Anderson
|
c5ca59dc4d
|
cargo fmt
|
2020-05-05 18:44:32 -07:00 |
|
Carter Anderson
|
2b8789dc8c
|
queue frees in system nodes
|
2020-05-05 13:12:50 -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
|
7560ecf9d8
|
correct "its"
|
2020-05-04 14:18:46 -07:00 |
|
Carter Anderson
|
75f1362433
|
upgrade wgpu
|
2020-05-04 13:11:51 -07:00 |
|
Carter Anderson
|
f5149cab05
|
move color constants to Color struct
|
2020-05-04 11:01:57 -07:00 |
|
Carter Anderson
|
dcc34473e5
|
sprites
|
2020-05-04 01:23:40 -07:00 |
|
Carter Anderson
|
08c6679f38
|
add color constants
|
2020-05-03 23:47:52 -07:00 |
|
Carter Anderson
|
d50313c285
|
ui is back!
|
2020-05-03 19:30:31 -07:00 |
|
Carter Anderson
|
05dbf31fd1
|
derive struct as uniform
|
2020-05-03 17:54:16 -07:00 |
|
Carter Anderson
|
dac9cac776
|
ui render graph
|
2020-05-03 12:35:07 -07:00 |
|
Carter Anderson
|
5537eabb8c
|
"base render graph": a common baseline graph
|
2020-05-03 10:54:30 -07:00 |
|
Carter Anderson
|
24e5238e75
|
asset handles now use uuids instead of ascending ints
|
2020-05-02 18:35:18 -07:00 |
|
Carter Anderson
|
a5a7edf07e
|
remove shaderc dependency (makes windows builds seamless)
|
2020-05-02 13:57:22 -07:00 |
|
Carter Anderson
|
50f8134ca0
|
rewrite batcher to be fully generic
|
2020-05-02 10:28:29 -07:00 |
|
Carter Anderson
|
7b79b3de8d
|
organize examples and add ecs guide
|
2020-05-01 13:12:47 -07:00 |
|
Carter Anderson
|
368a1b8815
|
cargo fmt
|
2020-05-01 01:50:07 -07:00 |
|
Carter Anderson
|
5458c6daf4
|
port a few more systems to functions and add some name clarity
|
2020-05-01 01:37:20 -07:00 |
|
Carter Anderson
|
a1cbf36b0c
|
Use system type name as default system name
|
2020-05-01 00:55:32 -07:00 |
|
Carter Anderson
|
45a710fe6a
|
cargo fmt
|
2020-04-29 01:37:54 -07:00 |
|
Carter Anderson
|
9a3700d8f1
|
Change events.iter(&mut reader) to reader.iter(&events)
|
2020-04-28 10:59:42 -07:00 |
|
Carter Anderson
|
0c3a77ac9f
|
impl AddAssign for Color
|
2020-04-28 00:59:26 -07:00 |
|
Carter Anderson
|
c2c543e0ba
|
move batch to its own module
|
2020-04-27 17:41:02 -07:00 |
|
Carter Anderson
|
115a009c16
|
cargo fmt
|
2020-04-24 18:55:15 -07:00 |
|
Carter Anderson
|
87066cafd3
|
move bevy crates to their own folder
|
2020-04-24 17:57:20 -07:00 |
|