Crates.io | bevy_points |
lib.rs | bevy_points |
version | |
source | src |
created_at | 2022-11-21 06:25:35.131148+00 |
updated_at | 2025-05-08 01:04:43.63892+00 |
description | Points mesh plugin for Bevy |
homepage | https://github.com/mattatz/bevy_points |
repository | https://github.com/mattatz/bevy_points |
max_upload_size | |
id | 719769 |
Cargo.toml error: | TOML parse error at line 18, column 1 | 18 | autolib = false | ^^^^^^^ unknown field `autolib`, expected one of `name`, `version`, `edition`, `authors`, `description`, `readme`, `license`, `repository`, `homepage`, `documentation`, `build`, `resolver`, `links`, `default-run`, `default_dash_run`, `rust-version`, `rust_dash_version`, `rust_version`, `license-file`, `license_dash_file`, `license_file`, `licenseFile`, `license_capital_file`, `forced-target`, `forced_dash_target`, `autobins`, `autotests`, `autoexamples`, `autobenches`, `publish`, `metadata`, `keywords`, `categories`, `exclude`, `include` |
size | 0 |
Points mesh plugin for Bevy.
Add the plugin to your app:
use bevy::prelude::*;
use bevy_points::prelude::*;
fn main() {
App::new()
.add_plugin(PointsPlugin);
}
fn setup(
mut commands: Commands,
mut meshes: ResMut<Assets<Mesh>>,
mut materials: ResMut<Assets<PointsMaterial>>,
) {
let n = 320; // # of points
let h = 3.0; // spiral height
commands.spawn((
Mesh3d(meshes.add(
PointsMesh::from_iter((0..n).map(|i| {
let t01 = (i as f32) / ((n - 1) as f32);
let r = t01 * TAU * 4.0; // spiral fineness
Vec3::new(r.cos(), (t01 - 0.5) * h, r.sin())
})),
)),
MeshMaterial3d(materials.add(PointsMaterial {
settings: PointsShaderSettings {
point_size: 20., // Defines the size of the points.
..Default::default()
},
perspective: true, // Specify whether points' size is attenuated by the camera depth.
circle: true, // Specify whether the shape of points is circular or rectangular.
..Default::default()
})),
));
commands.spawn((
Mesh3d(meshes.add(
// Mesh can be converted to PointsMesh & vice versa.
PointsMesh::from(Mesh::from(Sphere {
radius: 1.0
}))
)),
MeshMaterial3d(materials.add(PointsMaterial {
settings: PointsShaderSettings {
color: Color::BLUE,
opacity: 0.5,
..Default::default()
},
alpha_mode: AlphaMode::Blend,
..Default::default()
})),
));
}
bevy | bevy_points |
---|---|
0.9 | 0.1 |
0.10 | 0.2 |
0.11 | 0.3 |
0.12 | 0.4 |
0.13 | 0.5 |
0.14 | 0.6 |
0.15 | 0.7 |
0.16 | 0.8 |