MCPcopy Index your code
hub / github.com/aojiaoxiaolinlin/bevy_flash

github.com/aojiaoxiaolinlin/bevy_flash @v0.1.2

Chat with this repo
repository ↗ · DeepWiki ↗ · release v0.1.2 ↗ · + Follow
507 symbols 1,027 edges 36 files 56 documented · 11% updated 5mo agov0.1.2 · 2025-11-13★ 51
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Bevy Flash

MIT/Apache 2.0 Crates.io Downloads DeepWiki Bevy Tracking Discord

English | 中文 将 Flash 动画引入 Bevy 引擎,兼容 WASM!

目标

我希望将 Flash 动画引入 Bevy 游戏引擎,焕发新生!

✨ 特性

  • ✅ 动画播放控制(暂停/跳转/循环等)

混合模式

  • ✅ 增加
  • ✅ 减去
  • ✅ 滤色
  • ✅ 变亮
  • ✅ 变暗
  • ✅ 正片叠底
  • 🟡 其余混合模式需要等待Bevy提供获取屏幕纹理功能

[!NOTE] 由于 GPU 进行混合运算时采用的是线性空间(Linear Space),而 Flash 默认的混合模式是在伽马空间(Gamma Space 或 sRGB Space)进行的, 因此当前实现的混合模式颜色在颜色准确性上存在一定的差异。

滤镜渲染

  • ✅ 颜色变换滤镜
  • ✅ 模糊滤镜
  • ✅ 发光滤镜
  • ✅ 斜角滤镜
  • 🟡 其余滤镜,待实现

📸 预览

在线 Demo

example example example

🚀 快速开始

1. 运行示例

git clone https://github.com/aojiaoxiaolinlin/bevy_flash.git
cd bevy_flash
cargo run --example sample

2. 在项目中使用

fn setup(mut commands: Commands, assert_server: Res<AssetServer>) {
    commands.spawn(Camera2d);
    commands.spawn((
        Name::new("冲霄"),
        Flash(assert_server.load("spirit2159src.swf")),
        FlashPlayer::from_animation_name("WAI"),
        Transform::from_scale(Vec3::splat(2.0)),
    ));

    commands.spawn((
        Flash(assert_server.load("埃及太阳神.swf")),
        Transform::from_scale(Vec3::splat(2.0)),
    ));

    commands.spawn(Flash(assert_server.load("loading_event_test.swf")));
}

兼容性

bevy bevy_flash
0.17 0.1

🤝 贡献

欢迎 Issue、PR、讨论! 所有贡献默认接受 MIT / Apache-2.0 双许可证,无需额外署名。

📄 许可证

MIT 或 Apache-2.0 任选其一,详见 LICENSE。

Extension points exported contracts — how you extend this code

TDisplayObject (Interface)
(no doc) [4 implementers]
src/swf_runtime/display_object.rs
GetBatchPartData (Interface)
该 trait 因包含一个没有接收者(receiver)的方法 get_batch_part_data 而不支持动态分发(dyn-compatible)—— 即无法作为 dyn Trait 类型使用。 这是一个用于通过阶段项目(phase [1 …
src/render/part_mesh2d.rs
PartPhaseItem (Interface)
(no doc) [1 implementers]
src/render.rs

Core symbols most depended-on inside this repo

clone
called by 75
src/render.rs
push
called by 61
src/swf_runtime/transform.rs
id
called by 27
src/swf_runtime/graphic.rs
is_empty
called by 19
src/swf_runtime/shape_utils.rs
as_ref
called by 15
src/swf_runtime/tag_utils.rs
entity
called by 11
src/lib.rs
lerp_twips
called by 11
src/swf_runtime/morph_shape.rs
round_to_i32
called by 10
src/swf_runtime/matrix.rs

Shape

Method 262
Function 112
Class 107
Enum 23
Interface 3

Languages

Rust100%

Modules by API surface

src/swf_runtime/display_object.rs58 symbols
src/swf_runtime/movie_clip.rs46 symbols
src/swf_runtime/shape_utils.rs31 symbols
src/render.rs30 symbols
src/lib.rs29 symbols
src/render/offscreen_texture.rs27 symbols
src/swf_runtime/decoder.rs26 symbols
src/render/part_mesh2d.rs26 symbols
src/player.rs26 symbols
src/swf_runtime/morph_shape.rs23 symbols
src/render/pipeline.rs21 symbols
src/assets.rs20 symbols

For agents

$ claude mcp add bevy_flash \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page