Zhixing Zhang
d9fb61d474
Wireframe Rendering Pipeline ( #562 )
...
This PR implements wireframe rendering.
Usage:
This is now ready as soon as #1401 gets merged.
Usage:
```rust
app
.insert_resource(WgpuOptions {
name: Some("3d_scene"),
features: WgpuFeatures::NON_FILL_POLYGON_MODE,
..Default::default()
}) // To enable the NON_FILL_POLYGON_MODE feature
.add_plugin(WireframePlugin)
.run();
```
Now we just need to add the Wireframe component on an entity, and it'll draw. its wireframe.
We can also enable wireframe drawing globally by setting the global property in the `WireframeConfig` resource to `true`.
Co-authored-by: Zhixing Zhang <me@neoto.xin>
2021-03-04 01:23:24 +00:00
Daniel McNab
7be096a254
Fix the z_sort_debug example from #1361 ( #1419 )
...
Fixes #1411
2021-02-09 12:37:49 -08:00
Will Crichton
e6e23fdfa9
Add support for gltf::Material::unlit ( #1341 )
...
* Add support for gltf::Material::unlit
2021-01-31 17:13:16 -08:00
Jasen Borisov
7d065eeb71
3D OrthographicProjection improvements + new example ( #1361 )
...
* use `length_squared` for visible entities
* ortho projection 2d/3d different depth calculation
* use ScalingMode::FixedVertical for 3d ortho
* new example: 3d orthographic
2021-01-31 16:22:06 -08:00
Alice Cecile
6f5a4d9deb
Rename add_resource to insert_resource ( #1356 )
...
* Renamed add_resource to insert_resource
* Changed usage of add_resource to insert_resource
* Renamed add_thread_local_resource
2021-01-30 12:55:13 -08:00
Jasen Borisov
57f9ac18d7
OrthographicProjection scaling mode + camera bundle refactoring ( #400 )
...
* add normalized orthographic projection
* custom scale for ScaledOrthographicProjection
* allow choosing base axis for ScaledOrthographicProjection
* cargo fmt
* add general (scaled) orthographic camera bundle
FIXME: does the same "far" trick from Camera2DBundle make any sense here?
* fixes
* camera bundles: rename and new ortho constructors
* unify orthographic projections
* give PerspectiveCameraBundle constructors like those of OrthographicCameraBundle
* update examples with new camera bundle syntax
* rename CameraUiBundle to UiCameraBundle
* update examples
* ScalingMode::None
* remove extra blank lines
* sane default bounds for orthographic projection
* fix alien_cake_addict example
* reorder ScalingMode enum variants
* ios example fix
2021-01-30 02:31:03 -08:00
Christopher Durham
4d5ba7918b
Update rand requirement from 0.7 to 0.8 ( #1114 )
...
* Update rand requirement from 0.7 to 0.8
* Update examples' usage of Rng::gen_range
2021-01-17 13:43:03 -08:00
Daniel McNab
9f2410a4ac
Add from_xyz
to Transform
( #1212 )
...
* Add the from_xyz helper method to Transform
* Use `from_xyz` where possible
2021-01-06 17:17:06 -08:00
François
12d4184d7c
fix label to load gltf scene ( #1204 )
2021-01-06 16:15:59 -08:00
François
c25b41a038
add scene instance entity iteration ( #1058 )
...
add scene instance entity iteration
2021-01-01 14:58:49 -06:00
François
21794fe6df
make more information available from loaded GLTF model ( #1020 )
...
make more information available from loaded GLTF model
* make gltf nodes available as assets
* add list of primitive per mesh, and their associated material
* complete gltf structure
* get names of gltf assets
* only load materials once
* add labels with node names
2020-12-31 14:57:15 -06:00
François
b28365f966
updates on diagnostics (log + new diagnostics) ( #1085 )
...
* move print diagnostics to log
* entity count diagnostic
* asset count diagnostic
* remove useless `pub`s
* use `BTreeMap` instead of `HashMap`
* get entity count from world
* keep ordered list of diagnostics
2020-12-24 13:28:31 -06:00
Carter Anderson
841755aaf2
Adopt a Fetch pattern for SystemParams ( #1074 )
2020-12-15 21:57:16 -08:00
Carter Anderson
7ab0eeece0
Break out Visible component from Draw ( #1034 )
...
Break out Visible component from Draw
2020-12-09 13:38:48 -08:00
Amber Kowalski
097a55948c
Refactor Time API and internals ( #934 )
...
Refactor Time API and internals
2020-11-28 13:08:31 -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
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
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
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
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
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
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
Carter Anderson
1d4a95db62
ecs: ergonomic query.iter(), remove locks, add QuerySets ( #741 )
2020-10-29 23:39:55 -07:00
Carter Anderson
c32e637384
Asset system rework and GLTF scene loading ( #693 )
2020-10-18 13:48:15 -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
Carter Anderson
5e7c36d1c1
Fix example colors ( #672 )
2020-10-12 16:54:22 -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
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
Elias
9aff0bcc2a
Add support for binary glTF (.glb) ( #271 )
...
Add support for binary glTF (.glb)
2020-08-25 16:55:08 -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
OptimisticPeach
86c20eb6df
Add Icospheres.
...
Additionally documents the shapes module.
2020-08-13 00:14:23 -04: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
ca87359c6e
render: add MSAA support
2020-07-29 18:15:15 -07:00
Carter Anderson
77f4e60c8c
cleanup import
2020-07-28 14:26:12 -07:00
Carter Anderson
6dadf34401
add more example comments
2020-07-28 13:45:36 -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
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
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
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
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
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
e75496772e
legion: change query system ordering
2020-06-27 10:18:27 -07:00
Carter Anderson
92c44320ee
ecs: rename EntityArchetype to ComponentSet
2020-06-25 11:21:56 -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
e855995145
cargo fmt
2020-06-15 12:47:35 -07:00
Carter Anderson
4568f5dae3
remove specialization. bevy now builds on stable rust!
2020-06-07 23:36:39 -07:00
Carter Anderson
5add29f8cf
rename LocalToWorld -> Transform and LocalToParent -> LocalTransform
2020-06-07 13:39:50 -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
51d41b2302
camera: remove active camera components in favor of camera names
2020-05-29 22:07:55 -07:00
Carter Anderson
d920100d35
scenes: deserialization and refactor
2020-05-21 17:21:33 -07:00
Carter Anderson
86c18edbfd
Label component
2020-05-17 18:09:29 -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
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
8a61ef48d3
use relative paths for assets
2020-05-14 15:25:43 -07:00
Carter Anderson
6381611e89
Resource -> Res, Ref->Com
2020-05-13 17:57:08 -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
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
6f32d18dc5
diagnostic filtering
2020-05-04 11:43:21 -07:00
Carter Anderson
dcc34473e5
sprites
2020-05-04 01:23:40 -07:00
Carter Anderson
7b79b3de8d
organize examples and add ecs guide
2020-05-01 13:12:47 -07:00