Carter Anderson
7bdab60e31
use temporary wgpu fork and latest publish winit crate
2020-08-09 21:26:34 -07:00
Carter Anderson
3deeb05264
use bevy-glsl-to-spirv
2020-08-09 18:57:17 -07:00
Carter Anderson
d67d05db97
add temporary ron fork
...
bevy requires changes we contributed to master, but those changes havent been published yet
2020-08-09 18:45:55 -07:00
Carter Anderson
423c5e3e0f
ecs: prepare for publishing
2020-08-09 18:16:12 -07:00
Carter Anderson
34752a27bd
add "0.1" version to all bevy crate references
2020-08-09 17:39:28 -07:00
Carter Anderson
9aee5323e1
add crate metadata
2020-08-09 17:24:27 -07:00
Carter Anderson
3d09459813
add more doc comments and clean up some public exports
2020-08-09 16:13:04 -07:00
Carter Anderson
f963cd41dc
app: rename AppPlugin to Plugin
2020-08-07 20:22:17 -07:00
Carter Anderson
07858aa348
scene: fix dynamically loading RenderPipelines scenes
2020-08-02 19:33:27 -07:00
Carter Anderson
3c1494eb64
scene: rename "spawn" to "instance"
2020-08-02 12:57:30 -07:00
Carter Anderson
bb111cbafa
more example cleanup and polish
2020-07-31 17:10:29 -07:00
Carter Anderson
ccf81edd8f
render: add atlas padding support to work around MSAA artifacts, disable MSAA by default
2020-07-30 14:38:13 -07:00
Carter Anderson
54eaa2bdc6
render: easier msaa color attachments and fix multi-window example
2020-07-30 13:20:27 -07:00
Carter Anderson
f85ec04a48
ecs: prepare system ranges based on stage and thread locals
2020-07-30 13:19:55 -07:00
Carter Anderson
44c08f90aa
render: remove Drawable implementation from RenderPipelines because it doesnt add any value
2020-07-29 18:28:32 -07:00
Carter Anderson
ca87359c6e
render: add MSAA support
2020-07-29 18:15:15 -07:00
Carter Anderson
a2c1a90695
fix ui in font atlas and breakout examples
2020-07-29 01:16:42 -07:00
Carter Anderson
db665b96c0
ui: fix z indices and depth calculations
2020-07-29 00:28:44 -07:00
Carter Anderson
2929197d9b
render: add RenderPass queries. move ui to its own pass
2020-07-28 20:11:27 -07:00
Carter Anderson
bd8e979de8
ecs: only borrow/iterate archetypes currently used by a given query
2020-07-28 16:37:37 -07:00
Carter Anderson
64cc382477
ecs: move copy of QueryBorrow into bevy_ecs and fix perf regressions
2020-07-28 16:17:21 -07:00
Carter Anderson
7212b70478
rustfmt changes
2020-07-28 14:24:03 -07:00
Carter Anderson
6dadf34401
add more example comments
2020-07-28 13:45:36 -07:00
Carter Anderson
3d2a4f6c39
ui: combine Click and Hover into Interaction
2020-07-28 01:20:19 -07:00
Carter Anderson
4a8c6c335a
ui: feed computed image size into bevy_ui flex
2020-07-28 00:37:25 -07:00
Carter Anderson
cf9501a50e
ui: feed computed text position into bevy_ui flex
...
and remove TextAlign because it is now redundant
2020-07-27 21:04:04 -07:00
Carter Anderson
1f006c348d
ui: fix examples, flip fix stretch axis incompatibility, ergonomics
2020-07-27 19:13:11 -07:00
Carter Anderson
3d5e7e54f3
ui: create bevy types for flex style
2020-07-27 16:54:36 -07:00
Carter Anderson
e7b22ac043
Merge pull request #77 from Moxinilian/despawn-recursive
...
transform: implement hierarchical entity despawn
2020-07-27 15:35:23 -07:00
Moxinilian
3007201eac
transform: improve despawn_recursive tests
2020-07-28 00:23:59 +02:00
Moxinilian
311f04f858
transform: implement hierarchical entity despawn
2020-07-28 00:10:32 +02:00
Thomas Herzog
23149f1753
add texture loader for more formats using image
crate
...
This adds support for PNG images only for now. More formats can be added
relatively easily.
Images with various pixel formats are supported (such as RGB-16bit or
R-8bit).
2020-07-27 23:30:31 +02:00
Thomas Herzog
7412b0ec25
add HDR image loader
...
Using the `image` crate, HDR images can be loaded into RGBA-f32 textures.
2020-07-27 11:37:45 +02:00
Carter Anderson
fb9f04ba90
Merge pull request #73 from Moxinilian/windows-winit-panic
...
winit: fix panic on windows
2020-07-26 13:15:56 -07:00
Thomas Herzog
4cf0f53eae
use TextureFormat for Textures
...
This commit also inserts debug asserts that texture data roughly respects
the format.
2020-07-26 22:08:15 +02:00
Moxinilian
4393af5e25
winit: fix panic on windows
2020-07-26 21:36:01 +02:00
Thomas Herzog
b4c185eb0c
cargo fmt
2020-07-26 21:10:18 +02:00
Carter Anderson
339e9ad52d
ui: cleaner stretch integration
2020-07-25 13:14:36 -07:00
Carter Anderson
93bb1d5b8e
ui: initial flexbox support
2020-07-24 23:04:45 -07:00
Carter Anderson
bcf95a24db
transform: only update global transform with pos/rot/scale components when there is no local transform
2020-07-23 18:55:21 -07:00
Carter Anderson
6cad80d572
transform|ui: fix transform update lag
2020-07-23 18:26:08 -07:00
Carter Anderson
d79339ea62
transform: add more control parent/child ordering and make parent/children insertion atomic
2020-07-23 17:32:53 -07:00
Carter Anderson
89af5ea4e0
fix some doc tests
2020-07-23 13:40:07 -07:00
Carter Anderson
85bd0342d4
ecs: add write_world and write_resources to Commands
...
this allows for custom commands
2020-07-23 13:12:38 -07:00
Carter Anderson
f82af10a69
ecs: component removal tracking
2020-07-22 17:57:13 -07:00
Carter Anderson
141044aae7
ecs: publicly expose Added/Changed and inline some things
2020-07-22 16:19:27 -07:00
Carter Anderson
a4e291d9c8
app: default app runner now runs the schedule once
2020-07-22 13:32:17 -07:00
Carter Anderson
2d829f5a06
ecs: add Changed<T> (added or modified)
2020-07-22 13:20:22 -07:00
Carter Anderson
e673faab7c
ecs: rename Changed<T> to Mutated<T>
2020-07-22 12:42:12 -07:00
Carter Anderson
19d24e92aa
transform: immediately set localltransform value
2020-07-21 22:02:18 -07:00
Carter Anderson
ae30175e18
ecs: fix query.get::<T>() access
2020-07-21 22:00:55 -07:00
Carter Anderson
a6953049fb
ecs: Added<T> queries
2020-07-21 22:00:11 -07:00
Carter Anderson
21cdaaf7eb
ecs: inline a few things
2020-07-21 20:15:16 -07:00
Carter Anderson
0c2e26ddde
Revert "ecs: remove &mut requirement on query iterators"
...
This reverts commit 6dc1d07cbc
.
2020-07-21 20:12:15 -07:00
Carter Anderson
6dc1d07cbc
ecs: remove &mut requirement on query iterators
2020-07-20 13:59:51 -07:00
Carter Anderson
6194944153
transform: apply LocalTransforms to root Transforms
2020-07-20 11:59:02 -07:00
Carter Anderson
009141d453
window: customizable default descriptor
2020-07-20 02:05:56 -07:00
Carter Anderson
b1162f0c29
ecs: fix resource scheduler test
2020-07-20 01:51:06 -07:00
Carter Anderson
b5d3f7e794
use right handed coordinate system in 3d
2020-07-20 01:33:30 -07:00
Carter Anderson
bd227859eb
ui: only allow one thing to be hovered at a time
2020-07-19 20:52:15 -07:00
Carter Anderson
d8b3d078b4
core: add Labels
2020-07-19 20:34:04 -07:00
Carter Anderson
9a236f4923
ui: remove translation/rotation/scale components (Node serves the same role)
2020-07-19 20:33:55 -07:00
Carter Anderson
726eb37198
use rh coordinate system in 2d
...
z = 0 is now "farthest back" and z=1000 "farthest forward"
2020-07-19 17:00:08 -07:00
Carter Anderson
cadbb4c1b0
render: fix "next swap chain texture" bug
2020-07-19 16:15:19 -07:00
Carter Anderson
946d5d1024
ecs: refactor resources
...
fixes unintialized global resource memory
2020-07-19 14:23:06 -07:00
Carter Anderson
2ec530da8c
ui: fix right alignment
2020-07-18 17:05:22 -07:00
Carter Anderson
6db82714dc
ui: text alignment and more complete button example event handling
2020-07-18 17:03:37 -07:00
Carter Anderson
f0fc380a39
transform: impl deref/derefmut for components
2020-07-18 14:36:16 -07:00
Carter Anderson
fe1adb6cf6
ui: focus/click/hover system. initial buttons
2020-07-18 14:08:46 -07:00
Carter Anderson
19fe299f5a
ecs: use Mut<T> tracking pointer everywhere
2020-07-18 02:09:55 -07:00
Carter Anderson
bf164a5936
ecs: fix tuple query item skipping
2020-07-18 01:14:16 -07:00
Carter Anderson
fbcf3f89d0
ecs: rename ComMut<T> to Track<T> and fix nested change queries
2020-07-18 01:05:06 -07:00
Carter Anderson
23b96a48a6
ecs: make RefMut a tracking pointer
2020-07-18 01:03:47 -07:00
Carter Anderson
85ec31bb65
ecs: change state now moves when an entity moves to a different archetype
2020-07-17 19:13:56 -07:00
Carter Anderson
31d00ad861
ecs: initial component change tracking
...
(changing entity archetypes currently breaks tracking)
2020-07-17 17:50:17 -07:00
Carter Anderson
81df34adcf
finish up import simplification
2020-07-16 19:38:21 -07:00
Carter Anderson
7823c3a9e2
property: simplify imports
2020-07-16 19:29:00 -07:00
Carter Anderson
2a6e75a27e
pbr: simplify imports
2020-07-16 19:27:19 -07:00
Carter Anderson
e2d2b41c67
math: simplify imports
2020-07-16 19:23:47 -07:00
Carter Anderson
9f26a453c6
ecs: simplify imports
2020-07-16 19:20:51 -07:00
Carter Anderson
f742ce3ef2
app: simplify app imports
2020-07-16 18:47:51 -07:00
Carter Anderson
b12c4d0a48
render: simplify imports and cleanup prelude
2020-07-16 18:26:21 -07:00
Carter Anderson
196bde64e3
cargo fmt
2020-07-16 17:23:50 -07:00
Carter Anderson
1110f9b877
create bevy_math crate and move math types there
2020-07-16 17:11:52 -07:00
Carter Anderson
d9adea1b5e
transform: TransformPlugin
2020-07-16 16:32:39 -07:00
Carter Anderson
f546aad7f4
audio: rename play
to play_source
and queue
to play
2020-07-16 14:23:57 -07:00
Carter Anderson
7bdca4e5f0
audio: rename queue_play
to queue
2020-07-16 13:52:52 -07:00
Carter Anderson
3eb393548d
audio: initial (very minimal) audio plugin
2020-07-16 13:46:51 -07:00
Carter Anderson
362fb92cf8
ecs: only prepare executor on changes. use parallel executor in App
2020-07-15 17:59:13 -07:00
Carter Anderson
4712e96aa8
ecs: make parallel executor resource-aware
2020-07-15 17:20:36 -07:00
Carter Anderson
88781007b0
ecs: slightly improve perf with inlining changes
2020-07-14 23:56:49 -07:00
Carter Anderson
a7bab755ee
ecs: add query get safety checks
2020-07-14 19:05:39 -07:00
Carter Anderson
1f6c9ece1d
ecs: call prepare() inside ParallelExecutor::run()
...
also moved some things around
2020-07-14 16:23:25 -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
98ed29aacc
ecs: fix local resource indexing
2020-07-14 11:08:02 -07:00
Carter Anderson
8d3a5ae0f1
ecs: initial parallel schedule executor
...
currently only considers component archetypes. still missing proper handling of thread local systems and resources
2020-07-13 19:36:41 -07:00
Carter Anderson
67f1bd66ce
ecs: fix resource borrow safety
2020-07-12 12:27:11 -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
86f41ae0a4
add more informative "resource does not exist" errors
2020-07-11 20:12:34 -07:00
Carter Anderson
6d58a5a033
render: add direct buffer mapping/unmapping
2020-07-11 12:29:07 -07:00
Carter Anderson
cb1ffb42c4
upgrade wgpu (removes some dependencies)
2020-07-10 19:42:32 -07:00
Carter Anderson
fb2dfba5e3
upgrade libloading
2020-07-10 16:11:25 -07:00
Carter Anderson
2ca6de2b81
upgrade wgpu
2020-07-10 13:47:31 -07:00
Carter Anderson
fd219660d3
remove env-logger from dependencies
2020-07-10 12:43:37 -07:00
Carter Anderson
a656588788
slim down gltf and winit features and remove unused dependencies
2020-07-10 12:08:51 -07:00
Carter Anderson
2508a59f68
remove darling
2020-07-10 02:53:31 -07:00
Carter Anderson
3b68c7cc4a
transform: remove some dependencies and cleanup
2020-07-10 01:49:23 -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
4f73dca34d
add system profile data to Diagnostics (opt in feature)
2020-06-28 01:01:40 -07:00
Carter Anderson
0c9c0a9b3b
property: remove euclid impls
2020-06-27 21:59:09 -07:00
Carter Anderson
941e441f32
property: fix short type name calculation
2020-06-27 18:35:38 -07:00
Carter Anderson
0a348af630
impl property for euclid types
2020-06-27 17:35:58 -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
7441ac1a01
add breakout example game
2020-06-26 22:04:56 -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
5e1f81037d
sprite: add sprite sheet floating point error correction
2020-06-26 13:07:33 -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
dfde160741
ecs: add ability to set the current entity in world builders
2020-06-25 13:23:28 -07:00
Carter Anderson
4a0f8b8869
add root ui node to example
2020-06-25 13:19:48 -07:00
Carter Anderson
bcfc27483b
ecs: allow infinite child nesting in WorldBuilder
2020-06-25 13:15:59 -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
99bc2d0ea7
legion: backport upstream legion archetype filter fix
2020-06-23 13:42:00 -07:00
Carter Anderson
2f5f6e017a
render: intitial VisibleEntities component and sort system
2020-06-22 17:55:48 -07:00
Carter Anderson
ec11a6a5f6
ecs: make build_children closure FnMut to allow mutation of closue values
2020-06-22 17:37:44 -07:00
Carter Anderson
6022ad2c4f
pbr: add "shaded" field to StandardMaterial
2020-06-22 16:11:30 -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
f72c4beadf
transform: run transform systems at startup and move transform systems to POST_UPDATE
2020-06-22 12:55:54 -07:00
Carter Anderson
6cd5af6f74
app: move startup stages to their own module
2020-06-22 12:55:00 -07:00
Carter Anderson
e921ae0199
sprite: use bevy_transform types in sprite sheet entities
2020-06-22 12:35:33 -07:00
Carter Anderson
f1786ec20a
sprite: use bevy_transform types in sprite entities
2020-06-22 12:14:40 -07:00
Carter Anderson
fa9348fe2b
text: use quad zindex when drawing labels
2020-06-21 18:55:47 -07:00
Carter Anderson
c654987ae3
fix bug where pipelines used unspecialized shaders
2020-06-21 18:55:22 -07:00
Carter Anderson
99a3ee6570
fix texture atlas bytes test
2020-06-21 18:26:11 -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
17d70f7d67
bytes: FromBytes trait and round trip tests
2020-06-21 12:25:36 -07:00
Carter Anderson
ecea30cadb
text: new atlased rendering finally works!
...
removed old render-to-texture rendering
2020-06-20 12:40:37 -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
085cda8bc6
legion: remove filter types from system_fn macro and IntoSystem and use "casting" instead
2020-06-18 11:53:06 -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
1dd81587dd
events: iter_current_update_events
2020-06-16 22:20:08 -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
516cf9ddf0
text: font atlas generation. initial Drawable boilerplate. temporary font atlas debug example
2020-06-13 18:53:31 -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
e8e3e3c20f
move FloatOrd to bevy_core
2020-06-10 15:35:23 -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
3ccaebf9a5
upgrade wgpu
2020-06-09 10:57:18 -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
c1dcc74e0f
asset: make asset folder loading permissive of non-assets
2020-06-07 11:45:18 -07:00
Carter Anderson
f2b3b909b4
sprite: use rectangle_pack crate for texture atlases. rename guillotiere implementation to DynamicTextureAtlasBuilder
2020-06-07 11:30:04 -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
9a51b3e0fd
asset: AssetServer versioning and load group status
2020-06-05 17:32:32 -07:00
Carter Anderson
5b6f24d6a2
input: make new Input resource generic and add Input<MouseButton>
2020-06-04 23:34:21 -07:00
Carter Anderson
b3a57c21a7
input: simpler input interface via an Input
resource
2020-06-04 22:48:53 -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
4979a06e90
input: fix input example and add cursor move events
2020-06-03 23:22:32 -07:00
Carter Anderson
6eea96366d
cargo fmt
2020-06-03 20:08:20 -07:00
Carter Anderson
a4c15f96de
Timer Resource/Component
2020-06-03 19:53:41 -07:00
Carter Anderson
5927bad382
sprite sheets are fully operational
2020-06-03 19:00:19 -07:00
Carter Anderson
8c196139d4
derive: break up derive crate into modules
2020-06-03 13:04:09 -07:00
Carter Anderson
7019ff015b
improve "derive uniforms" clarity
2020-06-03 12:54:02 -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
d65a2c783d
bytes: impl for Vec<T>
2020-06-03 11:12:39 -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
e68ae995f8
rename rect to quad
2020-05-31 23:39:20 -07:00
Carter Anderson
4d8a567b36
text: migrate to ab_glyph. this should give rendering consistency across platforms
2020-05-31 15:59:11 -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
19bf386de9
track time since startup
2020-05-30 21:32:47 -07:00
Carter Anderson
a463c040d7
use bottom left origin for ui
2020-05-30 21:15:55 -07:00
Carter Anderson
a5df2ca62b
better time calculation
2020-05-30 21:15:39 -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
db27d63b91
upgrade ron
2020-05-29 16:06:23 -07:00
Carter Anderson
651f213570
scene: spawning
2020-05-29 15:51:36 -07:00
Carter Anderson
065a94aca8
scene: hot scene reloading. update load_scene example
2020-05-29 12:56:32 -07:00
Carter Anderson
8a14e61d0f
fix test and tweak github action
2020-05-28 23:43:45 -07:00
Carter Anderson
7429ab98f7
remove glsl-to-spirv from repo
2020-05-28 17:54:58 -07:00
Carter Anderson
0472cbfc7c
start porting "query" systems from SystemBuilder to functions
2020-05-28 17:32:51 -07:00
Carter Anderson
83d5275e10
add "query system functions"
2020-05-28 13:36:48 -07:00
Carter Anderson
1d4a574b52
remove lifetime bound from IntoSystem
2020-05-28 10:51:53 -07:00
Carter Anderson
b96fec5f44
use inclusive ranges in legion system fn macro
2020-05-28 09:35:22 -07:00
Carter Anderson
5b6001a413
legion fn system proc macro
2020-05-28 01:53:43 -07:00
Carter Anderson
55d6ea64f3
slightly better short name calculation
2020-05-27 22:59:52 -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
91af49ede3
props: move property impls to their own mod
2020-05-27 16:08:24 -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
c03da2b728
props: fix dynamic property deserialization
2020-05-27 13:30:05 -07:00
Carter Anderson
563a6fc57c
remove ron fork
2020-05-27 13:10:43 -07:00
Carter Anderson
59dbf22e39
rework scene format. use property value serializer, removing the need for ron fork / enabling any serde target
2020-05-27 13:07:32 -07:00
Carter Anderson
d86d3ddcbc
props: move property serde impls to their own mod
2020-05-27 11:25:27 -07:00
Carter Anderson
76adb888d3
props: remove need for explicit serde::Deserialize impl. replace impl_property macro_rules with proc_macro_fn
2020-05-27 11:13:57 -07:00
Carter Anderson
cb3a863366
component_registry: use FromResources trait instead of Default
2020-05-27 00:23:31 -07:00
Carter Anderson
da52b1b034
props: properties no longer directly implement the Serialize trait
2020-05-27 00:14:57 -07:00
Carter Anderson
bb56b07973
scene: use two spaces instead of four
2020-05-26 19:49:46 -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
a837741c64
props: move AsProperties into Property
2020-05-25 18:20:36 -07:00
Carter Anderson
83889c44e7
fix glam prop build
2020-05-25 17:57:56 -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
cb6638ba06
props: add support for tuple structs
2020-05-25 16:35:46 -07:00
Carter Anderson
bab2ad335d
add post_startup stage
2020-05-25 16:00:05 -07:00
Carter Anderson
4e1d953c95
remove unused erased-serde
2020-05-25 15:44:28 -07:00
Carter Anderson
663f95e0fd
impl Property for std collections
2020-05-25 15:35:47 -07:00
Carter Anderson
f0f0e3c1a8
move component registry to its own crate. automatically register asset handles
2020-05-25 14:51:38 -07:00
Carter Anderson
0826d74163
props: remove specialization, ignore fields, impl for Handle, fix world round tripping
2020-05-25 12:03:50 -07:00
Carter Anderson
1cd3b4c987
props: add type peeking to ron, support arbitrary property types
2020-05-24 19:36:01 -07:00
Carter Anderson
c5ab7df98f
automatically detect bevy meta crate in derive macros
2020-05-24 12:39:23 -07:00
Carter Anderson
d3e0196cbb
move derive(Properties) into bevy_properties
2020-05-24 11:01:48 -07:00
Carter Anderson
b7305046cf
remove SerializableProperties wrapper struct
2020-05-23 22:39:23 -07:00
Carter Anderson
4c306e6d48
props: migrate scenes to props. loading / saving worlds from / to props.
2020-05-23 22:07:17 -07:00
Carter Anderson
f36a67ee96
props: support nesting
2020-05-23 12:26:13 -07:00
Carter Anderson
284afd4f94
props: deserialize (no nesting yet)
2020-05-22 19:01:48 -07:00
Carter Anderson
6e31b90ec3
upgrade ron and use decimal fork
2020-05-22 18:07:26 -07:00
Carter Anderson
f1d58609d5
add text label to ui example. fix 0x0 label textures
2020-05-22 17:07:14 -07:00
Carter Anderson
159acf52af
props: rename prop/props to property/properties
...
its longer but a bit clearer
2020-05-22 15:36:48 -07:00
Carter Anderson
e514bd14fe
props: dynamic casting. reorganize
2020-05-22 15:25:31 -07:00
Carter Anderson
da8daa051b
props: derive, get/set, example
2020-05-21 23:58:11 -07:00
Carter Anderson
9368242013
scene: require clone for registered components
2020-05-21 18:51:03 -07:00
Carter Anderson
fd26588dbd
scene: rename id to entity
2020-05-21 18:23:22 -07:00
Carter Anderson
38669107c9
upgrade legion
2020-05-21 17:59:33 -07:00
Carter Anderson
d920100d35
scenes: deserialization and refactor
2020-05-21 17:21:33 -07:00
Carter Anderson
553b754492
scenes: datatype and serialization
2020-05-20 10:40:23 -07:00
Carter Anderson
64ce5b42c0
Add stable legion entity ids (GuidEntityAllocator)
2020-05-20 10:39:52 -07:00
Carter Anderson
fb140ce4b0
remove tag serialization. round trip ron example
2020-05-19 13:22:14 -07:00
Carter Anderson
3710196fdb
remove type_uuid from serialization
2020-05-19 12:55:58 -07:00
Carter Anderson
dcdd552365
pull in ron. use static strings for types
2020-05-19 12:20:37 -07:00
Carter Anderson
a88982fbfb
move universe into Resources
2020-05-19 12:20:14 -07:00
Carter Anderson
8bc0eb45ee
print average fps and smooth out average a little bit
2020-05-18 14:53:57 -07:00
Carter Anderson
e65fe0e736
Clear bind groups on each frame
2020-05-18 14:42:15 -07:00
Carter Anderson
29ad64f1d8
upgrade some dependencies to remove redundancies
2020-05-18 12:26:30 -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
e093a3243b
phrasing tweaks
2020-05-17 10:30:52 -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
5d0d3d28c7
TextPlugin + FontLoader
2020-05-15 19:46:09 -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
a7eaf32e7c
drainable/extendable events
2020-05-13 16:17:06 -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
a57e08075b
diagnostics: real bind group count
2020-05-12 11:59:33 -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
0dd55f2c40
cleanup
2020-05-11 14:08:20 -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
a5f47fd7da
use "32 bit alignment" and "explicit shaders" pathfinder branches
2020-05-10 12:53:26 -07:00
Carter Anderson
ff8c5292c2
add pathfinder fork
2020-05-08 09:29:26 -07:00
Carter Anderson
0fdf331552
pathfinder: vertex buffers, samplers, and glsl layout
2020-05-07 23:10:57 -07:00
Carter Anderson
58ba15fbb6
pathfinder: fix shader paths
2020-05-07 19:15:25 -07:00
Carter Anderson
e61c482bdf
pathfinder: fix spirv makefile and generate outputs
2020-05-07 19:14:14 -07:00
Carter Anderson
0e040680df
begin pathfinder plugin
2020-05-07 19:09:53 -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
75614f5084
Ui depth from parent (falls back to insertion order for orphans), do ui rect size offsets before rendering,
2020-05-06 13:49:07 -07:00
Carter Anderson
b5cdb7c5fc
upgrade wgpu
2020-05-05 21:25:56 -07:00
Carter Anderson
c5ca59dc4d
cargo fmt
2020-05-05 18:44:32 -07:00
Carter Anderson
800c4342ed
disable threaded graph execution until leak is fixed
2020-05-05 13:37:13 -07:00
Carter Anderson
cb49e14ae0
remove todo
2020-05-05 13:34:15 -07:00
Carter Anderson
2b0c9491a1
remove unused primary_window
2020-05-05 13:34:05 -07:00
Carter Anderson
c388598996
use rwlock in graph executor instead of cloning
2020-05-05 13:33:47 -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
4735c68ab4
add diagnostic examples
2020-05-04 14:14:49 -07:00
Carter Anderson
704a742661
Print diagnostics plugin
2020-05-04 13:42:49 -07:00
Carter Anderson
ea16f6fc56
frame time diagnostic plugin
2020-05-04 13:21:14 -07:00
Carter Anderson
75f1362433
upgrade wgpu
2020-05-04 13:11:51 -07:00
Carter Anderson
0e63fd3838
wgpu resource diagnostic plugin
2020-05-04 12:36:18 -07:00
Carter Anderson
6f32d18dc5
diagnostic filtering
2020-05-04 11:43:21 -07:00
Carter Anderson
ac5b6c5046
remove bevy versions
2020-05-04 11:23:59 -07:00
Carter Anderson
af2a111801
use ints instead of bytes for uuids
2020-05-04 11:20:12 -07:00