23个不稳定版本 (7个破坏性更新)

0.8.0 2024年7月4日
0.7.0 2024年2月17日
0.6.0 2023年11月4日
0.5.0 2023年7月9日

#198 in 游戏开发

Download history 59/week @ 2024-05-04 51/week @ 2024-05-11 90/week @ 2024-05-18 94/week @ 2024-05-25 94/week @ 2024-06-01 44/week @ 2024-06-08 59/week @ 2024-06-15 69/week @ 2024-06-22 181/week @ 2024-06-29 205/week @ 2024-07-06 51/week @ 2024-07-13 107/week @ 2024-07-20 198/week @ 2024-07-27 76/week @ 2024-08-03 61/week @ 2024-08-10 26/week @ 2024-08-17

每月387次下载
用于 moonshine-view

MIT/Apache

165KB
3.5K SLoC

Rust 3K SLoC // 0.0% comments WebGPU Shader Language 765 SLoC // 0.2% comments

Bevy Vector Shapes

crates.io docs.rs CI Bevy tracking

Bevy Vector Shapes

什么是Bevy Vector Shapes?

Bevy Vector Shapes是一个库,用于在Bevy中轻松且直观地创建实例化的矢量形状。

警告

Bevy Vector Shapes处于开发初期。您可能会遇到问题,但请随时报告。

功能

  • 内置多种形状类型:线条、矩形、圆形、弧线和正多边形。
  • 特性,允许实现自定义形状类型。
  • 支持各种Bevy渲染功能:2D和3D管道、透明度、alpha模式、渲染层、发光。
  • 画布API,用于将形状渲染到纹理中。
  • 能够在形状上绘制纹理,包括画布纹理。
  • 即时和保留模式。
  • 局部抗锯齿,以实现更平滑的形状。
  • 可选的每个形状类型的板面渲染,以确保它们始终面向相机。
  • 相同类型和渲染配置的形状完全一起实例化。
  • 编译为wasm,以便在浏览器中运行项目。

用法

请参阅以下基本用法,并查看示例以获取所有支持功能的详细信息。

use bevy::prelude::*;
// Import commonly used items
use bevy_vector_shapes::prelude::*;

fn main() {
    App::new()
        .add_plugins(DefaultPlugins)
        // Add the shape plugin:
        // - Shape2dPlugin for 2D cameras
        // - ShapePlugin for both 3D and 2D cameras
        .add_plugins(Shape2dPlugin::default())
        .add_systems(Startup, setup)
        .add_systems(Update, draw)
        .run();
}

fn setup(mut commands: Commands) {
    // Spawn the camera
    commands.spawn(Camera2dBundle::default());
}

fn draw(mut painter: ShapePainter) {
    // Draw a circle
    painter.circle(100.0);
}
bevy bevy_vector_shapes
0.14 0.8.0
0.13 0.7.0
0.12 0.6.0
0.11 0.5.2
0.10 0.4.6

替代方案

  • bevy_smud:用于在运行时生成自定义sdf表达式。
  • bevy_prototype_lyon:用于从2D形状和路径生成网格。
  • vello:用于非常高效的2D形状渲染到图像。

依赖项

~39–77MB
~1.5M SLoC