Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- fn make_mesh(world: &mut World) -> Handle<Mesh>
- {
- use amethyst::renderer::rendy::mesh::{MeshBuilder, Position, Normal, TexCoord, Tangent};
- use amethyst::renderer::types::MeshData;
- let loader = world.read_resource::<Loader>();
- let verts = vec![
- Position([-1.0, -1.0, 0.0]),
- Position([ 1.0, -1.0, 0.0]),
- Position([ 1.0, 1.0, 0.0]),
- Position([-1.0, 1.0, 0.0]),
- ];
- // speculative
- let norms = vec![
- Normal([0.0, 0.0, 0.0]),
- Normal([0.0, 0.0, 0.0]),
- Normal([0.0, 0.0, 0.0]),
- Normal([0.0, 0.0, 0.0]),
- ];
- // I really don't know what these are meant to do
- let tans = vec![
- // I hope it's [w, x, y, z], because the docs say that w should always be 1 or -1
- Tangent([1.0, 0.0, 0.0, 0.0]),
- Tangent([1.0, 0.0, 0.0, 0.0]),
- Tangent([1.0, 0.0, 0.0, 0.0]),
- Tangent([1.0, 0.0, 0.0, 0.0]),
- ];
- let tex = vec![
- TexCoord([0.0, 0.0]),
- TexCoord([1.0, 0.0]),
- TexCoord([1.0, 1.0]),
- TexCoord([0.0, 1.0]),
- ];
- let mesh_store = &world.read_resource();
- let m = MeshBuilder::new()
- .with_vertices(verts)
- .with_vertices(norms)
- .with_vertices(tans)
- .with_vertices(tex);
- loader.load_from_data(MeshData::from(m), (), mesh_store)
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement