diff --git a/engine/physics/src/model.rs b/engine/physics/src/model.rs index f5c752d..4367d0b 100644 --- a/engine/physics/src/model.rs +++ b/engine/physics/src/model.rs @@ -215,42 +215,19 @@ impl PhysicsMesh{ } } pub fn unit_cylinder()->Self{ - const N:usize=24; - let mut mb=model::MeshBuilder::new(); - let color=mb.acquire_color_id(model::Color4::ONE); - let tex=mb.acquire_tex_id(model::TextureCoordinate::ZERO); - let normal=mb.acquire_normal_id(vec3::ZERO); - let mut verts=Vec::with_capacity(2*N); - for i in 0..N{ - let (x,z)=integer::Angle32::raw((integer::Angle32::PI.get() as usize*i/N) as i32).cos_sin(); - //top - let pos=mb.acquire_pos_id(Planar64Vec3::new([x,Planar64::ONE,z])); - verts.push(mb.acquire_vertex_id(model::IndexedVertex{pos,color,tex,normal})); - //bottom - let pos=mb.acquire_pos_id(Planar64Vec3::new([x,Planar64::NEG_ONE,z])); - verts.push(mb.acquire_vertex_id(model::IndexedVertex{pos,color,tex,normal})); + PhysicsMesh{ + data:PhysicsMeshData{ + faces:vec![Face{normal:Planar64Vec3::new([Planar64::raw(-3407426649),Planar64::raw(0),Planar64::raw(6909577726)]),dot:Planar64::raw(-3407426649)},Face{normal:Planar64Vec3::new([Planar64::raw(370426150),Planar64::raw(0),Planar64::raw(422390069)]),dot:Planar64::raw(-560605725)},Face{normal:Planar64Vec3::new([Planar64::raw(422390074),Planar64::raw(0),Planar64::raw(370426154)]),dot:Planar64::raw(-560605731)},Face{normal:Planar64Vec3::new([Planar64::raw(467126779),Planar64::raw(0),Planar64::raw(312124134)]),dot:Planar64::raw(-560605725)},Face{normal:Planar64Vec3::new([Planar64::raw(503870820),Planar64::raw(0),Planar64::raw(248481590)]),dot:Planar64::raw(-560605726)},Face{normal:Planar64Vec3::new([Planar64::raw(531993496),Planar64::raw(0),Planar64::raw(180587458)]),dot:Planar64::raw(-560605731)},Face{normal:Planar64Vec3::new([Planar64::raw(551013606),Planar64::raw(0),Planar64::raw(109603420)]),dot:Planar64::raw(-560605726)},Face{normal:Planar64Vec3::new([Planar64::raw(560605724),Planar64::raw(0),Planar64::raw(36744041)]),dot:Planar64::raw(-560605724)},Face{normal:Planar64Vec3::new([Planar64::raw(560605731),Planar64::raw(0),Planar64::raw(-36744042)]),dot:Planar64::raw(-560605731)},Face{normal:Planar64Vec3::new([Planar64::raw(551013605),Planar64::raw(0),Planar64::raw(-109603421)]),dot:Planar64::raw(-560605725)},Face{normal:Planar64Vec3::new([Planar64::raw(531993490),Planar64::raw(0),Planar64::raw(-180587456)]),dot:Planar64::raw(-560605725)},Face{normal:Planar64Vec3::new([Planar64::raw(-1643612826),Planar64::raw(0),Planar64::raw(-8262999673)]),dot:Planar64::raw(-1643612826)},Face{normal:Planar64Vec3::new([Planar64::raw(-4481168475),Planar64::raw(-2453283389),Planar64::raw(2902318686)]),dot:Planar64::raw(425398302)},Face{normal:Planar64Vec3::new([Planar64::raw(-2640592390),Planar64::raw(-130965421),Planar64::raw(25981959)]),dot:Planar64::raw(1848808764)},Face{normal:Planar64Vec3::new([Planar64::raw(-2614610425),Planar64::raw(-130965423),Planar64::raw(370426154)]),dot:Planar64::raw(1848808761)},Face{normal:Planar64Vec3::new([Planar64::raw(-2543891760),Planar64::raw(-130965421),Planar64::raw(708532248)]),dot:Planar64::raw(1848808765)},Face{normal:Planar64Vec3::new([Planar64::raw(-2429646397),Planar64::raw(-130965422),Planar64::raw(1034515160)]),dot:Planar64::raw(1848808764)},Face{normal:Planar64Vec3::new([Planar64::raw(-2273829106),Planar64::raw(-130965423),Planar64::raw(1342797233)]),dot:Planar64::raw(1848808761)},Face{normal:Planar64Vec3::new([Planar64::raw(-2079105977),Planar64::raw(-130965422),Planar64::raw(1628103672)]),dot:Planar64::raw(1848808764)},Face{normal:Planar64Vec3::new([Planar64::raw(-1848808766),Planar64::raw(-130965422),Planar64::raw(1885552806)]),dot:Planar64::raw(1848808765)},Face{normal:Planar64Vec3::new([Planar64::raw(-1586877917),Planar64::raw(-130965423),Planar64::raw(2110739606)]),dot:Planar64::raw(1848808761)},Face{normal:Planar64Vec3::new([Planar64::raw(-1297795157),Planar64::raw(-130965422),Planar64::raw(2299811071)]),dot:Planar64::raw(1848808764)},Face{normal:Planar64Vec3::new([Planar64::raw(-986506759),Planar64::raw(-130965421),Planar64::raw(2449532128)]),dot:Planar64::raw(1848808764)},Face{normal:Planar64Vec3::new([Planar64::raw(-2805822602),Planar64::raw(1654846711),Planar64::raw(-5457177072)]),dot:Planar64::raw(-2805822602)},Face{normal:Planar64Vec3::new([Planar64::raw(0),Planar64::raw(821199375),Planar64::raw(0)]),dot:Planar64::raw(821199375)},Face{normal:Planar64Vec3::new([Planar64::raw(0),Planar64::raw(821199375),Planar64::raw(0)]),dot:Planar64::raw(-821199376)}], + verts:vec![Vert(Planar64Vec3::new([Planar64::raw(4294967296),Planar64::raw(4294967296),Planar64::raw(0)])),Vert(Planar64Vec3::new([Planar64::raw(4294967296),Planar64::raw(-4294967296),Planar64::raw(0)])),Vert(Planar64Vec3::new([Planar64::raw(-2614610430),Planar64::raw(4294967296),Planar64::raw(-3407426649)])),Vert(Planar64Vec3::new([Planar64::raw(-2614610430),Planar64::raw(-4294967296),Planar64::raw(-3407426649)])),Vert(Planar64Vec3::new([Planar64::raw(-3037000499),Planar64::raw(4294967296),Planar64::raw(-3037000499)])),Vert(Planar64Vec3::new([Planar64::raw(-3037000499),Planar64::raw(-4294967296),Planar64::raw(-3037000499)])),Vert(Planar64Vec3::new([Planar64::raw(-3407426653),Planar64::raw(4294967296),Planar64::raw(-2614610425)])),Vert(Planar64Vec3::new([Planar64::raw(-3407426653),Planar64::raw(-4294967296),Planar64::raw(-2614610425)])),Vert(Planar64Vec3::new([Planar64::raw(-3719550787),Planar64::raw(4294967296),Planar64::raw(-2147483646)])),Vert(Planar64Vec3::new([Planar64::raw(-3719550787),Planar64::raw(-4294967296),Planar64::raw(-2147483646)])),Vert(Planar64Vec3::new([Planar64::raw(-3968032377),Planar64::raw(4294967296),Planar64::raw(-1643612826)])),Vert(Planar64Vec3::new([Planar64::raw(-3968032377),Planar64::raw(-4294967296),Planar64::raw(-1643612826)])),Vert(Planar64Vec3::new([Planar64::raw(-4148619835),Planar64::raw(4294967296),Planar64::raw(-1111619330)])),Vert(Planar64Vec3::new([Planar64::raw(-4148619835),Planar64::raw(-4294967296),Planar64::raw(-1111619330)])),Vert(Planar64Vec3::new([Planar64::raw(-4258223255),Planar64::raw(4294967296),Planar64::raw(-560605724)])),Vert(Planar64Vec3::new([Planar64::raw(-4258223255),Planar64::raw(-4294967296),Planar64::raw(-560605724)])),Vert(Planar64Vec3::new([Planar64::raw(-4294967296),Planar64::raw(4294967296),Planar64::raw(0)])),Vert(Planar64Vec3::new([Planar64::raw(-4294967296),Planar64::raw(-4294967296),Planar64::raw(0)])),Vert(Planar64Vec3::new([Planar64::raw(-4258223254),Planar64::raw(4294967296),Planar64::raw(560605731)])),Vert(Planar64Vec3::new([Planar64::raw(-4258223254),Planar64::raw(-4294967296),Planar64::raw(560605731)])),Vert(Planar64Vec3::new([Planar64::raw(-4148619833),Planar64::raw(4294967296),Planar64::raw(1111619336)])),Vert(Planar64Vec3::new([Planar64::raw(-4148619833),Planar64::raw(-4294967296),Planar64::raw(1111619336)])),Vert(Planar64Vec3::new([Planar64::raw(-3968032377),Planar64::raw(4294967296),Planar64::raw(1643612826)])),Vert(Planar64Vec3::new([Planar64::raw(-3968032377),Planar64::raw(-4294967296),Planar64::raw(1643612826)])),Vert(Planar64Vec3::new([Planar64::raw(-3719550784),Planar64::raw(4294967296),Planar64::raw(2147483651)])),Vert(Planar64Vec3::new([Planar64::raw(-3719550784),Planar64::raw(-4294967296),Planar64::raw(2147483651)])),Vert(Planar64Vec3::new([Planar64::raw(-3407426649),Planar64::raw(4294967296),Planar64::raw(2614610430)])),Vert(Planar64Vec3::new([Planar64::raw(-3407426649),Planar64::raw(-4294967296),Planar64::raw(2614610430)])),Vert(Planar64Vec3::new([Planar64::raw(-3037000499),Planar64::raw(4294967296),Planar64::raw(3037000499)])),Vert(Planar64Vec3::new([Planar64::raw(-3037000499),Planar64::raw(-4294967296),Planar64::raw(3037000499)])),Vert(Planar64Vec3::new([Planar64::raw(-2614610425),Planar64::raw(4294967296),Planar64::raw(3407426653)])),Vert(Planar64Vec3::new([Planar64::raw(-2614610425),Planar64::raw(-4294967296),Planar64::raw(3407426653)])),Vert(Planar64Vec3::new([Planar64::raw(-2147483646),Planar64::raw(4294967296),Planar64::raw(3719550787)])),Vert(Planar64Vec3::new([Planar64::raw(-2147483646),Planar64::raw(-4294967296),Planar64::raw(3719550787)])),Vert(Planar64Vec3::new([Planar64::raw(-1643612826),Planar64::raw(4294967296),Planar64::raw(3968032377)])),Vert(Planar64Vec3::new([Planar64::raw(-1643612826),Planar64::raw(-4294967296),Planar64::raw(3968032377)])),Vert(Planar64Vec3::new([Planar64::raw(-1111619330),Planar64::raw(4294967296),Planar64::raw(4148619835)])),Vert(Planar64Vec3::new([Planar64::raw(-1111619330),Planar64::raw(-4294967296),Planar64::raw(4148619835)])),Vert(Planar64Vec3::new([Planar64::raw(-560605724),Planar64::raw(4294967296),Planar64::raw(4258223255)])),Vert(Planar64Vec3::new([Planar64::raw(-560605724),Planar64::raw(-4294967296),Planar64::raw(4258223255)])),Vert(Planar64Vec3::new([Planar64::raw(0),Planar64::raw(4294967296),Planar64::raw(4294967296)])),Vert(Planar64Vec3::new([Planar64::raw(0),Planar64::raw(-4294967296),Planar64::raw(4294967296)])),Vert(Planar64Vec3::new([Planar64::raw(560605731),Planar64::raw(4294967296),Planar64::raw(4258223254)])),Vert(Planar64Vec3::new([Planar64::raw(560605731),Planar64::raw(-4294967296),Planar64::raw(4258223254)])),Vert(Planar64Vec3::new([Planar64::raw(1111619336),Planar64::raw(4294967296),Planar64::raw(4148619833)])),Vert(Planar64Vec3::new([Planar64::raw(1111619336),Planar64::raw(-4294967296),Planar64::raw(4148619833)])),Vert(Planar64Vec3::new([Planar64::raw(1643612826),Planar64::raw(4294967296),Planar64::raw(3968032377)])),Vert(Planar64Vec3::new([Planar64::raw(1643612826),Planar64::raw(-4294967296),Planar64::raw(3968032377)]))] + }, + complete_mesh:PhysicsMeshTopology{ + faces:vec![MeshFaceId(0),MeshFaceId(1),MeshFaceId(2),MeshFaceId(3),MeshFaceId(4),MeshFaceId(5),MeshFaceId(6),MeshFaceId(7),MeshFaceId(8),MeshFaceId(9),MeshFaceId(10),MeshFaceId(11),MeshFaceId(12),MeshFaceId(13),MeshFaceId(14),MeshFaceId(15),MeshFaceId(16),MeshFaceId(17),MeshFaceId(18),MeshFaceId(19),MeshFaceId(20),MeshFaceId(21),MeshFaceId(22),MeshFaceId(23),MeshFaceId(24),MeshFaceId(25)], + verts:vec![MeshVertId(0),MeshVertId(2),MeshVertId(3),MeshVertId(1),MeshVertId(4),MeshVertId(5),MeshVertId(6),MeshVertId(7),MeshVertId(8),MeshVertId(9),MeshVertId(10),MeshVertId(11),MeshVertId(12),MeshVertId(13),MeshVertId(14),MeshVertId(15),MeshVertId(16),MeshVertId(17),MeshVertId(18),MeshVertId(19),MeshVertId(20),MeshVertId(21),MeshVertId(22),MeshVertId(23),MeshVertId(24),MeshVertId(26),MeshVertId(28),MeshVertId(30),MeshVertId(32),MeshVertId(34),MeshVertId(36),MeshVertId(38),MeshVertId(40),MeshVertId(42),MeshVertId(44),MeshVertId(46),MeshVertId(25),MeshVertId(27),MeshVertId(29),MeshVertId(31),MeshVertId(33),MeshVertId(35),MeshVertId(37),MeshVertId(39),MeshVertId(41),MeshVertId(43),MeshVertId(45),MeshVertId(47)], + face_topology:vec![FaceRefs{edges:vec![SubmeshDirectedEdgeId(2147483648),SubmeshDirectedEdgeId(2147483649),SubmeshDirectedEdgeId(2147483650),SubmeshDirectedEdgeId(3)]},FaceRefs{edges:vec![SubmeshDirectedEdgeId(2147483652),SubmeshDirectedEdgeId(2147483653),SubmeshDirectedEdgeId(6),SubmeshDirectedEdgeId(1)]},FaceRefs{edges:vec![SubmeshDirectedEdgeId(2147483655),SubmeshDirectedEdgeId(2147483656),SubmeshDirectedEdgeId(9),SubmeshDirectedEdgeId(5)]},FaceRefs{edges:vec![SubmeshDirectedEdgeId(2147483658),SubmeshDirectedEdgeId(2147483659),SubmeshDirectedEdgeId(12),SubmeshDirectedEdgeId(8)]},FaceRefs{edges:vec![SubmeshDirectedEdgeId(2147483661),SubmeshDirectedEdgeId(2147483662),SubmeshDirectedEdgeId(15),SubmeshDirectedEdgeId(11)]},FaceRefs{edges:vec![SubmeshDirectedEdgeId(2147483664),SubmeshDirectedEdgeId(2147483665),SubmeshDirectedEdgeId(18),SubmeshDirectedEdgeId(14)]},FaceRefs{edges:vec![SubmeshDirectedEdgeId(2147483667),SubmeshDirectedEdgeId(2147483668),SubmeshDirectedEdgeId(21),SubmeshDirectedEdgeId(17)]},FaceRefs{edges:vec![SubmeshDirectedEdgeId(2147483670),SubmeshDirectedEdgeId(2147483671),SubmeshDirectedEdgeId(24),SubmeshDirectedEdgeId(20)]},FaceRefs{edges:vec![SubmeshDirectedEdgeId(2147483673),SubmeshDirectedEdgeId(2147483674),SubmeshDirectedEdgeId(27),SubmeshDirectedEdgeId(23)]},FaceRefs{edges:vec![SubmeshDirectedEdgeId(2147483676),SubmeshDirectedEdgeId(2147483677),SubmeshDirectedEdgeId(30),SubmeshDirectedEdgeId(26)]},FaceRefs{edges:vec![SubmeshDirectedEdgeId(2147483679),SubmeshDirectedEdgeId(2147483680),SubmeshDirectedEdgeId(33),SubmeshDirectedEdgeId(29)]},FaceRefs{edges:vec![SubmeshDirectedEdgeId(34),SubmeshDirectedEdgeId(2147483651),SubmeshDirectedEdgeId(2147483683),SubmeshDirectedEdgeId(32)]},FaceRefs{edges:vec![SubmeshDirectedEdgeId(36),SubmeshDirectedEdgeId(2147483649),SubmeshDirectedEdgeId(2147483650),SubmeshDirectedEdgeId(2147483685)]},FaceRefs{edges:vec![SubmeshDirectedEdgeId(38),SubmeshDirectedEdgeId(2147483653),SubmeshDirectedEdgeId(6),SubmeshDirectedEdgeId(2147483687)]},FaceRefs{edges:vec![SubmeshDirectedEdgeId(40),SubmeshDirectedEdgeId(2147483656),SubmeshDirectedEdgeId(9),SubmeshDirectedEdgeId(2147483689)]},FaceRefs{edges:vec![SubmeshDirectedEdgeId(42),SubmeshDirectedEdgeId(2147483659),SubmeshDirectedEdgeId(12),SubmeshDirectedEdgeId(2147483691)]},FaceRefs{edges:vec![SubmeshDirectedEdgeId(44),SubmeshDirectedEdgeId(2147483662),SubmeshDirectedEdgeId(15),SubmeshDirectedEdgeId(2147483693)]},FaceRefs{edges:vec![SubmeshDirectedEdgeId(46),SubmeshDirectedEdgeId(2147483665),SubmeshDirectedEdgeId(18),SubmeshDirectedEdgeId(2147483695)]},FaceRefs{edges:vec![SubmeshDirectedEdgeId(48),SubmeshDirectedEdgeId(2147483668),SubmeshDirectedEdgeId(21),SubmeshDirectedEdgeId(2147483697)]},FaceRefs{edges:vec![SubmeshDirectedEdgeId(50),SubmeshDirectedEdgeId(2147483671),SubmeshDirectedEdgeId(24),SubmeshDirectedEdgeId(2147483699)]},FaceRefs{edges:vec![SubmeshDirectedEdgeId(52),SubmeshDirectedEdgeId(2147483674),SubmeshDirectedEdgeId(27),SubmeshDirectedEdgeId(2147483701)]},FaceRefs{edges:vec![SubmeshDirectedEdgeId(54),SubmeshDirectedEdgeId(2147483677),SubmeshDirectedEdgeId(30),SubmeshDirectedEdgeId(2147483703)]},FaceRefs{edges:vec![SubmeshDirectedEdgeId(56),SubmeshDirectedEdgeId(2147483680),SubmeshDirectedEdgeId(33),SubmeshDirectedEdgeId(2147483705)]},FaceRefs{edges:vec![SubmeshDirectedEdgeId(58),SubmeshDirectedEdgeId(2147483651),SubmeshDirectedEdgeId(2147483683),SubmeshDirectedEdgeId(2147483707)]},FaceRefs{edges:vec![SubmeshDirectedEdgeId(2147483648),SubmeshDirectedEdgeId(2147483652),SubmeshDirectedEdgeId(2147483655),SubmeshDirectedEdgeId(2147483658),SubmeshDirectedEdgeId(2147483661),SubmeshDirectedEdgeId(2147483664),SubmeshDirectedEdgeId(2147483667),SubmeshDirectedEdgeId(2147483670),SubmeshDirectedEdgeId(2147483673),SubmeshDirectedEdgeId(2147483676),SubmeshDirectedEdgeId(2147483679),SubmeshDirectedEdgeId(2147483708),SubmeshDirectedEdgeId(2147483709),SubmeshDirectedEdgeId(2147483710),SubmeshDirectedEdgeId(2147483711),SubmeshDirectedEdgeId(2147483712),SubmeshDirectedEdgeId(2147483713),SubmeshDirectedEdgeId(2147483714),SubmeshDirectedEdgeId(2147483715),SubmeshDirectedEdgeId(2147483716),SubmeshDirectedEdgeId(2147483717),SubmeshDirectedEdgeId(2147483718),SubmeshDirectedEdgeId(2147483719),SubmeshDirectedEdgeId(58)]},FaceRefs{edges:vec![SubmeshDirectedEdgeId(2),SubmeshDirectedEdgeId(2147483654),SubmeshDirectedEdgeId(2147483657),SubmeshDirectedEdgeId(2147483660),SubmeshDirectedEdgeId(2147483663),SubmeshDirectedEdgeId(2147483666),SubmeshDirectedEdgeId(2147483669),SubmeshDirectedEdgeId(2147483672),SubmeshDirectedEdgeId(2147483675),SubmeshDirectedEdgeId(2147483678),SubmeshDirectedEdgeId(2147483681),SubmeshDirectedEdgeId(2147483720),SubmeshDirectedEdgeId(2147483721),SubmeshDirectedEdgeId(2147483722),SubmeshDirectedEdgeId(2147483723),SubmeshDirectedEdgeId(2147483724),SubmeshDirectedEdgeId(2147483725),SubmeshDirectedEdgeId(2147483726),SubmeshDirectedEdgeId(2147483727),SubmeshDirectedEdgeId(2147483728),SubmeshDirectedEdgeId(2147483729),SubmeshDirectedEdgeId(2147483730),SubmeshDirectedEdgeId(2147483731),SubmeshDirectedEdgeId(84)]}], + edge_topology:vec![EdgeRefs{faces:[SubmeshFaceId(24),SubmeshFaceId(0)],verts:[SubmeshVertId(0),SubmeshVertId(1)]},EdgeRefs{faces:[SubmeshFaceId(12),SubmeshFaceId(1)],verts:[SubmeshVertId(1),SubmeshVertId(2)]},EdgeRefs{faces:[SubmeshFaceId(12),SubmeshFaceId(25)],verts:[SubmeshVertId(2),SubmeshVertId(3)]},EdgeRefs{faces:[SubmeshFaceId(23),SubmeshFaceId(0)],verts:[SubmeshVertId(0),SubmeshVertId(3)]},EdgeRefs{faces:[SubmeshFaceId(24),SubmeshFaceId(0)],verts:[SubmeshVertId(1),SubmeshVertId(4)]},EdgeRefs{faces:[SubmeshFaceId(13),SubmeshFaceId(2)],verts:[SubmeshVertId(4),SubmeshVertId(5)]},EdgeRefs{faces:[SubmeshFaceId(25),SubmeshFaceId(13)],verts:[SubmeshVertId(2),SubmeshVertId(5)]},EdgeRefs{faces:[SubmeshFaceId(24),SubmeshFaceId(0)],verts:[SubmeshVertId(4),SubmeshVertId(6)]},EdgeRefs{faces:[SubmeshFaceId(14),SubmeshFaceId(3)],verts:[SubmeshVertId(6),SubmeshVertId(7)]},EdgeRefs{faces:[SubmeshFaceId(25),SubmeshFaceId(14)],verts:[SubmeshVertId(5),SubmeshVertId(7)]},EdgeRefs{faces:[SubmeshFaceId(24),SubmeshFaceId(0)],verts:[SubmeshVertId(6),SubmeshVertId(8)]},EdgeRefs{faces:[SubmeshFaceId(15),SubmeshFaceId(4)],verts:[SubmeshVertId(8),SubmeshVertId(9)]},EdgeRefs{faces:[SubmeshFaceId(25),SubmeshFaceId(15)],verts:[SubmeshVertId(7),SubmeshVertId(9)]},EdgeRefs{faces:[SubmeshFaceId(24),SubmeshFaceId(0)],verts:[SubmeshVertId(8),SubmeshVertId(10)]},EdgeRefs{faces:[SubmeshFaceId(16),SubmeshFaceId(5)],verts:[SubmeshVertId(10),SubmeshVertId(11)]},EdgeRefs{faces:[SubmeshFaceId(25),SubmeshFaceId(16)],verts:[SubmeshVertId(9),SubmeshVertId(11)]},EdgeRefs{faces:[SubmeshFaceId(24),SubmeshFaceId(0)],verts:[SubmeshVertId(10),SubmeshVertId(12)]},EdgeRefs{faces:[SubmeshFaceId(17),SubmeshFaceId(6)],verts:[SubmeshVertId(12),SubmeshVertId(13)]},EdgeRefs{faces:[SubmeshFaceId(25),SubmeshFaceId(17)],verts:[SubmeshVertId(11),SubmeshVertId(13)]},EdgeRefs{faces:[SubmeshFaceId(24),SubmeshFaceId(0)],verts:[SubmeshVertId(12),SubmeshVertId(14)]},EdgeRefs{faces:[SubmeshFaceId(18),SubmeshFaceId(7)],verts:[SubmeshVertId(14),SubmeshVertId(15)]},EdgeRefs{faces:[SubmeshFaceId(25),SubmeshFaceId(18)],verts:[SubmeshVertId(13),SubmeshVertId(15)]},EdgeRefs{faces:[SubmeshFaceId(24),SubmeshFaceId(0)],verts:[SubmeshVertId(14),SubmeshVertId(16)]},EdgeRefs{faces:[SubmeshFaceId(19),SubmeshFaceId(8)],verts:[SubmeshVertId(16),SubmeshVertId(17)]},EdgeRefs{faces:[SubmeshFaceId(25),SubmeshFaceId(19)],verts:[SubmeshVertId(15),SubmeshVertId(17)]},EdgeRefs{faces:[SubmeshFaceId(24),SubmeshFaceId(0)],verts:[SubmeshVertId(16),SubmeshVertId(18)]},EdgeRefs{faces:[SubmeshFaceId(20),SubmeshFaceId(9)],verts:[SubmeshVertId(18),SubmeshVertId(19)]},EdgeRefs{faces:[SubmeshFaceId(25),SubmeshFaceId(20)],verts:[SubmeshVertId(17),SubmeshVertId(19)]},EdgeRefs{faces:[SubmeshFaceId(24),SubmeshFaceId(0)],verts:[SubmeshVertId(18),SubmeshVertId(20)]},EdgeRefs{faces:[SubmeshFaceId(21),SubmeshFaceId(10)],verts:[SubmeshVertId(20),SubmeshVertId(21)]},EdgeRefs{faces:[SubmeshFaceId(25),SubmeshFaceId(21)],verts:[SubmeshVertId(19),SubmeshVertId(21)]},EdgeRefs{faces:[SubmeshFaceId(24),SubmeshFaceId(0)],verts:[SubmeshVertId(20),SubmeshVertId(22)]},EdgeRefs{faces:[SubmeshFaceId(22),SubmeshFaceId(11)],verts:[SubmeshVertId(22),SubmeshVertId(23)]},EdgeRefs{faces:[SubmeshFaceId(25),SubmeshFaceId(22)],verts:[SubmeshVertId(21),SubmeshVertId(23)]},EdgeRefs{faces:[SubmeshFaceId(0),SubmeshFaceId(11)],verts:[SubmeshVertId(0),SubmeshVertId(22)]},EdgeRefs{faces:[SubmeshFaceId(23),SubmeshFaceId(0)],verts:[SubmeshVertId(3),SubmeshVertId(23)]},EdgeRefs{faces:[SubmeshFaceId(0),SubmeshFaceId(12)],verts:[SubmeshVertId(1),SubmeshVertId(24)]},EdgeRefs{faces:[SubmeshFaceId(12),SubmeshFaceId(0)],verts:[SubmeshVertId(3),SubmeshVertId(24)]},EdgeRefs{faces:[SubmeshFaceId(0),SubmeshFaceId(13)],verts:[SubmeshVertId(4),SubmeshVertId(25)]},EdgeRefs{faces:[SubmeshFaceId(13),SubmeshFaceId(0)],verts:[SubmeshVertId(2),SubmeshVertId(25)]},EdgeRefs{faces:[SubmeshFaceId(0),SubmeshFaceId(14)],verts:[SubmeshVertId(6),SubmeshVertId(26)]},EdgeRefs{faces:[SubmeshFaceId(14),SubmeshFaceId(0)],verts:[SubmeshVertId(5),SubmeshVertId(26)]},EdgeRefs{faces:[SubmeshFaceId(0),SubmeshFaceId(15)],verts:[SubmeshVertId(8),SubmeshVertId(27)]},EdgeRefs{faces:[SubmeshFaceId(15),SubmeshFaceId(0)],verts:[SubmeshVertId(7),SubmeshVertId(27)]},EdgeRefs{faces:[SubmeshFaceId(0),SubmeshFaceId(16)],verts:[SubmeshVertId(10),SubmeshVertId(28)]},EdgeRefs{faces:[SubmeshFaceId(16),SubmeshFaceId(0)],verts:[SubmeshVertId(9),SubmeshVertId(28)]},EdgeRefs{faces:[SubmeshFaceId(0),SubmeshFaceId(17)],verts:[SubmeshVertId(12),SubmeshVertId(29)]},EdgeRefs{faces:[SubmeshFaceId(17),SubmeshFaceId(0)],verts:[SubmeshVertId(11),SubmeshVertId(29)]},EdgeRefs{faces:[SubmeshFaceId(0),SubmeshFaceId(18)],verts:[SubmeshVertId(14),SubmeshVertId(30)]},EdgeRefs{faces:[SubmeshFaceId(18),SubmeshFaceId(0)],verts:[SubmeshVertId(13),SubmeshVertId(30)]},EdgeRefs{faces:[SubmeshFaceId(0),SubmeshFaceId(19)],verts:[SubmeshVertId(16),SubmeshVertId(31)]},EdgeRefs{faces:[SubmeshFaceId(19),SubmeshFaceId(0)],verts:[SubmeshVertId(15),SubmeshVertId(31)]},EdgeRefs{faces:[SubmeshFaceId(0),SubmeshFaceId(20)],verts:[SubmeshVertId(18),SubmeshVertId(32)]},EdgeRefs{faces:[SubmeshFaceId(20),SubmeshFaceId(0)],verts:[SubmeshVertId(17),SubmeshVertId(32)]},EdgeRefs{faces:[SubmeshFaceId(0),SubmeshFaceId(21)],verts:[SubmeshVertId(20),SubmeshVertId(33)]},EdgeRefs{faces:[SubmeshFaceId(21),SubmeshFaceId(0)],verts:[SubmeshVertId(19),SubmeshVertId(33)]},EdgeRefs{faces:[SubmeshFaceId(0),SubmeshFaceId(22)],verts:[SubmeshVertId(22),SubmeshVertId(34)]},EdgeRefs{faces:[SubmeshFaceId(22),SubmeshFaceId(0)],verts:[SubmeshVertId(21),SubmeshVertId(34)]},EdgeRefs{faces:[SubmeshFaceId(0),SubmeshFaceId(24)],verts:[SubmeshVertId(0),SubmeshVertId(35)]},EdgeRefs{faces:[SubmeshFaceId(23),SubmeshFaceId(0)],verts:[SubmeshVertId(23),SubmeshVertId(35)]},EdgeRefs{faces:[SubmeshFaceId(24),SubmeshFaceId(0)],verts:[SubmeshVertId(22),SubmeshVertId(24)]},EdgeRefs{faces:[SubmeshFaceId(24),SubmeshFaceId(0)],verts:[SubmeshVertId(24),SubmeshVertId(25)]},EdgeRefs{faces:[SubmeshFaceId(24),SubmeshFaceId(0)],verts:[SubmeshVertId(25),SubmeshVertId(26)]},EdgeRefs{faces:[SubmeshFaceId(24),SubmeshFaceId(0)],verts:[SubmeshVertId(26),SubmeshVertId(27)]},EdgeRefs{faces:[SubmeshFaceId(24),SubmeshFaceId(0)],verts:[SubmeshVertId(27),SubmeshVertId(28)]},EdgeRefs{faces:[SubmeshFaceId(24),SubmeshFaceId(0)],verts:[SubmeshVertId(28),SubmeshVertId(29)]},EdgeRefs{faces:[SubmeshFaceId(24),SubmeshFaceId(0)],verts:[SubmeshVertId(29),SubmeshVertId(30)]},EdgeRefs{faces:[SubmeshFaceId(24),SubmeshFaceId(0)],verts:[SubmeshVertId(30),SubmeshVertId(31)]},EdgeRefs{faces:[SubmeshFaceId(24),SubmeshFaceId(0)],verts:[SubmeshVertId(31),SubmeshVertId(32)]},EdgeRefs{faces:[SubmeshFaceId(24),SubmeshFaceId(0)],verts:[SubmeshVertId(32),SubmeshVertId(33)]},EdgeRefs{faces:[SubmeshFaceId(24),SubmeshFaceId(0)],verts:[SubmeshVertId(33),SubmeshVertId(34)]},EdgeRefs{faces:[SubmeshFaceId(24),SubmeshFaceId(0)],verts:[SubmeshVertId(34),SubmeshVertId(35)]},EdgeRefs{faces:[SubmeshFaceId(25),SubmeshFaceId(0)],verts:[SubmeshVertId(23),SubmeshVertId(36)]},EdgeRefs{faces:[SubmeshFaceId(25),SubmeshFaceId(0)],verts:[SubmeshVertId(36),SubmeshVertId(37)]},EdgeRefs{faces:[SubmeshFaceId(25),SubmeshFaceId(0)],verts:[SubmeshVertId(37),SubmeshVertId(38)]},EdgeRefs{faces:[SubmeshFaceId(25),SubmeshFaceId(0)],verts:[SubmeshVertId(38),SubmeshVertId(39)]},EdgeRefs{faces:[SubmeshFaceId(25),SubmeshFaceId(0)],verts:[SubmeshVertId(39),SubmeshVertId(40)]},EdgeRefs{faces:[SubmeshFaceId(25),SubmeshFaceId(0)],verts:[SubmeshVertId(40),SubmeshVertId(41)]},EdgeRefs{faces:[SubmeshFaceId(25),SubmeshFaceId(0)],verts:[SubmeshVertId(41),SubmeshVertId(42)]},EdgeRefs{faces:[SubmeshFaceId(25),SubmeshFaceId(0)],verts:[SubmeshVertId(42),SubmeshVertId(43)]},EdgeRefs{faces:[SubmeshFaceId(25),SubmeshFaceId(0)],verts:[SubmeshVertId(43),SubmeshVertId(44)]},EdgeRefs{faces:[SubmeshFaceId(25),SubmeshFaceId(0)],verts:[SubmeshVertId(44),SubmeshVertId(45)]},EdgeRefs{faces:[SubmeshFaceId(25),SubmeshFaceId(0)],verts:[SubmeshVertId(45),SubmeshVertId(46)]},EdgeRefs{faces:[SubmeshFaceId(25),SubmeshFaceId(0)],verts:[SubmeshVertId(46),SubmeshVertId(47)]},EdgeRefs{faces:[SubmeshFaceId(0),SubmeshFaceId(25)],verts:[SubmeshVertId(3),SubmeshVertId(47)]}], + vert_topology:vec![VertRefs{faces:vec![SubmeshFaceId(23),SubmeshFaceId(0),SubmeshFaceId(11),SubmeshFaceId(24)],edges:vec![SubmeshDirectedEdgeId(2147483648),SubmeshDirectedEdgeId(2147483651),SubmeshDirectedEdgeId(2147483706),SubmeshDirectedEdgeId(2147483682)]},VertRefs{faces:vec![SubmeshFaceId(1),SubmeshFaceId(12),SubmeshFaceId(0),SubmeshFaceId(24)],edges:vec![SubmeshDirectedEdgeId(0),SubmeshDirectedEdgeId(2147483652),SubmeshDirectedEdgeId(2147483684),SubmeshDirectedEdgeId(2147483649)]},VertRefs{faces:vec![SubmeshFaceId(1),SubmeshFaceId(12),SubmeshFaceId(0),SubmeshFaceId(25),SubmeshFaceId(13)],edges:vec![SubmeshDirectedEdgeId(2147483650),SubmeshDirectedEdgeId(1),SubmeshDirectedEdgeId(2147483687),SubmeshDirectedEdgeId(2147483654)]},VertRefs{faces:vec![SubmeshFaceId(25),SubmeshFaceId(12),SubmeshFaceId(0),SubmeshFaceId(11),SubmeshFaceId(23)],edges:vec![SubmeshDirectedEdgeId(2147483685),SubmeshDirectedEdgeId(3),SubmeshDirectedEdgeId(2),SubmeshDirectedEdgeId(2147483683),SubmeshDirectedEdgeId(2147483732)]},VertRefs{faces:vec![SubmeshFaceId(1),SubmeshFaceId(2),SubmeshFaceId(13),SubmeshFaceId(24)],edges:vec![SubmeshDirectedEdgeId(2147483686),SubmeshDirectedEdgeId(2147483655),SubmeshDirectedEdgeId(2147483653),SubmeshDirectedEdgeId(4)]},VertRefs{faces:vec![SubmeshFaceId(1),SubmeshFaceId(2),SubmeshFaceId(25),SubmeshFaceId(13),SubmeshFaceId(14)],edges:vec![SubmeshDirectedEdgeId(5),SubmeshDirectedEdgeId(6),SubmeshDirectedEdgeId(2147483657),SubmeshDirectedEdgeId(2147483689)]},VertRefs{faces:vec![SubmeshFaceId(2),SubmeshFaceId(3),SubmeshFaceId(14),SubmeshFaceId(24)],edges:vec![SubmeshDirectedEdgeId(2147483658),SubmeshDirectedEdgeId(2147483688),SubmeshDirectedEdgeId(2147483656),SubmeshDirectedEdgeId(7)]},VertRefs{faces:vec![SubmeshFaceId(2),SubmeshFaceId(3),SubmeshFaceId(25),SubmeshFaceId(14),SubmeshFaceId(15)],edges:vec![SubmeshDirectedEdgeId(2147483691),SubmeshDirectedEdgeId(2147483660),SubmeshDirectedEdgeId(9),SubmeshDirectedEdgeId(8)]},VertRefs{faces:vec![SubmeshFaceId(3),SubmeshFaceId(4),SubmeshFaceId(15),SubmeshFaceId(24)],edges:vec![SubmeshDirectedEdgeId(2147483690),SubmeshDirectedEdgeId(10),SubmeshDirectedEdgeId(2147483661),SubmeshDirectedEdgeId(2147483659)]},VertRefs{faces:vec![SubmeshFaceId(25),SubmeshFaceId(3),SubmeshFaceId(16),SubmeshFaceId(4),SubmeshFaceId(15)],edges:vec![SubmeshDirectedEdgeId(11),SubmeshDirectedEdgeId(2147483693),SubmeshDirectedEdgeId(2147483663),SubmeshDirectedEdgeId(12)]},VertRefs{faces:vec![SubmeshFaceId(16),SubmeshFaceId(5),SubmeshFaceId(4),SubmeshFaceId(24)],edges:vec![SubmeshDirectedEdgeId(2147483664),SubmeshDirectedEdgeId(2147483662),SubmeshDirectedEdgeId(13),SubmeshDirectedEdgeId(2147483692)]},VertRefs{faces:vec![SubmeshFaceId(17),SubmeshFaceId(16),SubmeshFaceId(25),SubmeshFaceId(5),SubmeshFaceId(4)],edges:vec![SubmeshDirectedEdgeId(2147483666),SubmeshDirectedEdgeId(14),SubmeshDirectedEdgeId(2147483695),SubmeshDirectedEdgeId(15)]},VertRefs{faces:vec![SubmeshFaceId(17),SubmeshFaceId(6),SubmeshFaceId(5),SubmeshFaceId(24)],edges:vec![SubmeshDirectedEdgeId(16),SubmeshDirectedEdgeId(2147483665),SubmeshDirectedEdgeId(2147483694),SubmeshDirectedEdgeId(2147483667)]},VertRefs{faces:vec![SubmeshFaceId(17),SubmeshFaceId(6),SubmeshFaceId(25),SubmeshFaceId(5),SubmeshFaceId(18)],edges:vec![SubmeshDirectedEdgeId(2147483669),SubmeshDirectedEdgeId(2147483697),SubmeshDirectedEdgeId(18),SubmeshDirectedEdgeId(17)]},VertRefs{faces:vec![SubmeshFaceId(6),SubmeshFaceId(18),SubmeshFaceId(7),SubmeshFaceId(24)],edges:vec![SubmeshDirectedEdgeId(2147483668),SubmeshDirectedEdgeId(19),SubmeshDirectedEdgeId(2147483696),SubmeshDirectedEdgeId(2147483670)]},VertRefs{faces:vec![SubmeshFaceId(25),SubmeshFaceId(6),SubmeshFaceId(19),SubmeshFaceId(18),SubmeshFaceId(7)],edges:vec![SubmeshDirectedEdgeId(21),SubmeshDirectedEdgeId(20),SubmeshDirectedEdgeId(2147483672),SubmeshDirectedEdgeId(2147483699)]},VertRefs{faces:vec![SubmeshFaceId(8),SubmeshFaceId(19),SubmeshFaceId(7),SubmeshFaceId(24)],edges:vec![SubmeshDirectedEdgeId(2147483671),SubmeshDirectedEdgeId(2147483673),SubmeshDirectedEdgeId(2147483698),SubmeshDirectedEdgeId(22)]},VertRefs{faces:vec![SubmeshFaceId(25),SubmeshFaceId(8),SubmeshFaceId(19),SubmeshFaceId(7),SubmeshFaceId(20)],edges:vec![SubmeshDirectedEdgeId(23),SubmeshDirectedEdgeId(24),SubmeshDirectedEdgeId(2147483701),SubmeshDirectedEdgeId(2147483675)]},VertRefs{faces:vec![SubmeshFaceId(24),SubmeshFaceId(8),SubmeshFaceId(9),SubmeshFaceId(20)],edges:vec![SubmeshDirectedEdgeId(2147483700),SubmeshDirectedEdgeId(2147483676),SubmeshDirectedEdgeId(2147483674),SubmeshDirectedEdgeId(25)]},VertRefs{faces:vec![SubmeshFaceId(25),SubmeshFaceId(8),SubmeshFaceId(9),SubmeshFaceId(21),SubmeshFaceId(20)],edges:vec![SubmeshDirectedEdgeId(2147483678),SubmeshDirectedEdgeId(26),SubmeshDirectedEdgeId(27),SubmeshDirectedEdgeId(2147483703)]},VertRefs{faces:vec![SubmeshFaceId(10),SubmeshFaceId(21),SubmeshFaceId(9),SubmeshFaceId(24)],edges:vec![SubmeshDirectedEdgeId(2147483679),SubmeshDirectedEdgeId(28),SubmeshDirectedEdgeId(2147483702),SubmeshDirectedEdgeId(2147483677)]},VertRefs{faces:vec![SubmeshFaceId(10),SubmeshFaceId(25),SubmeshFaceId(21),SubmeshFaceId(9),SubmeshFaceId(22)],edges:vec![SubmeshDirectedEdgeId(29),SubmeshDirectedEdgeId(2147483705),SubmeshDirectedEdgeId(30),SubmeshDirectedEdgeId(2147483681)]},VertRefs{faces:vec![SubmeshFaceId(10),SubmeshFaceId(11),SubmeshFaceId(22),SubmeshFaceId(24)],edges:vec![SubmeshDirectedEdgeId(31),SubmeshDirectedEdgeId(2147483680),SubmeshDirectedEdgeId(34),SubmeshDirectedEdgeId(2147483704),SubmeshDirectedEdgeId(2147483708)]},VertRefs{faces:vec![SubmeshFaceId(10),SubmeshFaceId(23),SubmeshFaceId(11),SubmeshFaceId(22),SubmeshFaceId(25)],edges:vec![SubmeshDirectedEdgeId(33),SubmeshDirectedEdgeId(2147483720),SubmeshDirectedEdgeId(2147483707),SubmeshDirectedEdgeId(32),SubmeshDirectedEdgeId(35)]},VertRefs{faces:vec![SubmeshFaceId(12),SubmeshFaceId(24)],edges:vec![SubmeshDirectedEdgeId(60),SubmeshDirectedEdgeId(36),SubmeshDirectedEdgeId(37),SubmeshDirectedEdgeId(2147483709)]},VertRefs{faces:vec![SubmeshFaceId(13),SubmeshFaceId(24)],edges:vec![SubmeshDirectedEdgeId(39),SubmeshDirectedEdgeId(38),SubmeshDirectedEdgeId(61),SubmeshDirectedEdgeId(2147483710)]},VertRefs{faces:vec![SubmeshFaceId(14),SubmeshFaceId(24)],edges:vec![SubmeshDirectedEdgeId(2147483711),SubmeshDirectedEdgeId(40),SubmeshDirectedEdgeId(62),SubmeshDirectedEdgeId(41)]},VertRefs{faces:vec![SubmeshFaceId(15),SubmeshFaceId(24)],edges:vec![SubmeshDirectedEdgeId(42),SubmeshDirectedEdgeId(43),SubmeshDirectedEdgeId(63),SubmeshDirectedEdgeId(2147483712)]},VertRefs{faces:vec![SubmeshFaceId(16),SubmeshFaceId(24)],edges:vec![SubmeshDirectedEdgeId(44),SubmeshDirectedEdgeId(45),SubmeshDirectedEdgeId(2147483713),SubmeshDirectedEdgeId(64)]},VertRefs{faces:vec![SubmeshFaceId(17),SubmeshFaceId(24)],edges:vec![SubmeshDirectedEdgeId(47),SubmeshDirectedEdgeId(46),SubmeshDirectedEdgeId(2147483714),SubmeshDirectedEdgeId(65)]},VertRefs{faces:vec![SubmeshFaceId(18),SubmeshFaceId(24)],edges:vec![SubmeshDirectedEdgeId(2147483715),SubmeshDirectedEdgeId(48),SubmeshDirectedEdgeId(66),SubmeshDirectedEdgeId(49)]},VertRefs{faces:vec![SubmeshFaceId(19),SubmeshFaceId(24)],edges:vec![SubmeshDirectedEdgeId(67),SubmeshDirectedEdgeId(50),SubmeshDirectedEdgeId(51),SubmeshDirectedEdgeId(2147483716)]},VertRefs{faces:vec![SubmeshFaceId(24),SubmeshFaceId(20)],edges:vec![SubmeshDirectedEdgeId(2147483717),SubmeshDirectedEdgeId(53),SubmeshDirectedEdgeId(52),SubmeshDirectedEdgeId(68)]},VertRefs{faces:vec![SubmeshFaceId(24),SubmeshFaceId(21)],edges:vec![SubmeshDirectedEdgeId(54),SubmeshDirectedEdgeId(69),SubmeshDirectedEdgeId(2147483718),SubmeshDirectedEdgeId(55)]},VertRefs{faces:vec![SubmeshFaceId(24),SubmeshFaceId(22)],edges:vec![SubmeshDirectedEdgeId(2147483719),SubmeshDirectedEdgeId(56),SubmeshDirectedEdgeId(70),SubmeshDirectedEdgeId(57)]},VertRefs{faces:vec![SubmeshFaceId(23),SubmeshFaceId(24)],edges:vec![SubmeshDirectedEdgeId(59),SubmeshDirectedEdgeId(71),SubmeshDirectedEdgeId(58)]},VertRefs{faces:vec![SubmeshFaceId(25)],edges:vec![SubmeshDirectedEdgeId(2147483721),SubmeshDirectedEdgeId(72)]},VertRefs{faces:vec![SubmeshFaceId(25)],edges:vec![SubmeshDirectedEdgeId(2147483722),SubmeshDirectedEdgeId(73)]},VertRefs{faces:vec![SubmeshFaceId(25)],edges:vec![SubmeshDirectedEdgeId(2147483723),SubmeshDirectedEdgeId(74)]},VertRefs{faces:vec![SubmeshFaceId(25)],edges:vec![SubmeshDirectedEdgeId(75),SubmeshDirectedEdgeId(2147483724)]},VertRefs{faces:vec![SubmeshFaceId(25)],edges:vec![SubmeshDirectedEdgeId(76),SubmeshDirectedEdgeId(2147483725)]},VertRefs{faces:vec![SubmeshFaceId(25)],edges:vec![SubmeshDirectedEdgeId(77),SubmeshDirectedEdgeId(2147483726)]},VertRefs{faces:vec![SubmeshFaceId(25)],edges:vec![SubmeshDirectedEdgeId(2147483727),SubmeshDirectedEdgeId(78)]},VertRefs{faces:vec![SubmeshFaceId(25)],edges:vec![SubmeshDirectedEdgeId(2147483728),SubmeshDirectedEdgeId(79)]},VertRefs{faces:vec![SubmeshFaceId(25)],edges:vec![SubmeshDirectedEdgeId(2147483729),SubmeshDirectedEdgeId(80)]},VertRefs{faces:vec![SubmeshFaceId(25)],edges:vec![SubmeshDirectedEdgeId(2147483730),SubmeshDirectedEdgeId(81)]},VertRefs{faces:vec![SubmeshFaceId(25)],edges:vec![SubmeshDirectedEdgeId(2147483731),SubmeshDirectedEdgeId(82)]},VertRefs{faces:vec![SubmeshFaceId(25)],edges:vec![SubmeshDirectedEdgeId(83),SubmeshDirectedEdgeId(84)]}]}, + submeshes:vec![] } - let mut polygon_list=Vec::with_capacity(N+2); - // side faces - for i in 0..N{ - polygon_list.push(vec![ - verts[i*2], - verts[(i*2+2)%N], - verts[(i*2+3)%N], - verts[(i*2+1)%N], - ]); - } - // top face - polygon_list.push((0..N).map(|i|verts[2*i]).collect()); - // bottom face - polygon_list.push((0..N).map(|i|verts[2*i+1]).collect()); - let polygon_groups=vec![model::PolygonGroup::PolygonList(model::PolygonList::new(polygon_list))]; - let graphics_groups=vec![]; - let physics_groups=vec![model::IndexedPhysicsGroup{ - groups:vec![model::PolygonGroupId::new(0)], - }]; - let mesh=&mb.build(polygon_groups,graphics_groups,physics_groups); - mesh.try_into().unwrap() } #[inline] pub const fn complete_mesh(&self)->&PhysicsMeshTopology{