bevy/crates
Carter Anderson e9f52b9dd2 Move import_path definitions into shader source (#3976)
This enables shaders to (optionally) define their import path inside their source. This has a number of benefits:

1. enables users to define their own custom paths directly in their assets
2. moves the import path "close" to the asset instead of centralized in the plugin definition, which seems "better" to me. 
3. makes "internal hot shader reloading" way more reasonable (see #3966)
4. logically opens the door to importing "parts" of a shader by defining "import_path blocks".

```rust
#define_import_path bevy_pbr::mesh_struct

struct Mesh {
    model: mat4x4<f32>;
    inverse_transpose_model: mat4x4<f32>;
    // 'flags' is a bit field indicating various options. u32 is 32 bits so we have up to 32 options.
    flags: u32;
};

let MESH_FLAGS_SHADOW_RECEIVER_BIT: u32 = 1u;
```
2022-02-18 21:54:03 +00:00
..
bevy_app small and mostly pointless refactoring (#2934) 2022-02-13 22:33:55 +00:00
bevy_asset Proper prehashing (#3963) 2022-02-18 03:26:01 +00:00
bevy_audio Update rodio 0.15 (#3846) 2022-02-03 04:25:44 +00:00
bevy_core small and mostly pointless refactoring (#2934) 2022-02-13 22:33:55 +00:00
bevy_core_pipeline small and mostly pointless refactoring (#2934) 2022-02-13 22:33:55 +00:00
bevy_crevice Don't panic in macro shape validation (#3647) 2022-01-15 22:14:43 +00:00
bevy_derive small and mostly pointless refactoring (#2934) 2022-02-13 22:33:55 +00:00
bevy_diagnostic small and mostly pointless refactoring (#2934) 2022-02-13 22:33:55 +00:00
bevy_dylib Release 0.6.0 (#3587) 2022-01-08 10:18:22 +00:00
bevy_dynamic_plugin Release 0.6.0 (#3587) 2022-01-08 10:18:22 +00:00
bevy_ecs Proper prehashing (#3963) 2022-02-18 03:26:01 +00:00
bevy_ecs_compile_fail_tests Release 0.6.0 (#3587) 2022-01-08 10:18:22 +00:00
bevy_gilrs Release 0.6.0 (#3587) 2022-01-08 10:18:22 +00:00
bevy_gltf small and mostly pointless refactoring (#2934) 2022-02-13 22:33:55 +00:00
bevy_input Proper prehashing (#3963) 2022-02-18 03:26:01 +00:00
bevy_internal bevy_render: Use RenderDevice to get limits/features and expose AdapterInfo (#3931) 2022-02-16 21:17:37 +00:00
bevy_log Implement init_resource for Commands and World (#3079) 2022-02-08 23:04:19 +00:00
bevy_macro_utils small and mostly pointless refactoring (#2934) 2022-02-13 22:33:55 +00:00
bevy_math Release 0.6.0 (#3587) 2022-01-08 10:18:22 +00:00
bevy_pbr Move import_path definitions into shader source (#3976) 2022-02-18 21:54:03 +00:00
bevy_reflect Proper prehashing (#3963) 2022-02-18 03:26:01 +00:00
bevy_render Move import_path definitions into shader source (#3976) 2022-02-18 21:54:03 +00:00
bevy_scene small and mostly pointless refactoring (#2934) 2022-02-13 22:33:55 +00:00
bevy_sprite Move import_path definitions into shader source (#3976) 2022-02-18 21:54:03 +00:00
bevy_tasks small and mostly pointless refactoring (#2934) 2022-02-13 22:33:55 +00:00
bevy_text small and mostly pointless refactoring (#2934) 2022-02-13 22:33:55 +00:00
bevy_transform small and mostly pointless refactoring (#2934) 2022-02-13 22:33:55 +00:00
bevy_ui Add FocusPolicy to NodeBundle and ImageBundle (#3952) 2022-02-15 22:31:51 +00:00
bevy_utils Proper prehashing (#3963) 2022-02-18 03:26:01 +00:00
bevy_window small and mostly pointless refactoring (#2934) 2022-02-13 22:33:55 +00:00
bevy_winit small and mostly pointless refactoring (#2934) 2022-02-13 22:33:55 +00:00