Commit graph

520 commits

Author SHA1 Message Date
memoryruins
581d85b413
Add parallel_query to the examples readme (#465) 2020-09-09 11:39:37 -07:00
Grant Moyer
586303fd53
Parallel queries (#292)
Add support for Parallel Queries
2020-09-08 12:18:32 -07:00
Sergey Minakov
52ae217b16
Resize mode for Sprite component (#430)
Adds a 'resize_mode' field for 'Sprite'.
This allows different resize handling based on 'SpriteResizeMode' enum value.
2020-09-08 12:04:22 -07:00
Lachlan Sneff
17e7642611
Task System for Bevy (#384)
Add bevy_tasks crate to replace rayon
2020-08-29 12:35:41 -07:00
Elias
9aff0bcc2a
Add support for binary glTF (.glb) (#271)
Add support for binary glTF (.glb)
2020-08-25 16:55:08 -07:00
VitalyR
c78187e6df
add an option about display server protocol, and create document docs/cargo_features.md (#249)
add an option about display server protocol, and create document `docs/cargo_features.md`
2020-08-24 17:06:08 -07:00
Daniel Jordaan
8b6556c750
Fix unresolved import in window settings example (#311)
Got an unresolved import of 'bevy_window' with the window settings example. Hopefully this is the correct way to resolve it.
2020-08-23 23:55:06 -07:00
Carter Anderson
b925e22949 0.1.3 upgrade 2020-08-22 10:16:52 -07:00
8bp
68d419d40f
Add repeating flag to Timer (#165)
Repeating timers will reset themselves upon finishing, carrying over any
excess time during the last tick. This fixes timer drift upon resetting.
2020-08-21 14:57:25 -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
Jake Kerr
db1bf6478c
Allow calling winit with the 'run_return' variant of the run function (#243)
This adds a new WinitConfig resource that can be used to configure the behavior of winit.
When `return_from_run` is set to `true`, `App::run()` will return on `target_os` configurations that
support it.

Closes bevyengine/bevy#167.
2020-08-20 22:37:19 -07:00
Thirds
505c79b60d
README.md link points to the correct example (#225)
The 2D Rendering example texture_atlas URL was pointing to the ./2d/sprite_sheet.rs example. This has now been fixed.
2020-08-20 17:29:10 -07:00
Claire C
45312a945a
Basic mouse scroll-wheel event (#222)
add simple mouse wheel event + example
2020-08-20 17:04:01 -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
0x22fe
81d30dd42b
Created README for examples 2020-08-17 23:02:59 +00:00
Gab Campbell
cf8bab27a0 unused import 2020-08-16 13:43:42 -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
Carter Anderson
9569beb613
Merge pull request #188 from BafDyce/168-thread-pool-options
Add possibility to control num_threads and stack_size of global thread pool
2020-08-14 12:47:32 -07:00
Fabian Würfl
458a169ad2 Add possibility to control num_threads and stack_size of rayon::ThreadPool 2020-08-14 19:15:53 +02:00
Fabian Würfl
4a119dd0e1 Add info message in UI for scene example 2020-08-14 12:56:39 +02:00
Carter Anderson
95dce3ac72
Merge pull request #154 from OptimisticPeach/master
Add Icospheres mesh generation
2020-08-13 19:44:50 -07:00
Wouter Standaert
a738771c93 Add resizable and windowmode options to window creation 2020-08-13 10:47:40 +02:00
OptimisticPeach
86c20eb6df Add Icospheres.
Additionally documents the shapes module.
2020-08-13 00:14:23 -04:00
Carter Anderson
19d2f9c2cd
Merge pull request #144 from BafDyce/fix-comment-keyboard-input-event-example
Fix comment in keyboard_input_event example
2020-08-12 18:57:21 -07:00
reidbhuntley
e1d65c652e Rename collider variable 2020-08-12 17:50:55 -04:00
Fabian Würfl
671862deda Fix comment in keyboard_input_event example 2020-08-12 18:13:32 +02:00
reidbhuntley
e980b83ce2 Clamp the timestep to stop ball from escaping 2020-08-12 09:13:10 -04:00
reidbhuntley
11748456b6 Cleaned up collision code in breakout 2020-08-11 23:43:27 -04: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
5647a17c8e update readme 2020-08-06 13:58:13 -07:00
Carter Anderson
e3314ff4dd re-add scene example 2020-08-03 12:00:00 -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
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
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
77f4e60c8c cleanup import 2020-07-28 14:26:12 -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
Thomas Herzog
b4c185eb0c cargo fmt 2020-07-26 21:10:18 +02:00
Carter Anderson
93bb1d5b8e ui: initial flexbox support 2020-07-24 23:04:45 -07:00
Carter Anderson
a4e291d9c8 app: default app runner now runs the schedule once 2020-07-22 13:32:17 -07:00
Carter Anderson
e673faab7c ecs: rename Changed<T> to Mutated<T> 2020-07-22 12:42:12 -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
009141d453 window: customizable default descriptor 2020-07-20 02:05:56 -07:00
Carter Anderson
b799ddc006 more interesting spawner perspective 2020-07-20 01:35:23 -07:00
Carter Anderson
b5d3f7e794 use right handed coordinate system in 3d 2020-07-20 01:33:30 -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
6db82714dc ui: text alignment and more complete button example event handling 2020-07-18 17:03:37 -07:00
Carter Anderson
a531c906a6 ui: improve button example 2020-07-18 15:42:31 -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
81df34adcf finish up import simplification 2020-07-16 19:38:21 -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
1db77b2435 examples: cleanup imports 2020-07-16 17:20:42 -07:00
Carter Anderson
1110f9b877 create bevy_math crate and move math types there 2020-07-16 17:11:52 -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
af109174dd make scene folder plural 2020-07-16 12:47:26 -07:00
Carter Anderson
0dc810a37a ecs: add thread local system support to parallel executor 2020-07-14 14:19:17 -07:00
Carter Anderson
e78f2aac07 breakout: fix input 2020-07-11 12:52:25 -07:00
Carter Anderson
2ca6de2b81 upgrade wgpu 2020-07-10 13:47: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
5607da019d rename/move breakout because its a single file 2020-06-28 11:14:39 -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
c5842fd92b breakout: add scoreboard 2020-06-27 02:10:07 -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
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
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
b6dbbf04db render: visualize depth in z_sort_debug 2020-06-23 13:42:37 -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
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
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
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
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
0931fd0266 fix a few things in shader examples 2020-06-17 17:44:26 -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
e855995145 cargo fmt 2020-06-15 12:47:35 -07:00
Carter Anderson
f799d3ac93 render: add RenderPipeline and begin moving logic there 2020-06-15 00:08:50 -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
fc4160ea41 AssetRenderResourceNodes now consume asset change events. Remove EntitiesWaitingForAssets in favor of DrawState. 2020-06-10 18:54:17 -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
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
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
9d80b5965e example: add rpg assets for use in examples (maybe pair this down in the future) 2020-06-05 17:26:41 -07:00
Carter Anderson
5ea979dd0e move shaders in examples into consts 2020-06-05 00:13:18 -07:00
Carter Anderson
5aeb3b937b add "pressed" example to mouse_input 2020-06-04 23:57:39 -07:00
Carter Anderson
aa2928739c simplify keyboard_input example 2020-06-04 23:55:12 -07:00
Carter Anderson
ed561d7f70 break up input examples 2020-06-04 23:49:36 -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
fcecf78609 make input_keyboard example speed a normal variable 2020-06-04 23:01:02 -07:00
Carter Anderson
b3a57c21a7 input: simpler input interface via an Input resource 2020-06-04 22:48:53 -07:00
Carter Anderson
fde8292a04 simplify input_keyboard example 2020-06-04 19:47:27 -07:00
Carter Anderson
c4600dbad8 increase ui example label size 2020-06-04 17:13:58 -07:00
Carter Anderson
db6a365b13 saner orthographic projection 2020-06-04 17:09:24 -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
5bcd594cb4 bytes: AsBytes trait, remove zerocopy, remove glam fork 2020-06-01 19:38:05 -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
6e76296ce0 sprite: create sprite crate. center 2d camera (split from ui camera). add 2d camera movement 2020-05-30 12:31:04 -07:00