Commit graph

359 commits

Author SHA1 Message Date
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
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
ec0c0c7562 tweak the ecs guide 2020-05-28 22:37:28 -07:00
Carter Anderson
83d5275e10 add "query system functions" 2020-05-28 13:36:48 -07:00
Carter Anderson
830565ae2b scene: type registry refactor. use short type names when possible 2020-05-27 19:27:55 -07:00
Carter Anderson
3ee5a67cdb scenes: polish scene example. prop->property attribute. derive(Resources) to derive(FromResources) 2020-05-27 15:57:12 -07:00
Carter Anderson
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
d2d02f63f6 props: "Seq" properties 2020-05-26 19:47:33 -07:00
Carter Anderson
a837741c64 props: move AsProperties into Property 2020-05-25 18:20:36 -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
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
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
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
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
8bc0eb45ee print average fps and smooth out average a little bit 2020-05-18 14:53:57 -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
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
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
2bcb8a2a41 cargo fmt 2020-05-13 18:05:18 -07:00
Carter Anderson
6381611e89 Resource -> Res, Ref->Com 2020-05-13 17:57:08 -07:00
Carter Anderson
fb8f9e8636 RenderGraph::add_node now requires a name 2020-05-13 17:35:48 -07:00
Carter Anderson
06f3a4efb9 Use system fns for all setup code 2020-05-13 17:31:56 -07:00
Carter Anderson
70f122b92a Rename AssetStorage to Assets 2020-05-13 16:45:18 -07:00
Carter Anderson
b58db0749e use init_resource everywhere 2020-05-13 16:35:38 -07:00
Carter Anderson
16b568e00e Asset events and AddAsset builder 2020-05-13 16:17:44 -07:00
Carter Anderson
c18ecf2a55 initial text rendering 2020-05-13 13:22:12 -07:00
Carter Anderson
73cc20768c remove pathfinder code
its not ready yet so it shouldnt be on master :)
2020-05-12 16:35:49 -07:00
Carter Anderson
35e1d8b498 pathfinder: more backend work. it now renders the clear color without crashing 2020-05-11 09:01:31 -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
c5ca59dc4d cargo fmt 2020-05-05 18:44:32 -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