Commit graph

912 commits

Author SHA1 Message Date
Nick
f35f813137
additional vertex attribute value types (#946) 2020-11-30 13:05:03 -08:00
Jonathan Cornaz
52d6799544
Run parent-update and transform-propagation during the "post-startup" stage (instead of "startup") (#955)
* Propagate transforms during the POST_STARTUP start-up stage

* Update changelog
2020-11-29 14:07:47 -08:00
Mariusz Kryński
dbf226be49
store PipelineSpecialization.dynamic_bindings in HashSet (#936) 2020-11-28 13:10:18 -08:00
Amber Kowalski
097a55948c
Refactor Time API and internals (#934)
Refactor Time API and internals
2020-11-28 13:08:31 -08:00
Nick
f3b49e44c9
removed redundant v_Normal in shader (#938) 2020-11-28 12:44:25 -08:00
Carter Anderson
72b2fc9843
Bevy Reflection (#926)
Bevy Reflection
2020-11-27 16:39:59 -08:00
Philip Degarmo
ec8fd57c45
When a task scope produces <= 1 task to run, run it on the calling thread immediately. (#932)
While generally speaking the calling thread would have picked up the task first anyways, I don't think it makes much sense usually to block the calling thread until another thread wakes and does the work.
2020-11-27 12:14:44 -08:00
RiskLove
7d4cb70d92
BugFix: Archetype grow with defferent size. (#930)
Co-authored-by: heshuai <heshuai@163.com>
2020-11-27 11:55:55 -08:00
Nathan Stocks
12f29bd38c
Timer Polishing (#931)
* Pause stops ticks. Consistent getter method names. Update tests.

* Add timing example

* Format with the nightly formatter

Co-authored-by: Amber Kowalski <amberkowalski03@gmail.com>
2020-11-27 11:39:33 -08:00
Amber Kowalski
f69cc6f94c
Allow timers to be paused and encapsulate fields (#914)
Allow timers to be paused and encapsulate fields
2020-11-26 11:25:36 -08:00
dependabot[bot]
8e4eb41757
Update shaderc requirement from 0.6.3 to 0.7.0 (#823)
Updates the requirements on [shaderc](https://github.com/google/shaderc-rs) to permit the latest version.
- [Release notes](https://github.com/google/shaderc-rs/releases)
- [Commits](https://github.com/google/shaderc-rs/compare/v0.6.3...v0.7.0)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2020-11-25 18:46:13 -08:00
Philip Degarmo
cf75c22c9a
Fix a deadlock that can occur when using scope() on ComputeTaskPool from within a system. (#892) 2020-11-25 18:05:55 -08:00
Carter Anderson
bd5bd3bc07
temporarily suppress new clipply lint (#929) 2020-11-25 17:46:37 -08:00
SvenTS
de5ff0aa5a
Remove Changed from parent update system (#907)
System has to check for actual change of the value anyway. This way,
children inserted after postupdate get synced in the next frame and are
not lost.
2020-11-25 17:33:59 -08:00
Tomasz Sterna
fd6b787efc
Create winit windows before app.initialize() (#916)
This is required so startup systems have access
to Windows and WinitWindows resources.
2020-11-25 17:32:41 -08:00
Tomasz Sterna
b2c82955ff
Add set_cursor_position method to Window (#917) 2020-11-25 17:31:10 -08:00
Carter Anderson
86d724e04e
wgpu: use mailbox instead of fifo for vsync (#920) 2020-11-25 17:28:58 -08:00
SvenTS
69603904ab
Allow despawning of hierarchies in threadlocal systems (#908)
* Rename test components for easier understanding of failures

* Make recursive despawn public

This way, threadlocal systems can despawn hierarchies.

* Swap children before despawning
2020-11-25 17:13:11 -08:00
SvenTS
dd1b08ef8b
Improve ui depth system (#905)
* Add test for ui-z system

* Remove generic hierarchy runner and refactor ui z-system

* Remove different handling for childless nodes

Having an empty children list should be the same as having no child
component.

* Further simplify system after change
2020-11-25 16:55:55 -08:00
Nathan Stocks
2f408cf053
Improve timer ergonomics. Add tests (#923) 2020-11-25 16:43:16 -08:00
bg
01ba7c4425
avoid exclusive lock during update_asset_storage (#909)
avoid exclusive lock during `update_asset_storage`

Co-authored-by: Jay <jay@heinousjay.com>
2020-11-22 12:29:26 -08:00
Felipe Jorge
c1e499d5fe
Fix duplicated chilren in Scene spawn (#904)
Fix duplicated chilren in Scene spawn
2020-11-22 12:05:58 -08:00
Duncan
46fac78774
Extend the Texture asset type to support 3D data (#903)
Extend the Texture asset type to support 3D data

Textures are still loaded from images as 2D, but they can be reshaped
according to how the render pipeline would like to use them.

Also add an example of how this can be used with the texture2DArray uniform type.
2020-11-22 12:04:47 -08:00
marius851000
eb587b2f10
do not spend time drawing text with is_visible = false (#893)
do not draw text with is_visible = false
2020-11-22 11:57:52 -08:00
Joel Nordström
1e9a0544bd
Fix pixel format conversion in bevy_gltf (#897)
* Fix pixel format conversion in bevy_gltf

* Update renamed image::DynamicImage method calls

* Remove unused GltfError variant
2020-11-21 19:08:50 -08:00
Plecra
3a9a5b4e07
fix: update image version (#911)
into_bgra8 was added in 0.23.12
2020-11-21 19:08:02 -08:00
Mariusz Kryński
d96493a42a
use wasm-friendly instant::Instant everywhere (#895)
* use instant::Instant everywhere
* reexport instant::{Duration, Instant} from bevy_utils
2020-11-21 16:38:24 -08:00
Valentin
d458406540
Add box shape (#883)
* Add rectangular cuboid shape

Co-authored-by: Jason Lessard <jason.lessard@usherbrooke.ca>
Co-authored-by: Jason Lessard <jason.lessard@usherbrooke.ca>
Co-authored-by: Carter Anderson <mcanders1@gmail.com>
2020-11-21 14:51:24 -08:00
bjorn3
0dbbcd98b6
Expose an EventId for events (#894)
* Expose an EventId for events

This can be helpful for correlating the place where an event is created
to the place where the event is processed.
2020-11-21 14:03:18 -08:00
rod-salazar
85ecab8bb9
Tweaks to TextureAtlasBuilder.finish() (#887)
Tweaks to TextureAtlasBuilder.finish()
2020-11-21 12:55:25 -08:00
bg
106486bd99
fix deprecation error in image_texture_loader (and CI error) (#906)
fix deprecation error in image_texture_loader (and CI error)
2020-11-21 12:26:35 -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
Joshua J. Bouw
b4a864ba5a
Replace Bytes with Byteable for TextureAtlasSprite (#874)
Replace Bytes with Byteable for TextureAtlasSprite
2020-11-21 11:48:10 -08:00
Carter Anderson
4fecb899aa
initialize chained systems (#886) 2020-11-17 17:06:47 -08:00
Carter Anderson
457a8bd17d
ecs: replace "bool" component states with bitflags (#878) 2020-11-17 17:04:44 -08:00
bjorn3
d6eb647451
Misc cleanups (#879)
* Remove cfg!(feature = "metal-auto-capture")

This cfg! has existed since the initial commit, but the corresponding
feature has never been part of Cargo.toml

* Remove unnecessary handle_create_window_events call

* Remove EventLoopProxyPtr wrapper

* Remove unnecessary statics

* Fix unrelated deprecation warning to fix CI
2020-11-17 13:40:18 -08:00
Carter Anderson
3a6f6de277
System Inputs, Outputs, Chaining, and Registration Ergo (#876)
System Inputs, Outputs, Chaining, and Registration Ergo
2020-11-16 18:18:00 -08:00
bjorn3
50c7e229b2
Rework ResourceData to use VecResourceStorage instead of Archetype (#873) 2020-11-16 16:55:59 -08:00
dependabot[bot]
601411d201
Update find-crate requirement from 0.5 to 0.6 (#872)
Updates the requirements on [find-crate](https://github.com/taiki-e/find-crate) to permit the latest version.
- [Release notes](https://github.com/taiki-e/find-crate/releases)
- [Changelog](https://github.com/taiki-e/find-crate/blob/master/CHANGELOG.md)
- [Commits](https://github.com/taiki-e/find-crate/compare/v0.5.0...v0.6.1)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2020-11-16 16:39:26 -08:00
rod-salazar
3fca8c60bb
Remove redundant texture copies in TextureCopyNode (#871)
Remove redundant texture syncs in TextureCopyNode
2020-11-16 16:38:14 -08:00
Julian Heinken
fcf9d525e1
Removed vertex fallback buffer (#870)
removed fallback buffer
2020-11-16 16:36:57 -08:00
Rob
7aac4223d0
Fixed property typos, KeyCode typo. (#857)
* Fixed property typos, KeyCode typo.

* cargo fmt
2020-11-16 16:33:19 -08:00
Carter Anderson
7628f4a64e
combine bevy_ecs and bevy_hecs crates. rename XComponents to XBundle (#863)
combine bevy_ecs and bevy_hecs crates. rename XComponents to XBundle
2020-11-15 20:32:23 -08:00
François
02f543eca3
Fall back to remove components one by one when failing to remove a bundle (#719)
Fall back to remove components one by one when failing to remove a bundle
2020-11-15 14:32:54 -08:00
milkybit
b3541a9a31
Add all basic color constants (#859)
Add all basic color constants
2020-11-15 12:44:02 -08:00
memoryruins
4bdff66b80
Check for conflicting system resource parameters (#864) 2020-11-15 12:42:43 -08:00
Joshua J. Bouw
bb4a7392c0
Remove redundant .into for mesh set_attributes with impl (#866) 2020-11-15 12:08:03 -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
Jackson Lango
18195bfa91
Controllable ambient light color (#852)
Control ambient light color via resource

The AmbientLight resource now controls the ambient light color in the
pbr fragment shader.
2020-11-15 11:34:55 -08:00
MinerSebas
43aac1a784
More query filter usage (#851)
* Examples now use With<>

* More Bevy systems now use With<>

* parent_update_system now uses Changed<>
2020-11-12 18:22:46 -08:00
Marcus Buffett
1a92ec2638
Make Timer.tick return &Self (#820)
Make Timer::tick return &Self
2020-11-12 18:03:03 -08:00
Nathan Stocks
a0b16e8620
Clean up now-unused files due to changes in the transform system (#849) 2020-11-12 17:24:41 -08:00
Carter Anderson
e03f17ba7f
Log Plugin (#836)
add bevy_log plugin
2020-11-12 17:23:57 -08:00
Olivier Pinon
465c3d4f7b
Use glyph_brush_layout and add text alignment support (#765)
Use glyph_brush_layout and add text alignment support

Co-authored-by: Olivier Pinon <op@impero.com>
Co-authored-by: tigregalis <anak.harimau@gmail.com>
Co-authored-by: Carter Anderson <mcanders1@gmail.com>
2020-11-12 16:21:48 -08:00
Carter Anderson
1eff53462a
cross-platform main function (#847) 2020-11-12 13:26:48 -08:00
Mariusz Kryński
fae628797f
bevy_render: delegate buffer aligning to render_resource_context (#842) 2020-11-11 14:08:27 -08:00
Carter Anderson
e769974d6a
query filters (#834) 2020-11-10 20:48:34 -08:00
Robert Swain
a266578992
Add tracing spans to schedules, stages, systems (#789)
Add tracing spans to schedules, stages, systems
2020-11-10 18:49:49 -08:00
Mikail Khan
b3e1048e73
added #[inline] to more window accessor functions (#830) 2020-11-10 17:20:31 -08:00
Joshua J. Bouw
c9acef04e3
Ahash constructor extensions and HashMap / HashSet (#790)
Ahash constructor extensions and HashMap / HashSet
2020-11-10 17:06:55 -08:00
rod-salazar
0c30762ab7
Update FileAssetIo NotFound error to include full path (#821) 2020-11-10 16:21:41 -08:00
memoryruins
a68c217ccf
Mark Query and QuerySet contructors as pub(crate) (#829)
Mark Query and QuerySet contructors as pub(crate)
2020-11-10 16:14:33 -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
bjorn3
80a0448473
Add bevy_dylib to force dynamic linking of bevy (#808)
This easily improve compilation time by 2x
2020-11-09 19:26:08 -08:00
Carter Anderson
4ef6eb8a85
adjust to new clippy lints (#826) 2020-11-09 14:12:42 -08:00
Bram Buurlage
07f07a0736
Added RenderPass::set_scissor_rect (#815)
Added RenderPass::set_scissor_rect
2020-11-09 13:24:29 -08:00
Carter Anderson
213ba9629a
ecs: fix system name in "conflicting system" error message (#816) 2020-11-08 13:48:00 -08:00
Carter Anderson
ebcdc9fb8c
Flexible ECS System Params (#798)
system params can be in any order, faster compiles, remove foreach
2020-11-08 12:34:05 -08:00
Oscar
f54788527b
Add received character (#805)
* Add ReceivedCharacter window event

* Add ReceivedCharacter window event examples
2020-11-06 17:15:56 -08:00
Carter Anderson
9224983897
upgrade glam and hexasphere (#794) 2020-11-06 17:11:32 -08:00
Rob
06f95e9982
Fixed several typos. (#806)
* Fixed common typo in several struct names.

* Fixed minor doc typos.
2020-11-06 17:11:12 -08:00
Chrs Msln
35d4fca0d0
[gltf] Support camera and fix hierarchy (#772)
[gltf] Support camera and fix hierarchy
2020-11-06 17:08:15 -08:00
Lukas Wirth
fb7c651ab9
Port hecs derive macro improvements (#761)
* Port derive macro changes from hecs

* Emit more info on duplicate components in archetype creation
2020-11-06 13:20:53 -08:00
Carter Anderson
26be22e73c
fix unit test (#802) 2020-11-06 12:49:20 -08:00
Guillaume DALLENNE
5bd6deb974
Add mutated state when inserting an already existing component (#404)
Add mutated state when inserting an already existing component
2020-11-04 17:51:54 -08:00
Carter Anderson
1aa832be1d
fix unsafe Query function names (#785) 2020-11-03 14:10:29 -08:00
Carter Anderson
9afe196f16
release: 0.3.0 (#783) 2020-11-03 13:34:00 -08:00
memoryruins
e21705bec6
Remove two unused deps (#780) 2020-11-03 11:38:37 -08:00
David Ackerman
7efb1b1887
Fix initial Android support (#778)
* Add force touches, fix ui focus system and touch screen system

* Fix examples README. Update rodio with Android support. Add Android build CI

* Alter android metadata in root Cargo.toml
2020-11-03 11:32:48 -08:00
Carter Anderson
2e2fa4fef4
make Mesh::attribute() immutable (#774) 2020-11-02 22:54:20 -08:00
Carter Anderson
66f2f76a18
rename add_plugin_group to add_plugins (#773) 2020-11-02 19:01:17 -08:00
Nathan Stocks
9871e7e24b
Remove add_default_plugins and add MinimalPlugins for simple "headless" scenarios (#767)
Remove add_default_plugins and add MinimalPlugins for simple "headless" scenarios
2020-11-02 18:38:37 -08:00
Nathan Stocks
2f87ff6618
Move ElementState to top-level of bevy_input. Resolves #687. (#769) 2020-11-02 18:16:13 -08:00
Nicholas Rishel
53c4c45eca
Use embedded glslang for runtime glsl-to-spirv and add Android example (#740)
Use embedded glslang for runtime glsl-to-spirv and add Android example
2020-11-02 16:30:30 -08:00
Carter Anderson
44b3e24e32
fix mesh allocation bug and public mesh api improvements (#768) 2020-11-02 13:15:07 -08:00
memoryruins
f81208adaa
impl ReadOnlyFetch for Or, FetchOr, and FetchMutated (#763) 2020-11-01 16:51:51 -08:00
simlay
9cc6368b28
An initial xcode setup for using xcode (#539)
An example of bevy using xcode
2020-10-31 14:36:24 -07: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
ad940fbf6e
Rename query.entity() to query.get() and query.get() to query.get_component() (#752) 2020-10-30 18:04:33 -07:00
tigregalis
ff626f2f6f
fix wavy text (#725)
fix wavy text

Co-authored-by: Carter Anderson <mcanders1@gmail.com>
2020-10-30 16:29:24 -07:00
Oscar
b6004e44cf
Local resources don't create if already present (#745)
Local<T> will no longer insert the inner resource if it already exists.
2020-10-30 12:21:57 -07:00
Boxy
dea05e9af5
Remove unsound cast in thread local resources (#749)
* Remove unsound cast in thread local resources

* Make ResourceRef(Mut)::new impossible to cause unsoundness with
2020-10-30 11:43:39 -07:00
Carter Anderson
1d4a95db62
ecs: ergonomic query.iter(), remove locks, add QuerySets (#741) 2020-10-29 23:39:55 -07:00
Alex Hirsch
1b051d3353
Add SamplerDescriptor to Texture (#399) (#747)
GLTF loader now grabs (some) sampler information from the respective
GLTF sampler struct.
2020-10-29 14:22:45 -07:00
Utkarsh
fb2b19def5
Fix bug of connection event of gamepad at startup (#730)
* Removed f32==f32 comparision in gamepad.rs

* Trigger gamepad connection event at start up
2020-10-29 13:55:35 -07:00
SvenTS
7734b1ea6d
Fix PreviousParent lag by merging parent update systems (#713)
* Sync previous parent in parent_update_system

* Previous parent does not need to be an option now

* Remove previous parent after parent deletion
2020-10-29 13:54:29 -07:00
Carter Anderson
bf2a917b81
app: PluginGroups and DefaultPlugins (#744) 2020-10-29 13:04:28 -07:00
David Ackerman
0cddeed1c0
Add support for android file system (#723)
Add support for android file system
2020-10-28 17:08:33 -07:00
Freya
040b8f72b3
Optimize returns in file_asset_io.rs and entities.rs (#728)
Optimize returns in file_asset_io.rs and entities.rs
2020-10-28 16:59:45 -07:00
Boxy
8c053e7c67
Run app.initialize in the run_once runner (#736) 2020-10-28 16:43:17 -07:00
Carter Anderson
a6ac8faa8a
port upstream hecs performance improvements (#716) 2020-10-22 11:53:59 -07:00
CGMossa
58eb7e7e05
Documenting small things here and there.. (#706)
Documenting small things here and there..
2020-10-21 15:57:03 -07:00
Carter Anderson
267599e577
gamepad: expose raw and filtered gamepad events. (#711) 2020-10-21 15:56:07 -07:00
Mariusz Kryński
894cc5e40a
fix getrandom (#712) 2020-10-21 15:55:35 -07:00
Mariusz Kryński
677cb1fc67
fix wasm assets (#714)
fix wasm assets
2020-10-21 15:55:15 -07:00
Utkarsh
d01ba9e4fc
Separate gamepad state code from gamepad event code and other customizations (#700)
Separated gamepad event and gamepad state code and made gamepad input more customizable
2020-10-21 10:27:00 -07:00
James R
0f43fb066f
update glam (#707) 2020-10-20 12:31:49 -07:00
lee-orr
0dba0fe45f
add flag for low power gpu as default (#397) 2020-10-20 11:47:10 -07:00
Dashiell Elliott
0dbba3efff
Migrate to rodio 0.12 using thread local resources (#692)
Migrate to rodio 0.12 using thread local resources
2020-10-20 11:44:50 -07:00
dependabot[bot]
67f87e1d2b
Update ahash requirement from 0.4.5 to 0.5.3 (#704)
Updates the requirements on [ahash](https://github.com/tkaitchuck/ahash) to permit the latest version.
- [Release notes](https://github.com/tkaitchuck/ahash/releases)
- [Commits](https://github.com/tkaitchuck/ahash/commits)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2020-10-19 18:24:50 -07:00
Carter Anderson
f88cfabdde
asset: WasmAssetIo (#703)
asset: WasmAssetIo
2020-10-19 17:29:31 -07:00
tigregalis
03bc5d7fdd
two-way conversions between Color-Vec4 and Color-[f32; 4] (#688)
two-way conversions between `Color`-`Vec4` and `Color`-`[f32; 4]` - use `impl From` instead of `impl Into`
2020-10-19 12:37:15 -07:00
Carter Anderson
c32e637384
Asset system rework and GLTF scene loading (#693) 2020-10-18 13:48:15 -07:00
Carter Anderson
a602f50c2c
small input example improvements (#701) 2020-10-18 13:20:42 -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
Tomasz Sterna
149c39950a
Runners explicitly call App.initialize() (#690) 2020-10-18 12:25:33 -07:00
Sergey Minakov
a80469bd13
Touch support implementation (#696)
Adds a basic touch input system
2020-10-18 12:24:01 -07:00
Alex
d004bce0c9
Added basic mouse capture API (#679)
Added basic cursor lock API
2020-10-16 14:07:01 -07:00
David Ackerman
7ba45849f3
Add default for texture format (#675) 2020-10-16 11:44:31 -07:00
Mariusz Kryński
fccfa12d3b
do not depend on spirv on wasm target (#689)
do not use spirv for wasm target
2020-10-16 11:12:55 -07:00
Mat Hostetter
871790c6e0
Adjust how ArchetypeAccess tracks mutable & immutable deps (#660)
`ArchetypeAccess` was tracking `immutable` and `mutable` separately.
This means that checking is_compatible requires three checks:
m+m, m+i, i+m.

Instead, continue tracking `mutable` accesses, but instead of
`immutable` track `immutable | mutable` as another `accessed` bit mask.
This drops the comparisons to two (m+a, a+m) and turns out to be
what the rest of the code base wants too, unifying various duplicated
checks and loops.
2020-10-15 13:39:01 -07:00
Junfeng Liu
f66a72563e
Expose a pointer of EventLoopProxy to process custom messages (#674) 2020-10-15 13:31:34 -07:00
Carter Anderson
b03d8da9bb
fix clippy (#686) 2020-10-15 12:49:56 -07:00
Utkarsh
dd91f8e116
Add support to get gamepad button/trigger values using Axis<GamepadButton> (#683) 2020-10-15 12:45:34 -07:00
François
76cc25823d
can change window settings at runtime (#644)
can change window settings at runtime
2020-10-15 11:42:19 -07:00
M
9c48e5cccb
Add a way to specify padding/ margins between sprites in a TextureAtlas. (#460)
Add a way to specify padding between sprites in a TextureAtlas
2020-10-14 20:49:07 -07:00
Catherine Gilbert
1f7fe77f32
added frame count to FrameTimeDiagnosticsPlugin (#678)
added frame count to FrameTimeDiagnosticsPlugin
2020-10-14 15:13:43 -07:00
Nathan Jeffords
7e23e132ef
add version of the ecs's write_world method that takes a pre-boxed world writer (#661)
Co-authored-by: Nathan Jeffords <njeffords@comtechefdata.com>
2020-10-14 14:01:08 -07:00
Carter Anderson
df64e1fc92
upgrade rectangle pack (#673) 2020-10-12 18:12:17 -07:00
Carter Anderson
5e7c36d1c1
Fix example colors (#672) 2020-10-12 16:54:22 -07:00
Carter Anderson
930eba4ccd
add thread local resources (#671) 2020-10-12 15:09:44 -07:00
walterpie
53d6d10506
Register IndexFormat as a property (#664) 2020-10-12 10:22:10 -07:00
Joshua J. Bouw
036b3bc0e6
add more methods to Assets for clearing and allocation reduction (#669) 2020-10-12 10:21:28 -07:00
Julian Heinken
32b122e1c5
Update color.rs (#670)
Co-authored-by: Julian Heinken <julian.heinken@gmail.com>
2020-10-12 10:19:06 -07:00
Nathan Stocks
f6fc76db1d
Upgrade to gilrs 0.8.0 to gain dpad support on macos from https://gitlab.com/gilrs-project/gilrs/-/merge_requests/50 (#653) 2020-10-10 13:30:34 -07:00
Carter Anderson
1f27d8c727
fix new clippy error (#656) 2020-10-10 12:16:52 -07:00
Nathan Stocks
333fd3f0e0
Don't Panic (#651)
Don't panic when despawning recursively
2020-10-08 18:43:41 -07:00
Nathan Stocks
bf501b77cc
Don't panic when despawning entity multiple times (#649)
Emit a debug log message instead of a panic when despawning an entity which has already been despawned.
2020-10-08 16:58:19 -07:00
memoryruins
ebce1f9c4a
Remove outdated ecs docs (#646) 2020-10-08 15:32:25 -07:00
Grayson Burton
354d71cc1f
The Great Debuggening (#632)
The Great Debuggening
2020-10-08 11:43:01 -07:00
Julian Heinken
a92790c011
sRGB awareness for Color (#616)
Color is now sRGB aware, added SrgbColorSpace trait for f32
2020-10-08 10:30:23 -07:00
François
52a4d49bbf
set asset path relative to root when loading sync (#643) 2020-10-07 11:09:17 -07:00
Downtime
125afb41ac
Exposing winit decorations (#627)
Exposing winit decorations
2020-10-05 10:51:36 -07:00
Boutillier
219527ed7d
Iter added camera to update their projection (#488) 2020-10-05 10:41:34 -07:00
Boutillier
1bdb9d3b00
Fix Added behaviour for QueryOne get. (#543)
Query unchanged as impacts performances.
Added tests in bevy_ecs/hecs
2020-10-05 10:38:12 -07:00
Andrew Hickman
9a4167ef7f
Fix FloatOrd hash being different for different NaN values (#618)
* Fix FloatOrd hash being different for different NaN values

* Fix FloatOrd hashing +0.0 and -0.0 to different values
2020-10-03 12:56:25 -07:00
Carter Anderson
22a2c88a47
winit: upgrade to 0.23.0 / move back upstream! (#617) 2020-10-02 12:24:30 -07:00
EthanYidong
4c753e2588
move dynamic plugin loading to its own optional crate (#544)
move dynamic plugin loading to its own crate
2020-10-01 13:04:06 -07:00
Will Hart
1beee4fd28
Add AppBuilder::asset_loader_from_instance (#580)
* Implement add_asset_loader_from_instance

* Add example of different data loaders
2020-10-01 11:31:06 -07:00
Gregor
056f84a2c1
Expose current_entity in ChildBuilder (#595) 2020-10-01 11:00:10 -07:00
Jonas Matser
3a4eacbdee
Adds derive for missing debug implementations (#597) 2020-10-01 10:58:21 -07:00
Nolan Darilek
d52f9e32aa
Add #[cfg_attr(feature = "serialize", derive(serde::Serialize, serde::Deserialize))] to gamepad types. (#583)
Seems these may have been missed in the gamepad implementation, copied them from keyboard.rs.
2020-10-01 10:54:20 -07:00
Daniel McNab
cd9e502b12
Fix ScheduleRunnerPlugin (#610)
Fixes #609
2020-10-01 10:52:29 -07:00
Tomasz Sterna
408114269b
Use instant::Instant with wasm-bindgen feature (#591) 2020-09-27 12:55:06 -07:00
Raymond
74ad1c3752
Add remove bundle to bevy_ecs commands (#579)
add remove bundle to bevy_ecs commands
2020-09-26 14:27:56 -07:00
Alexander Sepity
85a7f883d1
Fix typo in #569. (#582) 2020-09-26 10:26:19 -07:00
Carter Anderson
dd07674b59
github actions: use stable clippy (#577) 2020-09-25 21:34:47 -07:00
Carter Anderson
05db806e15
fix DrawableText crash (#574) 2020-09-25 17:57:23 -07:00
Mariusz Kryński
a3012d94bb
WASM asset loading (#559)
wasm assets
2020-09-25 15:26:23 -07:00
Gray Olson
afc656701d
switch to u32 indices by default (#572) 2020-09-25 14:29:30 -07:00
Alexander Sepity
3abfcad7ab
Patch memory leak in Archetype::grow(). (#569) 2020-09-25 12:33:27 -07:00
Gray Olson
f7c8882c04
Index buffer specialization (#568)
index buffer specialization
2020-09-25 12:13:01 -07:00
Carter Anderson
a768bae33b
properly update bind group ids when setting dynamic bindings. (#560) 2020-09-23 13:20:14 -07:00
Carter Anderson
028a22b129
asset: use bevy_tasks in AssetServer (#550) 2020-09-21 20:23:09 -07:00
Tomasz Sterna
dd6f0b5e04
Option to give existing canvas element as winit window (#515) 2020-09-21 16:12:34 -07:00
Stjepan Glavina
74f881f20d
Fix compilation error on wasm (#549)
Fix compilation error on wasm
2020-09-21 15:47:38 -07:00
Logan Magee
b5f3585d2e
Merge some imports in bevy_winit/src/lib.rs (#522) 2020-09-21 13:54:47 -07:00
HyperLightKitsune
295e1f0a18
use FnOnce in Commands and ChildBuilder where possible (#535)
use FnOnce in Commands and ChildBuilder
2020-09-21 13:51:38 -07:00
Stjepan Glavina
5aa77979d1
Remove some unsafe code (#540) 2020-09-21 13:13:40 -07:00
memoryruins
fd1d6a388d
Stop looping when scheduler receives an AppExit (#536) 2020-09-20 16:32:07 -07:00
Carter Anderson
74dba5f36b
release: 0.2.1 (#533) 2020-09-20 15:58:32 -07:00
Stjepan Glavina
b05708f66a
Update async-executor to 1.3.0 (#526) 2020-09-20 11:27:24 -07:00
memoryruins
924afc3c0c
Remove UI debug print (#521) 2020-09-19 23:25:07 -07:00
Carter Anderson
ba5af4dd56
release: 0.2.0 (#520) 2020-09-19 15:29:08 -07:00
Carter Anderson
57a52e6ed7
fix font atlas text width bug (#519) 2020-09-19 14:22:01 -07:00
Carter Anderson
ff54efe3e3
transform: add "setter" builder functions, make naming clearer, and fix examples (#516) 2020-09-19 13:35:48 -07:00
Boutillier
b9f18efd86
Do not assume font handle is present in assets. (#490) 2020-09-19 12:57:52 -07:00
Tomasz Sterna
5e3731ddce
Create winit canvas under WebAssembly (#506) 2020-09-18 20:11:26 -07:00
Utkarsh
19d4694d24
Added gamepad support using Gilrs (#280)
Co-authored-by: Carter Anderson <mcanders1@gmail.com>
2020-09-18 14:43:47 -07:00
Boiethios
d4c8436457
Add AppBuilder::add_startup_stage_[before/after] (#505)
Co-authored-by: Boiethios <felix-dev@daudre-vignier.fr>
2020-09-18 13:30:54 -07:00
Carter Anderson
70ad6671db
ecs: use generational entity ids and other optimizations (#504)
ecs: use generational entity ids and other optimizations
2020-09-17 17:16:38 -07:00
Tomasz Sterna
34c6f5f41b
Implement WASM support for bevy_winit (#503)
Also, replaced wasm_timer::Instant with instant::Instant as it is
used by winit WASM implementation.
2020-09-16 13:40:32 -07:00
Carter Anderson
ad7613c674
Fix set_scale and set_rotation in new Transform api (#500) 2020-09-16 00:19:14 -07:00
verzuz
d4ab2f4d47
fix font atlas overflow (#495)
manage font_atlas overflow
2020-09-15 18:06:10 -07:00
Tomasz Sterna
2b0ee24a5d
Implement single threaded task scheduler for WebAssembly (#496)
* Add hello_wasm example

* Implement single threaded task scheduler for WebAssembly
2020-09-15 18:05:31 -07:00
Carter Anderson
e81111c1b1
simplify transform usage where possible (#494) 2020-09-14 18:20:20 -07:00
Smite Rust
a5259ab45f
update dependencies (#493) 2020-09-14 18:12:52 -07:00
Ilja Kartašov
b3e339e58a
Fix missing asset info path for synchronous loading (#486) 2020-09-14 14:14:54 -07:00
Smite Rust
b0e64d4295
update async-executor (#484)
update async-executor
2020-09-14 14:01:41 -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
Logan Magee
3bc5e4cb1e
render: Export specific items outside of prelude (#473)
It's a preference of some people to not use prelude modules at all in
order to make their imports more explicit. Currently, items like
`Camera3dComponent` are only exported in a prelude module, making an
explicit import look like

`use bevy::prelude::Camera3dComponent`

which feels a bit hackish. This change doesn't remove such components
from the prelude, but just re-exports them at the crate's
(`bevy_render` in this case) root.
2020-09-11 16:23:21 -07:00
Logan Magee
e7d254517e
Load assets from root path when loading directly (#478) 2020-09-11 16:22:42 -07:00
Fabian Löschner
5447592c07
Fix handling of nested generics in PropertyTypeRegistration (#458) (#458) 2020-09-11 12:37:59 -07:00
Jonas Matser
3b3b0195bc
Adds profiler_start/stop to parallel_executor (#474) 2020-09-11 12:14:36 -07:00
BimDav
4ef18e2608
Resource change tracking (#388)
* Add mutated tracker on resources and ChangedRes query for added or mutated resources.

* ResMut:::new() now takes a reference to a 'mutated' flag in its archetype.

* Change FetchResource so that get() returns an Option. Systems using Resources will only be called if all fetched Resources are Some(). This is done to implement ChangedRes, which is Some iff the Resource has been changed.

* Add OrRes for a logical or in tuples of Resource queries.

* Separate resource query get() in is_some() and get() methods for clarity

* Remove unneeded unsafe

* Change ResMut::new()
2020-09-10 13:15:02 -07:00
Tomasz Sterna
12deb0bd91
Initialize+Run systems when running the app (#444)
This is required, so Local<> resources get initialized before systems run.
2020-09-10 12:56:37 -07:00
Smite Rust
a9ce7f4e82
update dependencies (#470) 2020-09-10 12:54:24 -07:00
Carter Anderson
9d0abeb014 fix formatting 2020-09-09 18:54:20 -07:00
Carter Anderson
478fb0649a use upstream ron 2020-09-09 18:51:59 -07:00
Philip Degarmo
612c2552a5
Update multitask dependency to async-executor (#452)
* Switch from the deprecated `multitask` crate to `async-executor`
* async-executor appears to be essentially multitask 0.3
* use block_on in futures_lite instead of pollster because futures_lite is already in the dependency list of async-executor
2020-09-09 13:12:50 -07:00
Cory Forsstrom
2667c24656
custom rodio source for audio (#145)
support custom rodio source for audio
2020-09-08 13:56:45 -07:00
Carter Anderson
9c850057c0 move benches to separate crate to cut test/example build times 2020-09-08 13:30:44 -07:00
Carter Anderson
ac117019e2 resolve unused variable warning in release builds 2020-09-08 13:29:55 -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
Carter Anderson
413caae7bb resolve errors from latest clippy version 2020-09-07 15:00:03 -07:00
Boxy
d86fae8147
Update docs for Updated, Changed and Mutated (#451)
Update docs for Updated, Changed and Mutated
2020-09-07 13:52:03 -07:00
Jeremiah Senkpiel
54e9f446c4
SceneSpawner: add unload() and unload_sync() (#339)
This allows you to unload scenes.

Refs: https://github.com/bevyengine/bevy/issues/255
2020-09-06 13:06:21 -07:00
Aevyrie
6e460a6a97
Add Copy to MouseScrollUnit (#270)
add Copy to MouseScrollUnit
2020-09-06 12:56:09 -07:00
Tristan Pemble
43463a7a06
Optimize transform systems to only run on change (#417)
Optimize transform systems to only run on change
2020-09-06 12:53:14 -07:00
Philip Degarmo
9eba19c8f0
Fix for bug #449 (#450)
Fix for a bug (#449) in scheduler that could result in systems running concurrently when they shouldn't.
2020-09-06 12:07:34 -07:00
Philip Degarmo
8b3553002d
Reworked parallel executor to not block (#437)
Reworked parallel executor to not block
2020-09-05 22:05:33 -07:00
Philip Degarmo
8677e36681
Replace some println spam in a test with an assertion (#439) 2020-09-05 21:46:23 -07:00
Marcel Müller
08dc1c1936
Add access to pressed/just_pressed/just_released to Input<T> (#428)
Add access to pressed/just_pressed to Input<T>
2020-09-03 17:32:17 -07:00
julhe
cc3e99388a
Allowing glTFs to be loaded that don't have uvs and normals (#406)
allowing gltfs to be loaded that don't have uvs and normals, by filling missing attributes them with zeros
2020-09-03 17:30:10 -07:00
BimDav
25f62f7250
Add support for 'or' in ECS querying for tuple queries (#358)
Add Or query to do a logical or on a set of queries
2020-09-01 18:12:54 -07:00
Noah Callaway
a1e254d075
Rename get_id_mut (#332)
Renamed to get_with_id_mut to be parallel with get_with_id.
2020-09-01 17:12:36 -07:00
Waridley
4e587db775
Feature to disable libloading (#363)
esp. helpful for wasm target
Made default only for `bevy` crate
2020-09-01 17:02:11 -07:00
Nathan Stocks
3d6d2431fe
Remove child from parent when it is despawned (#386)
Remove child from parent when it is despawned
2020-09-01 16:39:22 -07:00
Philip Degarmo
b91fd8a43a
Quick fix for #405 (#408)
- Use saturating_sub to avoid overflow in core assignment to task pools
- Temporarily force 4 minimum threads to avoid examples stalling
2020-09-01 11:06:45 -07:00
Michael Hills
38a982b28d
iOS: use shaderc-rs for glsl to spirv compilation (#324) 2020-09-01 11:06:15 -07:00
Boxy
57177c9e98
Bump entities to u128 to avoid collisions (#117) (#393) 2020-08-31 11:51:28 -07:00
wyhaya
8106f770de
Add Color::hex fn (#362)
Add Color::hex fn
2020-08-30 11:27:37 -07:00
Daniel McNab
61b5fe9cfc
Fix hot asset reloading on Windows (#394)
Fixes #348

Changes to uses fully qualified names to work around
https://github.com/rust-analyzer/rust-analyzer/issues/1165
2020-08-30 11:22:40 -07:00
Jasen Borisov
ad460159b0
add bevy_render::pass::ClearColor to prelude (#396)
It is common for users to want to set their clear color.
2020-08-30 11:20:11 -07:00
Boxy
3efbaca104
Fix archetypes_generation being incorrectly updated for systems (#294) (#383) 2020-08-29 18:38:05 -07:00
Mariusz Kryński
8101622f37
Fix deadlock in hot asset reloading (#375) (#376) 2020-08-29 17:16:46 -07:00
Hugo Lindsay
00be5d083e
UI component bundles derive clone (#390)
make Draw, TextStyle, and the rest of the ui components derive clone
2020-08-29 16:49:39 -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
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
Patrik Buhring
c40e29bca3
Update icosphere dependency and add a limit to subdivisions. (#379) 2020-08-28 16:52:06 -07:00
Guillaume DALLENNE
d64882ffbf
add Color::rgb_u8 and Color::rgba_u8 (#381) 2020-08-28 16:50:49 -07:00
Grant Moyer
e6a57bad25
Fix sprite clipping at same depth (#385) 2020-08-28 16:45:54 -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
Telzhaak
93040ef9a0
Check asset-path existence. Previously App just crashed if not (#345)
* Check asset-path existence. Previously App just crashed if not

* rustfmt

* Relegated Error-message to ChannelAssetHandler

* Removed needless return statement
2020-08-26 12:08:51 -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
stefee
034b5876aa
Fix default UI node size (#304)
Fix default node size
2020-08-25 12:18:43 -07:00
Xavientois
0ae74a4a4d
Some examples of documentation (#338) 2020-08-24 17:57:10 -07:00
Fabian Würfl
7b4bdef77c
Support multiline Texts (#183) 2020-08-24 17:13:24 -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 McNab
f7131509b9
Send an AssetEvent when modifying using get_id_mut (#323)
Fixes #321
2020-08-24 11:20:41 -07:00
multun
022a31fd8f
fix formatting / clippy warnings (#295) 2020-08-22 18:35:40 -07:00
Carter Anderson
b925e22949 0.1.3 upgrade 2020-08-22 10:16:52 -07:00
Carter Anderson
35c59d2d59 use wgpu 0.6.0 release 2020-08-22 09:42:00 -07:00
Boutillier
4eb437ab2e
Fixes #134 and #135 with a slight hit on performances as get_or_assign_index will now always assign (#247) 2020-08-22 09:28:38 -07:00
kaflu
2dadc86fb0
Change CullMode to none for sprites (#241)
With `CullMode::Back`, a sprite image that is rotated in x,y plane won't display properly

Co-authored-by: kaflu <kaflu@users.noreply.github.com>
2020-08-21 19:52:31 -07:00
mfrancis107
47f3a0b8be
Changes ScheduleRunnerPlugin RunMode::Loop to run on fixed interval (#233)
* Changes ScheduleRunnerPlugin RunMode::Loop to run on fixed interval

* fix formatting
2020-08-21 19:31:46 -07:00
Carter Anderson
7c3b49cb6f upgrade to latest wgpu 2020-08-21 18:36:32 -07:00
TehPers
7a79dcc46c
Add serialize/deserialize to some input types (#281) 2020-08-21 18:13:50 -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