From 2f798e5cbc46598a1f7dc4446ed59c34a7ccceed Mon Sep 17 00:00:00 2001 From: JOLIMAITRE Matthieu Date: Sun, 10 Nov 2024 02:44:05 +0100 Subject: [PATCH] init --- assets/levels/Scene.assets.ron | 2 + assets/levels/Scene.glb | Bin 0 -> 15176 bytes assets/levels/Scene.meta.ron | 5 + assets/materials/Dots Stroke.glb | Bin 0 -> 1764 bytes assets/materials/Material.glb | Bin 0 -> 1756 bytes assets/registry.json | 17922 +++++++++++++++++++++++++++++ blend/main.blend | Bin 0 -> 978444 bytes blend/main.blend1 | Bin 0 -> 978444 bytes rust/.cargo/config.toml | 12 + rust/.gitignore | 1 + rust/Cargo.lock | 5713 +++++++++ rust/Cargo.toml | 11 + rust/assets | 1 + rust/rustfmt.toml | 2 + rust/src/main.rs | 86 + 15 files changed, 23755 insertions(+) create mode 100644 assets/levels/Scene.assets.ron create mode 100644 assets/levels/Scene.glb create mode 100644 assets/levels/Scene.meta.ron create mode 100644 assets/materials/Dots Stroke.glb create mode 100644 assets/materials/Material.glb create mode 100644 assets/registry.json create mode 100644 blend/main.blend create mode 100644 blend/main.blend1 create mode 100644 rust/.cargo/config.toml create mode 100644 rust/.gitignore create mode 100644 rust/Cargo.lock create mode 100644 rust/Cargo.toml create mode 120000 rust/assets create mode 100644 rust/rustfmt.toml create mode 100644 rust/src/main.rs diff --git a/assets/levels/Scene.assets.ron b/assets/levels/Scene.assets.ron new file mode 100644 index 0000000..04a3fcd --- /dev/null +++ b/assets/levels/Scene.assets.ron @@ -0,0 +1,2 @@ +({ +}) \ No newline at end of file diff --git a/assets/levels/Scene.glb b/assets/levels/Scene.glb new file mode 100644 index 0000000000000000000000000000000000000000..fabcb286d424ebcb5dd7166d5f85a4687b471da3 GIT binary patch literal 15176 zcmb_idzc&5bw4=Np+K4tLclQ(WeBhfvOFV=o{496ZH(>sv0$55?Cn~s9q$UX(pu6Q zFB_9>(vTQJUQOHp4#iMXOhfB5G^GyAxHf%+&@}E7=qqhWq4bgVkN)AL-$#Gv&fMKQ zT4^PDkw48jbLX6M&-tBm&%NH!XleTmONeOwhlzH+hv=i*2DVIV`C84XYq@D{)G0gF ze7#cDa@xkRYNcGMMMj|#SzU6^=qnfj? z?v#0`c5}@c(Q-SqjqA4#m5QTd_1e(HWVukE%$Kx5RdB1bXR=uBP?&veW)Z{wB$#qq zD^yAx!44yef0(RT7GBk-v|K8ah-&qz2?supVA?_*&cdarR?d&};I_#!ZV*Q`U*p+= zz&CLS+s5)EmAf#k^*H7HaLF0TMe5Z_CmI=^+`ZeW4hAl+i{e$}fNUZ=w zwVWPs(1m}h^+{)<3jg{!1H!V%1+45C?1dx2^sDoQJ4dUP$?^#M;Bb0+A|lLOWK*&1 zz%dumV|r50q*Hn(W16~YWa4HtGFo+ss`Qkxiast#gCjh1UA*x@C(V}%h*rp>sSNf?Q&p2+B#R8)_}lhGB~n3+l@;&C$z zEU^MogKW8gg0JS)Y1jB8jfVB8f#ohfW*X{gBbkZnzKyYBX#_Qa>Epm^uCU(*gs%5t z+^IzY*GMXtyRnp?a;j@8<$ASJDmhgj$e!L1i1AsZCWN>Eajq@3YaoDwmu;vSR4be- zA7ee1jHlBH-OzDKn+ekZ#t9>1X5#5&DrK0d3?PoK&|^kCYwB@5ZNw9JBIMHPR63E( zWRnRqkc-WV6X^DjC`q5;8cdMvYs+32i#Oz8$hb$F&JIdt*3oYhm^>R6eZoaW}|C)FLK^aCWZDjhB zMk2j-t&z&4OH!@kH-_$d!*QVpC>xU+b?DgJ!6)m7Xw9Q|jxoH4Vb7X3A zaf3I7sJ8IhI3u6^r2s_sI{Vg7mP$8NE90Aib+9x7xjr6Q|GS-^e|=rZEWoG00^Cx))NVi@pcFskJX zK%iEs`Z)SWfm@2sT>`sV_qK~eN79I=utKqud~YQW8+29%Q1i+ zg5E6#gVl7)+BFH$&(t}Ply-A0q>g^sxq5uw>^M!$R~LgK!UTd1X5Y4^e^dX~c?JN% zd;=;(=qx@)dMukX^kh1NtU?=k(`eoNhM%9L8~TPQL}nsOW_vNWw#ju^CTg4QxTWo-z~JxDky5 z7Svv<8Qa6A==lb&zHkvM?Ifyf;(qMjxFanxeh3d)| ztA2Q@?raiAWvucH;OBvX-Mhtqvp8M(>L~w@D`93+Xrt4Ct@gUYSf|=X7OPvGIhp45 z*x}si24x)m!pez-9Y>hz+&I*P)!W3~pq@y_yU<7E4f?4RpHVuE9rfSfJ&rwL^@XBO zHDZ?)C!|hipRX=PI#oB#hJrKngvk}$Vd8Pn2?vkEE?1JOkL?~Z;(xtC@hcT?=-HHx zy)hDr{P0?$)f=|(UmQ;0;(@Mi!?UcEX~nZ0*qgQ4j1T4%GR=6*G3(Dly!3%(TJh2! zY3GC=gRn1o)?I)X#&MakeQpLe`6H=+=U-=K8e~H<4f;*(NSTG~G(3}Yhvt$p4KyU< z1-?rf$TpQ}V&}LONP^Db%lGU{B#_+&%Hw>`$7eB*S-V1w>ZKV8s zM%q;<%dvhVWqBSC(7zd+~HyXhUcz5@o{ zNf*+)aD5k@MenC`>1Je)(ynFCo z%RRW%D=Z(d7sJ0B>*O%(FeZ!Pl~~-x@HzN00DRb=#qhBey7vv(dJy?q46o$cT@0`I z;4X$&a_udK|IEG`uLF7=b@(>%u41Qao_*oZTW@_r_;sfI)j64`x*0C zQ!e_d9rV>R=Fv+%^i{@%`|26?#~aG8vlQMvz2$$bqfW0kbHhdUPhUC5wtJ4a*J%B+Z3(^OydvAO3BX3@N#O=FpkNt&jUH1H^MtZ%6kJ@(s z&kngKzfSIQj9)c)%6$xWQa_5=W0zd$-3#4^AoI-aS?`+|H{p-MyRV)ocrQWbj_rpn zg?G<8z2AH45b=4NlzBa6UQe0VQ|9%Qc|9dwPl?x4;&qjHJtbZjbFD&*b`Yb57_A^i z3o+V3j5cDlI7ayS9PqIiAI$3lXFI^z1I|`}vj?2*0A~+4TLI1Y`S8jgwNt*7uk7S!eIr=pFjrg`pZ#YS>b8ZRaO`<{q5b z=solFcht2IvZJmGr5@}D#+KW=${WRcQR*R7=c+$X6dty2UDoG5adn0B+jJc%_1V(C zGMB5=o2BsXt@Ua9j!XMQ{VVvmia%b9xV#o|xhjSV@2VIoysNC!(3)+9zq0N^>z(rn zzg^C$vc}bXh2l~$^i)5Uc|Fz7R^y64T-&n$xQaiX;*YEL85L(G?=Aa@>ND)ytk3Z( zy@g|!Ye&tsrRG{)Q;Ho=vBN$~J8J!eYDTrA#APe7aNm~wA=JAdegIdk2*a__^ik;A&qS)cQ zNdLW7<7$m5adEy{#U=YpsD~>!hk7{XmGu^?6D9ASlJ}5Jwg0!m0qaZd9o%m%^jn+z zt(t3f?@;^+)x5f&D)X}Mye4g4FNzN>_fYgV4}Dwg9m<|)DLk(WxhL{klY9ts#h=hV zsQAOU$+f_1U+(FleObYW`;x@RRq#>wRuOB^A3|$c@yABrlY1!dcTMqE_g2N{kgj5f z`@HncQh4t3aNkn|cJ%lgnviQp`;WaL{A))!-dpl3?RJ#UVk{>qLt z6Tp-6+9~C@SiVzw4&J@6pOWsWpA!Bw-pldz7Y_>geW%t6+U}n7$^LXoUtW8$u-izV zygw$!8!6WX+wYWeeXx9|l=JX^pIu{jN*O1X@04==uzaVK>xSh!rJNs@@02cGnOnv3 zjg;${#~UfDY5FVrU3!&%kK*)qcx8Bsl5`J!lYU6Q zNjm+2zD0jb2K^2lqVLfo)Jxx|C+G!=(l_WU^oR5-bPb)PuaQR|qJ#8VdY(Q*8hw`@ zpzqKJ>GQOYo~66Vq~E6_bd+NBB-QD+sfu^(zeR`Xak`Ekr3reB_TcUNuhW<4VY-^W zNF($R4dWgBgLE(5Pgl^V>7#TXZNgjn&(VJR6s73nw2eMVTj?_TCAyU+X&K#2qg10Y zyvM(b?w}Ihr@1h&&c3Mtb=mxrtuE%cyZo!{_ zHscoot7r{vptbmgz(#uL!3V|PEkLa{e4irIiWl}2J8l!6b>(<7Ui{xNm}?qFU4Qh45^Lz)-f6fm4?}itc1iCGG_Thlse!`;4cw-;(F^?ThF9;Q3E~`yO%D#rfRhG2DAR&iveGM#@Mk zWaaa~PB6Bh9VxSrozOG(uLFMq9p9rC{xq}G=ugPb@$n`0=Jh+pSYVUyJs#(o7Q#yE zs`3(JiJMP-yaIV|A$cjodNM{;zJ)&`MyU&VoB3ewfcke*rosNK{6e`1bOl~*?29=S zJX_d5F8T?40iD5@@3{`e@3Anv3p|hWJ&*JAK2QQB<({AO_%42iue=xbAlpd!`HZxy zP?lr;M#}O$9;Qz{^(MoH8?$e04Ep?R}CkI{|AOf)~Wyi literal 0 HcmV?d00001 diff --git a/assets/levels/Scene.meta.ron b/assets/levels/Scene.meta.ron new file mode 100644 index 0000000..5097f2f --- /dev/null +++ b/assets/levels/Scene.meta.ron @@ -0,0 +1,5 @@ +( + assets: + [ + ] +) \ No newline at end of file diff --git a/assets/materials/Dots Stroke.glb b/assets/materials/Dots Stroke.glb new file mode 100644 index 0000000000000000000000000000000000000000..b6cb38c22dc1457fb6f0d94716ae451d30c8f4b9 GIT binary patch literal 1764 zcma)6+iuf95FOf3t_2DdUZZ_B!Ex@95Tt=hfm~2h^`)vJ$Jrznj<;HG3RM)TkNi~B zAArB$Lzvxob8i|;-kqJxnVGX=cfFJ29RT>Z2kB^4v8HERFM3Tbg56dEf^_1lz3OYdvZ%Vf-oWlUm_OUeV6`RHuLOfoV^;2;3Wo1qkt{MnHB zb{}=5+3eeba@Y2P=ETn+K5J9yWS)=CXQv_Q)1aqd!q`d}+5F5z5N!y~eo!JqrjROA zn+;kXZMbdPCV9aJ6fq~s=i>}=(c%>nXY4V^}cdD}r#z_`2%q+!tMP=4yt zp9;lc{R`$(Uz}WB;6|-uFW_jOrG3HYW^&SX zti{njD>yrFAD+Mtz7Js!9>F25hwu_!!&^AO^#Gp1Q+N)$xb9-22k;8^aovY|@CF`3 J1lI_>fd5Jt7h3=T literal 0 HcmV?d00001 diff --git a/assets/materials/Material.glb b/assets/materials/Material.glb new file mode 100644 index 0000000000000000000000000000000000000000..d070abd805eac25b2ce449210c20db43de783f03 GIT binary patch literal 1756 zcma)6+iu!G5S=D8y{2i}rhP^G>{4UyNL7`fMxy0X0m@4hA!8O|$#|pnLK`8ZJocwh zexUt>eoSW$NelgMbQB9FsovDYpgV zq)5JBa^|xj-ba`CiAVh|`N}NYM?CDcVE|2qYH%GZ+Dl|6sst=lDGc;lOyZ5We%Ey*#+vJepotRPcJL@*TwVccFzodxKXd6%#p1BR z74xYtTGv;2f0?9}HHgE8K6Z+gmTbS|%_YptOeZs!&X}3JnMI+t+LKbb*gWSS*Ewvx zi8MlGNY1{NQrLydl_X`-n=9Gmj~v_k#9 z!2Y)Kd4tG}datKGKmEge5HG zolWPlf8xLKM{-iG!QVfXY50DAz?SD4bDuq3;JDA$9P)gft@q@-$=2ta=4qIZ=8@}F zTd(DO$Hw1n_}qM%88^4fvp$z|gjvBZVOIP#-&)Kjo|Q8ldx=M5R^}zl?QEs": { + "isComponent": false, + "isResource": false, + "long_name": "alloc::borrow::Cow", + "short_name": "Cow", + "type": "object", + "typeInfo": "Value" + }, + "alloc::string::String": { + "isComponent": false, + "isResource": false, + "long_name": "alloc::string::String", + "short_name": "String", + "type": "string", + "typeInfo": "Value" + }, + "alloc::vec::Vec<(bevy_ecs::entity::Entity, bevy_ecs::entity::Entity)>": { + "isComponent": false, + "isResource": false, + "items": { + "type": { + "$ref": "#/$defs/(bevy_ecs::entity::Entity, bevy_ecs::entity::Entity)" + } + }, + "long_name": "alloc::vec::Vec<(bevy_ecs::entity::Entity, bevy_ecs::entity::Entity)>", + "short_name": "Vec<(Entity, Entity)>", + "type": "array", + "typeInfo": "List" + }, + "alloc::vec::Vec<[u32; 2]>": { + "isComponent": false, + "isResource": false, + "items": { + "type": { + "$ref": "#/$defs/[u32; 2]" + } + }, + "long_name": "alloc::vec::Vec<[u32; 2]>", + "short_name": "Vec<[u32; 2]>", + "type": "array", + "typeInfo": "List" + }, + "alloc::vec::Vec<[u32; 3]>": { + "isComponent": false, + "isResource": false, + "items": { + "type": { + "$ref": "#/$defs/[u32; 3]" + } + }, + "long_name": "alloc::vec::Vec<[u32; 3]>", + "short_name": "Vec<[u32; 3]>", + "type": "array", + "typeInfo": "List" + }, + "alloc::vec::Vec": { + "isComponent": false, + "isResource": false, + "items": { + "type": { + "$ref": "#/$defs/alloc::string::String" + } + }, + "long_name": "alloc::vec::Vec", + "short_name": "Vec", + "type": "array", + "typeInfo": "List" + }, + "alloc::vec::Vec>": { + "isComponent": false, + "isResource": false, + "items": { + "type": { + "$ref": "#/$defs/alloc::vec::Vec" + } + }, + "long_name": "alloc::vec::Vec>", + "short_name": "Vec>", + "type": "array", + "typeInfo": "List" + }, + "alloc::vec::Vec": { + "isComponent": false, + "isResource": false, + "items": { + "type": { + "$ref": "#/$defs/bevy_animation::VariableCurve" + } + }, + "long_name": "alloc::vec::Vec", + "short_name": "Vec", + "type": "array", + "typeInfo": "List" + }, + "alloc::vec::Vec": { + "isComponent": false, + "isResource": false, + "items": { + "type": { + "$ref": "#/$defs/bevy_animation::transition::AnimationTransition" + } + }, + "long_name": "alloc::vec::Vec", + "short_name": "Vec", + "type": "array", + "typeInfo": "List" + }, + "alloc::vec::Vec": { + "isComponent": false, + "isResource": false, + "items": { + "type": { + "$ref": "#/$defs/bevy_ecs::entity::Entity" + } + }, + "long_name": "alloc::vec::Vec", + "short_name": "Vec", + "type": "array", + "typeInfo": "List" + }, + "alloc::vec::Vec": { + "isComponent": false, + "isResource": false, + "items": { + "type": { + "$ref": "#/$defs/bevy_math::rects::urect::URect" + } + }, + "long_name": "alloc::vec::Vec", + "short_name": "Vec", + "type": "array", + "typeInfo": "List" + }, + "alloc::vec::Vec": { + "isComponent": false, + "isResource": false, + "items": { + "type": { + "$ref": "#/$defs/bevy_pbr::light::Cascade" + } + }, + "long_name": "alloc::vec::Vec", + "short_name": "Vec", + "type": "array", + "typeInfo": "List" + }, + "alloc::vec::Vec": { + "isComponent": false, + "isResource": false, + "items": { + "type": { + "$ref": "#/$defs/bevy_text::glyph_brush::PositionedGlyph" + } + }, + "long_name": "alloc::vec::Vec", + "short_name": "Vec", + "type": "array", + "typeInfo": "List" + }, + "alloc::vec::Vec": { + "isComponent": false, + "isResource": false, + "items": { + "type": { + "$ref": "#/$defs/bevy_text::text::TextSection" + } + }, + "long_name": "alloc::vec::Vec", + "short_name": "Vec", + "type": "array", + "typeInfo": "List" + }, + "alloc::vec::Vec": { + "isComponent": false, + "isResource": false, + "items": { + "type": { + "$ref": "#/$defs/bevy_ui::ui_node::GridTrack" + } + }, + "long_name": "alloc::vec::Vec", + "short_name": "Vec", + "type": "array", + "typeInfo": "List" + }, + "alloc::vec::Vec": { + "isComponent": false, + "isResource": false, + "items": { + "type": { + "$ref": "#/$defs/bevy_ui::ui_node::RepeatedGridTrack" + } + }, + "long_name": "alloc::vec::Vec", + "short_name": "Vec", + "type": "array", + "typeInfo": "List" + }, + "alloc::vec::Vec": { + "isComponent": false, + "isResource": false, + "items": { + "type": { + "$ref": "#/$defs/blenvy::blueprints::animation::AnimationInfo" + } + }, + "long_name": "alloc::vec::Vec", + "short_name": "Vec", + "type": "array", + "typeInfo": "List" + }, + "alloc::vec::Vec": { + "isComponent": false, + "isResource": false, + "items": { + "type": { + "$ref": "#/$defs/blenvy::blueprints::assets::BlueprintAsset" + } + }, + "long_name": "alloc::vec::Vec", + "short_name": "Vec", + "type": "array", + "typeInfo": "List" + }, + "alloc::vec::Vec": { + "isComponent": false, + "isResource": false, + "items": { + "type": { + "$ref": "#/$defs/blenvy::blueprints::materials::MaterialInfo" + } + }, + "long_name": "alloc::vec::Vec", + "short_name": "Vec", + "type": "array", + "typeInfo": "List" + }, + "alloc::vec::Vec": { + "isComponent": false, + "isResource": false, + "items": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "long_name": "alloc::vec::Vec", + "short_name": "Vec", + "type": "array", + "typeInfo": "List" + }, + "alloc::vec::Vec": { + "isComponent": false, + "isResource": false, + "items": { + "type": { + "$ref": "#/$defs/glam::Quat" + } + }, + "long_name": "alloc::vec::Vec", + "short_name": "Vec", + "type": "array", + "typeInfo": "List" + }, + "alloc::vec::Vec": { + "isComponent": false, + "isResource": false, + "items": { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + }, + "long_name": "alloc::vec::Vec", + "short_name": "Vec", + "type": "array", + "typeInfo": "List" + }, + "alloc::vec::Vec": { + "isComponent": false, + "isResource": false, + "items": { + "type": { + "$ref": "#/$defs/u16" + } + }, + "long_name": "alloc::vec::Vec", + "short_name": "Vec", + "type": "array", + "typeInfo": "List" + }, + "alloc::vec::Vec": { + "isComponent": false, + "isResource": false, + "items": { + "type": { + "$ref": "#/$defs/u32" + } + }, + "long_name": "alloc::vec::Vec", + "short_name": "Vec", + "type": "array", + "typeInfo": "List" + }, + "avian3d::collision::broad_phase::AabbIntersections": { + "isComponent": true, + "isResource": false, + "items": false, + "long_name": "avian3d::collision::broad_phase::AabbIntersections", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/alloc::vec::Vec" + } + } + ], + "short_name": "AabbIntersections", + "type": "array", + "typeInfo": "TupleStruct" + }, + "avian3d::collision::broad_phase::BroadCollisionPairs": { + "isComponent": false, + "isResource": true, + "items": false, + "long_name": "avian3d::collision::broad_phase::BroadCollisionPairs", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/alloc::vec::Vec<(bevy_ecs::entity::Entity, bevy_ecs::entity::Entity)>" + } + } + ], + "short_name": "BroadCollisionPairs", + "type": "array", + "typeInfo": "TupleStruct" + }, + "avian3d::collision::collider::ColliderAabb": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "avian3d::collision::collider::ColliderAabb", + "properties": { + "max": { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + }, + "min": { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + } + }, + "required": [ + "min", + "max" + ], + "short_name": "ColliderAabb", + "type": "object", + "typeInfo": "Struct" + }, + "avian3d::collision::collider::ColliderParent": { + "isComponent": true, + "isResource": false, + "items": false, + "long_name": "avian3d::collision::collider::ColliderParent", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_ecs::entity::Entity" + } + } + ], + "short_name": "ColliderParent", + "type": "array", + "typeInfo": "TupleStruct" + }, + "avian3d::collision::collider::ColliderTransform": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "avian3d::collision::collider::ColliderTransform", + "properties": { + "rotation": { + "type": { + "$ref": "#/$defs/avian3d::position::Rotation" + } + }, + "scale": { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + }, + "translation": { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + } + }, + "required": [ + "translation", + "rotation", + "scale" + ], + "short_name": "ColliderTransform", + "type": "object", + "typeInfo": "Struct" + }, + "avian3d::collision::collider::CollidingEntities": { + "isComponent": true, + "isResource": false, + "items": false, + "long_name": "avian3d::collision::collider::CollidingEntities", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_utils::hashbrown::HashSet" + } + } + ], + "short_name": "CollidingEntities", + "type": "array", + "typeInfo": "TupleStruct" + }, + "avian3d::collision::collider::CollisionMargin": { + "isComponent": true, + "isResource": false, + "items": false, + "long_name": "avian3d::collision::collider::CollisionMargin", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/f32" + } + } + ], + "short_name": "CollisionMargin", + "type": "array", + "typeInfo": "TupleStruct" + }, + "avian3d::collision::collider::PreviousColliderTransform": { + "isComponent": true, + "isResource": false, + "items": false, + "long_name": "avian3d::collision::collider::PreviousColliderTransform", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/avian3d::collision::collider::ColliderTransform" + } + } + ], + "short_name": "PreviousColliderTransform", + "type": "array", + "typeInfo": "TupleStruct" + }, + "avian3d::collision::collider::Sensor": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "avian3d::collision::collider::Sensor", + "properties": {}, + "required": [], + "short_name": "Sensor", + "type": "object", + "typeInfo": "Struct" + }, + "avian3d::collision::collider::constructor::ColliderConstructor": { + "isComponent": true, + "isResource": false, + "long_name": "avian3d::collision::collider::constructor::ColliderConstructor", + "oneOf": [ + { + "additionalProperties": false, + "long_name": "Sphere", + "properties": { + "radius": { + "long_name": "radius", + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "radius" + ], + "short_name": "Sphere", + "type": "object", + "typeInfo": "Struct" + }, + { + "additionalProperties": false, + "long_name": "Cuboid", + "properties": { + "x_length": { + "long_name": "x_length", + "type": { + "$ref": "#/$defs/f32" + } + }, + "y_length": { + "long_name": "y_length", + "type": { + "$ref": "#/$defs/f32" + } + }, + "z_length": { + "long_name": "z_length", + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "x_length", + "y_length", + "z_length" + ], + "short_name": "Cuboid", + "type": "object", + "typeInfo": "Struct" + }, + { + "additionalProperties": false, + "long_name": "RoundCuboid", + "properties": { + "border_radius": { + "long_name": "border_radius", + "type": { + "$ref": "#/$defs/f32" + } + }, + "x_length": { + "long_name": "x_length", + "type": { + "$ref": "#/$defs/f32" + } + }, + "y_length": { + "long_name": "y_length", + "type": { + "$ref": "#/$defs/f32" + } + }, + "z_length": { + "long_name": "z_length", + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "x_length", + "y_length", + "z_length", + "border_radius" + ], + "short_name": "RoundCuboid", + "type": "object", + "typeInfo": "Struct" + }, + { + "additionalProperties": false, + "long_name": "Cylinder", + "properties": { + "height": { + "long_name": "height", + "type": { + "$ref": "#/$defs/f32" + } + }, + "radius": { + "long_name": "radius", + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "radius", + "height" + ], + "short_name": "Cylinder", + "type": "object", + "typeInfo": "Struct" + }, + { + "additionalProperties": false, + "long_name": "Cone", + "properties": { + "height": { + "long_name": "height", + "type": { + "$ref": "#/$defs/f32" + } + }, + "radius": { + "long_name": "radius", + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "radius", + "height" + ], + "short_name": "Cone", + "type": "object", + "typeInfo": "Struct" + }, + { + "additionalProperties": false, + "long_name": "Capsule", + "properties": { + "height": { + "long_name": "height", + "type": { + "$ref": "#/$defs/f32" + } + }, + "radius": { + "long_name": "radius", + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "radius", + "height" + ], + "short_name": "Capsule", + "type": "object", + "typeInfo": "Struct" + }, + { + "additionalProperties": false, + "long_name": "CapsuleEndpoints", + "properties": { + "a": { + "long_name": "a", + "type": { + "$ref": "#/$defs/glam::Vec3" + } + }, + "b": { + "long_name": "b", + "type": { + "$ref": "#/$defs/glam::Vec3" + } + }, + "radius": { + "long_name": "radius", + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "radius", + "a", + "b" + ], + "short_name": "CapsuleEndpoints", + "type": "object", + "typeInfo": "Struct" + }, + { + "additionalProperties": false, + "long_name": "HalfSpace", + "properties": { + "outward_normal": { + "long_name": "outward_normal", + "type": { + "$ref": "#/$defs/glam::Vec3" + } + } + }, + "required": [ + "outward_normal" + ], + "short_name": "HalfSpace", + "type": "object", + "typeInfo": "Struct" + }, + { + "additionalProperties": false, + "long_name": "Segment", + "properties": { + "a": { + "long_name": "a", + "type": { + "$ref": "#/$defs/glam::Vec3" + } + }, + "b": { + "long_name": "b", + "type": { + "$ref": "#/$defs/glam::Vec3" + } + } + }, + "required": [ + "a", + "b" + ], + "short_name": "Segment", + "type": "object", + "typeInfo": "Struct" + }, + { + "additionalProperties": false, + "long_name": "Triangle", + "properties": { + "a": { + "long_name": "a", + "type": { + "$ref": "#/$defs/glam::Vec3" + } + }, + "b": { + "long_name": "b", + "type": { + "$ref": "#/$defs/glam::Vec3" + } + }, + "c": { + "long_name": "c", + "type": { + "$ref": "#/$defs/glam::Vec3" + } + } + }, + "required": [ + "a", + "b", + "c" + ], + "short_name": "Triangle", + "type": "object", + "typeInfo": "Struct" + }, + { + "additionalProperties": false, + "long_name": "Polyline", + "properties": { + "indices": { + "long_name": "indices", + "type": { + "$ref": "#/$defs/core::option::Option>" + } + }, + "vertices": { + "long_name": "vertices", + "type": { + "$ref": "#/$defs/alloc::vec::Vec" + } + } + }, + "required": [ + "vertices" + ], + "short_name": "Polyline", + "type": "object", + "typeInfo": "Struct" + }, + { + "additionalProperties": false, + "long_name": "Trimesh", + "properties": { + "indices": { + "long_name": "indices", + "type": { + "$ref": "#/$defs/alloc::vec::Vec<[u32; 3]>" + } + }, + "vertices": { + "long_name": "vertices", + "type": { + "$ref": "#/$defs/alloc::vec::Vec" + } + } + }, + "required": [ + "vertices", + "indices" + ], + "short_name": "Trimesh", + "type": "object", + "typeInfo": "Struct" + }, + { + "additionalProperties": false, + "long_name": "TrimeshWithConfig", + "properties": { + "flags": { + "long_name": "flags", + "type": { + "$ref": "#/$defs/avian3d::collision::collider::parry::TrimeshFlags" + } + }, + "indices": { + "long_name": "indices", + "type": { + "$ref": "#/$defs/alloc::vec::Vec<[u32; 3]>" + } + }, + "vertices": { + "long_name": "vertices", + "type": { + "$ref": "#/$defs/alloc::vec::Vec" + } + } + }, + "required": [ + "vertices", + "indices", + "flags" + ], + "short_name": "TrimeshWithConfig", + "type": "object", + "typeInfo": "Struct" + }, + { + "additionalProperties": false, + "long_name": "ConvexDecomposition", + "properties": { + "indices": { + "long_name": "indices", + "type": { + "$ref": "#/$defs/alloc::vec::Vec<[u32; 3]>" + } + }, + "vertices": { + "long_name": "vertices", + "type": { + "$ref": "#/$defs/alloc::vec::Vec" + } + } + }, + "required": [ + "vertices", + "indices" + ], + "short_name": "ConvexDecomposition", + "type": "object", + "typeInfo": "Struct" + }, + { + "additionalProperties": false, + "long_name": "ConvexDecompositionWithConfig", + "properties": { + "indices": { + "long_name": "indices", + "type": { + "$ref": "#/$defs/alloc::vec::Vec<[u32; 3]>" + } + }, + "params": { + "long_name": "params", + "type": { + "$ref": "#/$defs/avian3d::collision::collider::parry::VhacdParameters" + } + }, + "vertices": { + "long_name": "vertices", + "type": { + "$ref": "#/$defs/alloc::vec::Vec" + } + } + }, + "required": [ + "vertices", + "indices", + "params" + ], + "short_name": "ConvexDecompositionWithConfig", + "type": "object", + "typeInfo": "Struct" + }, + { + "additionalProperties": false, + "long_name": "ConvexHull", + "properties": { + "points": { + "long_name": "points", + "type": { + "$ref": "#/$defs/alloc::vec::Vec" + } + } + }, + "required": [ + "points" + ], + "short_name": "ConvexHull", + "type": "object", + "typeInfo": "Struct" + }, + { + "additionalProperties": false, + "long_name": "Heightfield", + "properties": { + "heights": { + "long_name": "heights", + "type": { + "$ref": "#/$defs/alloc::vec::Vec>" + } + }, + "scale": { + "long_name": "scale", + "type": { + "$ref": "#/$defs/glam::Vec3" + } + } + }, + "required": [ + "heights", + "scale" + ], + "short_name": "Heightfield", + "type": "object", + "typeInfo": "Struct" + }, + { + "long_name": "TrimeshFromMesh" + }, + { + "items": false, + "long_name": "TrimeshFromMeshWithConfig", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/avian3d::collision::collider::parry::TrimeshFlags" + } + } + ], + "short_name": "TrimeshFromMeshWithConfig", + "type": "array", + "typeInfo": "Tuple" + }, + { + "long_name": "ConvexDecompositionFromMesh" + }, + { + "items": false, + "long_name": "ConvexDecompositionFromMeshWithConfig", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/avian3d::collision::collider::parry::VhacdParameters" + } + } + ], + "short_name": "ConvexDecompositionFromMeshWithConfig", + "type": "array", + "typeInfo": "Tuple" + }, + { + "long_name": "ConvexHullFromMesh" + } + ], + "short_name": "ColliderConstructor", + "type": "object", + "typeInfo": "Enum" + }, + "avian3d::collision::collider::constructor::ColliderConstructorHierarchy": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "avian3d::collision::collider::constructor::ColliderConstructorHierarchy", + "properties": { + "config": { + "type": { + "$ref": "#/$defs/bevy_utils::hashbrown::HashMap, bevy_utils::hashbrown::hash_map::DefaultHashBuilder>" + } + }, + "default_constructor": { + "type": { + "$ref": "#/$defs/core::option::Option" + } + }, + "default_density": { + "type": { + "$ref": "#/$defs/avian3d::dynamics::rigid_body::mass_properties::ColliderDensity" + } + }, + "default_layers": { + "type": { + "$ref": "#/$defs/avian3d::collision::layers::CollisionLayers" + } + } + }, + "required": [ + "default_layers", + "default_density", + "config" + ], + "short_name": "ColliderConstructorHierarchy", + "type": "object", + "typeInfo": "Struct" + }, + "avian3d::collision::collider::constructor::ColliderConstructorHierarchyConfig": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "avian3d::collision::collider::constructor::ColliderConstructorHierarchyConfig", + "properties": { + "constructor": { + "type": { + "$ref": "#/$defs/core::option::Option" + } + }, + "density": { + "type": { + "$ref": "#/$defs/core::option::Option" + } + }, + "layers": { + "type": { + "$ref": "#/$defs/core::option::Option" + } + } + }, + "required": [], + "short_name": "ColliderConstructorHierarchyConfig", + "type": "object", + "typeInfo": "Struct" + }, + "avian3d::collision::collider::parry::FillMode": { + "isComponent": false, + "isResource": false, + "long_name": "avian3d::collision::collider::parry::FillMode", + "oneOf": [ + { + "long_name": "SurfaceOnly" + }, + { + "additionalProperties": false, + "long_name": "FloodFill", + "properties": { + "detect_cavities": { + "long_name": "detect_cavities", + "type": { + "$ref": "#/$defs/bool" + } + } + }, + "required": [ + "detect_cavities" + ], + "short_name": "FloodFill", + "type": "object", + "typeInfo": "Struct" + } + ], + "short_name": "FillMode", + "type": "object", + "typeInfo": "Enum" + }, + "avian3d::collision::collider::parry::TrimeshFlags": { + "isComponent": false, + "isResource": false, + "long_name": "avian3d::collision::collider::parry::TrimeshFlags", + "short_name": "TrimeshFlags", + "type": "object", + "typeInfo": "Value" + }, + "avian3d::collision::collider::parry::VhacdParameters": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "avian3d::collision::collider::parry::VhacdParameters", + "properties": { + "alpha": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "beta": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "concavity": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "convex_hull_approximation": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "convex_hull_downsampling": { + "type": { + "$ref": "#/$defs/u32" + } + }, + "fill_mode": { + "type": { + "$ref": "#/$defs/avian3d::collision::collider::parry::FillMode" + } + }, + "max_convex_hulls": { + "type": { + "$ref": "#/$defs/u32" + } + }, + "plane_downsampling": { + "type": { + "$ref": "#/$defs/u32" + } + }, + "resolution": { + "type": { + "$ref": "#/$defs/u32" + } + } + }, + "required": [ + "concavity", + "alpha", + "beta", + "resolution", + "plane_downsampling", + "convex_hull_downsampling", + "fill_mode", + "convex_hull_approximation", + "max_convex_hulls" + ], + "short_name": "VhacdParameters", + "type": "object", + "typeInfo": "Struct" + }, + "avian3d::collision::layers::CollisionLayers": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "avian3d::collision::layers::CollisionLayers", + "properties": { + "filters": { + "type": { + "$ref": "#/$defs/avian3d::collision::layers::LayerMask" + } + }, + "memberships": { + "type": { + "$ref": "#/$defs/avian3d::collision::layers::LayerMask" + } + } + }, + "required": [ + "memberships", + "filters" + ], + "short_name": "CollisionLayers", + "type": "object", + "typeInfo": "Struct" + }, + "avian3d::collision::layers::LayerMask": { + "isComponent": false, + "isResource": false, + "items": false, + "long_name": "avian3d::collision::layers::LayerMask", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/u32" + } + } + ], + "short_name": "LayerMask", + "type": "array", + "typeInfo": "TupleStruct" + }, + "avian3d::collision::narrow_phase::NarrowPhaseConfig": { + "additionalProperties": false, + "isComponent": false, + "isResource": true, + "long_name": "avian3d::collision::narrow_phase::NarrowPhaseConfig", + "properties": { + "contact_tolerance": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "default_speculative_margin": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "match_contacts": { + "type": { + "$ref": "#/$defs/bool" + } + } + }, + "required": [ + "default_speculative_margin", + "contact_tolerance", + "match_contacts" + ], + "short_name": "NarrowPhaseConfig", + "type": "object", + "typeInfo": "Struct" + }, + "avian3d::dynamics::ccd::SpeculativeMargin": { + "isComponent": true, + "isResource": false, + "items": false, + "long_name": "avian3d::dynamics::ccd::SpeculativeMargin", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/f32" + } + } + ], + "short_name": "SpeculativeMargin", + "type": "array", + "typeInfo": "TupleStruct" + }, + "avian3d::dynamics::ccd::SweepMode": { + "isComponent": false, + "isResource": false, + "long_name": "avian3d::dynamics::ccd::SweepMode", + "oneOf": [ + "Linear", + "NonLinear" + ], + "short_name": "SweepMode", + "type": "string", + "typeInfo": "Enum" + }, + "avian3d::dynamics::ccd::SweptCcd": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "avian3d::dynamics::ccd::SweptCcd", + "properties": { + "angular_threshold": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "include_dynamic": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "linear_threshold": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "mode": { + "type": { + "$ref": "#/$defs/avian3d::dynamics::ccd::SweepMode" + } + } + }, + "required": [ + "mode", + "include_dynamic", + "linear_threshold", + "angular_threshold" + ], + "short_name": "SweptCcd", + "type": "object", + "typeInfo": "Struct" + }, + "avian3d::dynamics::integrator::Gravity": { + "isComponent": false, + "isResource": true, + "items": false, + "long_name": "avian3d::dynamics::integrator::Gravity", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + } + ], + "short_name": "Gravity", + "type": "array", + "typeInfo": "TupleStruct" + }, + "avian3d::dynamics::rigid_body::AccumulatedTranslation": { + "isComponent": true, + "isResource": false, + "items": false, + "long_name": "avian3d::dynamics::rigid_body::AccumulatedTranslation", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + } + ], + "short_name": "AccumulatedTranslation", + "type": "array", + "typeInfo": "TupleStruct" + }, + "avian3d::dynamics::rigid_body::AngularDamping": { + "isComponent": true, + "isResource": false, + "items": false, + "long_name": "avian3d::dynamics::rigid_body::AngularDamping", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/f32" + } + } + ], + "short_name": "AngularDamping", + "type": "array", + "typeInfo": "TupleStruct" + }, + "avian3d::dynamics::rigid_body::AngularVelocity": { + "isComponent": true, + "isResource": false, + "items": false, + "long_name": "avian3d::dynamics::rigid_body::AngularVelocity", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + } + ], + "short_name": "AngularVelocity", + "type": "array", + "typeInfo": "TupleStruct" + }, + "avian3d::dynamics::rigid_body::CoefficientCombine": { + "isComponent": false, + "isResource": false, + "long_name": "avian3d::dynamics::rigid_body::CoefficientCombine", + "oneOf": [ + "Average", + "Min", + "Multiply", + "Max" + ], + "short_name": "CoefficientCombine", + "type": "string", + "typeInfo": "Enum" + }, + "avian3d::dynamics::rigid_body::Dominance": { + "isComponent": true, + "isResource": false, + "items": false, + "long_name": "avian3d::dynamics::rigid_body::Dominance", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/i8" + } + } + ], + "short_name": "Dominance", + "type": "array", + "typeInfo": "TupleStruct" + }, + "avian3d::dynamics::rigid_body::Friction": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "avian3d::dynamics::rigid_body::Friction", + "properties": { + "combine_rule": { + "type": { + "$ref": "#/$defs/avian3d::dynamics::rigid_body::CoefficientCombine" + } + }, + "dynamic_coefficient": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "static_coefficient": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "dynamic_coefficient", + "static_coefficient", + "combine_rule" + ], + "short_name": "Friction", + "type": "object", + "typeInfo": "Struct" + }, + "avian3d::dynamics::rigid_body::GravityScale": { + "isComponent": true, + "isResource": false, + "items": false, + "long_name": "avian3d::dynamics::rigid_body::GravityScale", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/f32" + } + } + ], + "short_name": "GravityScale", + "type": "array", + "typeInfo": "TupleStruct" + }, + "avian3d::dynamics::rigid_body::LinearDamping": { + "isComponent": true, + "isResource": false, + "items": false, + "long_name": "avian3d::dynamics::rigid_body::LinearDamping", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/f32" + } + } + ], + "short_name": "LinearDamping", + "type": "array", + "typeInfo": "TupleStruct" + }, + "avian3d::dynamics::rigid_body::LinearVelocity": { + "isComponent": true, + "isResource": false, + "items": false, + "long_name": "avian3d::dynamics::rigid_body::LinearVelocity", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + } + ], + "short_name": "LinearVelocity", + "type": "array", + "typeInfo": "TupleStruct" + }, + "avian3d::dynamics::rigid_body::PreSolveAngularVelocity": { + "isComponent": true, + "isResource": false, + "items": false, + "long_name": "avian3d::dynamics::rigid_body::PreSolveAngularVelocity", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + } + ], + "short_name": "PreSolveAngularVelocity", + "type": "array", + "typeInfo": "TupleStruct" + }, + "avian3d::dynamics::rigid_body::PreSolveLinearVelocity": { + "isComponent": true, + "isResource": false, + "items": false, + "long_name": "avian3d::dynamics::rigid_body::PreSolveLinearVelocity", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + } + ], + "short_name": "PreSolveLinearVelocity", + "type": "array", + "typeInfo": "TupleStruct" + }, + "avian3d::dynamics::rigid_body::Restitution": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "avian3d::dynamics::rigid_body::Restitution", + "properties": { + "coefficient": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "combine_rule": { + "type": { + "$ref": "#/$defs/avian3d::dynamics::rigid_body::CoefficientCombine" + } + } + }, + "required": [ + "coefficient", + "combine_rule" + ], + "short_name": "Restitution", + "type": "object", + "typeInfo": "Struct" + }, + "avian3d::dynamics::rigid_body::RigidBody": { + "isComponent": true, + "isResource": false, + "long_name": "avian3d::dynamics::rigid_body::RigidBody", + "oneOf": [ + "Dynamic", + "Static", + "Kinematic" + ], + "short_name": "RigidBody", + "type": "string", + "typeInfo": "Enum" + }, + "avian3d::dynamics::rigid_body::Sleeping": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "avian3d::dynamics::rigid_body::Sleeping", + "properties": {}, + "required": [], + "short_name": "Sleeping", + "type": "object", + "typeInfo": "Struct" + }, + "avian3d::dynamics::rigid_body::SleepingDisabled": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "avian3d::dynamics::rigid_body::SleepingDisabled", + "properties": {}, + "required": [], + "short_name": "SleepingDisabled", + "type": "object", + "typeInfo": "Struct" + }, + "avian3d::dynamics::rigid_body::TimeSleeping": { + "isComponent": true, + "isResource": false, + "items": false, + "long_name": "avian3d::dynamics::rigid_body::TimeSleeping", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/f32" + } + } + ], + "short_name": "TimeSleeping", + "type": "array", + "typeInfo": "TupleStruct" + }, + "avian3d::dynamics::rigid_body::forces::ExternalAngularImpulse": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "avian3d::dynamics::rigid_body::forces::ExternalAngularImpulse", + "properties": { + "impulse": { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + }, + "persistent": { + "type": { + "$ref": "#/$defs/bool" + } + } + }, + "required": [ + "impulse", + "persistent" + ], + "short_name": "ExternalAngularImpulse", + "type": "object", + "typeInfo": "Struct" + }, + "avian3d::dynamics::rigid_body::forces::ExternalForce": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "avian3d::dynamics::rigid_body::forces::ExternalForce", + "properties": { + "force": { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + }, + "persistent": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "torque": { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + } + }, + "required": [ + "force", + "persistent", + "torque" + ], + "short_name": "ExternalForce", + "type": "object", + "typeInfo": "Struct" + }, + "avian3d::dynamics::rigid_body::forces::ExternalImpulse": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "avian3d::dynamics::rigid_body::forces::ExternalImpulse", + "properties": { + "angular_impulse": { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + }, + "impulse": { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + }, + "persistent": { + "type": { + "$ref": "#/$defs/bool" + } + } + }, + "required": [ + "impulse", + "persistent", + "angular_impulse" + ], + "short_name": "ExternalImpulse", + "type": "object", + "typeInfo": "Struct" + }, + "avian3d::dynamics::rigid_body::forces::ExternalTorque": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "avian3d::dynamics::rigid_body::forces::ExternalTorque", + "properties": { + "persistent": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "torque": { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + } + }, + "required": [ + "torque", + "persistent" + ], + "short_name": "ExternalTorque", + "type": "object", + "typeInfo": "Struct" + }, + "avian3d::dynamics::rigid_body::locked_axes::LockedAxes": { + "isComponent": true, + "isResource": false, + "items": false, + "long_name": "avian3d::dynamics::rigid_body::locked_axes::LockedAxes", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/u8" + } + } + ], + "short_name": "LockedAxes", + "type": "array", + "typeInfo": "TupleStruct" + }, + "avian3d::dynamics::rigid_body::mass_properties::CenterOfMass": { + "isComponent": true, + "isResource": false, + "items": false, + "long_name": "avian3d::dynamics::rigid_body::mass_properties::CenterOfMass", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + } + ], + "short_name": "CenterOfMass", + "type": "array", + "typeInfo": "TupleStruct" + }, + "avian3d::dynamics::rigid_body::mass_properties::ColliderDensity": { + "isComponent": true, + "isResource": false, + "items": false, + "long_name": "avian3d::dynamics::rigid_body::mass_properties::ColliderDensity", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/f32" + } + } + ], + "short_name": "ColliderDensity", + "type": "array", + "typeInfo": "TupleStruct" + }, + "avian3d::dynamics::rigid_body::mass_properties::ColliderMassProperties": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "avian3d::dynamics::rigid_body::mass_properties::ColliderMassProperties", + "properties": { + "center_of_mass": { + "type": { + "$ref": "#/$defs/avian3d::dynamics::rigid_body::mass_properties::CenterOfMass" + } + }, + "inertia": { + "type": { + "$ref": "#/$defs/avian3d::dynamics::rigid_body::mass_properties::Inertia" + } + }, + "inverse_inertia": { + "type": { + "$ref": "#/$defs/avian3d::dynamics::rigid_body::mass_properties::InverseInertia" + } + }, + "inverse_mass": { + "type": { + "$ref": "#/$defs/avian3d::dynamics::rigid_body::mass_properties::InverseMass" + } + }, + "mass": { + "type": { + "$ref": "#/$defs/avian3d::dynamics::rigid_body::mass_properties::Mass" + } + } + }, + "required": [ + "mass", + "inverse_mass", + "inertia", + "inverse_inertia", + "center_of_mass" + ], + "short_name": "ColliderMassProperties", + "type": "object", + "typeInfo": "Struct" + }, + "avian3d::dynamics::rigid_body::mass_properties::Inertia": { + "isComponent": true, + "isResource": false, + "items": false, + "long_name": "avian3d::dynamics::rigid_body::mass_properties::Inertia", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/glam::Mat3" + } + } + ], + "short_name": "Inertia", + "type": "array", + "typeInfo": "TupleStruct" + }, + "avian3d::dynamics::rigid_body::mass_properties::InverseInertia": { + "isComponent": true, + "isResource": false, + "items": false, + "long_name": "avian3d::dynamics::rigid_body::mass_properties::InverseInertia", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/glam::Mat3" + } + } + ], + "short_name": "InverseInertia", + "type": "array", + "typeInfo": "TupleStruct" + }, + "avian3d::dynamics::rigid_body::mass_properties::InverseMass": { + "isComponent": true, + "isResource": false, + "items": false, + "long_name": "avian3d::dynamics::rigid_body::mass_properties::InverseMass", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/f32" + } + } + ], + "short_name": "InverseMass", + "type": "array", + "typeInfo": "TupleStruct" + }, + "avian3d::dynamics::rigid_body::mass_properties::Mass": { + "isComponent": true, + "isResource": false, + "items": false, + "long_name": "avian3d::dynamics::rigid_body::mass_properties::Mass", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/f32" + } + } + ], + "short_name": "Mass", + "type": "array", + "typeInfo": "TupleStruct" + }, + "avian3d::dynamics::sleeping::DeactivationTime": { + "isComponent": false, + "isResource": false, + "items": false, + "long_name": "avian3d::dynamics::sleeping::DeactivationTime", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/f32" + } + } + ], + "short_name": "DeactivationTime", + "type": "array", + "typeInfo": "TupleStruct" + }, + "avian3d::dynamics::sleeping::SleepingThreshold": { + "additionalProperties": false, + "isComponent": false, + "isResource": true, + "long_name": "avian3d::dynamics::sleeping::SleepingThreshold", + "properties": { + "angular": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "linear": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "linear", + "angular" + ], + "short_name": "SleepingThreshold", + "type": "object", + "typeInfo": "Struct" + }, + "avian3d::dynamics::solver::SolverConfig": { + "additionalProperties": false, + "isComponent": false, + "isResource": true, + "long_name": "avian3d::dynamics::solver::SolverConfig", + "properties": { + "contact_damping_ratio": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "contact_frequency_factor": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "max_overlap_solve_speed": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "restitution_iterations": { + "type": { + "$ref": "#/$defs/usize" + } + }, + "restitution_threshold": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "warm_start_coefficient": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "contact_damping_ratio", + "contact_frequency_factor", + "max_overlap_solve_speed", + "warm_start_coefficient", + "restitution_threshold", + "restitution_iterations" + ], + "short_name": "SolverConfig", + "type": "object", + "typeInfo": "Struct" + }, + "avian3d::dynamics::solver::joints::AngleLimit": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "avian3d::dynamics::solver::joints::AngleLimit", + "properties": { + "max": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "min": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "min", + "max" + ], + "short_name": "AngleLimit", + "type": "object", + "typeInfo": "Struct" + }, + "avian3d::dynamics::solver::joints::DistanceLimit": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "avian3d::dynamics::solver::joints::DistanceLimit", + "properties": { + "max": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "min": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "min", + "max" + ], + "short_name": "DistanceLimit", + "type": "object", + "typeInfo": "Struct" + }, + "avian3d::dynamics::solver::joints::distance::DistanceJoint": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "avian3d::dynamics::solver::joints::distance::DistanceJoint", + "properties": { + "compliance": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "damping_angular": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "damping_linear": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "entity1": { + "type": { + "$ref": "#/$defs/bevy_ecs::entity::Entity" + } + }, + "entity2": { + "type": { + "$ref": "#/$defs/bevy_ecs::entity::Entity" + } + }, + "force": { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + }, + "lagrange": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "length_limits": { + "type": { + "$ref": "#/$defs/core::option::Option" + } + }, + "local_anchor1": { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + }, + "local_anchor2": { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + }, + "rest_length": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "entity1", + "entity2", + "local_anchor1", + "local_anchor2", + "rest_length", + "damping_linear", + "damping_angular", + "lagrange", + "compliance", + "force" + ], + "short_name": "DistanceJoint", + "type": "object", + "typeInfo": "Struct" + }, + "avian3d::dynamics::solver::joints::fixed::FixedJoint": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "avian3d::dynamics::solver::joints::fixed::FixedJoint", + "properties": { + "align_lagrange": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "align_torque": { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + }, + "compliance": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "damping_angular": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "damping_linear": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "entity1": { + "type": { + "$ref": "#/$defs/bevy_ecs::entity::Entity" + } + }, + "entity2": { + "type": { + "$ref": "#/$defs/bevy_ecs::entity::Entity" + } + }, + "force": { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + }, + "local_anchor1": { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + }, + "local_anchor2": { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + }, + "position_lagrange": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "entity1", + "entity2", + "local_anchor1", + "local_anchor2", + "damping_linear", + "damping_angular", + "position_lagrange", + "align_lagrange", + "compliance", + "force", + "align_torque" + ], + "short_name": "FixedJoint", + "type": "object", + "typeInfo": "Struct" + }, + "avian3d::dynamics::solver::joints::prismatic::PrismaticJoint": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "avian3d::dynamics::solver::joints::prismatic::PrismaticJoint", + "properties": { + "align_lagrange": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "align_torque": { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + }, + "compliance": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "damping_angular": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "damping_linear": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "entity1": { + "type": { + "$ref": "#/$defs/bevy_ecs::entity::Entity" + } + }, + "entity2": { + "type": { + "$ref": "#/$defs/bevy_ecs::entity::Entity" + } + }, + "force": { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + }, + "free_axis": { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + }, + "free_axis_limits": { + "type": { + "$ref": "#/$defs/core::option::Option" + } + }, + "local_anchor1": { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + }, + "local_anchor2": { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + }, + "position_lagrange": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "entity1", + "entity2", + "local_anchor1", + "local_anchor2", + "free_axis", + "damping_linear", + "damping_angular", + "position_lagrange", + "align_lagrange", + "compliance", + "force", + "align_torque" + ], + "short_name": "PrismaticJoint", + "type": "object", + "typeInfo": "Struct" + }, + "avian3d::dynamics::solver::joints::revolute::RevoluteJoint": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "avian3d::dynamics::solver::joints::revolute::RevoluteJoint", + "properties": { + "align_lagrange": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "align_torque": { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + }, + "aligned_axis": { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + }, + "angle_limit": { + "type": { + "$ref": "#/$defs/core::option::Option" + } + }, + "angle_limit_lagrange": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "angle_limit_torque": { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + }, + "compliance": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "damping_angular": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "damping_linear": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "entity1": { + "type": { + "$ref": "#/$defs/bevy_ecs::entity::Entity" + } + }, + "entity2": { + "type": { + "$ref": "#/$defs/bevy_ecs::entity::Entity" + } + }, + "force": { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + }, + "local_anchor1": { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + }, + "local_anchor2": { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + }, + "position_lagrange": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "entity1", + "entity2", + "local_anchor1", + "local_anchor2", + "aligned_axis", + "damping_linear", + "damping_angular", + "position_lagrange", + "align_lagrange", + "angle_limit_lagrange", + "compliance", + "force", + "align_torque", + "angle_limit_torque" + ], + "short_name": "RevoluteJoint", + "type": "object", + "typeInfo": "Struct" + }, + "avian3d::dynamics::solver::joints::spherical::SphericalJoint": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "avian3d::dynamics::solver::joints::spherical::SphericalJoint", + "properties": { + "compliance": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "damping_angular": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "damping_linear": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "entity1": { + "type": { + "$ref": "#/$defs/bevy_ecs::entity::Entity" + } + }, + "entity2": { + "type": { + "$ref": "#/$defs/bevy_ecs::entity::Entity" + } + }, + "force": { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + }, + "local_anchor1": { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + }, + "local_anchor2": { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + }, + "position_lagrange": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "swing_axis": { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + }, + "swing_lagrange": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "swing_limit": { + "type": { + "$ref": "#/$defs/core::option::Option" + } + }, + "swing_torque": { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + }, + "twist_axis": { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + }, + "twist_lagrange": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "twist_limit": { + "type": { + "$ref": "#/$defs/core::option::Option" + } + }, + "twist_torque": { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + } + }, + "required": [ + "entity1", + "entity2", + "local_anchor1", + "local_anchor2", + "swing_axis", + "twist_axis", + "damping_linear", + "damping_angular", + "position_lagrange", + "swing_lagrange", + "twist_lagrange", + "compliance", + "force", + "swing_torque", + "twist_torque" + ], + "short_name": "SphericalJoint", + "type": "object", + "typeInfo": "Struct" + }, + "avian3d::position::Position": { + "isComponent": true, + "isResource": false, + "items": false, + "long_name": "avian3d::position::Position", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + } + ], + "short_name": "Position", + "type": "array", + "typeInfo": "TupleStruct" + }, + "avian3d::position::PreSolveAccumulatedTranslation": { + "isComponent": true, + "isResource": false, + "items": false, + "long_name": "avian3d::position::PreSolveAccumulatedTranslation", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + } + ], + "short_name": "PreSolveAccumulatedTranslation", + "type": "array", + "typeInfo": "TupleStruct" + }, + "avian3d::position::PreviousRotation": { + "isComponent": true, + "isResource": false, + "items": false, + "long_name": "avian3d::position::PreviousRotation", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/avian3d::position::Rotation" + } + } + ], + "short_name": "PreviousRotation", + "type": "array", + "typeInfo": "TupleStruct" + }, + "avian3d::position::Rotation": { + "isComponent": true, + "isResource": false, + "items": false, + "long_name": "avian3d::position::Rotation", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/glam::Quat" + } + } + ], + "short_name": "Rotation", + "type": "array", + "typeInfo": "TupleStruct" + }, + "avian3d::prepare::PrepareConfig": { + "additionalProperties": false, + "isComponent": false, + "isResource": true, + "long_name": "avian3d::prepare::PrepareConfig", + "properties": { + "position_to_transform": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "transform_to_position": { + "type": { + "$ref": "#/$defs/bool" + } + } + }, + "required": [ + "position_to_transform", + "transform_to_position" + ], + "short_name": "PrepareConfig", + "type": "object", + "typeInfo": "Struct" + }, + "avian3d::schedule::SubstepCount": { + "isComponent": false, + "isResource": true, + "items": false, + "long_name": "avian3d::schedule::SubstepCount", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/u32" + } + } + ], + "short_name": "SubstepCount", + "type": "array", + "typeInfo": "TupleStruct" + }, + "avian3d::schedule::time::Physics": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "avian3d::schedule::time::Physics", + "properties": { + "paused": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "relative_speed": { + "type": { + "$ref": "#/$defs/f64" + } + }, + "timestep_mode": { + "type": { + "$ref": "#/$defs/avian3d::schedule::time::TimestepMode" + } + } + }, + "required": [ + "timestep_mode", + "paused", + "relative_speed" + ], + "short_name": "Physics", + "type": "object", + "typeInfo": "Struct" + }, + "avian3d::schedule::time::Substeps": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "avian3d::schedule::time::Substeps", + "properties": {}, + "required": [], + "short_name": "Substeps", + "type": "object", + "typeInfo": "Struct" + }, + "avian3d::schedule::time::TimestepMode": { + "isComponent": false, + "isResource": false, + "long_name": "avian3d::schedule::time::TimestepMode", + "oneOf": [ + { + "additionalProperties": false, + "long_name": "Fixed", + "properties": { + "delta": { + "long_name": "delta", + "type": { + "$ref": "#/$defs/bevy_utils::Duration" + } + }, + "max_delta_overstep": { + "long_name": "max_delta_overstep", + "type": { + "$ref": "#/$defs/bevy_utils::Duration" + } + }, + "overstep": { + "long_name": "overstep", + "type": { + "$ref": "#/$defs/bevy_utils::Duration" + } + } + }, + "required": [ + "delta", + "overstep", + "max_delta_overstep" + ], + "short_name": "Fixed", + "type": "object", + "typeInfo": "Struct" + }, + { + "additionalProperties": false, + "long_name": "FixedOnce", + "properties": { + "delta": { + "long_name": "delta", + "type": { + "$ref": "#/$defs/bevy_utils::Duration" + } + } + }, + "required": [ + "delta" + ], + "short_name": "FixedOnce", + "type": "object", + "typeInfo": "Struct" + }, + { + "additionalProperties": false, + "long_name": "Variable", + "properties": { + "max_delta": { + "long_name": "max_delta", + "type": { + "$ref": "#/$defs/bevy_utils::Duration" + } + } + }, + "required": [ + "max_delta" + ], + "short_name": "Variable", + "type": "object", + "typeInfo": "Struct" + } + ], + "short_name": "TimestepMode", + "type": "object", + "typeInfo": "Enum" + }, + "avian3d::spatial_query::query_filter::SpatialQueryFilter": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "avian3d::spatial_query::query_filter::SpatialQueryFilter", + "properties": { + "excluded_entities": { + "type": { + "$ref": "#/$defs/bevy_utils::hashbrown::HashSet" + } + }, + "mask": { + "type": { + "$ref": "#/$defs/avian3d::collision::layers::LayerMask" + } + } + }, + "required": [ + "mask", + "excluded_entities" + ], + "short_name": "SpatialQueryFilter", + "type": "object", + "typeInfo": "Struct" + }, + "avian3d::spatial_query::ray_caster::RayCaster": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "avian3d::spatial_query::ray_caster::RayCaster", + "properties": { + "direction": { + "type": { + "$ref": "#/$defs/bevy_math::direction::Dir3" + } + }, + "enabled": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "global_direction": { + "type": { + "$ref": "#/$defs/bevy_math::direction::Dir3" + } + }, + "global_origin": { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + }, + "ignore_self": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "max_hits": { + "type": { + "$ref": "#/$defs/u32" + } + }, + "max_time_of_impact": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "origin": { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + }, + "query_filter": { + "type": { + "$ref": "#/$defs/avian3d::spatial_query::query_filter::SpatialQueryFilter" + } + }, + "solid": { + "type": { + "$ref": "#/$defs/bool" + } + } + }, + "required": [ + "enabled", + "origin", + "global_origin", + "direction", + "global_direction", + "max_time_of_impact", + "max_hits", + "solid", + "ignore_self", + "query_filter" + ], + "short_name": "RayCaster", + "type": "object", + "typeInfo": "Struct" + }, + "avian3d::spatial_query::shape_caster::ShapeCaster": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "avian3d::spatial_query::shape_caster::ShapeCaster", + "properties": { + "direction": { + "type": { + "$ref": "#/$defs/bevy_math::direction::Dir3" + } + }, + "enabled": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "global_direction": { + "type": { + "$ref": "#/$defs/bevy_math::direction::Dir3" + } + }, + "global_origin": { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + }, + "global_shape_rotation": { + "type": { + "$ref": "#/$defs/glam::Quat" + } + }, + "ignore_origin_penetration": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "ignore_self": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "max_hits": { + "type": { + "$ref": "#/$defs/u32" + } + }, + "max_time_of_impact": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "origin": { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + }, + "query_filter": { + "type": { + "$ref": "#/$defs/avian3d::spatial_query::query_filter::SpatialQueryFilter" + } + }, + "shape_rotation": { + "type": { + "$ref": "#/$defs/glam::Quat" + } + } + }, + "required": [ + "enabled", + "origin", + "global_origin", + "shape_rotation", + "global_shape_rotation", + "direction", + "global_direction", + "max_time_of_impact", + "max_hits", + "ignore_origin_penetration", + "ignore_self", + "query_filter" + ], + "short_name": "ShapeCaster", + "type": "object", + "typeInfo": "Struct" + }, + "avian3d::sync::PreviousGlobalTransform": { + "isComponent": true, + "isResource": false, + "items": false, + "long_name": "avian3d::sync::PreviousGlobalTransform", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_transform::components::global_transform::GlobalTransform" + } + } + ], + "short_name": "PreviousGlobalTransform", + "type": "array", + "typeInfo": "TupleStruct" + }, + "avian3d::sync::SyncConfig": { + "additionalProperties": false, + "isComponent": false, + "isResource": true, + "long_name": "avian3d::sync::SyncConfig", + "properties": { + "position_to_transform": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "transform_to_position": { + "type": { + "$ref": "#/$defs/bool" + } + } + }, + "required": [ + "position_to_transform", + "transform_to_position" + ], + "short_name": "SyncConfig", + "type": "object", + "typeInfo": "Struct" + }, + "avian3d::sync::ancestor_marker::AncestorMarker": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "avian3d::sync::ancestor_marker::AncestorMarker", + "properties": {}, + "required": [], + "short_name": "AncestorMarker", + "type": "object", + "typeInfo": "Struct" + }, + "avian3d::sync::ancestor_marker::AncestorMarker": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "avian3d::sync::ancestor_marker::AncestorMarker", + "properties": {}, + "required": [], + "short_name": "AncestorMarker", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_animation::AnimationClip": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_animation::AnimationClip", + "properties": { + "curves": { + "type": { + "$ref": "#/$defs/bevy_utils::hashbrown::HashMap, bevy_utils::NoOpHash>" + } + }, + "duration": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "curves", + "duration" + ], + "short_name": "AnimationClip", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_animation::AnimationPlayer": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_animation::AnimationPlayer", + "properties": { + "active_animations": { + "type": { + "$ref": "#/$defs/std::collections::BTreeMap" + } + }, + "blend_weights": { + "type": { + "$ref": "#/$defs/bevy_utils::hashbrown::HashMap" + } + } + }, + "required": [ + "active_animations", + "blend_weights" + ], + "short_name": "AnimationPlayer", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_animation::AnimationTarget": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_animation::AnimationTarget", + "properties": { + "id": { + "type": { + "$ref": "#/$defs/bevy_animation::AnimationTargetId" + } + }, + "player": { + "type": { + "$ref": "#/$defs/bevy_ecs::entity::Entity" + } + } + }, + "required": [ + "id", + "player" + ], + "short_name": "AnimationTarget", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_animation::AnimationTargetId": { + "isComponent": false, + "isResource": false, + "items": false, + "long_name": "bevy_animation::AnimationTargetId", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/uuid::Uuid" + } + } + ], + "short_name": "AnimationTargetId", + "type": "array", + "typeInfo": "TupleStruct" + }, + "bevy_animation::Interpolation": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_animation::Interpolation", + "oneOf": [ + "Linear", + "Step", + "CubicSpline" + ], + "short_name": "Interpolation", + "type": "string", + "typeInfo": "Enum" + }, + "bevy_animation::Keyframes": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_animation::Keyframes", + "oneOf": [ + { + "items": false, + "long_name": "Rotation", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/alloc::vec::Vec" + } + } + ], + "short_name": "Rotation", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "Translation", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/alloc::vec::Vec" + } + } + ], + "short_name": "Translation", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "Scale", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/alloc::vec::Vec" + } + } + ], + "short_name": "Scale", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "Weights", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/alloc::vec::Vec" + } + } + ], + "short_name": "Weights", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Keyframes", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_animation::VariableCurve": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_animation::VariableCurve", + "properties": { + "interpolation": { + "type": { + "$ref": "#/$defs/bevy_animation::Interpolation" + } + }, + "keyframe_timestamps": { + "type": { + "$ref": "#/$defs/alloc::vec::Vec" + } + }, + "keyframes": { + "type": { + "$ref": "#/$defs/bevy_animation::Keyframes" + } + } + }, + "required": [ + "keyframe_timestamps", + "keyframes", + "interpolation" + ], + "short_name": "VariableCurve", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_animation::graph::AnimationGraph": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_animation::graph::AnimationGraph", + "properties": { + "graph": { + "type": { + "$ref": "#/$defs/petgraph::graph::DiGraph" + } + }, + "root": { + "type": { + "$ref": "#/$defs/petgraph::graph::NodeIndex" + } + } + }, + "required": [ + "graph", + "root" + ], + "short_name": "AnimationGraph", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_animation::transition::AnimationTransition": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_animation::transition::AnimationTransition", + "properties": { + "animation": { + "type": { + "$ref": "#/$defs/petgraph::graph::NodeIndex" + } + }, + "current_weight": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "weight_decline_per_sec": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "current_weight", + "weight_decline_per_sec", + "animation" + ], + "short_name": "AnimationTransition", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_animation::transition::AnimationTransitions": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_animation::transition::AnimationTransitions", + "properties": { + "main_animation": { + "type": { + "$ref": "#/$defs/core::option::Option" + } + }, + "transitions": { + "type": { + "$ref": "#/$defs/alloc::vec::Vec" + } + } + }, + "required": [ + "transitions" + ], + "short_name": "AnimationTransitions", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_asset::assets::AssetIndex": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_asset::assets::AssetIndex", + "properties": { + "generation": { + "type": { + "$ref": "#/$defs/u32" + } + }, + "index": { + "type": { + "$ref": "#/$defs/u32" + } + } + }, + "required": [ + "generation", + "index" + ], + "short_name": "AssetIndex", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_asset::handle::Handle<()>": { + "isComponent": true, + "isResource": false, + "long_name": "bevy_asset::handle::Handle<()>", + "oneOf": [ + { + "items": false, + "long_name": "Strong", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/std::sync::Arc" + } + } + ], + "short_name": "Strong", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "Weak", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_asset::id::AssetId<()>" + } + } + ], + "short_name": "Weak", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Handle<()>", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_asset::handle::Handle": { + "isComponent": true, + "isResource": false, + "long_name": "bevy_asset::handle::Handle", + "oneOf": [ + { + "items": false, + "long_name": "Strong", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/std::sync::Arc" + } + } + ], + "short_name": "Strong", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "Weak", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_asset::id::AssetId" + } + } + ], + "short_name": "Weak", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Handle", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_asset::handle::Handle": { + "isComponent": true, + "isResource": false, + "long_name": "bevy_asset::handle::Handle", + "oneOf": [ + { + "items": false, + "long_name": "Strong", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/std::sync::Arc" + } + } + ], + "short_name": "Strong", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "Weak", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_asset::id::AssetId" + } + } + ], + "short_name": "Weak", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Handle", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_asset::handle::Handle": { + "isComponent": true, + "isResource": false, + "long_name": "bevy_asset::handle::Handle", + "oneOf": [ + { + "items": false, + "long_name": "Strong", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/std::sync::Arc" + } + } + ], + "short_name": "Strong", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "Weak", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_asset::id::AssetId" + } + } + ], + "short_name": "Weak", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Handle", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_asset::handle::Handle": { + "isComponent": true, + "isResource": false, + "long_name": "bevy_asset::handle::Handle", + "oneOf": [ + { + "items": false, + "long_name": "Strong", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/std::sync::Arc" + } + } + ], + "short_name": "Strong", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "Weak", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_asset::id::AssetId" + } + } + ], + "short_name": "Weak", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Handle", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_asset::handle::Handle": { + "isComponent": true, + "isResource": false, + "long_name": "bevy_asset::handle::Handle", + "oneOf": [ + { + "items": false, + "long_name": "Strong", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/std::sync::Arc" + } + } + ], + "short_name": "Strong", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "Weak", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_asset::id::AssetId" + } + } + ], + "short_name": "Weak", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Handle", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_asset::handle::Handle": { + "isComponent": true, + "isResource": false, + "long_name": "bevy_asset::handle::Handle", + "oneOf": [ + { + "items": false, + "long_name": "Strong", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/std::sync::Arc" + } + } + ], + "short_name": "Strong", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "Weak", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_asset::id::AssetId" + } + } + ], + "short_name": "Weak", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Handle", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_asset::handle::Handle": { + "isComponent": true, + "isResource": false, + "long_name": "bevy_asset::handle::Handle", + "oneOf": [ + { + "items": false, + "long_name": "Strong", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/std::sync::Arc" + } + } + ], + "short_name": "Strong", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "Weak", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_asset::id::AssetId" + } + } + ], + "short_name": "Weak", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Handle", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_asset::handle::Handle": { + "isComponent": true, + "isResource": false, + "long_name": "bevy_asset::handle::Handle", + "oneOf": [ + { + "items": false, + "long_name": "Strong", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/std::sync::Arc" + } + } + ], + "short_name": "Strong", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "Weak", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_asset::id::AssetId" + } + } + ], + "short_name": "Weak", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Handle", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_asset::handle::Handle": { + "isComponent": true, + "isResource": false, + "long_name": "bevy_asset::handle::Handle", + "oneOf": [ + { + "items": false, + "long_name": "Strong", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/std::sync::Arc" + } + } + ], + "short_name": "Strong", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "Weak", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_asset::id::AssetId" + } + } + ], + "short_name": "Weak", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Handle", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_asset::handle::Handle": { + "isComponent": true, + "isResource": false, + "long_name": "bevy_asset::handle::Handle", + "oneOf": [ + { + "items": false, + "long_name": "Strong", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/std::sync::Arc" + } + } + ], + "short_name": "Strong", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "Weak", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_asset::id::AssetId" + } + } + ], + "short_name": "Weak", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Handle", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_asset::handle::Handle": { + "isComponent": true, + "isResource": false, + "long_name": "bevy_asset::handle::Handle", + "oneOf": [ + { + "items": false, + "long_name": "Strong", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/std::sync::Arc" + } + } + ], + "short_name": "Strong", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "Weak", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_asset::id::AssetId" + } + } + ], + "short_name": "Weak", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Handle", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_asset::handle::Handle": { + "isComponent": true, + "isResource": false, + "long_name": "bevy_asset::handle::Handle", + "oneOf": [ + { + "items": false, + "long_name": "Strong", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/std::sync::Arc" + } + } + ], + "short_name": "Strong", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "Weak", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_asset::id::AssetId" + } + } + ], + "short_name": "Weak", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Handle", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_asset::handle::Handle": { + "isComponent": true, + "isResource": false, + "long_name": "bevy_asset::handle::Handle", + "oneOf": [ + { + "items": false, + "long_name": "Strong", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/std::sync::Arc" + } + } + ], + "short_name": "Strong", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "Weak", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_asset::id::AssetId" + } + } + ], + "short_name": "Weak", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Handle", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_asset::handle::Handle": { + "isComponent": true, + "isResource": false, + "long_name": "bevy_asset::handle::Handle", + "oneOf": [ + { + "items": false, + "long_name": "Strong", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/std::sync::Arc" + } + } + ], + "short_name": "Strong", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "Weak", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_asset::id::AssetId" + } + } + ], + "short_name": "Weak", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Handle", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_asset::handle::Handle": { + "isComponent": true, + "isResource": false, + "long_name": "bevy_asset::handle::Handle", + "oneOf": [ + { + "items": false, + "long_name": "Strong", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/std::sync::Arc" + } + } + ], + "short_name": "Strong", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "Weak", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_asset::id::AssetId" + } + } + ], + "short_name": "Weak", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Handle", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_asset::handle::Handle": { + "isComponent": true, + "isResource": false, + "long_name": "bevy_asset::handle::Handle", + "oneOf": [ + { + "items": false, + "long_name": "Strong", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/std::sync::Arc" + } + } + ], + "short_name": "Strong", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "Weak", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_asset::id::AssetId" + } + } + ], + "short_name": "Weak", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Handle", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_asset::handle::Handle": { + "isComponent": true, + "isResource": false, + "long_name": "bevy_asset::handle::Handle", + "oneOf": [ + { + "items": false, + "long_name": "Strong", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/std::sync::Arc" + } + } + ], + "short_name": "Strong", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "Weak", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_asset::id::AssetId" + } + } + ], + "short_name": "Weak", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Handle", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_asset::handle::Handle": { + "isComponent": true, + "isResource": false, + "long_name": "bevy_asset::handle::Handle", + "oneOf": [ + { + "items": false, + "long_name": "Strong", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/std::sync::Arc" + } + } + ], + "short_name": "Strong", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "Weak", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_asset::id::AssetId" + } + } + ], + "short_name": "Weak", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Handle", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_asset::handle::Handle": { + "isComponent": true, + "isResource": false, + "long_name": "bevy_asset::handle::Handle", + "oneOf": [ + { + "items": false, + "long_name": "Strong", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/std::sync::Arc" + } + } + ], + "short_name": "Strong", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "Weak", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_asset::id::AssetId" + } + } + ], + "short_name": "Weak", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Handle", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_asset::handle::Handle": { + "isComponent": true, + "isResource": false, + "long_name": "bevy_asset::handle::Handle", + "oneOf": [ + { + "items": false, + "long_name": "Strong", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/std::sync::Arc" + } + } + ], + "short_name": "Strong", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "Weak", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_asset::id::AssetId" + } + } + ], + "short_name": "Weak", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Handle", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_asset::handle::Handle": { + "isComponent": true, + "isResource": false, + "long_name": "bevy_asset::handle::Handle", + "oneOf": [ + { + "items": false, + "long_name": "Strong", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/std::sync::Arc" + } + } + ], + "short_name": "Strong", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "Weak", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_asset::id::AssetId" + } + } + ], + "short_name": "Weak", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Handle", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_asset::handle::Handle": { + "isComponent": true, + "isResource": false, + "long_name": "bevy_asset::handle::Handle", + "oneOf": [ + { + "items": false, + "long_name": "Strong", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/std::sync::Arc" + } + } + ], + "short_name": "Strong", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "Weak", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_asset::id::AssetId" + } + } + ], + "short_name": "Weak", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Handle", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_asset::handle::Handle": { + "isComponent": true, + "isResource": false, + "long_name": "bevy_asset::handle::Handle", + "oneOf": [ + { + "items": false, + "long_name": "Strong", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/std::sync::Arc" + } + } + ], + "short_name": "Strong", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "Weak", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_asset::id::AssetId" + } + } + ], + "short_name": "Weak", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Handle", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_asset::handle::Handle": { + "isComponent": true, + "isResource": false, + "long_name": "bevy_asset::handle::Handle", + "oneOf": [ + { + "items": false, + "long_name": "Strong", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/std::sync::Arc" + } + } + ], + "short_name": "Strong", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "Weak", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_asset::id::AssetId" + } + } + ], + "short_name": "Weak", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Handle", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_asset::id::AssetId<()>": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_asset::id::AssetId<()>", + "oneOf": [ + { + "additionalProperties": false, + "long_name": "Index", + "properties": { + "index": { + "long_name": "index", + "type": { + "$ref": "#/$defs/bevy_asset::assets::AssetIndex" + } + } + }, + "required": [ + "index" + ], + "short_name": "Index", + "type": "object", + "typeInfo": "Struct" + }, + { + "additionalProperties": false, + "long_name": "Uuid", + "properties": { + "uuid": { + "long_name": "uuid", + "type": { + "$ref": "#/$defs/uuid::Uuid" + } + } + }, + "required": [ + "uuid" + ], + "short_name": "Uuid", + "type": "object", + "typeInfo": "Struct" + } + ], + "short_name": "AssetId<()>", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_asset::id::AssetId": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_asset::id::AssetId", + "oneOf": [ + { + "additionalProperties": false, + "long_name": "Index", + "properties": { + "index": { + "long_name": "index", + "type": { + "$ref": "#/$defs/bevy_asset::assets::AssetIndex" + } + } + }, + "required": [ + "index" + ], + "short_name": "Index", + "type": "object", + "typeInfo": "Struct" + }, + { + "additionalProperties": false, + "long_name": "Uuid", + "properties": { + "uuid": { + "long_name": "uuid", + "type": { + "$ref": "#/$defs/uuid::Uuid" + } + } + }, + "required": [ + "uuid" + ], + "short_name": "Uuid", + "type": "object", + "typeInfo": "Struct" + } + ], + "short_name": "AssetId", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_asset::id::AssetId": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_asset::id::AssetId", + "oneOf": [ + { + "additionalProperties": false, + "long_name": "Index", + "properties": { + "index": { + "long_name": "index", + "type": { + "$ref": "#/$defs/bevy_asset::assets::AssetIndex" + } + } + }, + "required": [ + "index" + ], + "short_name": "Index", + "type": "object", + "typeInfo": "Struct" + }, + { + "additionalProperties": false, + "long_name": "Uuid", + "properties": { + "uuid": { + "long_name": "uuid", + "type": { + "$ref": "#/$defs/uuid::Uuid" + } + } + }, + "required": [ + "uuid" + ], + "short_name": "Uuid", + "type": "object", + "typeInfo": "Struct" + } + ], + "short_name": "AssetId", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_asset::id::AssetId": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_asset::id::AssetId", + "oneOf": [ + { + "additionalProperties": false, + "long_name": "Index", + "properties": { + "index": { + "long_name": "index", + "type": { + "$ref": "#/$defs/bevy_asset::assets::AssetIndex" + } + } + }, + "required": [ + "index" + ], + "short_name": "Index", + "type": "object", + "typeInfo": "Struct" + }, + { + "additionalProperties": false, + "long_name": "Uuid", + "properties": { + "uuid": { + "long_name": "uuid", + "type": { + "$ref": "#/$defs/uuid::Uuid" + } + } + }, + "required": [ + "uuid" + ], + "short_name": "Uuid", + "type": "object", + "typeInfo": "Struct" + } + ], + "short_name": "AssetId", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_asset::id::AssetId": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_asset::id::AssetId", + "oneOf": [ + { + "additionalProperties": false, + "long_name": "Index", + "properties": { + "index": { + "long_name": "index", + "type": { + "$ref": "#/$defs/bevy_asset::assets::AssetIndex" + } + } + }, + "required": [ + "index" + ], + "short_name": "Index", + "type": "object", + "typeInfo": "Struct" + }, + { + "additionalProperties": false, + "long_name": "Uuid", + "properties": { + "uuid": { + "long_name": "uuid", + "type": { + "$ref": "#/$defs/uuid::Uuid" + } + } + }, + "required": [ + "uuid" + ], + "short_name": "Uuid", + "type": "object", + "typeInfo": "Struct" + } + ], + "short_name": "AssetId", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_asset::id::AssetId": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_asset::id::AssetId", + "oneOf": [ + { + "additionalProperties": false, + "long_name": "Index", + "properties": { + "index": { + "long_name": "index", + "type": { + "$ref": "#/$defs/bevy_asset::assets::AssetIndex" + } + } + }, + "required": [ + "index" + ], + "short_name": "Index", + "type": "object", + "typeInfo": "Struct" + }, + { + "additionalProperties": false, + "long_name": "Uuid", + "properties": { + "uuid": { + "long_name": "uuid", + "type": { + "$ref": "#/$defs/uuid::Uuid" + } + } + }, + "required": [ + "uuid" + ], + "short_name": "Uuid", + "type": "object", + "typeInfo": "Struct" + } + ], + "short_name": "AssetId", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_asset::id::AssetId": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_asset::id::AssetId", + "oneOf": [ + { + "additionalProperties": false, + "long_name": "Index", + "properties": { + "index": { + "long_name": "index", + "type": { + "$ref": "#/$defs/bevy_asset::assets::AssetIndex" + } + } + }, + "required": [ + "index" + ], + "short_name": "Index", + "type": "object", + "typeInfo": "Struct" + }, + { + "additionalProperties": false, + "long_name": "Uuid", + "properties": { + "uuid": { + "long_name": "uuid", + "type": { + "$ref": "#/$defs/uuid::Uuid" + } + } + }, + "required": [ + "uuid" + ], + "short_name": "Uuid", + "type": "object", + "typeInfo": "Struct" + } + ], + "short_name": "AssetId", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_asset::id::AssetId": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_asset::id::AssetId", + "oneOf": [ + { + "additionalProperties": false, + "long_name": "Index", + "properties": { + "index": { + "long_name": "index", + "type": { + "$ref": "#/$defs/bevy_asset::assets::AssetIndex" + } + } + }, + "required": [ + "index" + ], + "short_name": "Index", + "type": "object", + "typeInfo": "Struct" + }, + { + "additionalProperties": false, + "long_name": "Uuid", + "properties": { + "uuid": { + "long_name": "uuid", + "type": { + "$ref": "#/$defs/uuid::Uuid" + } + } + }, + "required": [ + "uuid" + ], + "short_name": "Uuid", + "type": "object", + "typeInfo": "Struct" + } + ], + "short_name": "AssetId", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_asset::id::AssetId": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_asset::id::AssetId", + "oneOf": [ + { + "additionalProperties": false, + "long_name": "Index", + "properties": { + "index": { + "long_name": "index", + "type": { + "$ref": "#/$defs/bevy_asset::assets::AssetIndex" + } + } + }, + "required": [ + "index" + ], + "short_name": "Index", + "type": "object", + "typeInfo": "Struct" + }, + { + "additionalProperties": false, + "long_name": "Uuid", + "properties": { + "uuid": { + "long_name": "uuid", + "type": { + "$ref": "#/$defs/uuid::Uuid" + } + } + }, + "required": [ + "uuid" + ], + "short_name": "Uuid", + "type": "object", + "typeInfo": "Struct" + } + ], + "short_name": "AssetId", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_asset::id::AssetId": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_asset::id::AssetId", + "oneOf": [ + { + "additionalProperties": false, + "long_name": "Index", + "properties": { + "index": { + "long_name": "index", + "type": { + "$ref": "#/$defs/bevy_asset::assets::AssetIndex" + } + } + }, + "required": [ + "index" + ], + "short_name": "Index", + "type": "object", + "typeInfo": "Struct" + }, + { + "additionalProperties": false, + "long_name": "Uuid", + "properties": { + "uuid": { + "long_name": "uuid", + "type": { + "$ref": "#/$defs/uuid::Uuid" + } + } + }, + "required": [ + "uuid" + ], + "short_name": "Uuid", + "type": "object", + "typeInfo": "Struct" + } + ], + "short_name": "AssetId", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_asset::id::AssetId": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_asset::id::AssetId", + "oneOf": [ + { + "additionalProperties": false, + "long_name": "Index", + "properties": { + "index": { + "long_name": "index", + "type": { + "$ref": "#/$defs/bevy_asset::assets::AssetIndex" + } + } + }, + "required": [ + "index" + ], + "short_name": "Index", + "type": "object", + "typeInfo": "Struct" + }, + { + "additionalProperties": false, + "long_name": "Uuid", + "properties": { + "uuid": { + "long_name": "uuid", + "type": { + "$ref": "#/$defs/uuid::Uuid" + } + } + }, + "required": [ + "uuid" + ], + "short_name": "Uuid", + "type": "object", + "typeInfo": "Struct" + } + ], + "short_name": "AssetId", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_asset::id::AssetId": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_asset::id::AssetId", + "oneOf": [ + { + "additionalProperties": false, + "long_name": "Index", + "properties": { + "index": { + "long_name": "index", + "type": { + "$ref": "#/$defs/bevy_asset::assets::AssetIndex" + } + } + }, + "required": [ + "index" + ], + "short_name": "Index", + "type": "object", + "typeInfo": "Struct" + }, + { + "additionalProperties": false, + "long_name": "Uuid", + "properties": { + "uuid": { + "long_name": "uuid", + "type": { + "$ref": "#/$defs/uuid::Uuid" + } + } + }, + "required": [ + "uuid" + ], + "short_name": "Uuid", + "type": "object", + "typeInfo": "Struct" + } + ], + "short_name": "AssetId", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_asset::id::AssetId": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_asset::id::AssetId", + "oneOf": [ + { + "additionalProperties": false, + "long_name": "Index", + "properties": { + "index": { + "long_name": "index", + "type": { + "$ref": "#/$defs/bevy_asset::assets::AssetIndex" + } + } + }, + "required": [ + "index" + ], + "short_name": "Index", + "type": "object", + "typeInfo": "Struct" + }, + { + "additionalProperties": false, + "long_name": "Uuid", + "properties": { + "uuid": { + "long_name": "uuid", + "type": { + "$ref": "#/$defs/uuid::Uuid" + } + } + }, + "required": [ + "uuid" + ], + "short_name": "Uuid", + "type": "object", + "typeInfo": "Struct" + } + ], + "short_name": "AssetId", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_asset::id::AssetId": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_asset::id::AssetId", + "oneOf": [ + { + "additionalProperties": false, + "long_name": "Index", + "properties": { + "index": { + "long_name": "index", + "type": { + "$ref": "#/$defs/bevy_asset::assets::AssetIndex" + } + } + }, + "required": [ + "index" + ], + "short_name": "Index", + "type": "object", + "typeInfo": "Struct" + }, + { + "additionalProperties": false, + "long_name": "Uuid", + "properties": { + "uuid": { + "long_name": "uuid", + "type": { + "$ref": "#/$defs/uuid::Uuid" + } + } + }, + "required": [ + "uuid" + ], + "short_name": "Uuid", + "type": "object", + "typeInfo": "Struct" + } + ], + "short_name": "AssetId", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_asset::id::AssetId": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_asset::id::AssetId", + "oneOf": [ + { + "additionalProperties": false, + "long_name": "Index", + "properties": { + "index": { + "long_name": "index", + "type": { + "$ref": "#/$defs/bevy_asset::assets::AssetIndex" + } + } + }, + "required": [ + "index" + ], + "short_name": "Index", + "type": "object", + "typeInfo": "Struct" + }, + { + "additionalProperties": false, + "long_name": "Uuid", + "properties": { + "uuid": { + "long_name": "uuid", + "type": { + "$ref": "#/$defs/uuid::Uuid" + } + } + }, + "required": [ + "uuid" + ], + "short_name": "Uuid", + "type": "object", + "typeInfo": "Struct" + } + ], + "short_name": "AssetId", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_asset::id::AssetId": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_asset::id::AssetId", + "oneOf": [ + { + "additionalProperties": false, + "long_name": "Index", + "properties": { + "index": { + "long_name": "index", + "type": { + "$ref": "#/$defs/bevy_asset::assets::AssetIndex" + } + } + }, + "required": [ + "index" + ], + "short_name": "Index", + "type": "object", + "typeInfo": "Struct" + }, + { + "additionalProperties": false, + "long_name": "Uuid", + "properties": { + "uuid": { + "long_name": "uuid", + "type": { + "$ref": "#/$defs/uuid::Uuid" + } + } + }, + "required": [ + "uuid" + ], + "short_name": "Uuid", + "type": "object", + "typeInfo": "Struct" + } + ], + "short_name": "AssetId", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_asset::id::AssetId": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_asset::id::AssetId", + "oneOf": [ + { + "additionalProperties": false, + "long_name": "Index", + "properties": { + "index": { + "long_name": "index", + "type": { + "$ref": "#/$defs/bevy_asset::assets::AssetIndex" + } + } + }, + "required": [ + "index" + ], + "short_name": "Index", + "type": "object", + "typeInfo": "Struct" + }, + { + "additionalProperties": false, + "long_name": "Uuid", + "properties": { + "uuid": { + "long_name": "uuid", + "type": { + "$ref": "#/$defs/uuid::Uuid" + } + } + }, + "required": [ + "uuid" + ], + "short_name": "Uuid", + "type": "object", + "typeInfo": "Struct" + } + ], + "short_name": "AssetId", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_asset::id::AssetId": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_asset::id::AssetId", + "oneOf": [ + { + "additionalProperties": false, + "long_name": "Index", + "properties": { + "index": { + "long_name": "index", + "type": { + "$ref": "#/$defs/bevy_asset::assets::AssetIndex" + } + } + }, + "required": [ + "index" + ], + "short_name": "Index", + "type": "object", + "typeInfo": "Struct" + }, + { + "additionalProperties": false, + "long_name": "Uuid", + "properties": { + "uuid": { + "long_name": "uuid", + "type": { + "$ref": "#/$defs/uuid::Uuid" + } + } + }, + "required": [ + "uuid" + ], + "short_name": "Uuid", + "type": "object", + "typeInfo": "Struct" + } + ], + "short_name": "AssetId", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_asset::id::AssetId": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_asset::id::AssetId", + "oneOf": [ + { + "additionalProperties": false, + "long_name": "Index", + "properties": { + "index": { + "long_name": "index", + "type": { + "$ref": "#/$defs/bevy_asset::assets::AssetIndex" + } + } + }, + "required": [ + "index" + ], + "short_name": "Index", + "type": "object", + "typeInfo": "Struct" + }, + { + "additionalProperties": false, + "long_name": "Uuid", + "properties": { + "uuid": { + "long_name": "uuid", + "type": { + "$ref": "#/$defs/uuid::Uuid" + } + } + }, + "required": [ + "uuid" + ], + "short_name": "Uuid", + "type": "object", + "typeInfo": "Struct" + } + ], + "short_name": "AssetId", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_asset::id::AssetId": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_asset::id::AssetId", + "oneOf": [ + { + "additionalProperties": false, + "long_name": "Index", + "properties": { + "index": { + "long_name": "index", + "type": { + "$ref": "#/$defs/bevy_asset::assets::AssetIndex" + } + } + }, + "required": [ + "index" + ], + "short_name": "Index", + "type": "object", + "typeInfo": "Struct" + }, + { + "additionalProperties": false, + "long_name": "Uuid", + "properties": { + "uuid": { + "long_name": "uuid", + "type": { + "$ref": "#/$defs/uuid::Uuid" + } + } + }, + "required": [ + "uuid" + ], + "short_name": "Uuid", + "type": "object", + "typeInfo": "Struct" + } + ], + "short_name": "AssetId", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_asset::id::AssetId": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_asset::id::AssetId", + "oneOf": [ + { + "additionalProperties": false, + "long_name": "Index", + "properties": { + "index": { + "long_name": "index", + "type": { + "$ref": "#/$defs/bevy_asset::assets::AssetIndex" + } + } + }, + "required": [ + "index" + ], + "short_name": "Index", + "type": "object", + "typeInfo": "Struct" + }, + { + "additionalProperties": false, + "long_name": "Uuid", + "properties": { + "uuid": { + "long_name": "uuid", + "type": { + "$ref": "#/$defs/uuid::Uuid" + } + } + }, + "required": [ + "uuid" + ], + "short_name": "Uuid", + "type": "object", + "typeInfo": "Struct" + } + ], + "short_name": "AssetId", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_asset::id::AssetId": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_asset::id::AssetId", + "oneOf": [ + { + "additionalProperties": false, + "long_name": "Index", + "properties": { + "index": { + "long_name": "index", + "type": { + "$ref": "#/$defs/bevy_asset::assets::AssetIndex" + } + } + }, + "required": [ + "index" + ], + "short_name": "Index", + "type": "object", + "typeInfo": "Struct" + }, + { + "additionalProperties": false, + "long_name": "Uuid", + "properties": { + "uuid": { + "long_name": "uuid", + "type": { + "$ref": "#/$defs/uuid::Uuid" + } + } + }, + "required": [ + "uuid" + ], + "short_name": "Uuid", + "type": "object", + "typeInfo": "Struct" + } + ], + "short_name": "AssetId", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_asset::id::AssetId": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_asset::id::AssetId", + "oneOf": [ + { + "additionalProperties": false, + "long_name": "Index", + "properties": { + "index": { + "long_name": "index", + "type": { + "$ref": "#/$defs/bevy_asset::assets::AssetIndex" + } + } + }, + "required": [ + "index" + ], + "short_name": "Index", + "type": "object", + "typeInfo": "Struct" + }, + { + "additionalProperties": false, + "long_name": "Uuid", + "properties": { + "uuid": { + "long_name": "uuid", + "type": { + "$ref": "#/$defs/uuid::Uuid" + } + } + }, + "required": [ + "uuid" + ], + "short_name": "Uuid", + "type": "object", + "typeInfo": "Struct" + } + ], + "short_name": "AssetId", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_asset::id::AssetId": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_asset::id::AssetId", + "oneOf": [ + { + "additionalProperties": false, + "long_name": "Index", + "properties": { + "index": { + "long_name": "index", + "type": { + "$ref": "#/$defs/bevy_asset::assets::AssetIndex" + } + } + }, + "required": [ + "index" + ], + "short_name": "Index", + "type": "object", + "typeInfo": "Struct" + }, + { + "additionalProperties": false, + "long_name": "Uuid", + "properties": { + "uuid": { + "long_name": "uuid", + "type": { + "$ref": "#/$defs/uuid::Uuid" + } + } + }, + "required": [ + "uuid" + ], + "short_name": "Uuid", + "type": "object", + "typeInfo": "Struct" + } + ], + "short_name": "AssetId", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_asset::id::AssetId": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_asset::id::AssetId", + "oneOf": [ + { + "additionalProperties": false, + "long_name": "Index", + "properties": { + "index": { + "long_name": "index", + "type": { + "$ref": "#/$defs/bevy_asset::assets::AssetIndex" + } + } + }, + "required": [ + "index" + ], + "short_name": "Index", + "type": "object", + "typeInfo": "Struct" + }, + { + "additionalProperties": false, + "long_name": "Uuid", + "properties": { + "uuid": { + "long_name": "uuid", + "type": { + "$ref": "#/$defs/uuid::Uuid" + } + } + }, + "required": [ + "uuid" + ], + "short_name": "Uuid", + "type": "object", + "typeInfo": "Struct" + } + ], + "short_name": "AssetId", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_asset::path::AssetPath": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_asset::path::AssetPath", + "short_name": "AssetPath", + "type": "object", + "typeInfo": "Value" + }, + "bevy_audio::audio::DefaultSpatialScale": { + "isComponent": false, + "isResource": true, + "items": false, + "long_name": "bevy_audio::audio::DefaultSpatialScale", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_audio::audio::SpatialScale" + } + } + ], + "short_name": "DefaultSpatialScale", + "type": "array", + "typeInfo": "TupleStruct" + }, + "bevy_audio::audio::GlobalVolume": { + "additionalProperties": false, + "isComponent": false, + "isResource": true, + "long_name": "bevy_audio::audio::GlobalVolume", + "properties": { + "volume": { + "type": { + "$ref": "#/$defs/bevy_audio::audio::Volume" + } + } + }, + "required": [ + "volume" + ], + "short_name": "GlobalVolume", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_audio::audio::PlaybackMode": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_audio::audio::PlaybackMode", + "oneOf": [ + "Once", + "Loop", + "Despawn", + "Remove" + ], + "short_name": "PlaybackMode", + "type": "string", + "typeInfo": "Enum" + }, + "bevy_audio::audio::PlaybackSettings": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_audio::audio::PlaybackSettings", + "properties": { + "mode": { + "type": { + "$ref": "#/$defs/bevy_audio::audio::PlaybackMode" + } + }, + "paused": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "spatial": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "spatial_scale": { + "type": { + "$ref": "#/$defs/core::option::Option" + } + }, + "speed": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "volume": { + "type": { + "$ref": "#/$defs/bevy_audio::audio::Volume" + } + } + }, + "required": [ + "mode", + "volume", + "speed", + "paused", + "spatial" + ], + "short_name": "PlaybackSettings", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_audio::audio::SpatialListener": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_audio::audio::SpatialListener", + "properties": { + "left_ear_offset": { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + }, + "right_ear_offset": { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + } + }, + "required": [ + "left_ear_offset", + "right_ear_offset" + ], + "short_name": "SpatialListener", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_audio::audio::SpatialScale": { + "isComponent": false, + "isResource": false, + "items": false, + "long_name": "bevy_audio::audio::SpatialScale", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + } + ], + "short_name": "SpatialScale", + "type": "array", + "typeInfo": "TupleStruct" + }, + "bevy_audio::audio::Volume": { + "isComponent": false, + "isResource": false, + "items": false, + "long_name": "bevy_audio::audio::Volume", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/f32" + } + } + ], + "short_name": "Volume", + "type": "array", + "typeInfo": "TupleStruct" + }, + "bevy_color::color::Color": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_color::color::Color", + "oneOf": [ + { + "items": false, + "long_name": "Srgba", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_color::srgba::Srgba" + } + } + ], + "short_name": "Srgba", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "LinearRgba", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_color::linear_rgba::LinearRgba" + } + } + ], + "short_name": "LinearRgba", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "Hsla", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_color::hsla::Hsla" + } + } + ], + "short_name": "Hsla", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "Hsva", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_color::hsva::Hsva" + } + } + ], + "short_name": "Hsva", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "Hwba", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_color::hwba::Hwba" + } + } + ], + "short_name": "Hwba", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "Laba", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_color::laba::Laba" + } + } + ], + "short_name": "Laba", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "Lcha", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_color::lcha::Lcha" + } + } + ], + "short_name": "Lcha", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "Oklaba", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_color::oklaba::Oklaba" + } + } + ], + "short_name": "Oklaba", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "Oklcha", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_color::oklcha::Oklcha" + } + } + ], + "short_name": "Oklcha", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "Xyza", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_color::xyza::Xyza" + } + } + ], + "short_name": "Xyza", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Color", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_color::hsla::Hsla": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_color::hsla::Hsla", + "properties": { + "alpha": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "hue": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "lightness": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "saturation": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "hue", + "saturation", + "lightness", + "alpha" + ], + "short_name": "Hsla", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_color::hsva::Hsva": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_color::hsva::Hsva", + "properties": { + "alpha": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "hue": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "saturation": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "value": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "hue", + "saturation", + "value", + "alpha" + ], + "short_name": "Hsva", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_color::hwba::Hwba": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_color::hwba::Hwba", + "properties": { + "alpha": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "blackness": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "hue": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "whiteness": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "hue", + "whiteness", + "blackness", + "alpha" + ], + "short_name": "Hwba", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_color::laba::Laba": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_color::laba::Laba", + "properties": { + "a": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "alpha": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "b": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "lightness": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "lightness", + "a", + "b", + "alpha" + ], + "short_name": "Laba", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_color::lcha::Lcha": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_color::lcha::Lcha", + "properties": { + "alpha": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "chroma": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "hue": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "lightness": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "lightness", + "chroma", + "hue", + "alpha" + ], + "short_name": "Lcha", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_color::linear_rgba::LinearRgba": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_color::linear_rgba::LinearRgba", + "properties": { + "alpha": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "blue": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "green": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "red": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "red", + "green", + "blue", + "alpha" + ], + "short_name": "LinearRgba", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_color::oklaba::Oklaba": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_color::oklaba::Oklaba", + "properties": { + "a": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "alpha": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "b": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "lightness": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "lightness", + "a", + "b", + "alpha" + ], + "short_name": "Oklaba", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_color::oklcha::Oklcha": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_color::oklcha::Oklcha", + "properties": { + "alpha": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "chroma": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "hue": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "lightness": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "lightness", + "chroma", + "hue", + "alpha" + ], + "short_name": "Oklcha", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_color::srgba::Srgba": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_color::srgba::Srgba", + "properties": { + "alpha": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "blue": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "green": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "red": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "red", + "green", + "blue", + "alpha" + ], + "short_name": "Srgba", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_color::xyza::Xyza": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_color::xyza::Xyza", + "properties": { + "alpha": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "x": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "y": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "z": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "x", + "y", + "z", + "alpha" + ], + "short_name": "Xyza", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_core::name::Name": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_core::name::Name", + "properties": { + "hash": { + "type": { + "$ref": "#/$defs/u64" + } + }, + "name": { + "type": { + "$ref": "#/$defs/alloc::borrow::Cow" + } + } + }, + "required": [ + "hash", + "name" + ], + "short_name": "Name", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_core_pipeline::bloom::settings::BloomCompositeMode": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_core_pipeline::bloom::settings::BloomCompositeMode", + "oneOf": [ + "EnergyConserving", + "Additive" + ], + "short_name": "BloomCompositeMode", + "type": "string", + "typeInfo": "Enum" + }, + "bevy_core_pipeline::bloom::settings::BloomPrefilterSettings": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_core_pipeline::bloom::settings::BloomPrefilterSettings", + "properties": { + "threshold": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "threshold_softness": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "threshold", + "threshold_softness" + ], + "short_name": "BloomPrefilterSettings", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_core_pipeline::bloom::settings::BloomSettings": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_core_pipeline::bloom::settings::BloomSettings", + "properties": { + "composite_mode": { + "type": { + "$ref": "#/$defs/bevy_core_pipeline::bloom::settings::BloomCompositeMode" + } + }, + "high_pass_frequency": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "intensity": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "low_frequency_boost": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "low_frequency_boost_curvature": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "prefilter_settings": { + "type": { + "$ref": "#/$defs/bevy_core_pipeline::bloom::settings::BloomPrefilterSettings" + } + } + }, + "required": [ + "intensity", + "low_frequency_boost", + "low_frequency_boost_curvature", + "high_pass_frequency", + "prefilter_settings", + "composite_mode" + ], + "short_name": "BloomSettings", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_core_pipeline::contrast_adaptive_sharpening::ContrastAdaptiveSharpeningSettings": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_core_pipeline::contrast_adaptive_sharpening::ContrastAdaptiveSharpeningSettings", + "properties": { + "denoise": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "enabled": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "sharpening_strength": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "enabled", + "sharpening_strength", + "denoise" + ], + "short_name": "ContrastAdaptiveSharpeningSettings", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_core_pipeline::core_2d::camera_2d::Camera2d": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_core_pipeline::core_2d::camera_2d::Camera2d", + "properties": {}, + "required": [], + "short_name": "Camera2d", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_core_pipeline::core_3d::camera_3d::Camera3d": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_core_pipeline::core_3d::camera_3d::Camera3d", + "properties": { + "depth_load_op": { + "type": { + "$ref": "#/$defs/bevy_core_pipeline::core_3d::camera_3d::Camera3dDepthLoadOp" + } + }, + "depth_texture_usages": { + "type": { + "$ref": "#/$defs/bevy_core_pipeline::core_3d::camera_3d::Camera3dDepthTextureUsage" + } + }, + "screen_space_specular_transmission_quality": { + "type": { + "$ref": "#/$defs/bevy_core_pipeline::core_3d::camera_3d::ScreenSpaceTransmissionQuality" + } + }, + "screen_space_specular_transmission_steps": { + "type": { + "$ref": "#/$defs/usize" + } + } + }, + "required": [ + "depth_load_op", + "depth_texture_usages", + "screen_space_specular_transmission_steps", + "screen_space_specular_transmission_quality" + ], + "short_name": "Camera3d", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_core_pipeline::core_3d::camera_3d::Camera3dDepthLoadOp": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_core_pipeline::core_3d::camera_3d::Camera3dDepthLoadOp", + "oneOf": [ + { + "items": false, + "long_name": "Clear", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/f32" + } + } + ], + "short_name": "Clear", + "type": "array", + "typeInfo": "Tuple" + }, + { + "long_name": "Load" + } + ], + "short_name": "Camera3dDepthLoadOp", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_core_pipeline::core_3d::camera_3d::Camera3dDepthTextureUsage": { + "isComponent": false, + "isResource": false, + "items": false, + "long_name": "bevy_core_pipeline::core_3d::camera_3d::Camera3dDepthTextureUsage", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/u32" + } + } + ], + "short_name": "Camera3dDepthTextureUsage", + "type": "array", + "typeInfo": "TupleStruct" + }, + "bevy_core_pipeline::core_3d::camera_3d::ScreenSpaceTransmissionQuality": { + "isComponent": false, + "isResource": true, + "long_name": "bevy_core_pipeline::core_3d::camera_3d::ScreenSpaceTransmissionQuality", + "oneOf": [ + "Low", + "Medium", + "High", + "Ultra" + ], + "short_name": "ScreenSpaceTransmissionQuality", + "type": "string", + "typeInfo": "Enum" + }, + "bevy_core_pipeline::fxaa::Fxaa": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_core_pipeline::fxaa::Fxaa", + "properties": { + "edge_threshold": { + "type": { + "$ref": "#/$defs/bevy_core_pipeline::fxaa::Sensitivity" + } + }, + "edge_threshold_min": { + "type": { + "$ref": "#/$defs/bevy_core_pipeline::fxaa::Sensitivity" + } + }, + "enabled": { + "type": { + "$ref": "#/$defs/bool" + } + } + }, + "required": [ + "enabled", + "edge_threshold", + "edge_threshold_min" + ], + "short_name": "Fxaa", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_core_pipeline::fxaa::Sensitivity": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_core_pipeline::fxaa::Sensitivity", + "oneOf": [ + "Low", + "Medium", + "High", + "Ultra", + "Extreme" + ], + "short_name": "Sensitivity", + "type": "string", + "typeInfo": "Enum" + }, + "bevy_core_pipeline::prepass::DeferredPrepass": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_core_pipeline::prepass::DeferredPrepass", + "properties": {}, + "required": [], + "short_name": "DeferredPrepass", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_core_pipeline::prepass::DepthPrepass": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_core_pipeline::prepass::DepthPrepass", + "properties": {}, + "required": [], + "short_name": "DepthPrepass", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_core_pipeline::prepass::MotionVectorPrepass": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_core_pipeline::prepass::MotionVectorPrepass", + "properties": {}, + "required": [], + "short_name": "MotionVectorPrepass", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_core_pipeline::prepass::NormalPrepass": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_core_pipeline::prepass::NormalPrepass", + "properties": {}, + "required": [], + "short_name": "NormalPrepass", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_core_pipeline::smaa::SmaaPreset": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_core_pipeline::smaa::SmaaPreset", + "oneOf": [ + "Low", + "Medium", + "High", + "Ultra" + ], + "short_name": "SmaaPreset", + "type": "string", + "typeInfo": "Enum" + }, + "bevy_core_pipeline::smaa::SmaaSettings": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_core_pipeline::smaa::SmaaSettings", + "properties": { + "preset": { + "type": { + "$ref": "#/$defs/bevy_core_pipeline::smaa::SmaaPreset" + } + } + }, + "required": [ + "preset" + ], + "short_name": "SmaaSettings", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_core_pipeline::tonemapping::DebandDither": { + "isComponent": true, + "isResource": false, + "long_name": "bevy_core_pipeline::tonemapping::DebandDither", + "oneOf": [ + "Disabled", + "Enabled" + ], + "short_name": "DebandDither", + "type": "string", + "typeInfo": "Enum" + }, + "bevy_core_pipeline::tonemapping::Tonemapping": { + "isComponent": true, + "isResource": false, + "long_name": "bevy_core_pipeline::tonemapping::Tonemapping", + "oneOf": [ + "None", + "Reinhard", + "ReinhardLuminance", + "AcesFitted", + "AgX", + "SomewhatBoringDisplayTransform", + "TonyMcMapface", + "BlenderFilmic" + ], + "short_name": "Tonemapping", + "type": "string", + "typeInfo": "Enum" + }, + "bevy_ecs::entity::Entity": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_ecs::entity::Entity", + "short_name": "Entity", + "type": "object", + "typeInfo": "Value" + }, + "bevy_egui::EguiSettings": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_egui::EguiSettings", + "properties": { + "default_open_url_target": { + "type": { + "$ref": "#/$defs/core::option::Option" + } + }, + "scale_factor": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "scale_factor" + ], + "short_name": "EguiSettings", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_gizmos::aabb::AabbGizmoConfigGroup": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_gizmos::aabb::AabbGizmoConfigGroup", + "properties": { + "default_color": { + "type": { + "$ref": "#/$defs/core::option::Option" + } + }, + "draw_all": { + "type": { + "$ref": "#/$defs/bool" + } + } + }, + "required": [ + "draw_all" + ], + "short_name": "AabbGizmoConfigGroup", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_gizmos::config::GizmoConfig": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_gizmos::config::GizmoConfig", + "properties": { + "depth_bias": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "enabled": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "line_joints": { + "type": { + "$ref": "#/$defs/bevy_gizmos::config::GizmoLineJoint" + } + }, + "line_perspective": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "line_style": { + "type": { + "$ref": "#/$defs/bevy_gizmos::config::GizmoLineStyle" + } + }, + "line_width": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "render_layers": { + "type": { + "$ref": "#/$defs/bevy_render::view::visibility::render_layers::RenderLayers" + } + } + }, + "required": [ + "enabled", + "line_width", + "line_perspective", + "line_style", + "depth_bias", + "render_layers", + "line_joints" + ], + "short_name": "GizmoConfig", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_gizmos::config::GizmoConfigStore": { + "additionalProperties": false, + "isComponent": false, + "isResource": true, + "long_name": "bevy_gizmos::config::GizmoConfigStore", + "properties": {}, + "required": [], + "short_name": "GizmoConfigStore", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_gizmos::config::GizmoLineJoint": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_gizmos::config::GizmoLineJoint", + "oneOf": [ + { + "long_name": "None" + }, + { + "long_name": "Miter" + }, + { + "items": false, + "long_name": "Round", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/u32" + } + } + ], + "short_name": "Round", + "type": "array", + "typeInfo": "Tuple" + }, + { + "long_name": "Bevel" + } + ], + "short_name": "GizmoLineJoint", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_gizmos::config::GizmoLineStyle": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_gizmos::config::GizmoLineStyle", + "oneOf": [ + "Solid", + "Dotted" + ], + "short_name": "GizmoLineStyle", + "type": "string", + "typeInfo": "Enum" + }, + "bevy_gizmos::light::LightGizmoColor": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_gizmos::light::LightGizmoColor", + "oneOf": [ + { + "items": false, + "long_name": "Manual", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_color::color::Color" + } + } + ], + "short_name": "Manual", + "type": "array", + "typeInfo": "Tuple" + }, + { + "long_name": "Varied" + }, + { + "long_name": "MatchLightColor" + }, + { + "long_name": "ByLightType" + } + ], + "short_name": "LightGizmoColor", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_gizmos::light::LightGizmoConfigGroup": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_gizmos::light::LightGizmoConfigGroup", + "properties": { + "color": { + "type": { + "$ref": "#/$defs/bevy_gizmos::light::LightGizmoColor" + } + }, + "directional_light_color": { + "type": { + "$ref": "#/$defs/bevy_color::color::Color" + } + }, + "draw_all": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "point_light_color": { + "type": { + "$ref": "#/$defs/bevy_color::color::Color" + } + }, + "spot_light_color": { + "type": { + "$ref": "#/$defs/bevy_color::color::Color" + } + } + }, + "required": [ + "draw_all", + "color", + "point_light_color", + "spot_light_color", + "directional_light_color" + ], + "short_name": "LightGizmoConfigGroup", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_gltf::GltfExtras": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_gltf::GltfExtras", + "properties": { + "value": { + "type": { + "$ref": "#/$defs/alloc::string::String" + } + } + }, + "required": [ + "value" + ], + "short_name": "GltfExtras", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_gltf::GltfMaterialExtras": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_gltf::GltfMaterialExtras", + "properties": { + "value": { + "type": { + "$ref": "#/$defs/alloc::string::String" + } + } + }, + "required": [ + "value" + ], + "short_name": "GltfMaterialExtras", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_gltf::GltfMeshExtras": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_gltf::GltfMeshExtras", + "properties": { + "value": { + "type": { + "$ref": "#/$defs/alloc::string::String" + } + } + }, + "required": [ + "value" + ], + "short_name": "GltfMeshExtras", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_gltf::GltfSceneExtras": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_gltf::GltfSceneExtras", + "properties": { + "value": { + "type": { + "$ref": "#/$defs/alloc::string::String" + } + } + }, + "required": [ + "value" + ], + "short_name": "GltfSceneExtras", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_hierarchy::components::children::Children": { + "isComponent": true, + "isResource": false, + "items": false, + "long_name": "bevy_hierarchy::components::children::Children", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/smallvec::SmallVec<[bevy_ecs::entity::Entity; 8]>" + } + } + ], + "short_name": "Children", + "type": "array", + "typeInfo": "TupleStruct" + }, + "bevy_hierarchy::components::parent::Parent": { + "isComponent": true, + "isResource": false, + "items": false, + "long_name": "bevy_hierarchy::components::parent::Parent", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_ecs::entity::Entity" + } + } + ], + "short_name": "Parent", + "type": "array", + "typeInfo": "TupleStruct" + }, + "bevy_input::ButtonState": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_input::ButtonState", + "oneOf": [ + "Pressed", + "Released" + ], + "short_name": "ButtonState", + "type": "string", + "typeInfo": "Enum" + }, + "bevy_input::gamepad::AxisSettings": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_input::gamepad::AxisSettings", + "properties": { + "deadzone_lowerbound": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "deadzone_upperbound": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "livezone_lowerbound": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "livezone_upperbound": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "threshold": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "livezone_upperbound", + "deadzone_upperbound", + "deadzone_lowerbound", + "livezone_lowerbound", + "threshold" + ], + "short_name": "AxisSettings", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_input::gamepad::ButtonAxisSettings": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_input::gamepad::ButtonAxisSettings", + "properties": { + "high": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "low": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "threshold": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "high", + "low", + "threshold" + ], + "short_name": "ButtonAxisSettings", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_input::gamepad::ButtonSettings": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_input::gamepad::ButtonSettings", + "properties": { + "press_threshold": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "release_threshold": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "press_threshold", + "release_threshold" + ], + "short_name": "ButtonSettings", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_input::gamepad::Gamepad": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_input::gamepad::Gamepad", + "properties": { + "id": { + "type": { + "$ref": "#/$defs/usize" + } + } + }, + "required": [ + "id" + ], + "short_name": "Gamepad", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_input::gamepad::GamepadAxis": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_input::gamepad::GamepadAxis", + "properties": { + "axis_type": { + "type": { + "$ref": "#/$defs/bevy_input::gamepad::GamepadAxisType" + } + }, + "gamepad": { + "type": { + "$ref": "#/$defs/bevy_input::gamepad::Gamepad" + } + } + }, + "required": [ + "gamepad", + "axis_type" + ], + "short_name": "GamepadAxis", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_input::gamepad::GamepadAxisChangedEvent": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_input::gamepad::GamepadAxisChangedEvent", + "properties": { + "axis_type": { + "type": { + "$ref": "#/$defs/bevy_input::gamepad::GamepadAxisType" + } + }, + "gamepad": { + "type": { + "$ref": "#/$defs/bevy_input::gamepad::Gamepad" + } + }, + "value": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "gamepad", + "axis_type", + "value" + ], + "short_name": "GamepadAxisChangedEvent", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_input::gamepad::GamepadAxisType": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_input::gamepad::GamepadAxisType", + "oneOf": [ + { + "long_name": "LeftStickX" + }, + { + "long_name": "LeftStickY" + }, + { + "long_name": "LeftZ" + }, + { + "long_name": "RightStickX" + }, + { + "long_name": "RightStickY" + }, + { + "long_name": "RightZ" + }, + { + "items": false, + "long_name": "Other", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/u8" + } + } + ], + "short_name": "Other", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "GamepadAxisType", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_input::gamepad::GamepadButton": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_input::gamepad::GamepadButton", + "properties": { + "button_type": { + "type": { + "$ref": "#/$defs/bevy_input::gamepad::GamepadButtonType" + } + }, + "gamepad": { + "type": { + "$ref": "#/$defs/bevy_input::gamepad::Gamepad" + } + } + }, + "required": [ + "gamepad", + "button_type" + ], + "short_name": "GamepadButton", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_input::gamepad::GamepadButtonChangedEvent": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_input::gamepad::GamepadButtonChangedEvent", + "properties": { + "button_type": { + "type": { + "$ref": "#/$defs/bevy_input::gamepad::GamepadButtonType" + } + }, + "gamepad": { + "type": { + "$ref": "#/$defs/bevy_input::gamepad::Gamepad" + } + }, + "value": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "gamepad", + "button_type", + "value" + ], + "short_name": "GamepadButtonChangedEvent", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_input::gamepad::GamepadButtonInput": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_input::gamepad::GamepadButtonInput", + "properties": { + "button": { + "type": { + "$ref": "#/$defs/bevy_input::gamepad::GamepadButton" + } + }, + "state": { + "type": { + "$ref": "#/$defs/bevy_input::ButtonState" + } + } + }, + "required": [ + "button", + "state" + ], + "short_name": "GamepadButtonInput", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_input::gamepad::GamepadButtonType": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_input::gamepad::GamepadButtonType", + "oneOf": [ + { + "long_name": "South" + }, + { + "long_name": "East" + }, + { + "long_name": "North" + }, + { + "long_name": "West" + }, + { + "long_name": "C" + }, + { + "long_name": "Z" + }, + { + "long_name": "LeftTrigger" + }, + { + "long_name": "LeftTrigger2" + }, + { + "long_name": "RightTrigger" + }, + { + "long_name": "RightTrigger2" + }, + { + "long_name": "Select" + }, + { + "long_name": "Start" + }, + { + "long_name": "Mode" + }, + { + "long_name": "LeftThumb" + }, + { + "long_name": "RightThumb" + }, + { + "long_name": "DPadUp" + }, + { + "long_name": "DPadDown" + }, + { + "long_name": "DPadLeft" + }, + { + "long_name": "DPadRight" + }, + { + "items": false, + "long_name": "Other", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/u8" + } + } + ], + "short_name": "Other", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "GamepadButtonType", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_input::gamepad::GamepadConnection": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_input::gamepad::GamepadConnection", + "oneOf": [ + { + "items": false, + "long_name": "Connected", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_input::gamepad::GamepadInfo" + } + } + ], + "short_name": "Connected", + "type": "array", + "typeInfo": "Tuple" + }, + { + "long_name": "Disconnected" + } + ], + "short_name": "GamepadConnection", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_input::gamepad::GamepadConnectionEvent": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_input::gamepad::GamepadConnectionEvent", + "properties": { + "connection": { + "type": { + "$ref": "#/$defs/bevy_input::gamepad::GamepadConnection" + } + }, + "gamepad": { + "type": { + "$ref": "#/$defs/bevy_input::gamepad::Gamepad" + } + } + }, + "required": [ + "gamepad", + "connection" + ], + "short_name": "GamepadConnectionEvent", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_input::gamepad::GamepadEvent": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_input::gamepad::GamepadEvent", + "oneOf": [ + { + "items": false, + "long_name": "Connection", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_input::gamepad::GamepadConnectionEvent" + } + } + ], + "short_name": "Connection", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "Button", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_input::gamepad::GamepadButtonChangedEvent" + } + } + ], + "short_name": "Button", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "Axis", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_input::gamepad::GamepadAxisChangedEvent" + } + } + ], + "short_name": "Axis", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "GamepadEvent", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_input::gamepad::GamepadInfo": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_input::gamepad::GamepadInfo", + "properties": { + "name": { + "type": { + "$ref": "#/$defs/alloc::string::String" + } + } + }, + "required": [ + "name" + ], + "short_name": "GamepadInfo", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_input::gamepad::GamepadSettings": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_input::gamepad::GamepadSettings", + "properties": { + "axis_settings": { + "type": { + "$ref": "#/$defs/bevy_utils::hashbrown::HashMap" + } + }, + "button_axis_settings": { + "type": { + "$ref": "#/$defs/bevy_utils::hashbrown::HashMap" + } + }, + "button_settings": { + "type": { + "$ref": "#/$defs/bevy_utils::hashbrown::HashMap" + } + }, + "default_axis_settings": { + "type": { + "$ref": "#/$defs/bevy_input::gamepad::AxisSettings" + } + }, + "default_button_axis_settings": { + "type": { + "$ref": "#/$defs/bevy_input::gamepad::ButtonAxisSettings" + } + }, + "default_button_settings": { + "type": { + "$ref": "#/$defs/bevy_input::gamepad::ButtonSettings" + } + } + }, + "required": [ + "default_button_settings", + "default_axis_settings", + "default_button_axis_settings", + "button_settings", + "axis_settings", + "button_axis_settings" + ], + "short_name": "GamepadSettings", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_input::gestures::DoubleTapGesture": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_input::gestures::DoubleTapGesture", + "properties": {}, + "required": [], + "short_name": "DoubleTapGesture", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_input::gestures::PanGesture": { + "isComponent": false, + "isResource": false, + "items": false, + "long_name": "bevy_input::gestures::PanGesture", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/glam::Vec2" + } + } + ], + "short_name": "PanGesture", + "type": "array", + "typeInfo": "TupleStruct" + }, + "bevy_input::gestures::PinchGesture": { + "isComponent": false, + "isResource": false, + "items": false, + "long_name": "bevy_input::gestures::PinchGesture", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/f32" + } + } + ], + "short_name": "PinchGesture", + "type": "array", + "typeInfo": "TupleStruct" + }, + "bevy_input::gestures::RotationGesture": { + "isComponent": false, + "isResource": false, + "items": false, + "long_name": "bevy_input::gestures::RotationGesture", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/f32" + } + } + ], + "short_name": "RotationGesture", + "type": "array", + "typeInfo": "TupleStruct" + }, + "bevy_input::keyboard::Key": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_input::keyboard::Key", + "oneOf": [ + { + "items": false, + "long_name": "Character", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/smol_str::SmolStr" + } + } + ], + "short_name": "Character", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "Unidentified", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_input::keyboard::NativeKey" + } + } + ], + "short_name": "Unidentified", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "Dead", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/core::option::Option" + } + } + ], + "short_name": "Dead", + "type": "array", + "typeInfo": "Tuple" + }, + { + "long_name": "Alt" + }, + { + "long_name": "AltGraph" + }, + { + "long_name": "CapsLock" + }, + { + "long_name": "Control" + }, + { + "long_name": "Fn" + }, + { + "long_name": "FnLock" + }, + { + "long_name": "NumLock" + }, + { + "long_name": "ScrollLock" + }, + { + "long_name": "Shift" + }, + { + "long_name": "Symbol" + }, + { + "long_name": "SymbolLock" + }, + { + "long_name": "Meta" + }, + { + "long_name": "Hyper" + }, + { + "long_name": "Super" + }, + { + "long_name": "Enter" + }, + { + "long_name": "Tab" + }, + { + "long_name": "Space" + }, + { + "long_name": "ArrowDown" + }, + { + "long_name": "ArrowLeft" + }, + { + "long_name": "ArrowRight" + }, + { + "long_name": "ArrowUp" + }, + { + "long_name": "End" + }, + { + "long_name": "Home" + }, + { + "long_name": "PageDown" + }, + { + "long_name": "PageUp" + }, + { + "long_name": "Backspace" + }, + { + "long_name": "Clear" + }, + { + "long_name": "Copy" + }, + { + "long_name": "CrSel" + }, + { + "long_name": "Cut" + }, + { + "long_name": "Delete" + }, + { + "long_name": "EraseEof" + }, + { + "long_name": "ExSel" + }, + { + "long_name": "Insert" + }, + { + "long_name": "Paste" + }, + { + "long_name": "Redo" + }, + { + "long_name": "Undo" + }, + { + "long_name": "Accept" + }, + { + "long_name": "Again" + }, + { + "long_name": "Attn" + }, + { + "long_name": "Cancel" + }, + { + "long_name": "ContextMenu" + }, + { + "long_name": "Escape" + }, + { + "long_name": "Execute" + }, + { + "long_name": "Find" + }, + { + "long_name": "Help" + }, + { + "long_name": "Pause" + }, + { + "long_name": "Play" + }, + { + "long_name": "Props" + }, + { + "long_name": "Select" + }, + { + "long_name": "ZoomIn" + }, + { + "long_name": "ZoomOut" + }, + { + "long_name": "BrightnessDown" + }, + { + "long_name": "BrightnessUp" + }, + { + "long_name": "Eject" + }, + { + "long_name": "LogOff" + }, + { + "long_name": "Power" + }, + { + "long_name": "PowerOff" + }, + { + "long_name": "PrintScreen" + }, + { + "long_name": "Hibernate" + }, + { + "long_name": "Standby" + }, + { + "long_name": "WakeUp" + }, + { + "long_name": "AllCandidates" + }, + { + "long_name": "Alphanumeric" + }, + { + "long_name": "CodeInput" + }, + { + "long_name": "Compose" + }, + { + "long_name": "Convert" + }, + { + "long_name": "FinalMode" + }, + { + "long_name": "GroupFirst" + }, + { + "long_name": "GroupLast" + }, + { + "long_name": "GroupNext" + }, + { + "long_name": "GroupPrevious" + }, + { + "long_name": "ModeChange" + }, + { + "long_name": "NextCandidate" + }, + { + "long_name": "NonConvert" + }, + { + "long_name": "PreviousCandidate" + }, + { + "long_name": "Process" + }, + { + "long_name": "SingleCandidate" + }, + { + "long_name": "HangulMode" + }, + { + "long_name": "HanjaMode" + }, + { + "long_name": "JunjaMode" + }, + { + "long_name": "Eisu" + }, + { + "long_name": "Hankaku" + }, + { + "long_name": "Hiragana" + }, + { + "long_name": "HiraganaKatakana" + }, + { + "long_name": "KanaMode" + }, + { + "long_name": "KanjiMode" + }, + { + "long_name": "Katakana" + }, + { + "long_name": "Romaji" + }, + { + "long_name": "Zenkaku" + }, + { + "long_name": "ZenkakuHankaku" + }, + { + "long_name": "Soft1" + }, + { + "long_name": "Soft2" + }, + { + "long_name": "Soft3" + }, + { + "long_name": "Soft4" + }, + { + "long_name": "ChannelDown" + }, + { + "long_name": "ChannelUp" + }, + { + "long_name": "Close" + }, + { + "long_name": "MailForward" + }, + { + "long_name": "MailReply" + }, + { + "long_name": "MailSend" + }, + { + "long_name": "MediaClose" + }, + { + "long_name": "MediaFastForward" + }, + { + "long_name": "MediaPause" + }, + { + "long_name": "MediaPlay" + }, + { + "long_name": "MediaPlayPause" + }, + { + "long_name": "MediaRecord" + }, + { + "long_name": "MediaRewind" + }, + { + "long_name": "MediaStop" + }, + { + "long_name": "MediaTrackNext" + }, + { + "long_name": "MediaTrackPrevious" + }, + { + "long_name": "New" + }, + { + "long_name": "Open" + }, + { + "long_name": "Print" + }, + { + "long_name": "Save" + }, + { + "long_name": "SpellCheck" + }, + { + "long_name": "Key11" + }, + { + "long_name": "Key12" + }, + { + "long_name": "AudioBalanceLeft" + }, + { + "long_name": "AudioBalanceRight" + }, + { + "long_name": "AudioBassBoostDown" + }, + { + "long_name": "AudioBassBoostToggle" + }, + { + "long_name": "AudioBassBoostUp" + }, + { + "long_name": "AudioFaderFront" + }, + { + "long_name": "AudioFaderRear" + }, + { + "long_name": "AudioSurroundModeNext" + }, + { + "long_name": "AudioTrebleDown" + }, + { + "long_name": "AudioTrebleUp" + }, + { + "long_name": "AudioVolumeDown" + }, + { + "long_name": "AudioVolumeUp" + }, + { + "long_name": "AudioVolumeMute" + }, + { + "long_name": "MicrophoneToggle" + }, + { + "long_name": "MicrophoneVolumeDown" + }, + { + "long_name": "MicrophoneVolumeUp" + }, + { + "long_name": "MicrophoneVolumeMute" + }, + { + "long_name": "SpeechCorrectionList" + }, + { + "long_name": "SpeechInputToggle" + }, + { + "long_name": "LaunchApplication1" + }, + { + "long_name": "LaunchApplication2" + }, + { + "long_name": "LaunchCalendar" + }, + { + "long_name": "LaunchContacts" + }, + { + "long_name": "LaunchMail" + }, + { + "long_name": "LaunchMediaPlayer" + }, + { + "long_name": "LaunchMusicPlayer" + }, + { + "long_name": "LaunchPhone" + }, + { + "long_name": "LaunchScreenSaver" + }, + { + "long_name": "LaunchSpreadsheet" + }, + { + "long_name": "LaunchWebBrowser" + }, + { + "long_name": "LaunchWebCam" + }, + { + "long_name": "LaunchWordProcessor" + }, + { + "long_name": "BrowserBack" + }, + { + "long_name": "BrowserFavorites" + }, + { + "long_name": "BrowserForward" + }, + { + "long_name": "BrowserHome" + }, + { + "long_name": "BrowserRefresh" + }, + { + "long_name": "BrowserSearch" + }, + { + "long_name": "BrowserStop" + }, + { + "long_name": "AppSwitch" + }, + { + "long_name": "Call" + }, + { + "long_name": "Camera" + }, + { + "long_name": "CameraFocus" + }, + { + "long_name": "EndCall" + }, + { + "long_name": "GoBack" + }, + { + "long_name": "GoHome" + }, + { + "long_name": "HeadsetHook" + }, + { + "long_name": "LastNumberRedial" + }, + { + "long_name": "Notification" + }, + { + "long_name": "MannerMode" + }, + { + "long_name": "VoiceDial" + }, + { + "long_name": "TV" + }, + { + "long_name": "TV3DMode" + }, + { + "long_name": "TVAntennaCable" + }, + { + "long_name": "TVAudioDescription" + }, + { + "long_name": "TVAudioDescriptionMixDown" + }, + { + "long_name": "TVAudioDescriptionMixUp" + }, + { + "long_name": "TVContentsMenu" + }, + { + "long_name": "TVDataService" + }, + { + "long_name": "TVInput" + }, + { + "long_name": "TVInputComponent1" + }, + { + "long_name": "TVInputComponent2" + }, + { + "long_name": "TVInputComposite1" + }, + { + "long_name": "TVInputComposite2" + }, + { + "long_name": "TVInputHDMI1" + }, + { + "long_name": "TVInputHDMI2" + }, + { + "long_name": "TVInputHDMI3" + }, + { + "long_name": "TVInputHDMI4" + }, + { + "long_name": "TVInputVGA1" + }, + { + "long_name": "TVMediaContext" + }, + { + "long_name": "TVNetwork" + }, + { + "long_name": "TVNumberEntry" + }, + { + "long_name": "TVPower" + }, + { + "long_name": "TVRadioService" + }, + { + "long_name": "TVSatellite" + }, + { + "long_name": "TVSatelliteBS" + }, + { + "long_name": "TVSatelliteCS" + }, + { + "long_name": "TVSatelliteToggle" + }, + { + "long_name": "TVTerrestrialAnalog" + }, + { + "long_name": "TVTerrestrialDigital" + }, + { + "long_name": "TVTimer" + }, + { + "long_name": "AVRInput" + }, + { + "long_name": "AVRPower" + }, + { + "long_name": "ColorF0Red" + }, + { + "long_name": "ColorF1Green" + }, + { + "long_name": "ColorF2Yellow" + }, + { + "long_name": "ColorF3Blue" + }, + { + "long_name": "ColorF4Grey" + }, + { + "long_name": "ColorF5Brown" + }, + { + "long_name": "ClosedCaptionToggle" + }, + { + "long_name": "Dimmer" + }, + { + "long_name": "DisplaySwap" + }, + { + "long_name": "DVR" + }, + { + "long_name": "Exit" + }, + { + "long_name": "FavoriteClear0" + }, + { + "long_name": "FavoriteClear1" + }, + { + "long_name": "FavoriteClear2" + }, + { + "long_name": "FavoriteClear3" + }, + { + "long_name": "FavoriteRecall0" + }, + { + "long_name": "FavoriteRecall1" + }, + { + "long_name": "FavoriteRecall2" + }, + { + "long_name": "FavoriteRecall3" + }, + { + "long_name": "FavoriteStore0" + }, + { + "long_name": "FavoriteStore1" + }, + { + "long_name": "FavoriteStore2" + }, + { + "long_name": "FavoriteStore3" + }, + { + "long_name": "Guide" + }, + { + "long_name": "GuideNextDay" + }, + { + "long_name": "GuidePreviousDay" + }, + { + "long_name": "Info" + }, + { + "long_name": "InstantReplay" + }, + { + "long_name": "Link" + }, + { + "long_name": "ListProgram" + }, + { + "long_name": "LiveContent" + }, + { + "long_name": "Lock" + }, + { + "long_name": "MediaApps" + }, + { + "long_name": "MediaAudioTrack" + }, + { + "long_name": "MediaLast" + }, + { + "long_name": "MediaSkipBackward" + }, + { + "long_name": "MediaSkipForward" + }, + { + "long_name": "MediaStepBackward" + }, + { + "long_name": "MediaStepForward" + }, + { + "long_name": "MediaTopMenu" + }, + { + "long_name": "NavigateIn" + }, + { + "long_name": "NavigateNext" + }, + { + "long_name": "NavigateOut" + }, + { + "long_name": "NavigatePrevious" + }, + { + "long_name": "NextFavoriteChannel" + }, + { + "long_name": "NextUserProfile" + }, + { + "long_name": "OnDemand" + }, + { + "long_name": "Pairing" + }, + { + "long_name": "PinPDown" + }, + { + "long_name": "PinPMove" + }, + { + "long_name": "PinPToggle" + }, + { + "long_name": "PinPUp" + }, + { + "long_name": "PlaySpeedDown" + }, + { + "long_name": "PlaySpeedReset" + }, + { + "long_name": "PlaySpeedUp" + }, + { + "long_name": "RandomToggle" + }, + { + "long_name": "RcLowBattery" + }, + { + "long_name": "RecordSpeedNext" + }, + { + "long_name": "RfBypass" + }, + { + "long_name": "ScanChannelsToggle" + }, + { + "long_name": "ScreenModeNext" + }, + { + "long_name": "Settings" + }, + { + "long_name": "SplitScreenToggle" + }, + { + "long_name": "STBInput" + }, + { + "long_name": "STBPower" + }, + { + "long_name": "Subtitle" + }, + { + "long_name": "Teletext" + }, + { + "long_name": "VideoModeNext" + }, + { + "long_name": "Wink" + }, + { + "long_name": "ZoomToggle" + }, + { + "long_name": "F1" + }, + { + "long_name": "F2" + }, + { + "long_name": "F3" + }, + { + "long_name": "F4" + }, + { + "long_name": "F5" + }, + { + "long_name": "F6" + }, + { + "long_name": "F7" + }, + { + "long_name": "F8" + }, + { + "long_name": "F9" + }, + { + "long_name": "F10" + }, + { + "long_name": "F11" + }, + { + "long_name": "F12" + }, + { + "long_name": "F13" + }, + { + "long_name": "F14" + }, + { + "long_name": "F15" + }, + { + "long_name": "F16" + }, + { + "long_name": "F17" + }, + { + "long_name": "F18" + }, + { + "long_name": "F19" + }, + { + "long_name": "F20" + }, + { + "long_name": "F21" + }, + { + "long_name": "F22" + }, + { + "long_name": "F23" + }, + { + "long_name": "F24" + }, + { + "long_name": "F25" + }, + { + "long_name": "F26" + }, + { + "long_name": "F27" + }, + { + "long_name": "F28" + }, + { + "long_name": "F29" + }, + { + "long_name": "F30" + }, + { + "long_name": "F31" + }, + { + "long_name": "F32" + }, + { + "long_name": "F33" + }, + { + "long_name": "F34" + }, + { + "long_name": "F35" + } + ], + "short_name": "Key", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_input::keyboard::KeyCode": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_input::keyboard::KeyCode", + "oneOf": [ + { + "items": false, + "long_name": "Unidentified", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_input::keyboard::NativeKeyCode" + } + } + ], + "short_name": "Unidentified", + "type": "array", + "typeInfo": "Tuple" + }, + { + "long_name": "Backquote" + }, + { + "long_name": "Backslash" + }, + { + "long_name": "BracketLeft" + }, + { + "long_name": "BracketRight" + }, + { + "long_name": "Comma" + }, + { + "long_name": "Digit0" + }, + { + "long_name": "Digit1" + }, + { + "long_name": "Digit2" + }, + { + "long_name": "Digit3" + }, + { + "long_name": "Digit4" + }, + { + "long_name": "Digit5" + }, + { + "long_name": "Digit6" + }, + { + "long_name": "Digit7" + }, + { + "long_name": "Digit8" + }, + { + "long_name": "Digit9" + }, + { + "long_name": "Equal" + }, + { + "long_name": "IntlBackslash" + }, + { + "long_name": "IntlRo" + }, + { + "long_name": "IntlYen" + }, + { + "long_name": "KeyA" + }, + { + "long_name": "KeyB" + }, + { + "long_name": "KeyC" + }, + { + "long_name": "KeyD" + }, + { + "long_name": "KeyE" + }, + { + "long_name": "KeyF" + }, + { + "long_name": "KeyG" + }, + { + "long_name": "KeyH" + }, + { + "long_name": "KeyI" + }, + { + "long_name": "KeyJ" + }, + { + "long_name": "KeyK" + }, + { + "long_name": "KeyL" + }, + { + "long_name": "KeyM" + }, + { + "long_name": "KeyN" + }, + { + "long_name": "KeyO" + }, + { + "long_name": "KeyP" + }, + { + "long_name": "KeyQ" + }, + { + "long_name": "KeyR" + }, + { + "long_name": "KeyS" + }, + { + "long_name": "KeyT" + }, + { + "long_name": "KeyU" + }, + { + "long_name": "KeyV" + }, + { + "long_name": "KeyW" + }, + { + "long_name": "KeyX" + }, + { + "long_name": "KeyY" + }, + { + "long_name": "KeyZ" + }, + { + "long_name": "Minus" + }, + { + "long_name": "Period" + }, + { + "long_name": "Quote" + }, + { + "long_name": "Semicolon" + }, + { + "long_name": "Slash" + }, + { + "long_name": "AltLeft" + }, + { + "long_name": "AltRight" + }, + { + "long_name": "Backspace" + }, + { + "long_name": "CapsLock" + }, + { + "long_name": "ContextMenu" + }, + { + "long_name": "ControlLeft" + }, + { + "long_name": "ControlRight" + }, + { + "long_name": "Enter" + }, + { + "long_name": "SuperLeft" + }, + { + "long_name": "SuperRight" + }, + { + "long_name": "ShiftLeft" + }, + { + "long_name": "ShiftRight" + }, + { + "long_name": "Space" + }, + { + "long_name": "Tab" + }, + { + "long_name": "Convert" + }, + { + "long_name": "KanaMode" + }, + { + "long_name": "Lang1" + }, + { + "long_name": "Lang2" + }, + { + "long_name": "Lang3" + }, + { + "long_name": "Lang4" + }, + { + "long_name": "Lang5" + }, + { + "long_name": "NonConvert" + }, + { + "long_name": "Delete" + }, + { + "long_name": "End" + }, + { + "long_name": "Help" + }, + { + "long_name": "Home" + }, + { + "long_name": "Insert" + }, + { + "long_name": "PageDown" + }, + { + "long_name": "PageUp" + }, + { + "long_name": "ArrowDown" + }, + { + "long_name": "ArrowLeft" + }, + { + "long_name": "ArrowRight" + }, + { + "long_name": "ArrowUp" + }, + { + "long_name": "NumLock" + }, + { + "long_name": "Numpad0" + }, + { + "long_name": "Numpad1" + }, + { + "long_name": "Numpad2" + }, + { + "long_name": "Numpad3" + }, + { + "long_name": "Numpad4" + }, + { + "long_name": "Numpad5" + }, + { + "long_name": "Numpad6" + }, + { + "long_name": "Numpad7" + }, + { + "long_name": "Numpad8" + }, + { + "long_name": "Numpad9" + }, + { + "long_name": "NumpadAdd" + }, + { + "long_name": "NumpadBackspace" + }, + { + "long_name": "NumpadClear" + }, + { + "long_name": "NumpadClearEntry" + }, + { + "long_name": "NumpadComma" + }, + { + "long_name": "NumpadDecimal" + }, + { + "long_name": "NumpadDivide" + }, + { + "long_name": "NumpadEnter" + }, + { + "long_name": "NumpadEqual" + }, + { + "long_name": "NumpadHash" + }, + { + "long_name": "NumpadMemoryAdd" + }, + { + "long_name": "NumpadMemoryClear" + }, + { + "long_name": "NumpadMemoryRecall" + }, + { + "long_name": "NumpadMemoryStore" + }, + { + "long_name": "NumpadMemorySubtract" + }, + { + "long_name": "NumpadMultiply" + }, + { + "long_name": "NumpadParenLeft" + }, + { + "long_name": "NumpadParenRight" + }, + { + "long_name": "NumpadStar" + }, + { + "long_name": "NumpadSubtract" + }, + { + "long_name": "Escape" + }, + { + "long_name": "Fn" + }, + { + "long_name": "FnLock" + }, + { + "long_name": "PrintScreen" + }, + { + "long_name": "ScrollLock" + }, + { + "long_name": "Pause" + }, + { + "long_name": "BrowserBack" + }, + { + "long_name": "BrowserFavorites" + }, + { + "long_name": "BrowserForward" + }, + { + "long_name": "BrowserHome" + }, + { + "long_name": "BrowserRefresh" + }, + { + "long_name": "BrowserSearch" + }, + { + "long_name": "BrowserStop" + }, + { + "long_name": "Eject" + }, + { + "long_name": "LaunchApp1" + }, + { + "long_name": "LaunchApp2" + }, + { + "long_name": "LaunchMail" + }, + { + "long_name": "MediaPlayPause" + }, + { + "long_name": "MediaSelect" + }, + { + "long_name": "MediaStop" + }, + { + "long_name": "MediaTrackNext" + }, + { + "long_name": "MediaTrackPrevious" + }, + { + "long_name": "Power" + }, + { + "long_name": "Sleep" + }, + { + "long_name": "AudioVolumeDown" + }, + { + "long_name": "AudioVolumeMute" + }, + { + "long_name": "AudioVolumeUp" + }, + { + "long_name": "WakeUp" + }, + { + "long_name": "Meta" + }, + { + "long_name": "Hyper" + }, + { + "long_name": "Turbo" + }, + { + "long_name": "Abort" + }, + { + "long_name": "Resume" + }, + { + "long_name": "Suspend" + }, + { + "long_name": "Again" + }, + { + "long_name": "Copy" + }, + { + "long_name": "Cut" + }, + { + "long_name": "Find" + }, + { + "long_name": "Open" + }, + { + "long_name": "Paste" + }, + { + "long_name": "Props" + }, + { + "long_name": "Select" + }, + { + "long_name": "Undo" + }, + { + "long_name": "Hiragana" + }, + { + "long_name": "Katakana" + }, + { + "long_name": "F1" + }, + { + "long_name": "F2" + }, + { + "long_name": "F3" + }, + { + "long_name": "F4" + }, + { + "long_name": "F5" + }, + { + "long_name": "F6" + }, + { + "long_name": "F7" + }, + { + "long_name": "F8" + }, + { + "long_name": "F9" + }, + { + "long_name": "F10" + }, + { + "long_name": "F11" + }, + { + "long_name": "F12" + }, + { + "long_name": "F13" + }, + { + "long_name": "F14" + }, + { + "long_name": "F15" + }, + { + "long_name": "F16" + }, + { + "long_name": "F17" + }, + { + "long_name": "F18" + }, + { + "long_name": "F19" + }, + { + "long_name": "F20" + }, + { + "long_name": "F21" + }, + { + "long_name": "F22" + }, + { + "long_name": "F23" + }, + { + "long_name": "F24" + }, + { + "long_name": "F25" + }, + { + "long_name": "F26" + }, + { + "long_name": "F27" + }, + { + "long_name": "F28" + }, + { + "long_name": "F29" + }, + { + "long_name": "F30" + }, + { + "long_name": "F31" + }, + { + "long_name": "F32" + }, + { + "long_name": "F33" + }, + { + "long_name": "F34" + }, + { + "long_name": "F35" + } + ], + "short_name": "KeyCode", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_input::keyboard::KeyboardInput": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_input::keyboard::KeyboardInput", + "properties": { + "key_code": { + "type": { + "$ref": "#/$defs/bevy_input::keyboard::KeyCode" + } + }, + "logical_key": { + "type": { + "$ref": "#/$defs/bevy_input::keyboard::Key" + } + }, + "state": { + "type": { + "$ref": "#/$defs/bevy_input::ButtonState" + } + }, + "window": { + "type": { + "$ref": "#/$defs/bevy_ecs::entity::Entity" + } + } + }, + "required": [ + "key_code", + "logical_key", + "state", + "window" + ], + "short_name": "KeyboardInput", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_input::keyboard::NativeKey": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_input::keyboard::NativeKey", + "oneOf": [ + { + "long_name": "Unidentified" + }, + { + "items": false, + "long_name": "Android", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/u32" + } + } + ], + "short_name": "Android", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "MacOS", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/u16" + } + } + ], + "short_name": "MacOS", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "Windows", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/u16" + } + } + ], + "short_name": "Windows", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "Xkb", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/u32" + } + } + ], + "short_name": "Xkb", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "Web", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/smol_str::SmolStr" + } + } + ], + "short_name": "Web", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "NativeKey", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_input::keyboard::NativeKeyCode": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_input::keyboard::NativeKeyCode", + "oneOf": [ + { + "long_name": "Unidentified" + }, + { + "items": false, + "long_name": "Android", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/u32" + } + } + ], + "short_name": "Android", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "MacOS", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/u16" + } + } + ], + "short_name": "MacOS", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "Windows", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/u16" + } + } + ], + "short_name": "Windows", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "Xkb", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/u32" + } + } + ], + "short_name": "Xkb", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "NativeKeyCode", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_input::mouse::MouseButton": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_input::mouse::MouseButton", + "oneOf": [ + { + "long_name": "Left" + }, + { + "long_name": "Right" + }, + { + "long_name": "Middle" + }, + { + "long_name": "Back" + }, + { + "long_name": "Forward" + }, + { + "items": false, + "long_name": "Other", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/u16" + } + } + ], + "short_name": "Other", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "MouseButton", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_input::mouse::MouseButtonInput": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_input::mouse::MouseButtonInput", + "properties": { + "button": { + "type": { + "$ref": "#/$defs/bevy_input::mouse::MouseButton" + } + }, + "state": { + "type": { + "$ref": "#/$defs/bevy_input::ButtonState" + } + }, + "window": { + "type": { + "$ref": "#/$defs/bevy_ecs::entity::Entity" + } + } + }, + "required": [ + "button", + "state", + "window" + ], + "short_name": "MouseButtonInput", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_input::touch::ForceTouch": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_input::touch::ForceTouch", + "oneOf": [ + { + "additionalProperties": false, + "long_name": "Calibrated", + "properties": { + "altitude_angle": { + "long_name": "altitude_angle", + "type": { + "$ref": "#/$defs/core::option::Option" + } + }, + "force": { + "long_name": "force", + "type": { + "$ref": "#/$defs/f64" + } + }, + "max_possible_force": { + "long_name": "max_possible_force", + "type": { + "$ref": "#/$defs/f64" + } + } + }, + "required": [ + "force", + "max_possible_force" + ], + "short_name": "Calibrated", + "type": "object", + "typeInfo": "Struct" + }, + { + "items": false, + "long_name": "Normalized", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/f64" + } + } + ], + "short_name": "Normalized", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "ForceTouch", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_input::touch::TouchInput": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_input::touch::TouchInput", + "properties": { + "force": { + "type": { + "$ref": "#/$defs/core::option::Option" + } + }, + "id": { + "type": { + "$ref": "#/$defs/u64" + } + }, + "phase": { + "type": { + "$ref": "#/$defs/bevy_input::touch::TouchPhase" + } + }, + "position": { + "type": { + "$ref": "#/$defs/glam::Vec2" + } + }, + "window": { + "type": { + "$ref": "#/$defs/bevy_ecs::entity::Entity" + } + } + }, + "required": [ + "phase", + "position", + "window", + "id" + ], + "short_name": "TouchInput", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_input::touch::TouchPhase": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_input::touch::TouchPhase", + "oneOf": [ + "Started", + "Moved", + "Ended", + "Canceled" + ], + "short_name": "TouchPhase", + "type": "string", + "typeInfo": "Enum" + }, + "bevy_math::direction::Dir3": { + "isComponent": false, + "isResource": false, + "items": false, + "long_name": "bevy_math::direction::Dir3", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + } + ], + "short_name": "Dir3", + "type": "array", + "typeInfo": "TupleStruct" + }, + "bevy_math::rects::rect::Rect": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_math::rects::rect::Rect", + "properties": { + "max": { + "type": { + "$ref": "#/$defs/glam::Vec2" + } + }, + "min": { + "type": { + "$ref": "#/$defs/glam::Vec2" + } + } + }, + "required": [ + "min", + "max" + ], + "short_name": "Rect", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_math::rects::urect::URect": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_math::rects::urect::URect", + "properties": { + "max": { + "type": { + "$ref": "#/$defs/glam::UVec2" + } + }, + "min": { + "type": { + "$ref": "#/$defs/glam::UVec2" + } + } + }, + "required": [ + "min", + "max" + ], + "short_name": "URect", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_pbr::bundle::CascadesVisibleEntities": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_pbr::bundle::CascadesVisibleEntities", + "properties": {}, + "required": [], + "short_name": "CascadesVisibleEntities", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_pbr::bundle::CubemapVisibleEntities": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_pbr::bundle::CubemapVisibleEntities", + "properties": {}, + "required": [], + "short_name": "CubemapVisibleEntities", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_pbr::cluster::ClusterConfig": { + "isComponent": true, + "isResource": false, + "long_name": "bevy_pbr::cluster::ClusterConfig", + "oneOf": [ + { + "long_name": "None" + }, + { + "long_name": "Single" + }, + { + "additionalProperties": false, + "long_name": "XYZ", + "properties": { + "dimensions": { + "long_name": "dimensions", + "type": { + "$ref": "#/$defs/glam::UVec3" + } + }, + "dynamic_resizing": { + "long_name": "dynamic_resizing", + "type": { + "$ref": "#/$defs/bool" + } + }, + "z_config": { + "long_name": "z_config", + "type": { + "$ref": "#/$defs/bevy_pbr::cluster::ClusterZConfig" + } + } + }, + "required": [ + "dimensions", + "z_config", + "dynamic_resizing" + ], + "short_name": "XYZ", + "type": "object", + "typeInfo": "Struct" + }, + { + "additionalProperties": false, + "long_name": "FixedZ", + "properties": { + "dynamic_resizing": { + "long_name": "dynamic_resizing", + "type": { + "$ref": "#/$defs/bool" + } + }, + "total": { + "long_name": "total", + "type": { + "$ref": "#/$defs/u32" + } + }, + "z_config": { + "long_name": "z_config", + "type": { + "$ref": "#/$defs/bevy_pbr::cluster::ClusterZConfig" + } + }, + "z_slices": { + "long_name": "z_slices", + "type": { + "$ref": "#/$defs/u32" + } + } + }, + "required": [ + "total", + "z_slices", + "z_config", + "dynamic_resizing" + ], + "short_name": "FixedZ", + "type": "object", + "typeInfo": "Struct" + } + ], + "short_name": "ClusterConfig", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_pbr::cluster::ClusterFarZMode": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_pbr::cluster::ClusterFarZMode", + "oneOf": [ + { + "long_name": "MaxClusterableObjectRange" + }, + { + "items": false, + "long_name": "Constant", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/f32" + } + } + ], + "short_name": "Constant", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "ClusterFarZMode", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_pbr::cluster::ClusterZConfig": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_pbr::cluster::ClusterZConfig", + "properties": { + "far_z_mode": { + "type": { + "$ref": "#/$defs/bevy_pbr::cluster::ClusterFarZMode" + } + }, + "first_slice_depth": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "first_slice_depth", + "far_z_mode" + ], + "short_name": "ClusterZConfig", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_pbr::fog::FogFalloff": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_pbr::fog::FogFalloff", + "oneOf": [ + { + "additionalProperties": false, + "long_name": "Linear", + "properties": { + "end": { + "long_name": "end", + "type": { + "$ref": "#/$defs/f32" + } + }, + "start": { + "long_name": "start", + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "start", + "end" + ], + "short_name": "Linear", + "type": "object", + "typeInfo": "Struct" + }, + { + "additionalProperties": false, + "long_name": "Exponential", + "properties": { + "density": { + "long_name": "density", + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "density" + ], + "short_name": "Exponential", + "type": "object", + "typeInfo": "Struct" + }, + { + "additionalProperties": false, + "long_name": "ExponentialSquared", + "properties": { + "density": { + "long_name": "density", + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "density" + ], + "short_name": "ExponentialSquared", + "type": "object", + "typeInfo": "Struct" + }, + { + "additionalProperties": false, + "long_name": "Atmospheric", + "properties": { + "extinction": { + "long_name": "extinction", + "type": { + "$ref": "#/$defs/glam::Vec3" + } + }, + "inscattering": { + "long_name": "inscattering", + "type": { + "$ref": "#/$defs/glam::Vec3" + } + } + }, + "required": [ + "extinction", + "inscattering" + ], + "short_name": "Atmospheric", + "type": "object", + "typeInfo": "Struct" + } + ], + "short_name": "FogFalloff", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_pbr::fog::FogSettings": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_pbr::fog::FogSettings", + "properties": { + "color": { + "type": { + "$ref": "#/$defs/bevy_color::color::Color" + } + }, + "directional_light_color": { + "type": { + "$ref": "#/$defs/bevy_color::color::Color" + } + }, + "directional_light_exponent": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "falloff": { + "type": { + "$ref": "#/$defs/bevy_pbr::fog::FogFalloff" + } + } + }, + "required": [ + "color", + "directional_light_color", + "directional_light_exponent", + "falloff" + ], + "short_name": "FogSettings", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_pbr::light::Cascade": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_pbr::light::Cascade", + "properties": { + "clip_from_cascade": { + "type": { + "$ref": "#/$defs/glam::Mat4" + } + }, + "clip_from_world": { + "type": { + "$ref": "#/$defs/glam::Mat4" + } + }, + "texel_size": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "world_from_cascade": { + "type": { + "$ref": "#/$defs/glam::Mat4" + } + } + }, + "required": [ + "world_from_cascade", + "clip_from_cascade", + "clip_from_world", + "texel_size" + ], + "short_name": "Cascade", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_pbr::light::CascadeShadowConfig": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_pbr::light::CascadeShadowConfig", + "properties": { + "bounds": { + "type": { + "$ref": "#/$defs/alloc::vec::Vec" + } + }, + "minimum_distance": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "overlap_proportion": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "bounds", + "overlap_proportion", + "minimum_distance" + ], + "short_name": "CascadeShadowConfig", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_pbr::light::Cascades": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_pbr::light::Cascades", + "properties": { + "cascades": { + "type": { + "$ref": "#/$defs/bevy_utils::hashbrown::HashMap, bevy_ecs::entity::hash::EntityHash>" + } + } + }, + "required": [ + "cascades" + ], + "short_name": "Cascades", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_pbr::light::DirectionalLightShadowMap": { + "additionalProperties": false, + "isComponent": false, + "isResource": true, + "long_name": "bevy_pbr::light::DirectionalLightShadowMap", + "properties": { + "size": { + "type": { + "$ref": "#/$defs/usize" + } + } + }, + "required": [ + "size" + ], + "short_name": "DirectionalLightShadowMap", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_pbr::light::NotShadowCaster": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_pbr::light::NotShadowCaster", + "properties": {}, + "required": [], + "short_name": "NotShadowCaster", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_pbr::light::NotShadowReceiver": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_pbr::light::NotShadowReceiver", + "properties": {}, + "required": [], + "short_name": "NotShadowReceiver", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_pbr::light::PointLightShadowMap": { + "additionalProperties": false, + "isComponent": false, + "isResource": true, + "long_name": "bevy_pbr::light::PointLightShadowMap", + "properties": { + "size": { + "type": { + "$ref": "#/$defs/usize" + } + } + }, + "required": [ + "size" + ], + "short_name": "PointLightShadowMap", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_pbr::light::ShadowFilteringMethod": { + "isComponent": true, + "isResource": false, + "long_name": "bevy_pbr::light::ShadowFilteringMethod", + "oneOf": [ + "Hardware2x2", + "Gaussian", + "Temporal" + ], + "short_name": "ShadowFilteringMethod", + "type": "string", + "typeInfo": "Enum" + }, + "bevy_pbr::light::ambient_light::AmbientLight": { + "additionalProperties": false, + "isComponent": false, + "isResource": true, + "long_name": "bevy_pbr::light::ambient_light::AmbientLight", + "properties": { + "brightness": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "color": { + "type": { + "$ref": "#/$defs/bevy_color::color::Color" + } + } + }, + "required": [ + "color", + "brightness" + ], + "short_name": "AmbientLight", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_pbr::light::directional_light::DirectionalLight": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_pbr::light::directional_light::DirectionalLight", + "properties": { + "color": { + "type": { + "$ref": "#/$defs/bevy_color::color::Color" + } + }, + "illuminance": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "shadow_depth_bias": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "shadow_normal_bias": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "shadows_enabled": { + "type": { + "$ref": "#/$defs/bool" + } + } + }, + "required": [ + "color", + "illuminance", + "shadows_enabled", + "shadow_depth_bias", + "shadow_normal_bias" + ], + "short_name": "DirectionalLight", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_pbr::light::point_light::PointLight": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_pbr::light::point_light::PointLight", + "properties": { + "color": { + "type": { + "$ref": "#/$defs/bevy_color::color::Color" + } + }, + "intensity": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "radius": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "range": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "shadow_depth_bias": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "shadow_normal_bias": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "shadows_enabled": { + "type": { + "$ref": "#/$defs/bool" + } + } + }, + "required": [ + "color", + "intensity", + "range", + "radius", + "shadows_enabled", + "shadow_depth_bias", + "shadow_normal_bias" + ], + "short_name": "PointLight", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_pbr::light::spot_light::SpotLight": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_pbr::light::spot_light::SpotLight", + "properties": { + "color": { + "type": { + "$ref": "#/$defs/bevy_color::color::Color" + } + }, + "inner_angle": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "intensity": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "outer_angle": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "radius": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "range": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "shadow_depth_bias": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "shadow_normal_bias": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "shadows_enabled": { + "type": { + "$ref": "#/$defs/bool" + } + } + }, + "required": [ + "color", + "intensity", + "range", + "radius", + "shadows_enabled", + "shadow_depth_bias", + "shadow_normal_bias", + "outer_angle", + "inner_angle" + ], + "short_name": "SpotLight", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_pbr::light_probe::LightProbe": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_pbr::light_probe::LightProbe", + "properties": {}, + "required": [], + "short_name": "LightProbe", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_pbr::light_probe::environment_map::EnvironmentMapLight": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_pbr::light_probe::environment_map::EnvironmentMapLight", + "properties": { + "diffuse_map": { + "type": { + "$ref": "#/$defs/bevy_asset::handle::Handle" + } + }, + "intensity": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "specular_map": { + "type": { + "$ref": "#/$defs/bevy_asset::handle::Handle" + } + } + }, + "required": [ + "diffuse_map", + "specular_map", + "intensity" + ], + "short_name": "EnvironmentMapLight", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_pbr::light_probe::irradiance_volume::IrradianceVolume": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_pbr::light_probe::irradiance_volume::IrradianceVolume", + "properties": { + "intensity": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "voxels": { + "type": { + "$ref": "#/$defs/bevy_asset::handle::Handle" + } + } + }, + "required": [ + "voxels", + "intensity" + ], + "short_name": "IrradianceVolume", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_pbr::material::DefaultOpaqueRendererMethod": { + "isComponent": false, + "isResource": false, + "items": false, + "long_name": "bevy_pbr::material::DefaultOpaqueRendererMethod", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_pbr::material::OpaqueRendererMethod" + } + } + ], + "short_name": "DefaultOpaqueRendererMethod", + "type": "array", + "typeInfo": "TupleStruct" + }, + "bevy_pbr::material::OpaqueRendererMethod": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_pbr::material::OpaqueRendererMethod", + "oneOf": [ + "Forward", + "Deferred", + "Auto" + ], + "short_name": "OpaqueRendererMethod", + "type": "string", + "typeInfo": "Enum" + }, + "bevy_pbr::parallax::ParallaxMappingMethod": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_pbr::parallax::ParallaxMappingMethod", + "oneOf": [ + { + "long_name": "Occlusion" + }, + { + "additionalProperties": false, + "long_name": "Relief", + "properties": { + "max_steps": { + "long_name": "max_steps", + "type": { + "$ref": "#/$defs/u32" + } + } + }, + "required": [ + "max_steps" + ], + "short_name": "Relief", + "type": "object", + "typeInfo": "Struct" + } + ], + "short_name": "ParallaxMappingMethod", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_pbr::pbr_material::StandardMaterial": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_pbr::pbr_material::StandardMaterial", + "properties": { + "alpha_mode": { + "type": { + "$ref": "#/$defs/bevy_render::alpha::AlphaMode" + } + }, + "anisotropy_rotation": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "anisotropy_strength": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "attenuation_color": { + "type": { + "$ref": "#/$defs/bevy_color::color::Color" + } + }, + "attenuation_distance": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "base_color": { + "type": { + "$ref": "#/$defs/bevy_color::color::Color" + } + }, + "base_color_channel": { + "type": { + "$ref": "#/$defs/bevy_pbr::pbr_material::UvChannel" + } + }, + "base_color_texture": { + "type": { + "$ref": "#/$defs/core::option::Option>" + } + }, + "clearcoat": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "clearcoat_perceptual_roughness": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "deferred_lighting_pass_id": { + "type": { + "$ref": "#/$defs/u8" + } + }, + "depth_bias": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "depth_map": { + "type": { + "$ref": "#/$defs/core::option::Option>" + } + }, + "diffuse_transmission": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "double_sided": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "emissive": { + "type": { + "$ref": "#/$defs/bevy_color::linear_rgba::LinearRgba" + } + }, + "emissive_channel": { + "type": { + "$ref": "#/$defs/bevy_pbr::pbr_material::UvChannel" + } + }, + "emissive_exposure_weight": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "emissive_texture": { + "type": { + "$ref": "#/$defs/core::option::Option>" + } + }, + "flip_normal_map_y": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "fog_enabled": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "ior": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "lightmap_exposure": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "max_parallax_layer_count": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "metallic": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "metallic_roughness_channel": { + "type": { + "$ref": "#/$defs/bevy_pbr::pbr_material::UvChannel" + } + }, + "metallic_roughness_texture": { + "type": { + "$ref": "#/$defs/core::option::Option>" + } + }, + "normal_map_channel": { + "type": { + "$ref": "#/$defs/bevy_pbr::pbr_material::UvChannel" + } + }, + "normal_map_texture": { + "type": { + "$ref": "#/$defs/core::option::Option>" + } + }, + "occlusion_channel": { + "type": { + "$ref": "#/$defs/bevy_pbr::pbr_material::UvChannel" + } + }, + "occlusion_texture": { + "type": { + "$ref": "#/$defs/core::option::Option>" + } + }, + "opaque_render_method": { + "type": { + "$ref": "#/$defs/bevy_pbr::material::OpaqueRendererMethod" + } + }, + "parallax_depth_scale": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "parallax_mapping_method": { + "type": { + "$ref": "#/$defs/bevy_pbr::parallax::ParallaxMappingMethod" + } + }, + "perceptual_roughness": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "reflectance": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "specular_transmission": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "thickness": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "unlit": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "uv_transform": { + "type": { + "$ref": "#/$defs/glam::Affine2" + } + } + }, + "required": [ + "base_color", + "base_color_channel", + "emissive", + "emissive_exposure_weight", + "emissive_channel", + "perceptual_roughness", + "metallic", + "metallic_roughness_channel", + "reflectance", + "diffuse_transmission", + "specular_transmission", + "thickness", + "ior", + "attenuation_distance", + "attenuation_color", + "normal_map_channel", + "flip_normal_map_y", + "occlusion_channel", + "clearcoat", + "clearcoat_perceptual_roughness", + "anisotropy_strength", + "anisotropy_rotation", + "double_sided", + "unlit", + "fog_enabled", + "alpha_mode", + "depth_bias", + "parallax_depth_scale", + "parallax_mapping_method", + "max_parallax_layer_count", + "lightmap_exposure", + "opaque_render_method", + "deferred_lighting_pass_id", + "uv_transform" + ], + "short_name": "StandardMaterial", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_pbr::pbr_material::UvChannel": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_pbr::pbr_material::UvChannel", + "oneOf": [ + "Uv0", + "Uv1" + ], + "short_name": "UvChannel", + "type": "string", + "typeInfo": "Enum" + }, + "bevy_pbr::ssao::ScreenSpaceAmbientOcclusionQualityLevel": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_pbr::ssao::ScreenSpaceAmbientOcclusionQualityLevel", + "oneOf": [ + { + "long_name": "Low" + }, + { + "long_name": "Medium" + }, + { + "long_name": "High" + }, + { + "long_name": "Ultra" + }, + { + "additionalProperties": false, + "long_name": "Custom", + "properties": { + "samples_per_slice_side": { + "long_name": "samples_per_slice_side", + "type": { + "$ref": "#/$defs/u32" + } + }, + "slice_count": { + "long_name": "slice_count", + "type": { + "$ref": "#/$defs/u32" + } + } + }, + "required": [ + "slice_count", + "samples_per_slice_side" + ], + "short_name": "Custom", + "type": "object", + "typeInfo": "Struct" + } + ], + "short_name": "ScreenSpaceAmbientOcclusionQualityLevel", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_pbr::ssao::ScreenSpaceAmbientOcclusionSettings": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_pbr::ssao::ScreenSpaceAmbientOcclusionSettings", + "properties": { + "quality_level": { + "type": { + "$ref": "#/$defs/bevy_pbr::ssao::ScreenSpaceAmbientOcclusionQualityLevel" + } + } + }, + "required": [ + "quality_level" + ], + "short_name": "ScreenSpaceAmbientOcclusionSettings", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_pbr::ssr::ScreenSpaceReflectionsSettings": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_pbr::ssr::ScreenSpaceReflectionsSettings", + "properties": { + "bisection_steps": { + "type": { + "$ref": "#/$defs/u32" + } + }, + "linear_march_exponent": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "linear_steps": { + "type": { + "$ref": "#/$defs/u32" + } + }, + "perceptual_roughness_threshold": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "thickness": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "use_secant": { + "type": { + "$ref": "#/$defs/bool" + } + } + }, + "required": [ + "perceptual_roughness_threshold", + "thickness", + "linear_steps", + "linear_march_exponent", + "bisection_steps", + "use_secant" + ], + "short_name": "ScreenSpaceReflectionsSettings", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_pbr::volumetric_fog::VolumetricFogSettings": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_pbr::volumetric_fog::VolumetricFogSettings", + "properties": { + "absorption": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "ambient_color": { + "type": { + "$ref": "#/$defs/bevy_color::color::Color" + } + }, + "ambient_intensity": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "density": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "fog_color": { + "type": { + "$ref": "#/$defs/bevy_color::color::Color" + } + }, + "light_intensity": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "light_tint": { + "type": { + "$ref": "#/$defs/bevy_color::color::Color" + } + }, + "max_depth": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "scattering": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "scattering_asymmetry": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "step_count": { + "type": { + "$ref": "#/$defs/u32" + } + } + }, + "required": [ + "fog_color", + "ambient_color", + "ambient_intensity", + "step_count", + "max_depth", + "absorption", + "scattering", + "density", + "scattering_asymmetry", + "light_tint", + "light_intensity" + ], + "short_name": "VolumetricFogSettings", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_pbr::volumetric_fog::VolumetricLight": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_pbr::volumetric_fog::VolumetricLight", + "properties": {}, + "required": [], + "short_name": "VolumetricLight", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_pbr::wireframe::NoWireframe": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_pbr::wireframe::NoWireframe", + "properties": {}, + "required": [], + "short_name": "NoWireframe", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_pbr::wireframe::Wireframe": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_pbr::wireframe::Wireframe", + "properties": {}, + "required": [], + "short_name": "Wireframe", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_pbr::wireframe::WireframeColor": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_pbr::wireframe::WireframeColor", + "properties": { + "color": { + "type": { + "$ref": "#/$defs/bevy_color::color::Color" + } + } + }, + "required": [ + "color" + ], + "short_name": "WireframeColor", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_pbr::wireframe::WireframeConfig": { + "additionalProperties": false, + "isComponent": false, + "isResource": true, + "long_name": "bevy_pbr::wireframe::WireframeConfig", + "properties": { + "default_color": { + "type": { + "$ref": "#/$defs/bevy_color::color::Color" + } + }, + "global": { + "type": { + "$ref": "#/$defs/bool" + } + } + }, + "required": [ + "global", + "default_color" + ], + "short_name": "WireframeConfig", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_render::alpha::AlphaMode": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_render::alpha::AlphaMode", + "oneOf": [ + { + "long_name": "Opaque" + }, + { + "items": false, + "long_name": "Mask", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/f32" + } + } + ], + "short_name": "Mask", + "type": "array", + "typeInfo": "Tuple" + }, + { + "long_name": "Blend" + }, + { + "long_name": "Premultiplied" + }, + { + "long_name": "AlphaToCoverage" + }, + { + "long_name": "Add" + }, + { + "long_name": "Multiply" + } + ], + "short_name": "AlphaMode", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_render::camera::camera::Camera": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_render::camera::camera::Camera", + "properties": { + "clear_color": { + "type": { + "$ref": "#/$defs/bevy_render::camera::clear_color::ClearColorConfig" + } + }, + "hdr": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "is_active": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "msaa_writeback": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "order": { + "type": { + "$ref": "#/$defs/isize" + } + }, + "viewport": { + "type": { + "$ref": "#/$defs/core::option::Option" + } + } + }, + "required": [ + "order", + "is_active", + "hdr", + "msaa_writeback", + "clear_color" + ], + "short_name": "Camera", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_render::camera::camera::CameraMainTextureUsages": { + "isComponent": true, + "isResource": false, + "long_name": "bevy_render::camera::camera::CameraMainTextureUsages", + "short_name": "CameraMainTextureUsages", + "type": "object", + "typeInfo": "Value" + }, + "bevy_render::camera::camera::CameraRenderGraph": { + "isComponent": true, + "isResource": false, + "long_name": "bevy_render::camera::camera::CameraRenderGraph", + "short_name": "CameraRenderGraph", + "type": "object", + "typeInfo": "Value" + }, + "bevy_render::camera::camera::Exposure": { + "isComponent": true, + "isResource": false, + "long_name": "bevy_render::camera::camera::Exposure", + "short_name": "Exposure", + "type": "object", + "typeInfo": "Value" + }, + "bevy_render::camera::camera::MipBias": { + "isComponent": true, + "isResource": false, + "items": false, + "long_name": "bevy_render::camera::camera::MipBias", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/f32" + } + } + ], + "short_name": "MipBias", + "type": "array", + "typeInfo": "TupleStruct" + }, + "bevy_render::camera::camera::TemporalJitter": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_render::camera::camera::TemporalJitter", + "properties": { + "offset": { + "type": { + "$ref": "#/$defs/glam::Vec2" + } + } + }, + "required": [ + "offset" + ], + "short_name": "TemporalJitter", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_render::camera::camera::Viewport": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_render::camera::camera::Viewport", + "properties": { + "depth": { + "type": { + "$ref": "#/$defs/core::ops::Range" + } + }, + "physical_position": { + "type": { + "$ref": "#/$defs/glam::UVec2" + } + }, + "physical_size": { + "type": { + "$ref": "#/$defs/glam::UVec2" + } + } + }, + "required": [ + "physical_position", + "physical_size", + "depth" + ], + "short_name": "Viewport", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_render::camera::clear_color::ClearColor": { + "isComponent": false, + "isResource": true, + "items": false, + "long_name": "bevy_render::camera::clear_color::ClearColor", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_color::color::Color" + } + } + ], + "short_name": "ClearColor", + "type": "array", + "typeInfo": "TupleStruct" + }, + "bevy_render::camera::clear_color::ClearColorConfig": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_render::camera::clear_color::ClearColorConfig", + "oneOf": [ + { + "long_name": "Default" + }, + { + "items": false, + "long_name": "Custom", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_color::color::Color" + } + } + ], + "short_name": "Custom", + "type": "array", + "typeInfo": "Tuple" + }, + { + "long_name": "None" + } + ], + "short_name": "ClearColorConfig", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_render::camera::projection::OrthographicProjection": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_render::camera::projection::OrthographicProjection", + "properties": { + "area": { + "type": { + "$ref": "#/$defs/bevy_math::rects::rect::Rect" + } + }, + "far": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "near": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "scale": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "scaling_mode": { + "type": { + "$ref": "#/$defs/bevy_render::camera::projection::ScalingMode" + } + }, + "viewport_origin": { + "type": { + "$ref": "#/$defs/glam::Vec2" + } + } + }, + "required": [ + "near", + "far", + "viewport_origin", + "scaling_mode", + "scale", + "area" + ], + "short_name": "OrthographicProjection", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_render::camera::projection::PerspectiveProjection": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_render::camera::projection::PerspectiveProjection", + "properties": { + "aspect_ratio": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "far": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "fov": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "near": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "fov", + "aspect_ratio", + "near", + "far" + ], + "short_name": "PerspectiveProjection", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_render::camera::projection::Projection": { + "isComponent": true, + "isResource": false, + "long_name": "bevy_render::camera::projection::Projection", + "oneOf": [ + { + "items": false, + "long_name": "Perspective", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_render::camera::projection::PerspectiveProjection" + } + } + ], + "short_name": "Perspective", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "Orthographic", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_render::camera::projection::OrthographicProjection" + } + } + ], + "short_name": "Orthographic", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Projection", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_render::camera::projection::ScalingMode": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_render::camera::projection::ScalingMode", + "oneOf": [ + { + "additionalProperties": false, + "long_name": "Fixed", + "properties": { + "height": { + "long_name": "height", + "type": { + "$ref": "#/$defs/f32" + } + }, + "width": { + "long_name": "width", + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "width", + "height" + ], + "short_name": "Fixed", + "type": "object", + "typeInfo": "Struct" + }, + { + "items": false, + "long_name": "WindowSize", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/f32" + } + } + ], + "short_name": "WindowSize", + "type": "array", + "typeInfo": "Tuple" + }, + { + "additionalProperties": false, + "long_name": "AutoMin", + "properties": { + "min_height": { + "long_name": "min_height", + "type": { + "$ref": "#/$defs/f32" + } + }, + "min_width": { + "long_name": "min_width", + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "min_width", + "min_height" + ], + "short_name": "AutoMin", + "type": "object", + "typeInfo": "Struct" + }, + { + "additionalProperties": false, + "long_name": "AutoMax", + "properties": { + "max_height": { + "long_name": "max_height", + "type": { + "$ref": "#/$defs/f32" + } + }, + "max_width": { + "long_name": "max_width", + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "max_width", + "max_height" + ], + "short_name": "AutoMax", + "type": "object", + "typeInfo": "Struct" + }, + { + "items": false, + "long_name": "FixedVertical", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/f32" + } + } + ], + "short_name": "FixedVertical", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "FixedHorizontal", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/f32" + } + } + ], + "short_name": "FixedHorizontal", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "ScalingMode", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_render::globals::GlobalsUniform": { + "additionalProperties": false, + "isComponent": false, + "isResource": true, + "long_name": "bevy_render::globals::GlobalsUniform", + "properties": { + "delta_time": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "frame_count": { + "type": { + "$ref": "#/$defs/u32" + } + }, + "time": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "time", + "delta_time", + "frame_count" + ], + "short_name": "GlobalsUniform", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_render::mesh::mesh::Indices": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_render::mesh::mesh::Indices", + "oneOf": [ + { + "items": false, + "long_name": "U16", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/alloc::vec::Vec" + } + } + ], + "short_name": "U16", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "U32", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/alloc::vec::Vec" + } + } + ], + "short_name": "U32", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Indices", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_render::mesh::mesh::Mesh": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_render::mesh::mesh::Mesh", + "properties": { + "asset_usage": { + "type": { + "$ref": "#/$defs/bevy_render::render_asset::RenderAssetUsages" + } + }, + "indices": { + "type": { + "$ref": "#/$defs/core::option::Option" + } + }, + "morph_target_names": { + "type": { + "$ref": "#/$defs/core::option::Option>" + } + }, + "morph_targets": { + "type": { + "$ref": "#/$defs/core::option::Option>" + } + } + }, + "required": [ + "asset_usage" + ], + "short_name": "Mesh", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_render::mesh::mesh::skinning::SkinnedMesh": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_render::mesh::mesh::skinning::SkinnedMesh", + "properties": { + "inverse_bindposes": { + "type": { + "$ref": "#/$defs/bevy_asset::handle::Handle" + } + }, + "joints": { + "type": { + "$ref": "#/$defs/alloc::vec::Vec" + } + } + }, + "required": [ + "inverse_bindposes", + "joints" + ], + "short_name": "SkinnedMesh", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_render::mesh::morph::MeshMorphWeights": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_render::mesh::morph::MeshMorphWeights", + "properties": { + "weights": { + "type": { + "$ref": "#/$defs/alloc::vec::Vec" + } + } + }, + "required": [ + "weights" + ], + "short_name": "MeshMorphWeights", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_render::mesh::morph::MorphWeights": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_render::mesh::morph::MorphWeights", + "properties": { + "first_mesh": { + "type": { + "$ref": "#/$defs/core::option::Option>" + } + }, + "weights": { + "type": { + "$ref": "#/$defs/alloc::vec::Vec" + } + } + }, + "required": [ + "weights" + ], + "short_name": "MorphWeights", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_render::primitives::Aabb": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_render::primitives::Aabb", + "properties": { + "center": { + "type": { + "$ref": "#/$defs/glam::Vec3A" + } + }, + "half_extents": { + "type": { + "$ref": "#/$defs/glam::Vec3A" + } + } + }, + "required": [ + "center", + "half_extents" + ], + "short_name": "Aabb", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_render::primitives::CascadesFrusta": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_render::primitives::CascadesFrusta", + "properties": {}, + "required": [], + "short_name": "CascadesFrusta", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_render::primitives::CubemapFrusta": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_render::primitives::CubemapFrusta", + "properties": {}, + "required": [], + "short_name": "CubemapFrusta", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_render::primitives::Frustum": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_render::primitives::Frustum", + "properties": {}, + "required": [], + "short_name": "Frustum", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_render::render_asset::RenderAssetUsages": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_render::render_asset::RenderAssetUsages", + "short_name": "RenderAssetUsages", + "type": "object", + "typeInfo": "Value" + }, + "bevy_render::texture::image::Image": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_render::texture::image::Image", + "short_name": "Image", + "type": "object", + "typeInfo": "Value" + }, + "bevy_render::view::ColorGrading": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_render::view::ColorGrading", + "properties": { + "global": { + "type": { + "$ref": "#/$defs/bevy_render::view::ColorGradingGlobal" + } + }, + "highlights": { + "type": { + "$ref": "#/$defs/bevy_render::view::ColorGradingSection" + } + }, + "midtones": { + "type": { + "$ref": "#/$defs/bevy_render::view::ColorGradingSection" + } + }, + "shadows": { + "type": { + "$ref": "#/$defs/bevy_render::view::ColorGradingSection" + } + } + }, + "required": [ + "global", + "shadows", + "midtones", + "highlights" + ], + "short_name": "ColorGrading", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_render::view::ColorGradingGlobal": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_render::view::ColorGradingGlobal", + "properties": { + "exposure": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "hue": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "midtones_range": { + "type": { + "$ref": "#/$defs/core::ops::Range" + } + }, + "post_saturation": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "temperature": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "tint": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "exposure", + "temperature", + "tint", + "hue", + "post_saturation", + "midtones_range" + ], + "short_name": "ColorGradingGlobal", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_render::view::ColorGradingSection": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_render::view::ColorGradingSection", + "properties": { + "contrast": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "gain": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "gamma": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "lift": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "saturation": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "saturation", + "contrast", + "gamma", + "gain", + "lift" + ], + "short_name": "ColorGradingSection", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_render::view::Msaa": { + "isComponent": false, + "isResource": true, + "long_name": "bevy_render::view::Msaa", + "oneOf": [ + "Off", + "Sample2", + "Sample4", + "Sample8" + ], + "short_name": "Msaa", + "type": "string", + "typeInfo": "Enum" + }, + "bevy_render::view::visibility::InheritedVisibility": { + "isComponent": true, + "isResource": false, + "items": false, + "long_name": "bevy_render::view::visibility::InheritedVisibility", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bool" + } + } + ], + "short_name": "InheritedVisibility", + "type": "array", + "typeInfo": "TupleStruct" + }, + "bevy_render::view::visibility::NoFrustumCulling": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_render::view::visibility::NoFrustumCulling", + "properties": {}, + "required": [], + "short_name": "NoFrustumCulling", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_render::view::visibility::ViewVisibility": { + "isComponent": true, + "isResource": false, + "items": false, + "long_name": "bevy_render::view::visibility::ViewVisibility", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bool" + } + } + ], + "short_name": "ViewVisibility", + "type": "array", + "typeInfo": "TupleStruct" + }, + "bevy_render::view::visibility::Visibility": { + "isComponent": true, + "isResource": false, + "long_name": "bevy_render::view::visibility::Visibility", + "oneOf": [ + "Inherited", + "Hidden", + "Visible" + ], + "short_name": "Visibility", + "type": "string", + "typeInfo": "Enum" + }, + "bevy_render::view::visibility::VisibleEntities": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_render::view::visibility::VisibleEntities", + "properties": {}, + "required": [], + "short_name": "VisibleEntities", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_render::view::visibility::range::VisibilityRange": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_render::view::visibility::range::VisibilityRange", + "properties": { + "end_margin": { + "type": { + "$ref": "#/$defs/core::ops::Range" + } + }, + "start_margin": { + "type": { + "$ref": "#/$defs/core::ops::Range" + } + } + }, + "required": [ + "start_margin", + "end_margin" + ], + "short_name": "VisibilityRange", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_render::view::visibility::render_layers::RenderLayers": { + "isComponent": true, + "isResource": false, + "items": false, + "long_name": "bevy_render::view::visibility::render_layers::RenderLayers", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/smallvec::SmallVec<[u64; 1]>" + } + } + ], + "short_name": "RenderLayers", + "type": "array", + "typeInfo": "TupleStruct" + }, + "bevy_sprite::SpriteSource": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_sprite::SpriteSource", + "properties": {}, + "required": [], + "short_name": "SpriteSource", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_sprite::mesh2d::color_material::ColorMaterial": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_sprite::mesh2d::color_material::ColorMaterial", + "properties": { + "color": { + "type": { + "$ref": "#/$defs/bevy_color::color::Color" + } + }, + "texture": { + "type": { + "$ref": "#/$defs/core::option::Option>" + } + } + }, + "required": [ + "color" + ], + "short_name": "ColorMaterial", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_sprite::mesh2d::mesh::Mesh2dHandle": { + "isComponent": true, + "isResource": false, + "items": false, + "long_name": "bevy_sprite::mesh2d::mesh::Mesh2dHandle", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_asset::handle::Handle" + } + } + ], + "short_name": "Mesh2dHandle", + "type": "array", + "typeInfo": "TupleStruct" + }, + "bevy_sprite::sprite::Anchor": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_sprite::sprite::Anchor", + "oneOf": [ + { + "long_name": "Center" + }, + { + "long_name": "BottomLeft" + }, + { + "long_name": "BottomCenter" + }, + { + "long_name": "BottomRight" + }, + { + "long_name": "CenterLeft" + }, + { + "long_name": "CenterRight" + }, + { + "long_name": "TopLeft" + }, + { + "long_name": "TopCenter" + }, + { + "long_name": "TopRight" + }, + { + "items": false, + "long_name": "Custom", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/glam::Vec2" + } + } + ], + "short_name": "Custom", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Anchor", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_sprite::sprite::ImageScaleMode": { + "isComponent": true, + "isResource": false, + "long_name": "bevy_sprite::sprite::ImageScaleMode", + "oneOf": [ + { + "items": false, + "long_name": "Sliced", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_sprite::texture_slice::slicer::TextureSlicer" + } + } + ], + "short_name": "Sliced", + "type": "array", + "typeInfo": "Tuple" + }, + { + "additionalProperties": false, + "long_name": "Tiled", + "properties": { + "stretch_value": { + "long_name": "stretch_value", + "type": { + "$ref": "#/$defs/f32" + } + }, + "tile_x": { + "long_name": "tile_x", + "type": { + "$ref": "#/$defs/bool" + } + }, + "tile_y": { + "long_name": "tile_y", + "type": { + "$ref": "#/$defs/bool" + } + } + }, + "required": [ + "tile_x", + "tile_y", + "stretch_value" + ], + "short_name": "Tiled", + "type": "object", + "typeInfo": "Struct" + } + ], + "short_name": "ImageScaleMode", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_sprite::sprite::Sprite": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_sprite::sprite::Sprite", + "properties": { + "anchor": { + "type": { + "$ref": "#/$defs/bevy_sprite::sprite::Anchor" + } + }, + "color": { + "type": { + "$ref": "#/$defs/bevy_color::color::Color" + } + }, + "custom_size": { + "type": { + "$ref": "#/$defs/core::option::Option" + } + }, + "flip_x": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "flip_y": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "rect": { + "type": { + "$ref": "#/$defs/core::option::Option" + } + } + }, + "required": [ + "color", + "flip_x", + "flip_y", + "anchor" + ], + "short_name": "Sprite", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_sprite::texture_atlas::TextureAtlas": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_sprite::texture_atlas::TextureAtlas", + "properties": { + "index": { + "type": { + "$ref": "#/$defs/usize" + } + }, + "layout": { + "type": { + "$ref": "#/$defs/bevy_asset::handle::Handle" + } + } + }, + "required": [ + "layout", + "index" + ], + "short_name": "TextureAtlas", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_sprite::texture_atlas::TextureAtlasLayout": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_sprite::texture_atlas::TextureAtlasLayout", + "properties": { + "size": { + "type": { + "$ref": "#/$defs/glam::UVec2" + } + }, + "texture_handles": { + "type": { + "$ref": "#/$defs/core::option::Option, usize, bevy_utils::hashbrown::hash_map::DefaultHashBuilder>>" + } + }, + "textures": { + "type": { + "$ref": "#/$defs/alloc::vec::Vec" + } + } + }, + "required": [ + "size", + "textures" + ], + "short_name": "TextureAtlasLayout", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_sprite::texture_slice::border_rect::BorderRect": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_sprite::texture_slice::border_rect::BorderRect", + "properties": { + "bottom": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "left": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "right": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "top": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "left", + "right", + "top", + "bottom" + ], + "short_name": "BorderRect", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_sprite::texture_slice::slicer::SliceScaleMode": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_sprite::texture_slice::slicer::SliceScaleMode", + "oneOf": [ + { + "long_name": "Stretch" + }, + { + "additionalProperties": false, + "long_name": "Tile", + "properties": { + "stretch_value": { + "long_name": "stretch_value", + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "stretch_value" + ], + "short_name": "Tile", + "type": "object", + "typeInfo": "Struct" + } + ], + "short_name": "SliceScaleMode", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_sprite::texture_slice::slicer::TextureSlicer": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_sprite::texture_slice::slicer::TextureSlicer", + "properties": { + "border": { + "type": { + "$ref": "#/$defs/bevy_sprite::texture_slice::border_rect::BorderRect" + } + }, + "center_scale_mode": { + "type": { + "$ref": "#/$defs/bevy_sprite::texture_slice::slicer::SliceScaleMode" + } + }, + "max_corner_scale": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "sides_scale_mode": { + "type": { + "$ref": "#/$defs/bevy_sprite::texture_slice::slicer::SliceScaleMode" + } + } + }, + "required": [ + "border", + "center_scale_mode", + "sides_scale_mode", + "max_corner_scale" + ], + "short_name": "TextureSlicer", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_text::font_atlas_set::GlyphAtlasInfo": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_text::font_atlas_set::GlyphAtlasInfo", + "properties": { + "glyph_index": { + "type": { + "$ref": "#/$defs/usize" + } + }, + "texture": { + "type": { + "$ref": "#/$defs/bevy_asset::handle::Handle" + } + }, + "texture_atlas": { + "type": { + "$ref": "#/$defs/bevy_asset::handle::Handle" + } + } + }, + "required": [ + "texture_atlas", + "texture", + "glyph_index" + ], + "short_name": "GlyphAtlasInfo", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_text::glyph_brush::PositionedGlyph": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_text::glyph_brush::PositionedGlyph", + "properties": { + "atlas_info": { + "type": { + "$ref": "#/$defs/bevy_text::font_atlas_set::GlyphAtlasInfo" + } + }, + "byte_index": { + "type": { + "$ref": "#/$defs/usize" + } + }, + "position": { + "type": { + "$ref": "#/$defs/glam::Vec2" + } + }, + "section_index": { + "type": { + "$ref": "#/$defs/usize" + } + }, + "size": { + "type": { + "$ref": "#/$defs/glam::Vec2" + } + } + }, + "required": [ + "position", + "size", + "atlas_info", + "section_index", + "byte_index" + ], + "short_name": "PositionedGlyph", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_text::pipeline::TextLayoutInfo": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_text::pipeline::TextLayoutInfo", + "properties": { + "glyphs": { + "type": { + "$ref": "#/$defs/alloc::vec::Vec" + } + }, + "logical_size": { + "type": { + "$ref": "#/$defs/glam::Vec2" + } + } + }, + "required": [ + "glyphs", + "logical_size" + ], + "short_name": "TextLayoutInfo", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_text::text2d::Text2dBounds": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_text::text2d::Text2dBounds", + "properties": { + "size": { + "type": { + "$ref": "#/$defs/glam::Vec2" + } + } + }, + "required": [ + "size" + ], + "short_name": "Text2dBounds", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_text::text::BreakLineOn": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_text::text::BreakLineOn", + "oneOf": [ + "WordBoundary", + "AnyCharacter", + "NoWrap" + ], + "short_name": "BreakLineOn", + "type": "string", + "typeInfo": "Enum" + }, + "bevy_text::text::JustifyText": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_text::text::JustifyText", + "oneOf": [ + "Left", + "Center", + "Right" + ], + "short_name": "JustifyText", + "type": "string", + "typeInfo": "Enum" + }, + "bevy_text::text::Text": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_text::text::Text", + "properties": { + "justify": { + "type": { + "$ref": "#/$defs/bevy_text::text::JustifyText" + } + }, + "linebreak_behavior": { + "type": { + "$ref": "#/$defs/bevy_text::text::BreakLineOn" + } + }, + "sections": { + "type": { + "$ref": "#/$defs/alloc::vec::Vec" + } + } + }, + "required": [ + "sections", + "justify", + "linebreak_behavior" + ], + "short_name": "Text", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_text::text::TextSection": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_text::text::TextSection", + "properties": { + "style": { + "type": { + "$ref": "#/$defs/bevy_text::text::TextStyle" + } + }, + "value": { + "type": { + "$ref": "#/$defs/alloc::string::String" + } + } + }, + "required": [ + "value", + "style" + ], + "short_name": "TextSection", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_text::text::TextStyle": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_text::text::TextStyle", + "properties": { + "color": { + "type": { + "$ref": "#/$defs/bevy_color::color::Color" + } + }, + "font": { + "type": { + "$ref": "#/$defs/bevy_asset::handle::Handle" + } + }, + "font_size": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "font", + "font_size", + "color" + ], + "short_name": "TextStyle", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_time::fixed::Fixed": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_time::fixed::Fixed", + "properties": { + "overstep": { + "type": { + "$ref": "#/$defs/bevy_utils::Duration" + } + }, + "timestep": { + "type": { + "$ref": "#/$defs/bevy_utils::Duration" + } + } + }, + "required": [ + "timestep", + "overstep" + ], + "short_name": "Fixed", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_time::real::Real": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_time::real::Real", + "properties": { + "first_update": { + "type": { + "$ref": "#/$defs/core::option::Option" + } + }, + "last_update": { + "type": { + "$ref": "#/$defs/core::option::Option" + } + }, + "startup": { + "type": { + "$ref": "#/$defs/bevy_utils::Instant" + } + } + }, + "required": [ + "startup" + ], + "short_name": "Real", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_time::stopwatch::Stopwatch": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_time::stopwatch::Stopwatch", + "properties": { + "elapsed": { + "type": { + "$ref": "#/$defs/bevy_utils::Duration" + } + }, + "paused": { + "type": { + "$ref": "#/$defs/bool" + } + } + }, + "required": [ + "elapsed", + "paused" + ], + "short_name": "Stopwatch", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_time::time::Time<()>": { + "additionalProperties": false, + "isComponent": false, + "isResource": true, + "long_name": "bevy_time::time::Time<()>", + "properties": { + "context": { + "type": { + "$ref": "#/$defs/()" + } + }, + "delta": { + "type": { + "$ref": "#/$defs/bevy_utils::Duration" + } + }, + "delta_seconds": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "delta_seconds_f64": { + "type": { + "$ref": "#/$defs/f64" + } + }, + "elapsed": { + "type": { + "$ref": "#/$defs/bevy_utils::Duration" + } + }, + "elapsed_seconds": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "elapsed_seconds_f64": { + "type": { + "$ref": "#/$defs/f64" + } + }, + "elapsed_seconds_wrapped": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "elapsed_seconds_wrapped_f64": { + "type": { + "$ref": "#/$defs/f64" + } + }, + "elapsed_wrapped": { + "type": { + "$ref": "#/$defs/bevy_utils::Duration" + } + }, + "wrap_period": { + "type": { + "$ref": "#/$defs/bevy_utils::Duration" + } + } + }, + "required": [ + "context", + "wrap_period", + "delta", + "delta_seconds", + "delta_seconds_f64", + "elapsed", + "elapsed_seconds", + "elapsed_seconds_f64", + "elapsed_wrapped", + "elapsed_seconds_wrapped", + "elapsed_seconds_wrapped_f64" + ], + "short_name": "Time<()>", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_time::time::Time": { + "additionalProperties": false, + "isComponent": false, + "isResource": true, + "long_name": "bevy_time::time::Time", + "properties": { + "context": { + "type": { + "$ref": "#/$defs/avian3d::schedule::time::Physics" + } + }, + "delta": { + "type": { + "$ref": "#/$defs/bevy_utils::Duration" + } + }, + "delta_seconds": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "delta_seconds_f64": { + "type": { + "$ref": "#/$defs/f64" + } + }, + "elapsed": { + "type": { + "$ref": "#/$defs/bevy_utils::Duration" + } + }, + "elapsed_seconds": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "elapsed_seconds_f64": { + "type": { + "$ref": "#/$defs/f64" + } + }, + "elapsed_seconds_wrapped": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "elapsed_seconds_wrapped_f64": { + "type": { + "$ref": "#/$defs/f64" + } + }, + "elapsed_wrapped": { + "type": { + "$ref": "#/$defs/bevy_utils::Duration" + } + }, + "wrap_period": { + "type": { + "$ref": "#/$defs/bevy_utils::Duration" + } + } + }, + "required": [ + "context", + "wrap_period", + "delta", + "delta_seconds", + "delta_seconds_f64", + "elapsed", + "elapsed_seconds", + "elapsed_seconds_f64", + "elapsed_wrapped", + "elapsed_seconds_wrapped", + "elapsed_seconds_wrapped_f64" + ], + "short_name": "Time", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_time::time::Time": { + "additionalProperties": false, + "isComponent": false, + "isResource": true, + "long_name": "bevy_time::time::Time", + "properties": { + "context": { + "type": { + "$ref": "#/$defs/avian3d::schedule::time::Substeps" + } + }, + "delta": { + "type": { + "$ref": "#/$defs/bevy_utils::Duration" + } + }, + "delta_seconds": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "delta_seconds_f64": { + "type": { + "$ref": "#/$defs/f64" + } + }, + "elapsed": { + "type": { + "$ref": "#/$defs/bevy_utils::Duration" + } + }, + "elapsed_seconds": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "elapsed_seconds_f64": { + "type": { + "$ref": "#/$defs/f64" + } + }, + "elapsed_seconds_wrapped": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "elapsed_seconds_wrapped_f64": { + "type": { + "$ref": "#/$defs/f64" + } + }, + "elapsed_wrapped": { + "type": { + "$ref": "#/$defs/bevy_utils::Duration" + } + }, + "wrap_period": { + "type": { + "$ref": "#/$defs/bevy_utils::Duration" + } + } + }, + "required": [ + "context", + "wrap_period", + "delta", + "delta_seconds", + "delta_seconds_f64", + "elapsed", + "elapsed_seconds", + "elapsed_seconds_f64", + "elapsed_wrapped", + "elapsed_seconds_wrapped", + "elapsed_seconds_wrapped_f64" + ], + "short_name": "Time", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_time::time::Time": { + "additionalProperties": false, + "isComponent": false, + "isResource": true, + "long_name": "bevy_time::time::Time", + "properties": { + "context": { + "type": { + "$ref": "#/$defs/bevy_time::fixed::Fixed" + } + }, + "delta": { + "type": { + "$ref": "#/$defs/bevy_utils::Duration" + } + }, + "delta_seconds": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "delta_seconds_f64": { + "type": { + "$ref": "#/$defs/f64" + } + }, + "elapsed": { + "type": { + "$ref": "#/$defs/bevy_utils::Duration" + } + }, + "elapsed_seconds": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "elapsed_seconds_f64": { + "type": { + "$ref": "#/$defs/f64" + } + }, + "elapsed_seconds_wrapped": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "elapsed_seconds_wrapped_f64": { + "type": { + "$ref": "#/$defs/f64" + } + }, + "elapsed_wrapped": { + "type": { + "$ref": "#/$defs/bevy_utils::Duration" + } + }, + "wrap_period": { + "type": { + "$ref": "#/$defs/bevy_utils::Duration" + } + } + }, + "required": [ + "context", + "wrap_period", + "delta", + "delta_seconds", + "delta_seconds_f64", + "elapsed", + "elapsed_seconds", + "elapsed_seconds_f64", + "elapsed_wrapped", + "elapsed_seconds_wrapped", + "elapsed_seconds_wrapped_f64" + ], + "short_name": "Time", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_time::time::Time": { + "additionalProperties": false, + "isComponent": false, + "isResource": true, + "long_name": "bevy_time::time::Time", + "properties": { + "context": { + "type": { + "$ref": "#/$defs/bevy_time::real::Real" + } + }, + "delta": { + "type": { + "$ref": "#/$defs/bevy_utils::Duration" + } + }, + "delta_seconds": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "delta_seconds_f64": { + "type": { + "$ref": "#/$defs/f64" + } + }, + "elapsed": { + "type": { + "$ref": "#/$defs/bevy_utils::Duration" + } + }, + "elapsed_seconds": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "elapsed_seconds_f64": { + "type": { + "$ref": "#/$defs/f64" + } + }, + "elapsed_seconds_wrapped": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "elapsed_seconds_wrapped_f64": { + "type": { + "$ref": "#/$defs/f64" + } + }, + "elapsed_wrapped": { + "type": { + "$ref": "#/$defs/bevy_utils::Duration" + } + }, + "wrap_period": { + "type": { + "$ref": "#/$defs/bevy_utils::Duration" + } + } + }, + "required": [ + "context", + "wrap_period", + "delta", + "delta_seconds", + "delta_seconds_f64", + "elapsed", + "elapsed_seconds", + "elapsed_seconds_f64", + "elapsed_wrapped", + "elapsed_seconds_wrapped", + "elapsed_seconds_wrapped_f64" + ], + "short_name": "Time", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_time::time::Time": { + "additionalProperties": false, + "isComponent": false, + "isResource": true, + "long_name": "bevy_time::time::Time", + "properties": { + "context": { + "type": { + "$ref": "#/$defs/bevy_time::virt::Virtual" + } + }, + "delta": { + "type": { + "$ref": "#/$defs/bevy_utils::Duration" + } + }, + "delta_seconds": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "delta_seconds_f64": { + "type": { + "$ref": "#/$defs/f64" + } + }, + "elapsed": { + "type": { + "$ref": "#/$defs/bevy_utils::Duration" + } + }, + "elapsed_seconds": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "elapsed_seconds_f64": { + "type": { + "$ref": "#/$defs/f64" + } + }, + "elapsed_seconds_wrapped": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "elapsed_seconds_wrapped_f64": { + "type": { + "$ref": "#/$defs/f64" + } + }, + "elapsed_wrapped": { + "type": { + "$ref": "#/$defs/bevy_utils::Duration" + } + }, + "wrap_period": { + "type": { + "$ref": "#/$defs/bevy_utils::Duration" + } + } + }, + "required": [ + "context", + "wrap_period", + "delta", + "delta_seconds", + "delta_seconds_f64", + "elapsed", + "elapsed_seconds", + "elapsed_seconds_f64", + "elapsed_wrapped", + "elapsed_seconds_wrapped", + "elapsed_seconds_wrapped_f64" + ], + "short_name": "Time", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_time::timer::Timer": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_time::timer::Timer", + "properties": { + "duration": { + "type": { + "$ref": "#/$defs/bevy_utils::Duration" + } + }, + "finished": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "mode": { + "type": { + "$ref": "#/$defs/bevy_time::timer::TimerMode" + } + }, + "stopwatch": { + "type": { + "$ref": "#/$defs/bevy_time::stopwatch::Stopwatch" + } + }, + "times_finished_this_tick": { + "type": { + "$ref": "#/$defs/u32" + } + } + }, + "required": [ + "stopwatch", + "duration", + "mode", + "finished", + "times_finished_this_tick" + ], + "short_name": "Timer", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_time::timer::TimerMode": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_time::timer::TimerMode", + "oneOf": [ + "Once", + "Repeating" + ], + "short_name": "TimerMode", + "type": "string", + "typeInfo": "Enum" + }, + "bevy_time::virt::Virtual": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_time::virt::Virtual", + "properties": { + "effective_speed": { + "type": { + "$ref": "#/$defs/f64" + } + }, + "max_delta": { + "type": { + "$ref": "#/$defs/bevy_utils::Duration" + } + }, + "paused": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "relative_speed": { + "type": { + "$ref": "#/$defs/f64" + } + } + }, + "required": [ + "max_delta", + "paused", + "relative_speed", + "effective_speed" + ], + "short_name": "Virtual", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_transform::components::global_transform::GlobalTransform": { + "isComponent": true, + "isResource": false, + "items": false, + "long_name": "bevy_transform::components::global_transform::GlobalTransform", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/glam::Affine3A" + } + } + ], + "short_name": "GlobalTransform", + "type": "array", + "typeInfo": "TupleStruct" + }, + "bevy_transform::components::transform::Transform": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_transform::components::transform::Transform", + "properties": { + "rotation": { + "type": { + "$ref": "#/$defs/glam::Quat" + } + }, + "scale": { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + }, + "translation": { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + } + }, + "required": [ + "translation", + "rotation", + "scale" + ], + "short_name": "Transform", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_ui::UiScale": { + "isComponent": false, + "isResource": false, + "items": false, + "long_name": "bevy_ui::UiScale", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/f32" + } + } + ], + "short_name": "UiScale", + "type": "array", + "typeInfo": "TupleStruct" + }, + "bevy_ui::focus::FocusPolicy": { + "isComponent": true, + "isResource": false, + "long_name": "bevy_ui::focus::FocusPolicy", + "oneOf": [ + "Block", + "Pass" + ], + "short_name": "FocusPolicy", + "type": "string", + "typeInfo": "Enum" + }, + "bevy_ui::focus::Interaction": { + "isComponent": true, + "isResource": false, + "long_name": "bevy_ui::focus::Interaction", + "oneOf": [ + "Pressed", + "Hovered", + "None" + ], + "short_name": "Interaction", + "type": "string", + "typeInfo": "Enum" + }, + "bevy_ui::focus::RelativeCursorPosition": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_ui::focus::RelativeCursorPosition", + "properties": { + "normalized": { + "type": { + "$ref": "#/$defs/core::option::Option" + } + }, + "normalized_visible_node_rect": { + "type": { + "$ref": "#/$defs/bevy_math::rects::rect::Rect" + } + } + }, + "required": [ + "normalized_visible_node_rect" + ], + "short_name": "RelativeCursorPosition", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_ui::geometry::UiRect": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_ui::geometry::UiRect", + "properties": { + "bottom": { + "type": { + "$ref": "#/$defs/bevy_ui::geometry::Val" + } + }, + "left": { + "type": { + "$ref": "#/$defs/bevy_ui::geometry::Val" + } + }, + "right": { + "type": { + "$ref": "#/$defs/bevy_ui::geometry::Val" + } + }, + "top": { + "type": { + "$ref": "#/$defs/bevy_ui::geometry::Val" + } + } + }, + "required": [ + "left", + "right", + "top", + "bottom" + ], + "short_name": "UiRect", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_ui::geometry::Val": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_ui::geometry::Val", + "oneOf": [ + { + "long_name": "Auto" + }, + { + "items": false, + "long_name": "Px", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/f32" + } + } + ], + "short_name": "Px", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "Percent", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/f32" + } + } + ], + "short_name": "Percent", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "Vw", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/f32" + } + } + ], + "short_name": "Vw", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "Vh", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/f32" + } + } + ], + "short_name": "Vh", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "VMin", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/f32" + } + } + ], + "short_name": "VMin", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "VMax", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/f32" + } + } + ], + "short_name": "VMax", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Val", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_ui::measurement::ContentSize": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_ui::measurement::ContentSize", + "properties": {}, + "required": [], + "short_name": "ContentSize", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_ui::ui_node::AlignContent": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_ui::ui_node::AlignContent", + "oneOf": [ + "Default", + "Start", + "End", + "FlexStart", + "FlexEnd", + "Center", + "Stretch", + "SpaceBetween", + "SpaceEvenly", + "SpaceAround" + ], + "short_name": "AlignContent", + "type": "string", + "typeInfo": "Enum" + }, + "bevy_ui::ui_node::AlignItems": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_ui::ui_node::AlignItems", + "oneOf": [ + "Default", + "Start", + "End", + "FlexStart", + "FlexEnd", + "Center", + "Baseline", + "Stretch" + ], + "short_name": "AlignItems", + "type": "string", + "typeInfo": "Enum" + }, + "bevy_ui::ui_node::AlignSelf": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_ui::ui_node::AlignSelf", + "oneOf": [ + "Auto", + "Start", + "End", + "FlexStart", + "FlexEnd", + "Center", + "Baseline", + "Stretch" + ], + "short_name": "AlignSelf", + "type": "string", + "typeInfo": "Enum" + }, + "bevy_ui::ui_node::BackgroundColor": { + "isComponent": true, + "isResource": false, + "items": false, + "long_name": "bevy_ui::ui_node::BackgroundColor", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_color::color::Color" + } + } + ], + "short_name": "BackgroundColor", + "type": "array", + "typeInfo": "TupleStruct" + }, + "bevy_ui::ui_node::BorderColor": { + "isComponent": true, + "isResource": false, + "items": false, + "long_name": "bevy_ui::ui_node::BorderColor", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_color::color::Color" + } + } + ], + "short_name": "BorderColor", + "type": "array", + "typeInfo": "TupleStruct" + }, + "bevy_ui::ui_node::BorderRadius": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_ui::ui_node::BorderRadius", + "properties": { + "bottom_left": { + "type": { + "$ref": "#/$defs/bevy_ui::geometry::Val" + } + }, + "bottom_right": { + "type": { + "$ref": "#/$defs/bevy_ui::geometry::Val" + } + }, + "top_left": { + "type": { + "$ref": "#/$defs/bevy_ui::geometry::Val" + } + }, + "top_right": { + "type": { + "$ref": "#/$defs/bevy_ui::geometry::Val" + } + } + }, + "required": [ + "top_left", + "top_right", + "bottom_left", + "bottom_right" + ], + "short_name": "BorderRadius", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_ui::ui_node::CalculatedClip": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_ui::ui_node::CalculatedClip", + "properties": { + "clip": { + "type": { + "$ref": "#/$defs/bevy_math::rects::rect::Rect" + } + } + }, + "required": [ + "clip" + ], + "short_name": "CalculatedClip", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_ui::ui_node::Direction": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_ui::ui_node::Direction", + "oneOf": [ + "Inherit", + "LeftToRight", + "RightToLeft" + ], + "short_name": "Direction", + "type": "string", + "typeInfo": "Enum" + }, + "bevy_ui::ui_node::Display": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_ui::ui_node::Display", + "oneOf": [ + "Flex", + "Grid", + "Block", + "None" + ], + "short_name": "Display", + "type": "string", + "typeInfo": "Enum" + }, + "bevy_ui::ui_node::FlexDirection": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_ui::ui_node::FlexDirection", + "oneOf": [ + "Row", + "Column", + "RowReverse", + "ColumnReverse" + ], + "short_name": "FlexDirection", + "type": "string", + "typeInfo": "Enum" + }, + "bevy_ui::ui_node::FlexWrap": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_ui::ui_node::FlexWrap", + "oneOf": [ + "NoWrap", + "Wrap", + "WrapReverse" + ], + "short_name": "FlexWrap", + "type": "string", + "typeInfo": "Enum" + }, + "bevy_ui::ui_node::GridAutoFlow": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_ui::ui_node::GridAutoFlow", + "oneOf": [ + "Row", + "Column", + "RowDense", + "ColumnDense" + ], + "short_name": "GridAutoFlow", + "type": "string", + "typeInfo": "Enum" + }, + "bevy_ui::ui_node::GridPlacement": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_ui::ui_node::GridPlacement", + "properties": { + "end": { + "type": { + "$ref": "#/$defs/core::option::Option" + } + }, + "span": { + "type": { + "$ref": "#/$defs/core::option::Option" + } + }, + "start": { + "type": { + "$ref": "#/$defs/core::option::Option" + } + } + }, + "required": [], + "short_name": "GridPlacement", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_ui::ui_node::GridTrack": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_ui::ui_node::GridTrack", + "properties": { + "max_sizing_function": { + "type": { + "$ref": "#/$defs/bevy_ui::ui_node::MaxTrackSizingFunction" + } + }, + "min_sizing_function": { + "type": { + "$ref": "#/$defs/bevy_ui::ui_node::MinTrackSizingFunction" + } + } + }, + "required": [ + "min_sizing_function", + "max_sizing_function" + ], + "short_name": "GridTrack", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_ui::ui_node::GridTrackRepetition": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_ui::ui_node::GridTrackRepetition", + "oneOf": [ + { + "items": false, + "long_name": "Count", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/u16" + } + } + ], + "short_name": "Count", + "type": "array", + "typeInfo": "Tuple" + }, + { + "long_name": "AutoFill" + }, + { + "long_name": "AutoFit" + } + ], + "short_name": "GridTrackRepetition", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_ui::ui_node::JustifyContent": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_ui::ui_node::JustifyContent", + "oneOf": [ + "Default", + "Start", + "End", + "FlexStart", + "FlexEnd", + "Center", + "Stretch", + "SpaceBetween", + "SpaceEvenly", + "SpaceAround" + ], + "short_name": "JustifyContent", + "type": "string", + "typeInfo": "Enum" + }, + "bevy_ui::ui_node::JustifyItems": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_ui::ui_node::JustifyItems", + "oneOf": [ + "Default", + "Start", + "End", + "Center", + "Baseline", + "Stretch" + ], + "short_name": "JustifyItems", + "type": "string", + "typeInfo": "Enum" + }, + "bevy_ui::ui_node::JustifySelf": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_ui::ui_node::JustifySelf", + "oneOf": [ + "Auto", + "Start", + "End", + "Center", + "Baseline", + "Stretch" + ], + "short_name": "JustifySelf", + "type": "string", + "typeInfo": "Enum" + }, + "bevy_ui::ui_node::MaxTrackSizingFunction": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_ui::ui_node::MaxTrackSizingFunction", + "short_name": "MaxTrackSizingFunction", + "type": "object", + "typeInfo": "Value" + }, + "bevy_ui::ui_node::MinTrackSizingFunction": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_ui::ui_node::MinTrackSizingFunction", + "short_name": "MinTrackSizingFunction", + "type": "object", + "typeInfo": "Value" + }, + "bevy_ui::ui_node::Node": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_ui::ui_node::Node", + "properties": { + "border_radius": { + "type": { + "$ref": "#/$defs/bevy_ui::ui_node::ResolvedBorderRadius" + } + }, + "calculated_size": { + "type": { + "$ref": "#/$defs/glam::Vec2" + } + }, + "outline_offset": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "outline_width": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "stack_index": { + "type": { + "$ref": "#/$defs/u32" + } + }, + "unrounded_size": { + "type": { + "$ref": "#/$defs/glam::Vec2" + } + } + }, + "required": [ + "stack_index", + "calculated_size", + "outline_width", + "outline_offset", + "unrounded_size", + "border_radius" + ], + "short_name": "Node", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_ui::ui_node::Outline": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_ui::ui_node::Outline", + "properties": { + "color": { + "type": { + "$ref": "#/$defs/bevy_color::color::Color" + } + }, + "offset": { + "type": { + "$ref": "#/$defs/bevy_ui::geometry::Val" + } + }, + "width": { + "type": { + "$ref": "#/$defs/bevy_ui::geometry::Val" + } + } + }, + "required": [ + "width", + "offset", + "color" + ], + "short_name": "Outline", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_ui::ui_node::Overflow": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_ui::ui_node::Overflow", + "properties": { + "x": { + "type": { + "$ref": "#/$defs/bevy_ui::ui_node::OverflowAxis" + } + }, + "y": { + "type": { + "$ref": "#/$defs/bevy_ui::ui_node::OverflowAxis" + } + } + }, + "required": [ + "x", + "y" + ], + "short_name": "Overflow", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_ui::ui_node::OverflowAxis": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_ui::ui_node::OverflowAxis", + "oneOf": [ + "Visible", + "Clip", + "Hidden" + ], + "short_name": "OverflowAxis", + "type": "string", + "typeInfo": "Enum" + }, + "bevy_ui::ui_node::PositionType": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_ui::ui_node::PositionType", + "oneOf": [ + "Relative", + "Absolute" + ], + "short_name": "PositionType", + "type": "string", + "typeInfo": "Enum" + }, + "bevy_ui::ui_node::RepeatedGridTrack": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_ui::ui_node::RepeatedGridTrack", + "properties": { + "repetition": { + "type": { + "$ref": "#/$defs/bevy_ui::ui_node::GridTrackRepetition" + } + }, + "tracks": { + "type": { + "$ref": "#/$defs/smallvec::SmallVec<[bevy_ui::ui_node::GridTrack; 1]>" + } + } + }, + "required": [ + "repetition", + "tracks" + ], + "short_name": "RepeatedGridTrack", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_ui::ui_node::ResolvedBorderRadius": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_ui::ui_node::ResolvedBorderRadius", + "properties": { + "bottom_left": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "bottom_right": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "top_left": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "top_right": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "top_left", + "top_right", + "bottom_left", + "bottom_right" + ], + "short_name": "ResolvedBorderRadius", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_ui::ui_node::Style": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_ui::ui_node::Style", + "properties": { + "align_content": { + "type": { + "$ref": "#/$defs/bevy_ui::ui_node::AlignContent" + } + }, + "align_items": { + "type": { + "$ref": "#/$defs/bevy_ui::ui_node::AlignItems" + } + }, + "align_self": { + "type": { + "$ref": "#/$defs/bevy_ui::ui_node::AlignSelf" + } + }, + "aspect_ratio": { + "type": { + "$ref": "#/$defs/core::option::Option" + } + }, + "border": { + "type": { + "$ref": "#/$defs/bevy_ui::geometry::UiRect" + } + }, + "bottom": { + "type": { + "$ref": "#/$defs/bevy_ui::geometry::Val" + } + }, + "column_gap": { + "type": { + "$ref": "#/$defs/bevy_ui::geometry::Val" + } + }, + "direction": { + "type": { + "$ref": "#/$defs/bevy_ui::ui_node::Direction" + } + }, + "display": { + "type": { + "$ref": "#/$defs/bevy_ui::ui_node::Display" + } + }, + "flex_basis": { + "type": { + "$ref": "#/$defs/bevy_ui::geometry::Val" + } + }, + "flex_direction": { + "type": { + "$ref": "#/$defs/bevy_ui::ui_node::FlexDirection" + } + }, + "flex_grow": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "flex_shrink": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "flex_wrap": { + "type": { + "$ref": "#/$defs/bevy_ui::ui_node::FlexWrap" + } + }, + "grid_auto_columns": { + "type": { + "$ref": "#/$defs/alloc::vec::Vec" + } + }, + "grid_auto_flow": { + "type": { + "$ref": "#/$defs/bevy_ui::ui_node::GridAutoFlow" + } + }, + "grid_auto_rows": { + "type": { + "$ref": "#/$defs/alloc::vec::Vec" + } + }, + "grid_column": { + "type": { + "$ref": "#/$defs/bevy_ui::ui_node::GridPlacement" + } + }, + "grid_row": { + "type": { + "$ref": "#/$defs/bevy_ui::ui_node::GridPlacement" + } + }, + "grid_template_columns": { + "type": { + "$ref": "#/$defs/alloc::vec::Vec" + } + }, + "grid_template_rows": { + "type": { + "$ref": "#/$defs/alloc::vec::Vec" + } + }, + "height": { + "type": { + "$ref": "#/$defs/bevy_ui::geometry::Val" + } + }, + "justify_content": { + "type": { + "$ref": "#/$defs/bevy_ui::ui_node::JustifyContent" + } + }, + "justify_items": { + "type": { + "$ref": "#/$defs/bevy_ui::ui_node::JustifyItems" + } + }, + "justify_self": { + "type": { + "$ref": "#/$defs/bevy_ui::ui_node::JustifySelf" + } + }, + "left": { + "type": { + "$ref": "#/$defs/bevy_ui::geometry::Val" + } + }, + "margin": { + "type": { + "$ref": "#/$defs/bevy_ui::geometry::UiRect" + } + }, + "max_height": { + "type": { + "$ref": "#/$defs/bevy_ui::geometry::Val" + } + }, + "max_width": { + "type": { + "$ref": "#/$defs/bevy_ui::geometry::Val" + } + }, + "min_height": { + "type": { + "$ref": "#/$defs/bevy_ui::geometry::Val" + } + }, + "min_width": { + "type": { + "$ref": "#/$defs/bevy_ui::geometry::Val" + } + }, + "overflow": { + "type": { + "$ref": "#/$defs/bevy_ui::ui_node::Overflow" + } + }, + "padding": { + "type": { + "$ref": "#/$defs/bevy_ui::geometry::UiRect" + } + }, + "position_type": { + "type": { + "$ref": "#/$defs/bevy_ui::ui_node::PositionType" + } + }, + "right": { + "type": { + "$ref": "#/$defs/bevy_ui::geometry::Val" + } + }, + "row_gap": { + "type": { + "$ref": "#/$defs/bevy_ui::geometry::Val" + } + }, + "top": { + "type": { + "$ref": "#/$defs/bevy_ui::geometry::Val" + } + }, + "width": { + "type": { + "$ref": "#/$defs/bevy_ui::geometry::Val" + } + } + }, + "required": [ + "display", + "position_type", + "overflow", + "direction", + "left", + "right", + "top", + "bottom", + "width", + "height", + "min_width", + "min_height", + "max_width", + "max_height", + "align_items", + "justify_items", + "align_self", + "justify_self", + "align_content", + "justify_content", + "margin", + "padding", + "border", + "flex_direction", + "flex_wrap", + "flex_grow", + "flex_shrink", + "flex_basis", + "row_gap", + "column_gap", + "grid_auto_flow", + "grid_template_rows", + "grid_template_columns", + "grid_auto_rows", + "grid_auto_columns", + "grid_row", + "grid_column" + ], + "short_name": "Style", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_ui::ui_node::TargetCamera": { + "isComponent": false, + "isResource": false, + "items": false, + "long_name": "bevy_ui::ui_node::TargetCamera", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_ecs::entity::Entity" + } + } + ], + "short_name": "TargetCamera", + "type": "array", + "typeInfo": "TupleStruct" + }, + "bevy_ui::ui_node::UiImage": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_ui::ui_node::UiImage", + "properties": { + "color": { + "type": { + "$ref": "#/$defs/bevy_color::color::Color" + } + }, + "flip_x": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "flip_y": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "texture": { + "type": { + "$ref": "#/$defs/bevy_asset::handle::Handle" + } + } + }, + "required": [ + "color", + "texture", + "flip_x", + "flip_y" + ], + "short_name": "UiImage", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_ui::ui_node::ZIndex": { + "isComponent": true, + "isResource": false, + "long_name": "bevy_ui::ui_node::ZIndex", + "oneOf": [ + { + "items": false, + "long_name": "Local", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/i32" + } + } + ], + "short_name": "Local", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "Global", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/i32" + } + } + ], + "short_name": "Global", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "ZIndex", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_ui::widget::button::Button": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_ui::widget::button::Button", + "properties": {}, + "required": [], + "short_name": "Button", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_ui::widget::image::UiImageSize": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_ui::widget::image::UiImageSize", + "properties": { + "size": { + "type": { + "$ref": "#/$defs/glam::UVec2" + } + } + }, + "required": [ + "size" + ], + "short_name": "UiImageSize", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_ui::widget::label::Label": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_ui::widget::label::Label", + "properties": {}, + "required": [], + "short_name": "Label", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_ui::widget::text::TextFlags": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_ui::widget::text::TextFlags", + "properties": { + "needs_new_measure_func": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "needs_recompute": { + "type": { + "$ref": "#/$defs/bool" + } + } + }, + "required": [ + "needs_new_measure_func", + "needs_recompute" + ], + "short_name": "TextFlags", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_utils::Duration": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_utils::Duration", + "short_name": "Duration", + "type": "object", + "typeInfo": "Value" + }, + "bevy_utils::Instant": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_utils::Instant", + "short_name": "Instant", + "type": "object", + "typeInfo": "Value" + }, + "bevy_utils::hashbrown::HashMap, bevy_utils::hashbrown::hash_map::DefaultHashBuilder>": { + "isComponent": false, + "isResource": false, + "keyType": { + "type": { + "$ref": "#/$defs/alloc::string::String" + } + }, + "long_name": "bevy_utils::hashbrown::HashMap, bevy_utils::hashbrown::hash_map::DefaultHashBuilder>", + "short_name": "HashMap, DefaultHashBuilder>", + "type": "object", + "typeInfo": "Map", + "valueType": { + "type": { + "$ref": "#/$defs/alloc::vec::Vec" + } + } + }, + "bevy_utils::hashbrown::HashMap, bevy_utils::hashbrown::hash_map::DefaultHashBuilder>": { + "isComponent": false, + "isResource": false, + "keyType": { + "type": { + "$ref": "#/$defs/alloc::string::String" + } + }, + "long_name": "bevy_utils::hashbrown::HashMap, bevy_utils::hashbrown::hash_map::DefaultHashBuilder>", + "short_name": "HashMap, DefaultHashBuilder>", + "type": "object", + "typeInfo": "Map", + "valueType": { + "type": { + "$ref": "#/$defs/bevy_asset::handle::Handle" + } + } + }, + "bevy_utils::hashbrown::HashMap, bevy_utils::hashbrown::hash_map::DefaultHashBuilder>, bevy_utils::hashbrown::hash_map::DefaultHashBuilder>": { + "isComponent": false, + "isResource": false, + "keyType": { + "type": { + "$ref": "#/$defs/alloc::string::String" + } + }, + "long_name": "bevy_utils::hashbrown::HashMap, bevy_utils::hashbrown::hash_map::DefaultHashBuilder>, bevy_utils::hashbrown::hash_map::DefaultHashBuilder>", + "short_name": "HashMap, DefaultHashBuilder>, DefaultHashBuilder>", + "type": "object", + "typeInfo": "Map", + "valueType": { + "type": { + "$ref": "#/$defs/bevy_utils::hashbrown::HashMap, bevy_utils::hashbrown::hash_map::DefaultHashBuilder>" + } + } + }, + "bevy_utils::hashbrown::HashMap, bevy_utils::hashbrown::hash_map::DefaultHashBuilder>": { + "isComponent": false, + "isResource": false, + "keyType": { + "type": { + "$ref": "#/$defs/alloc::string::String" + } + }, + "long_name": "bevy_utils::hashbrown::HashMap, bevy_utils::hashbrown::hash_map::DefaultHashBuilder>", + "short_name": "HashMap, DefaultHashBuilder>", + "type": "object", + "typeInfo": "Map", + "valueType": { + "type": { + "$ref": "#/$defs/core::option::Option" + } + } + }, + "bevy_utils::hashbrown::HashMap": { + "isComponent": false, + "isResource": false, + "keyType": { + "type": { + "$ref": "#/$defs/alloc::string::String" + } + }, + "long_name": "bevy_utils::hashbrown::HashMap", + "short_name": "HashMap", + "type": "object", + "typeInfo": "Map", + "valueType": { + "type": { + "$ref": "#/$defs/petgraph::graph::NodeIndex" + } + } + }, + "bevy_utils::hashbrown::HashMap, bevy_utils::NoOpHash>": { + "isComponent": false, + "isResource": false, + "keyType": { + "type": { + "$ref": "#/$defs/bevy_animation::AnimationTargetId" + } + }, + "long_name": "bevy_utils::hashbrown::HashMap, bevy_utils::NoOpHash>", + "short_name": "HashMap, NoOpHash>", + "type": "object", + "typeInfo": "Map", + "valueType": { + "type": { + "$ref": "#/$defs/alloc::vec::Vec" + } + } + }, + "bevy_utils::hashbrown::HashMap, usize, bevy_utils::hashbrown::hash_map::DefaultHashBuilder>": { + "isComponent": false, + "isResource": false, + "keyType": { + "type": { + "$ref": "#/$defs/bevy_asset::id::AssetId" + } + }, + "long_name": "bevy_utils::hashbrown::HashMap, usize, bevy_utils::hashbrown::hash_map::DefaultHashBuilder>", + "short_name": "HashMap, usize, DefaultHashBuilder>", + "type": "object", + "typeInfo": "Map", + "valueType": { + "type": { + "$ref": "#/$defs/usize" + } + } + }, + "bevy_utils::hashbrown::HashMap, bevy_ecs::entity::hash::EntityHash>": { + "isComponent": false, + "isResource": false, + "keyType": { + "type": { + "$ref": "#/$defs/bevy_ecs::entity::Entity" + } + }, + "long_name": "bevy_utils::hashbrown::HashMap, bevy_ecs::entity::hash::EntityHash>", + "short_name": "HashMap, EntityHash>", + "type": "object", + "typeInfo": "Map", + "valueType": { + "type": { + "$ref": "#/$defs/alloc::vec::Vec" + } + } + }, + "bevy_utils::hashbrown::HashMap": { + "isComponent": false, + "isResource": false, + "keyType": { + "type": { + "$ref": "#/$defs/bevy_input::gamepad::GamepadAxis" + } + }, + "long_name": "bevy_utils::hashbrown::HashMap", + "short_name": "HashMap", + "type": "object", + "typeInfo": "Map", + "valueType": { + "type": { + "$ref": "#/$defs/bevy_input::gamepad::AxisSettings" + } + } + }, + "bevy_utils::hashbrown::HashMap": { + "isComponent": false, + "isResource": false, + "keyType": { + "type": { + "$ref": "#/$defs/bevy_input::gamepad::GamepadButton" + } + }, + "long_name": "bevy_utils::hashbrown::HashMap", + "short_name": "HashMap", + "type": "object", + "typeInfo": "Map", + "valueType": { + "type": { + "$ref": "#/$defs/bevy_input::gamepad::ButtonAxisSettings" + } + } + }, + "bevy_utils::hashbrown::HashMap": { + "isComponent": false, + "isResource": false, + "keyType": { + "type": { + "$ref": "#/$defs/bevy_input::gamepad::GamepadButton" + } + }, + "long_name": "bevy_utils::hashbrown::HashMap", + "short_name": "HashMap", + "type": "object", + "typeInfo": "Map", + "valueType": { + "type": { + "$ref": "#/$defs/bevy_input::gamepad::ButtonSettings" + } + } + }, + "bevy_utils::hashbrown::HashMap": { + "isComponent": false, + "isResource": false, + "keyType": { + "type": { + "$ref": "#/$defs/petgraph::graph::NodeIndex" + } + }, + "long_name": "bevy_utils::hashbrown::HashMap", + "short_name": "HashMap", + "type": "object", + "typeInfo": "Map", + "valueType": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "bevy_utils::hashbrown::HashMap, bevy_utils::hashbrown::hash_map::DefaultHashBuilder>": { + "isComponent": false, + "isResource": false, + "keyType": { + "type": { + "$ref": "#/$defs/u32" + } + }, + "long_name": "bevy_utils::hashbrown::HashMap, bevy_utils::hashbrown::hash_map::DefaultHashBuilder>", + "short_name": "HashMap, DefaultHashBuilder>", + "type": "object", + "typeInfo": "Map", + "valueType": { + "type": { + "$ref": "#/$defs/alloc::vec::Vec" + } + } + }, + "bevy_utils::hashbrown::HashSet": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_utils::hashbrown::HashSet", + "short_name": "HashSet", + "type": "object", + "typeInfo": "Value" + }, + "bevy_window::cursor::CursorIcon": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_window::cursor::CursorIcon", + "oneOf": [ + "Default", + "ContextMenu", + "Help", + "Pointer", + "Progress", + "Wait", + "Cell", + "Crosshair", + "Text", + "VerticalText", + "Alias", + "Copy", + "Move", + "NoDrop", + "NotAllowed", + "Grab", + "Grabbing", + "EResize", + "NResize", + "NeResize", + "NwResize", + "SResize", + "SeResize", + "SwResize", + "WResize", + "EwResize", + "NsResize", + "NeswResize", + "NwseResize", + "ColResize", + "RowResize", + "AllScroll", + "ZoomIn", + "ZoomOut" + ], + "short_name": "CursorIcon", + "type": "string", + "typeInfo": "Enum" + }, + "bevy_window::event::AppLifecycle": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_window::event::AppLifecycle", + "oneOf": [ + "Idle", + "Running", + "WillSuspend", + "Suspended", + "WillResume" + ], + "short_name": "AppLifecycle", + "type": "string", + "typeInfo": "Enum" + }, + "bevy_window::event::CursorEntered": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_window::event::CursorEntered", + "properties": { + "window": { + "type": { + "$ref": "#/$defs/bevy_ecs::entity::Entity" + } + } + }, + "required": [ + "window" + ], + "short_name": "CursorEntered", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_window::event::CursorLeft": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_window::event::CursorLeft", + "properties": { + "window": { + "type": { + "$ref": "#/$defs/bevy_ecs::entity::Entity" + } + } + }, + "required": [ + "window" + ], + "short_name": "CursorLeft", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_window::event::CursorMoved": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_window::event::CursorMoved", + "properties": { + "delta": { + "type": { + "$ref": "#/$defs/core::option::Option" + } + }, + "position": { + "type": { + "$ref": "#/$defs/glam::Vec2" + } + }, + "window": { + "type": { + "$ref": "#/$defs/bevy_ecs::entity::Entity" + } + } + }, + "required": [ + "window", + "position" + ], + "short_name": "CursorMoved", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_window::event::FileDragAndDrop": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_window::event::FileDragAndDrop", + "oneOf": [ + { + "additionalProperties": false, + "long_name": "DroppedFile", + "properties": { + "path_buf": { + "long_name": "path_buf", + "type": { + "$ref": "#/$defs/std::path::PathBuf" + } + }, + "window": { + "long_name": "window", + "type": { + "$ref": "#/$defs/bevy_ecs::entity::Entity" + } + } + }, + "required": [ + "window", + "path_buf" + ], + "short_name": "DroppedFile", + "type": "object", + "typeInfo": "Struct" + }, + { + "additionalProperties": false, + "long_name": "HoveredFile", + "properties": { + "path_buf": { + "long_name": "path_buf", + "type": { + "$ref": "#/$defs/std::path::PathBuf" + } + }, + "window": { + "long_name": "window", + "type": { + "$ref": "#/$defs/bevy_ecs::entity::Entity" + } + } + }, + "required": [ + "window", + "path_buf" + ], + "short_name": "HoveredFile", + "type": "object", + "typeInfo": "Struct" + }, + { + "additionalProperties": false, + "long_name": "HoveredFileCanceled", + "properties": { + "window": { + "long_name": "window", + "type": { + "$ref": "#/$defs/bevy_ecs::entity::Entity" + } + } + }, + "required": [ + "window" + ], + "short_name": "HoveredFileCanceled", + "type": "object", + "typeInfo": "Struct" + } + ], + "short_name": "FileDragAndDrop", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_window::event::ReceivedCharacter": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_window::event::ReceivedCharacter", + "properties": { + "char": { + "type": { + "$ref": "#/$defs/smol_str::SmolStr" + } + }, + "window": { + "type": { + "$ref": "#/$defs/bevy_ecs::entity::Entity" + } + } + }, + "required": [ + "window", + "char" + ], + "short_name": "ReceivedCharacter", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_window::event::RequestRedraw": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_window::event::RequestRedraw", + "properties": {}, + "required": [], + "short_name": "RequestRedraw", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_window::event::WindowBackendScaleFactorChanged": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_window::event::WindowBackendScaleFactorChanged", + "properties": { + "scale_factor": { + "type": { + "$ref": "#/$defs/f64" + } + }, + "window": { + "type": { + "$ref": "#/$defs/bevy_ecs::entity::Entity" + } + } + }, + "required": [ + "window", + "scale_factor" + ], + "short_name": "WindowBackendScaleFactorChanged", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_window::event::WindowCloseRequested": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_window::event::WindowCloseRequested", + "properties": { + "window": { + "type": { + "$ref": "#/$defs/bevy_ecs::entity::Entity" + } + } + }, + "required": [ + "window" + ], + "short_name": "WindowCloseRequested", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_window::event::WindowClosed": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_window::event::WindowClosed", + "properties": { + "window": { + "type": { + "$ref": "#/$defs/bevy_ecs::entity::Entity" + } + } + }, + "required": [ + "window" + ], + "short_name": "WindowClosed", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_window::event::WindowClosing": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_window::event::WindowClosing", + "properties": { + "window": { + "type": { + "$ref": "#/$defs/bevy_ecs::entity::Entity" + } + } + }, + "required": [ + "window" + ], + "short_name": "WindowClosing", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_window::event::WindowCreated": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_window::event::WindowCreated", + "properties": { + "window": { + "type": { + "$ref": "#/$defs/bevy_ecs::entity::Entity" + } + } + }, + "required": [ + "window" + ], + "short_name": "WindowCreated", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_window::event::WindowFocused": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_window::event::WindowFocused", + "properties": { + "focused": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "window": { + "type": { + "$ref": "#/$defs/bevy_ecs::entity::Entity" + } + } + }, + "required": [ + "window", + "focused" + ], + "short_name": "WindowFocused", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_window::event::WindowMoved": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_window::event::WindowMoved", + "properties": { + "position": { + "type": { + "$ref": "#/$defs/glam::IVec2" + } + }, + "window": { + "type": { + "$ref": "#/$defs/bevy_ecs::entity::Entity" + } + } + }, + "required": [ + "window", + "position" + ], + "short_name": "WindowMoved", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_window::event::WindowOccluded": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_window::event::WindowOccluded", + "properties": { + "occluded": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "window": { + "type": { + "$ref": "#/$defs/bevy_ecs::entity::Entity" + } + } + }, + "required": [ + "window", + "occluded" + ], + "short_name": "WindowOccluded", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_window::event::WindowResized": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_window::event::WindowResized", + "properties": { + "height": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "width": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "window": { + "type": { + "$ref": "#/$defs/bevy_ecs::entity::Entity" + } + } + }, + "required": [ + "window", + "width", + "height" + ], + "short_name": "WindowResized", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_window::event::WindowScaleFactorChanged": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_window::event::WindowScaleFactorChanged", + "properties": { + "scale_factor": { + "type": { + "$ref": "#/$defs/f64" + } + }, + "window": { + "type": { + "$ref": "#/$defs/bevy_ecs::entity::Entity" + } + } + }, + "required": [ + "window", + "scale_factor" + ], + "short_name": "WindowScaleFactorChanged", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_window::event::WindowThemeChanged": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_window::event::WindowThemeChanged", + "properties": { + "theme": { + "type": { + "$ref": "#/$defs/bevy_window::window::WindowTheme" + } + }, + "window": { + "type": { + "$ref": "#/$defs/bevy_ecs::entity::Entity" + } + } + }, + "required": [ + "window", + "theme" + ], + "short_name": "WindowThemeChanged", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_window::window::CompositeAlphaMode": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_window::window::CompositeAlphaMode", + "oneOf": [ + "Auto", + "Opaque", + "PreMultiplied", + "PostMultiplied", + "Inherit" + ], + "short_name": "CompositeAlphaMode", + "type": "string", + "typeInfo": "Enum" + }, + "bevy_window::window::Cursor": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_window::window::Cursor", + "properties": { + "grab_mode": { + "type": { + "$ref": "#/$defs/bevy_window::window::CursorGrabMode" + } + }, + "hit_test": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "icon": { + "type": { + "$ref": "#/$defs/bevy_window::cursor::CursorIcon" + } + }, + "visible": { + "type": { + "$ref": "#/$defs/bool" + } + } + }, + "required": [ + "icon", + "visible", + "grab_mode", + "hit_test" + ], + "short_name": "Cursor", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_window::window::CursorGrabMode": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_window::window::CursorGrabMode", + "oneOf": [ + "None", + "Confined", + "Locked" + ], + "short_name": "CursorGrabMode", + "type": "string", + "typeInfo": "Enum" + }, + "bevy_window::window::EnabledButtons": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_window::window::EnabledButtons", + "properties": { + "close": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "maximize": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "minimize": { + "type": { + "$ref": "#/$defs/bool" + } + } + }, + "required": [ + "minimize", + "maximize", + "close" + ], + "short_name": "EnabledButtons", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_window::window::InternalWindowState": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_window::window::InternalWindowState", + "properties": { + "maximize_request": { + "type": { + "$ref": "#/$defs/core::option::Option" + } + }, + "minimize_request": { + "type": { + "$ref": "#/$defs/core::option::Option" + } + }, + "physical_cursor_position": { + "type": { + "$ref": "#/$defs/core::option::Option" + } + } + }, + "required": [], + "short_name": "InternalWindowState", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_window::window::MonitorSelection": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_window::window::MonitorSelection", + "oneOf": [ + { + "long_name": "Current" + }, + { + "long_name": "Primary" + }, + { + "items": false, + "long_name": "Index", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/usize" + } + } + ], + "short_name": "Index", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "MonitorSelection", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_window::window::PresentMode": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_window::window::PresentMode", + "oneOf": [ + "AutoVsync", + "AutoNoVsync", + "Fifo", + "FifoRelaxed", + "Immediate", + "Mailbox" + ], + "short_name": "PresentMode", + "type": "string", + "typeInfo": "Enum" + }, + "bevy_window::window::PrimaryWindow": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_window::window::PrimaryWindow", + "properties": {}, + "required": [], + "short_name": "PrimaryWindow", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_window::window::Window": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "bevy_window::window::Window", + "properties": { + "canvas": { + "type": { + "$ref": "#/$defs/core::option::Option" + } + }, + "composite_alpha_mode": { + "type": { + "$ref": "#/$defs/bevy_window::window::CompositeAlphaMode" + } + }, + "cursor": { + "type": { + "$ref": "#/$defs/bevy_window::window::Cursor" + } + }, + "decorations": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "desired_maximum_frame_latency": { + "type": { + "$ref": "#/$defs/core::option::Option" + } + }, + "enabled_buttons": { + "type": { + "$ref": "#/$defs/bevy_window::window::EnabledButtons" + } + }, + "fit_canvas_to_parent": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "focused": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "ime_enabled": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "ime_position": { + "type": { + "$ref": "#/$defs/glam::Vec2" + } + }, + "internal": { + "type": { + "$ref": "#/$defs/bevy_window::window::InternalWindowState" + } + }, + "mode": { + "type": { + "$ref": "#/$defs/bevy_window::window::WindowMode" + } + }, + "name": { + "type": { + "$ref": "#/$defs/core::option::Option" + } + }, + "position": { + "type": { + "$ref": "#/$defs/bevy_window::window::WindowPosition" + } + }, + "present_mode": { + "type": { + "$ref": "#/$defs/bevy_window::window::PresentMode" + } + }, + "prevent_default_event_handling": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "recognize_doubletap_gesture": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "recognize_pan_gesture": { + "type": { + "$ref": "#/$defs/core::option::Option<(u8, u8)>" + } + }, + "recognize_pinch_gesture": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "recognize_rotation_gesture": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "resizable": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "resize_constraints": { + "type": { + "$ref": "#/$defs/bevy_window::window::WindowResizeConstraints" + } + }, + "resolution": { + "type": { + "$ref": "#/$defs/bevy_window::window::WindowResolution" + } + }, + "skip_taskbar": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "title": { + "type": { + "$ref": "#/$defs/alloc::string::String" + } + }, + "transparent": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "visible": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "window_level": { + "type": { + "$ref": "#/$defs/bevy_window::window::WindowLevel" + } + }, + "window_theme": { + "type": { + "$ref": "#/$defs/core::option::Option" + } + } + }, + "required": [ + "cursor", + "present_mode", + "mode", + "position", + "resolution", + "title", + "composite_alpha_mode", + "resize_constraints", + "resizable", + "enabled_buttons", + "decorations", + "transparent", + "focused", + "window_level", + "fit_canvas_to_parent", + "prevent_default_event_handling", + "internal", + "ime_enabled", + "ime_position", + "visible", + "skip_taskbar", + "recognize_pinch_gesture", + "recognize_rotation_gesture", + "recognize_doubletap_gesture" + ], + "short_name": "Window", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_window::window::WindowLevel": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_window::window::WindowLevel", + "oneOf": [ + "AlwaysOnBottom", + "Normal", + "AlwaysOnTop" + ], + "short_name": "WindowLevel", + "type": "string", + "typeInfo": "Enum" + }, + "bevy_window::window::WindowMode": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_window::window::WindowMode", + "oneOf": [ + "Windowed", + "BorderlessFullscreen", + "SizedFullscreen", + "Fullscreen" + ], + "short_name": "WindowMode", + "type": "string", + "typeInfo": "Enum" + }, + "bevy_window::window::WindowPosition": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_window::window::WindowPosition", + "oneOf": [ + { + "long_name": "Automatic" + }, + { + "items": false, + "long_name": "Centered", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_window::window::MonitorSelection" + } + } + ], + "short_name": "Centered", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "long_name": "At", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/glam::IVec2" + } + } + ], + "short_name": "At", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "WindowPosition", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_window::window::WindowResizeConstraints": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_window::window::WindowResizeConstraints", + "properties": { + "max_height": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "max_width": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "min_height": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "min_width": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "min_width", + "min_height", + "max_width", + "max_height" + ], + "short_name": "WindowResizeConstraints", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_window::window::WindowResolution": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "bevy_window::window::WindowResolution", + "properties": { + "physical_height": { + "type": { + "$ref": "#/$defs/u32" + } + }, + "physical_width": { + "type": { + "$ref": "#/$defs/u32" + } + }, + "scale_factor": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "scale_factor_override": { + "type": { + "$ref": "#/$defs/core::option::Option" + } + } + }, + "required": [ + "physical_width", + "physical_height", + "scale_factor" + ], + "short_name": "WindowResolution", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_window::window::WindowTheme": { + "isComponent": false, + "isResource": false, + "long_name": "bevy_window::window::WindowTheme", + "oneOf": [ + "Light", + "Dark" + ], + "short_name": "WindowTheme", + "type": "string", + "typeInfo": "Enum" + }, + "blenvy::blueprints::animation::AnimationInfo": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "blenvy::blueprints::animation::AnimationInfo", + "properties": { + "frame_end": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "frame_end_override": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "frame_start": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "frame_start_override": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "frames_length": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "name": { + "type": { + "$ref": "#/$defs/alloc::string::String" + } + } + }, + "required": [ + "name", + "frame_start", + "frame_end", + "frames_length", + "frame_start_override", + "frame_end_override" + ], + "short_name": "AnimationInfo", + "type": "object", + "typeInfo": "Struct" + }, + "blenvy::blueprints::animation::AnimationInfos": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "blenvy::blueprints::animation::AnimationInfos", + "properties": { + "animations": { + "type": { + "$ref": "#/$defs/alloc::vec::Vec" + } + } + }, + "required": [ + "animations" + ], + "short_name": "AnimationInfos", + "type": "object", + "typeInfo": "Struct" + }, + "blenvy::blueprints::animation::AnimationMarkers": { + "isComponent": true, + "isResource": false, + "items": false, + "long_name": "blenvy::blueprints::animation::AnimationMarkers", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_utils::hashbrown::HashMap, bevy_utils::hashbrown::hash_map::DefaultHashBuilder>, bevy_utils::hashbrown::hash_map::DefaultHashBuilder>" + } + } + ], + "short_name": "AnimationMarkers", + "type": "array", + "typeInfo": "TupleStruct" + }, + "blenvy::blueprints::animation::BlueprintAnimations": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "blenvy::blueprints::animation::BlueprintAnimations", + "properties": { + "graph": { + "type": { + "$ref": "#/$defs/bevy_asset::handle::Handle" + } + }, + "named_animations": { + "type": { + "$ref": "#/$defs/bevy_utils::hashbrown::HashMap, bevy_utils::hashbrown::hash_map::DefaultHashBuilder>" + } + }, + "named_indices": { + "type": { + "$ref": "#/$defs/bevy_utils::hashbrown::HashMap" + } + } + }, + "required": [ + "named_animations", + "named_indices", + "graph" + ], + "short_name": "BlueprintAnimations", + "type": "object", + "typeInfo": "Struct" + }, + "blenvy::blueprints::animation::InstanceAnimations": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "blenvy::blueprints::animation::InstanceAnimations", + "properties": { + "graph": { + "type": { + "$ref": "#/$defs/bevy_asset::handle::Handle" + } + }, + "named_animations": { + "type": { + "$ref": "#/$defs/bevy_utils::hashbrown::HashMap, bevy_utils::hashbrown::hash_map::DefaultHashBuilder>" + } + }, + "named_indices": { + "type": { + "$ref": "#/$defs/bevy_utils::hashbrown::HashMap" + } + } + }, + "required": [ + "named_animations", + "named_indices", + "graph" + ], + "short_name": "InstanceAnimations", + "type": "object", + "typeInfo": "Struct" + }, + "blenvy::blueprints::assets::BlueprintAsset": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "blenvy::blueprints::assets::BlueprintAsset", + "properties": { + "name": { + "type": { + "$ref": "#/$defs/alloc::string::String" + } + }, + "path": { + "type": { + "$ref": "#/$defs/alloc::string::String" + } + } + }, + "required": [ + "name", + "path" + ], + "short_name": "BlueprintAsset", + "type": "object", + "typeInfo": "Struct" + }, + "blenvy::blueprints::assets::BlueprintAssets": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "blenvy::blueprints::assets::BlueprintAssets", + "properties": { + "assets": { + "type": { + "$ref": "#/$defs/alloc::vec::Vec" + } + }, + "loaded": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "progress": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "assets", + "loaded", + "progress" + ], + "short_name": "BlueprintAssets", + "type": "object", + "typeInfo": "Struct" + }, + "blenvy::blueprints::materials::MaterialInfo": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "blenvy::blueprints::materials::MaterialInfo", + "properties": { + "name": { + "type": { + "$ref": "#/$defs/alloc::string::String" + } + }, + "path": { + "type": { + "$ref": "#/$defs/alloc::string::String" + } + } + }, + "required": [ + "name", + "path" + ], + "short_name": "MaterialInfo", + "type": "object", + "typeInfo": "Struct" + }, + "blenvy::blueprints::materials::MaterialInfos": { + "isComponent": true, + "isResource": false, + "items": false, + "long_name": "blenvy::blueprints::materials::MaterialInfos", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/alloc::vec::Vec" + } + } + ], + "short_name": "MaterialInfos", + "type": "array", + "typeInfo": "TupleStruct" + }, + "blenvy::blueprints::spawn_from_blueprints::BlueprintInfo": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "blenvy::blueprints::spawn_from_blueprints::BlueprintInfo", + "properties": { + "name": { + "type": { + "$ref": "#/$defs/alloc::string::String" + } + }, + "path": { + "type": { + "$ref": "#/$defs/alloc::string::String" + } + } + }, + "required": [ + "name", + "path" + ], + "short_name": "BlueprintInfo", + "type": "object", + "typeInfo": "Struct" + }, + "blenvy::blueprints::spawn_from_blueprints::BlueprintInstanceDisabled": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "blenvy::blueprints::spawn_from_blueprints::BlueprintInstanceDisabled", + "properties": {}, + "required": [], + "short_name": "BlueprintInstanceDisabled", + "type": "object", + "typeInfo": "Struct" + }, + "blenvy::blueprints::spawn_from_blueprints::HideUntilReady": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "blenvy::blueprints::spawn_from_blueprints::HideUntilReady", + "properties": {}, + "required": [], + "short_name": "HideUntilReady", + "type": "object", + "typeInfo": "Struct" + }, + "blenvy::blueprints::spawn_from_blueprints::SpawnBlueprint": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "blenvy::blueprints::spawn_from_blueprints::SpawnBlueprint", + "properties": {}, + "required": [], + "short_name": "SpawnBlueprint", + "type": "object", + "typeInfo": "Struct" + }, + "blenvy::components::GltfProcessed": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "blenvy::components::GltfProcessed", + "properties": {}, + "required": [], + "short_name": "GltfProcessed", + "type": "object", + "typeInfo": "Struct" + }, + "blenvy::components::blender_settings::lighting::BlenderBackgroundShader": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "blenvy::components::blender_settings::lighting::BlenderBackgroundShader", + "properties": { + "color": { + "type": { + "$ref": "#/$defs/bevy_color::color::Color" + } + }, + "strength": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "color", + "strength" + ], + "short_name": "BlenderBackgroundShader", + "type": "object", + "typeInfo": "Struct" + }, + "blenvy::components::blender_settings::lighting::BlenderColorGrading": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "blenvy::components::blender_settings::lighting::BlenderColorGrading", + "properties": { + "exposure": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "gamma": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "exposure", + "gamma" + ], + "short_name": "BlenderColorGrading", + "type": "object", + "typeInfo": "Struct" + }, + "blenvy::components::blender_settings::lighting::BlenderLightShadows": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "blenvy::components::blender_settings::lighting::BlenderLightShadows", + "properties": { + "buffer_bias": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "enabled": { + "type": { + "$ref": "#/$defs/bool" + } + } + }, + "required": [ + "enabled", + "buffer_bias" + ], + "short_name": "BlenderLightShadows", + "type": "object", + "typeInfo": "Struct" + }, + "blenvy::components::blender_settings::lighting::BlenderShadowSettings": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "blenvy::components::blender_settings::lighting::BlenderShadowSettings", + "properties": { + "cascade_size": { + "type": { + "$ref": "#/$defs/usize" + } + } + }, + "required": [ + "cascade_size" + ], + "short_name": "BlenderShadowSettings", + "type": "object", + "typeInfo": "Struct" + }, + "blenvy::components::blender_settings::lighting::BlenderToneMapping": { + "isComponent": true, + "isResource": false, + "long_name": "blenvy::components::blender_settings::lighting::BlenderToneMapping", + "oneOf": [ + "None", + "AgX", + "Filmic" + ], + "short_name": "BlenderToneMapping", + "type": "string", + "typeInfo": "Enum" + }, + "blenvy::save_load::Dynamic": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "blenvy::save_load::Dynamic", + "properties": {}, + "required": [], + "short_name": "Dynamic", + "type": "object", + "typeInfo": "Struct" + }, + "blenvy::save_load::StaticEntitiesRoot": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "blenvy::save_load::StaticEntitiesRoot", + "properties": {}, + "required": [], + "short_name": "StaticEntitiesRoot", + "type": "object", + "typeInfo": "Struct" + }, + "bool": { + "isComponent": false, + "isResource": false, + "long_name": "bool", + "short_name": "bool", + "type": "boolean", + "typeInfo": "Value" + }, + "char": { + "isComponent": false, + "isResource": false, + "long_name": "char", + "short_name": "char", + "type": "string", + "typeInfo": "Value" + }, + "core::num::NonZeroI16": { + "isComponent": false, + "isResource": false, + "long_name": "core::num::NonZeroI16", + "short_name": "NonZeroI16", + "type": "object", + "typeInfo": "Value" + }, + "core::num::NonZeroU16": { + "isComponent": false, + "isResource": false, + "long_name": "core::num::NonZeroU16", + "short_name": "NonZeroU16", + "type": "object", + "typeInfo": "Value" + }, + "core::num::NonZeroU32": { + "isComponent": false, + "isResource": false, + "long_name": "core::num::NonZeroU32", + "short_name": "NonZeroU32", + "type": "object", + "typeInfo": "Value" + }, + "core::ops::Range": { + "isComponent": false, + "isResource": false, + "long_name": "core::ops::Range", + "short_name": "Range", + "type": "object", + "typeInfo": "Value" + }, + "core::ops::Range": { + "isComponent": false, + "isResource": false, + "long_name": "core::ops::Range", + "short_name": "Range", + "type": "object", + "typeInfo": "Value" + }, + "core::ops::RangeInclusive": { + "isComponent": false, + "isResource": false, + "long_name": "core::ops::RangeInclusive", + "short_name": "RangeInclusive", + "type": "object", + "typeInfo": "Value" + }, + "core::ops::RangeInclusive": { + "isComponent": false, + "isResource": false, + "long_name": "core::ops::RangeInclusive", + "short_name": "RangeInclusive", + "type": "object", + "typeInfo": "Value" + }, + "core::option::Option<(u8, u8)>": { + "isComponent": false, + "isResource": false, + "long_name": "core::option::Option<(u8, u8)>", + "oneOf": [ + { + "long_name": "None" + }, + { + "items": false, + "long_name": "Some", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/(u8, u8)" + } + } + ], + "short_name": "Some", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Option<(u8, u8)>", + "type": "object", + "typeInfo": "Enum" + }, + "core::option::Option": { + "isComponent": false, + "isResource": false, + "long_name": "core::option::Option", + "oneOf": [ + { + "long_name": "None" + }, + { + "items": false, + "long_name": "Some", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/alloc::string::String" + } + } + ], + "short_name": "Some", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Option", + "type": "object", + "typeInfo": "Enum" + }, + "core::option::Option>": { + "isComponent": false, + "isResource": false, + "long_name": "core::option::Option>", + "oneOf": [ + { + "long_name": "None" + }, + { + "items": false, + "long_name": "Some", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/alloc::vec::Vec<[u32; 2]>" + } + } + ], + "short_name": "Some", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Option>", + "type": "object", + "typeInfo": "Enum" + }, + "core::option::Option>": { + "isComponent": false, + "isResource": false, + "long_name": "core::option::Option>", + "oneOf": [ + { + "long_name": "None" + }, + { + "items": false, + "long_name": "Some", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/alloc::vec::Vec" + } + } + ], + "short_name": "Some", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Option>", + "type": "object", + "typeInfo": "Enum" + }, + "core::option::Option": { + "isComponent": false, + "isResource": false, + "long_name": "core::option::Option", + "oneOf": [ + { + "long_name": "None" + }, + { + "items": false, + "long_name": "Some", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/avian3d::collision::collider::constructor::ColliderConstructor" + } + } + ], + "short_name": "Some", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Option", + "type": "object", + "typeInfo": "Enum" + }, + "core::option::Option": { + "isComponent": false, + "isResource": false, + "long_name": "core::option::Option", + "oneOf": [ + { + "long_name": "None" + }, + { + "items": false, + "long_name": "Some", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/avian3d::collision::collider::constructor::ColliderConstructorHierarchyConfig" + } + } + ], + "short_name": "Some", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Option", + "type": "object", + "typeInfo": "Enum" + }, + "core::option::Option": { + "isComponent": false, + "isResource": false, + "long_name": "core::option::Option", + "oneOf": [ + { + "long_name": "None" + }, + { + "items": false, + "long_name": "Some", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/avian3d::collision::layers::CollisionLayers" + } + } + ], + "short_name": "Some", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Option", + "type": "object", + "typeInfo": "Enum" + }, + "core::option::Option": { + "isComponent": false, + "isResource": false, + "long_name": "core::option::Option", + "oneOf": [ + { + "long_name": "None" + }, + { + "items": false, + "long_name": "Some", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/avian3d::dynamics::rigid_body::mass_properties::ColliderDensity" + } + } + ], + "short_name": "Some", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Option", + "type": "object", + "typeInfo": "Enum" + }, + "core::option::Option": { + "isComponent": false, + "isResource": false, + "long_name": "core::option::Option", + "oneOf": [ + { + "long_name": "None" + }, + { + "items": false, + "long_name": "Some", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/avian3d::dynamics::solver::joints::AngleLimit" + } + } + ], + "short_name": "Some", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Option", + "type": "object", + "typeInfo": "Enum" + }, + "core::option::Option": { + "isComponent": false, + "isResource": false, + "long_name": "core::option::Option", + "oneOf": [ + { + "long_name": "None" + }, + { + "items": false, + "long_name": "Some", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/avian3d::dynamics::solver::joints::DistanceLimit" + } + } + ], + "short_name": "Some", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Option", + "type": "object", + "typeInfo": "Enum" + }, + "core::option::Option>": { + "isComponent": false, + "isResource": false, + "long_name": "core::option::Option>", + "oneOf": [ + { + "long_name": "None" + }, + { + "items": false, + "long_name": "Some", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_asset::handle::Handle" + } + } + ], + "short_name": "Some", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Option>", + "type": "object", + "typeInfo": "Enum" + }, + "core::option::Option>": { + "isComponent": false, + "isResource": false, + "long_name": "core::option::Option>", + "oneOf": [ + { + "long_name": "None" + }, + { + "items": false, + "long_name": "Some", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_asset::handle::Handle" + } + } + ], + "short_name": "Some", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Option>", + "type": "object", + "typeInfo": "Enum" + }, + "core::option::Option": { + "isComponent": false, + "isResource": false, + "long_name": "core::option::Option", + "oneOf": [ + { + "long_name": "None" + }, + { + "items": false, + "long_name": "Some", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_audio::audio::SpatialScale" + } + } + ], + "short_name": "Some", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Option", + "type": "object", + "typeInfo": "Enum" + }, + "core::option::Option": { + "isComponent": false, + "isResource": false, + "long_name": "core::option::Option", + "oneOf": [ + { + "long_name": "None" + }, + { + "items": false, + "long_name": "Some", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_color::color::Color" + } + } + ], + "short_name": "Some", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Option", + "type": "object", + "typeInfo": "Enum" + }, + "core::option::Option": { + "isComponent": false, + "isResource": false, + "long_name": "core::option::Option", + "oneOf": [ + { + "long_name": "None" + }, + { + "items": false, + "long_name": "Some", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_input::touch::ForceTouch" + } + } + ], + "short_name": "Some", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Option", + "type": "object", + "typeInfo": "Enum" + }, + "core::option::Option": { + "isComponent": false, + "isResource": false, + "long_name": "core::option::Option", + "oneOf": [ + { + "long_name": "None" + }, + { + "items": false, + "long_name": "Some", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_math::rects::rect::Rect" + } + } + ], + "short_name": "Some", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Option", + "type": "object", + "typeInfo": "Enum" + }, + "core::option::Option": { + "isComponent": false, + "isResource": false, + "long_name": "core::option::Option", + "oneOf": [ + { + "long_name": "None" + }, + { + "items": false, + "long_name": "Some", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_render::camera::camera::Viewport" + } + } + ], + "short_name": "Some", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Option", + "type": "object", + "typeInfo": "Enum" + }, + "core::option::Option": { + "isComponent": false, + "isResource": false, + "long_name": "core::option::Option", + "oneOf": [ + { + "long_name": "None" + }, + { + "items": false, + "long_name": "Some", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_render::mesh::mesh::Indices" + } + } + ], + "short_name": "Some", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Option", + "type": "object", + "typeInfo": "Enum" + }, + "core::option::Option": { + "isComponent": false, + "isResource": false, + "long_name": "core::option::Option", + "oneOf": [ + { + "long_name": "None" + }, + { + "items": false, + "long_name": "Some", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_utils::Instant" + } + } + ], + "short_name": "Some", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Option", + "type": "object", + "typeInfo": "Enum" + }, + "core::option::Option, usize, bevy_utils::hashbrown::hash_map::DefaultHashBuilder>>": { + "isComponent": false, + "isResource": false, + "long_name": "core::option::Option, usize, bevy_utils::hashbrown::hash_map::DefaultHashBuilder>>", + "oneOf": [ + { + "long_name": "None" + }, + { + "items": false, + "long_name": "Some", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_utils::hashbrown::HashMap, usize, bevy_utils::hashbrown::hash_map::DefaultHashBuilder>" + } + } + ], + "short_name": "Some", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Option, usize, DefaultHashBuilder>>", + "type": "object", + "typeInfo": "Enum" + }, + "core::option::Option": { + "isComponent": false, + "isResource": false, + "long_name": "core::option::Option", + "oneOf": [ + { + "long_name": "None" + }, + { + "items": false, + "long_name": "Some", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_window::window::WindowTheme" + } + } + ], + "short_name": "Some", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Option", + "type": "object", + "typeInfo": "Enum" + }, + "core::option::Option": { + "isComponent": false, + "isResource": false, + "long_name": "core::option::Option", + "oneOf": [ + { + "long_name": "None" + }, + { + "items": false, + "long_name": "Some", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bool" + } + } + ], + "short_name": "Some", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Option", + "type": "object", + "typeInfo": "Enum" + }, + "core::option::Option": { + "isComponent": false, + "isResource": false, + "long_name": "core::option::Option", + "oneOf": [ + { + "long_name": "None" + }, + { + "items": false, + "long_name": "Some", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/char" + } + } + ], + "short_name": "Some", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Option", + "type": "object", + "typeInfo": "Enum" + }, + "core::option::Option": { + "isComponent": false, + "isResource": false, + "long_name": "core::option::Option", + "oneOf": [ + { + "long_name": "None" + }, + { + "items": false, + "long_name": "Some", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/core::num::NonZeroI16" + } + } + ], + "short_name": "Some", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Option", + "type": "object", + "typeInfo": "Enum" + }, + "core::option::Option": { + "isComponent": false, + "isResource": false, + "long_name": "core::option::Option", + "oneOf": [ + { + "long_name": "None" + }, + { + "items": false, + "long_name": "Some", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/core::num::NonZeroU16" + } + } + ], + "short_name": "Some", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Option", + "type": "object", + "typeInfo": "Enum" + }, + "core::option::Option": { + "isComponent": false, + "isResource": false, + "long_name": "core::option::Option", + "oneOf": [ + { + "long_name": "None" + }, + { + "items": false, + "long_name": "Some", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/core::num::NonZeroU32" + } + } + ], + "short_name": "Some", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Option", + "type": "object", + "typeInfo": "Enum" + }, + "core::option::Option": { + "isComponent": false, + "isResource": false, + "long_name": "core::option::Option", + "oneOf": [ + { + "long_name": "None" + }, + { + "items": false, + "long_name": "Some", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/f32" + } + } + ], + "short_name": "Some", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Option", + "type": "object", + "typeInfo": "Enum" + }, + "core::option::Option": { + "isComponent": false, + "isResource": false, + "long_name": "core::option::Option", + "oneOf": [ + { + "long_name": "None" + }, + { + "items": false, + "long_name": "Some", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/f64" + } + } + ], + "short_name": "Some", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Option", + "type": "object", + "typeInfo": "Enum" + }, + "core::option::Option": { + "isComponent": false, + "isResource": false, + "long_name": "core::option::Option", + "oneOf": [ + { + "long_name": "None" + }, + { + "items": false, + "long_name": "Some", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/glam::DVec2" + } + } + ], + "short_name": "Some", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Option", + "type": "object", + "typeInfo": "Enum" + }, + "core::option::Option": { + "isComponent": false, + "isResource": false, + "long_name": "core::option::Option", + "oneOf": [ + { + "long_name": "None" + }, + { + "items": false, + "long_name": "Some", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/glam::Vec2" + } + } + ], + "short_name": "Some", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Option", + "type": "object", + "typeInfo": "Enum" + }, + "core::option::Option": { + "isComponent": false, + "isResource": false, + "long_name": "core::option::Option", + "oneOf": [ + { + "long_name": "None" + }, + { + "items": false, + "long_name": "Some", + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/petgraph::graph::NodeIndex" + } + } + ], + "short_name": "Some", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Option", + "type": "object", + "typeInfo": "Enum" + }, + "d6::PlayerController": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "long_name": "d6::PlayerController", + "properties": {}, + "required": [], + "short_name": "PlayerController", + "type": "object", + "typeInfo": "Struct" + }, + "f32": { + "isComponent": false, + "isResource": false, + "long_name": "f32", + "short_name": "f32", + "type": "float", + "typeInfo": "Value" + }, + "f64": { + "isComponent": false, + "isResource": false, + "long_name": "f64", + "short_name": "f64", + "type": "float", + "typeInfo": "Value" + }, + "glam::Affine2": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "glam::Affine2", + "properties": { + "matrix2": { + "type": { + "$ref": "#/$defs/glam::Mat2" + } + }, + "translation": { + "type": { + "$ref": "#/$defs/glam::Vec2" + } + } + }, + "required": [ + "matrix2", + "translation" + ], + "short_name": "Affine2", + "type": "object", + "typeInfo": "Struct" + }, + "glam::Affine3A": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "glam::Affine3A", + "properties": { + "matrix3": { + "type": { + "$ref": "#/$defs/glam::Mat3A" + } + }, + "translation": { + "type": { + "$ref": "#/$defs/glam::Vec3A" + } + } + }, + "required": [ + "matrix3", + "translation" + ], + "short_name": "Affine3A", + "type": "object", + "typeInfo": "Struct" + }, + "glam::BVec2": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "glam::BVec2", + "properties": { + "x": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "y": { + "type": { + "$ref": "#/$defs/bool" + } + } + }, + "required": [ + "x", + "y" + ], + "short_name": "BVec2", + "type": "object", + "typeInfo": "Struct" + }, + "glam::BVec3": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "glam::BVec3", + "properties": { + "x": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "y": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "z": { + "type": { + "$ref": "#/$defs/bool" + } + } + }, + "required": [ + "x", + "y", + "z" + ], + "short_name": "BVec3", + "type": "object", + "typeInfo": "Struct" + }, + "glam::BVec3A": { + "isComponent": false, + "isResource": false, + "long_name": "glam::BVec3A", + "short_name": "BVec3A", + "type": "object", + "typeInfo": "Value" + }, + "glam::BVec4": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "glam::BVec4", + "properties": { + "w": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "x": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "y": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "z": { + "type": { + "$ref": "#/$defs/bool" + } + } + }, + "required": [ + "x", + "y", + "z", + "w" + ], + "short_name": "BVec4", + "type": "object", + "typeInfo": "Struct" + }, + "glam::BVec4A": { + "isComponent": false, + "isResource": false, + "long_name": "glam::BVec4A", + "short_name": "BVec4A", + "type": "object", + "typeInfo": "Value" + }, + "glam::DAffine2": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "glam::DAffine2", + "properties": { + "matrix2": { + "type": { + "$ref": "#/$defs/glam::DMat2" + } + }, + "translation": { + "type": { + "$ref": "#/$defs/glam::DVec2" + } + } + }, + "required": [ + "matrix2", + "translation" + ], + "short_name": "DAffine2", + "type": "object", + "typeInfo": "Struct" + }, + "glam::DAffine3": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "glam::DAffine3", + "properties": { + "matrix3": { + "type": { + "$ref": "#/$defs/glam::DMat3" + } + }, + "translation": { + "type": { + "$ref": "#/$defs/glam::DVec3" + } + } + }, + "required": [ + "matrix3", + "translation" + ], + "short_name": "DAffine3", + "type": "object", + "typeInfo": "Struct" + }, + "glam::DMat2": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "glam::DMat2", + "properties": { + "x_axis": { + "type": { + "$ref": "#/$defs/glam::DVec2" + } + }, + "y_axis": { + "type": { + "$ref": "#/$defs/glam::DVec2" + } + } + }, + "required": [ + "x_axis", + "y_axis" + ], + "short_name": "DMat2", + "type": "object", + "typeInfo": "Struct" + }, + "glam::DMat3": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "glam::DMat3", + "properties": { + "x_axis": { + "type": { + "$ref": "#/$defs/glam::DVec3" + } + }, + "y_axis": { + "type": { + "$ref": "#/$defs/glam::DVec3" + } + }, + "z_axis": { + "type": { + "$ref": "#/$defs/glam::DVec3" + } + } + }, + "required": [ + "x_axis", + "y_axis", + "z_axis" + ], + "short_name": "DMat3", + "type": "object", + "typeInfo": "Struct" + }, + "glam::DMat4": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "glam::DMat4", + "properties": { + "w_axis": { + "type": { + "$ref": "#/$defs/glam::DVec4" + } + }, + "x_axis": { + "type": { + "$ref": "#/$defs/glam::DVec4" + } + }, + "y_axis": { + "type": { + "$ref": "#/$defs/glam::DVec4" + } + }, + "z_axis": { + "type": { + "$ref": "#/$defs/glam::DVec4" + } + } + }, + "required": [ + "x_axis", + "y_axis", + "z_axis", + "w_axis" + ], + "short_name": "DMat4", + "type": "object", + "typeInfo": "Struct" + }, + "glam::DQuat": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "glam::DQuat", + "properties": { + "w": { + "type": { + "$ref": "#/$defs/f64" + } + }, + "x": { + "type": { + "$ref": "#/$defs/f64" + } + }, + "y": { + "type": { + "$ref": "#/$defs/f64" + } + }, + "z": { + "type": { + "$ref": "#/$defs/f64" + } + } + }, + "required": [ + "x", + "y", + "z", + "w" + ], + "short_name": "DQuat", + "type": "object", + "typeInfo": "Struct" + }, + "glam::DVec2": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "glam::DVec2", + "properties": { + "x": { + "type": { + "$ref": "#/$defs/f64" + } + }, + "y": { + "type": { + "$ref": "#/$defs/f64" + } + } + }, + "required": [ + "x", + "y" + ], + "short_name": "DVec2", + "type": "object", + "typeInfo": "Struct" + }, + "glam::DVec3": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "glam::DVec3", + "properties": { + "x": { + "type": { + "$ref": "#/$defs/f64" + } + }, + "y": { + "type": { + "$ref": "#/$defs/f64" + } + }, + "z": { + "type": { + "$ref": "#/$defs/f64" + } + } + }, + "required": [ + "x", + "y", + "z" + ], + "short_name": "DVec3", + "type": "object", + "typeInfo": "Struct" + }, + "glam::DVec4": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "glam::DVec4", + "properties": { + "w": { + "type": { + "$ref": "#/$defs/f64" + } + }, + "x": { + "type": { + "$ref": "#/$defs/f64" + } + }, + "y": { + "type": { + "$ref": "#/$defs/f64" + } + }, + "z": { + "type": { + "$ref": "#/$defs/f64" + } + } + }, + "required": [ + "x", + "y", + "z", + "w" + ], + "short_name": "DVec4", + "type": "object", + "typeInfo": "Struct" + }, + "glam::IVec2": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "glam::IVec2", + "properties": { + "x": { + "type": { + "$ref": "#/$defs/i32" + } + }, + "y": { + "type": { + "$ref": "#/$defs/i32" + } + } + }, + "required": [ + "x", + "y" + ], + "short_name": "IVec2", + "type": "object", + "typeInfo": "Struct" + }, + "glam::IVec3": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "glam::IVec3", + "properties": { + "x": { + "type": { + "$ref": "#/$defs/i32" + } + }, + "y": { + "type": { + "$ref": "#/$defs/i32" + } + }, + "z": { + "type": { + "$ref": "#/$defs/i32" + } + } + }, + "required": [ + "x", + "y", + "z" + ], + "short_name": "IVec3", + "type": "object", + "typeInfo": "Struct" + }, + "glam::IVec4": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "glam::IVec4", + "properties": { + "w": { + "type": { + "$ref": "#/$defs/i32" + } + }, + "x": { + "type": { + "$ref": "#/$defs/i32" + } + }, + "y": { + "type": { + "$ref": "#/$defs/i32" + } + }, + "z": { + "type": { + "$ref": "#/$defs/i32" + } + } + }, + "required": [ + "x", + "y", + "z", + "w" + ], + "short_name": "IVec4", + "type": "object", + "typeInfo": "Struct" + }, + "glam::Mat2": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "glam::Mat2", + "properties": { + "x_axis": { + "type": { + "$ref": "#/$defs/glam::Vec2" + } + }, + "y_axis": { + "type": { + "$ref": "#/$defs/glam::Vec2" + } + } + }, + "required": [ + "x_axis", + "y_axis" + ], + "short_name": "Mat2", + "type": "object", + "typeInfo": "Struct" + }, + "glam::Mat3": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "glam::Mat3", + "properties": { + "x_axis": { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + }, + "y_axis": { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + }, + "z_axis": { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + } + }, + "required": [ + "x_axis", + "y_axis", + "z_axis" + ], + "short_name": "Mat3", + "type": "object", + "typeInfo": "Struct" + }, + "glam::Mat3A": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "glam::Mat3A", + "properties": { + "x_axis": { + "type": { + "$ref": "#/$defs/glam::Vec3A" + } + }, + "y_axis": { + "type": { + "$ref": "#/$defs/glam::Vec3A" + } + }, + "z_axis": { + "type": { + "$ref": "#/$defs/glam::Vec3A" + } + } + }, + "required": [ + "x_axis", + "y_axis", + "z_axis" + ], + "short_name": "Mat3A", + "type": "object", + "typeInfo": "Struct" + }, + "glam::Mat4": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "glam::Mat4", + "properties": { + "w_axis": { + "type": { + "$ref": "#/$defs/glam::Vec4" + } + }, + "x_axis": { + "type": { + "$ref": "#/$defs/glam::Vec4" + } + }, + "y_axis": { + "type": { + "$ref": "#/$defs/glam::Vec4" + } + }, + "z_axis": { + "type": { + "$ref": "#/$defs/glam::Vec4" + } + } + }, + "required": [ + "x_axis", + "y_axis", + "z_axis", + "w_axis" + ], + "short_name": "Mat4", + "type": "object", + "typeInfo": "Struct" + }, + "glam::Quat": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "glam::Quat", + "properties": { + "w": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "x": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "y": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "z": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "x", + "y", + "z", + "w" + ], + "short_name": "Quat", + "type": "object", + "typeInfo": "Struct" + }, + "glam::UVec2": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "glam::UVec2", + "properties": { + "x": { + "type": { + "$ref": "#/$defs/u32" + } + }, + "y": { + "type": { + "$ref": "#/$defs/u32" + } + } + }, + "required": [ + "x", + "y" + ], + "short_name": "UVec2", + "type": "object", + "typeInfo": "Struct" + }, + "glam::UVec3": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "glam::UVec3", + "properties": { + "x": { + "type": { + "$ref": "#/$defs/u32" + } + }, + "y": { + "type": { + "$ref": "#/$defs/u32" + } + }, + "z": { + "type": { + "$ref": "#/$defs/u32" + } + } + }, + "required": [ + "x", + "y", + "z" + ], + "short_name": "UVec3", + "type": "object", + "typeInfo": "Struct" + }, + "glam::UVec4": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "glam::UVec4", + "properties": { + "w": { + "type": { + "$ref": "#/$defs/u32" + } + }, + "x": { + "type": { + "$ref": "#/$defs/u32" + } + }, + "y": { + "type": { + "$ref": "#/$defs/u32" + } + }, + "z": { + "type": { + "$ref": "#/$defs/u32" + } + } + }, + "required": [ + "x", + "y", + "z", + "w" + ], + "short_name": "UVec4", + "type": "object", + "typeInfo": "Struct" + }, + "glam::Vec2": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "glam::Vec2", + "properties": { + "x": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "y": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "x", + "y" + ], + "short_name": "Vec2", + "type": "object", + "typeInfo": "Struct" + }, + "glam::Vec3": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "glam::Vec3", + "properties": { + "x": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "y": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "z": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "x", + "y", + "z" + ], + "short_name": "Vec3", + "type": "object", + "typeInfo": "Struct" + }, + "glam::Vec3A": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "glam::Vec3A", + "properties": { + "x": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "y": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "z": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "x", + "y", + "z" + ], + "short_name": "Vec3A", + "type": "object", + "typeInfo": "Struct" + }, + "glam::Vec4": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "long_name": "glam::Vec4", + "properties": { + "w": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "x": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "y": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "z": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "x", + "y", + "z", + "w" + ], + "short_name": "Vec4", + "type": "object", + "typeInfo": "Struct" + }, + "i128": { + "isComponent": false, + "isResource": false, + "long_name": "i128", + "short_name": "i128", + "type": "int", + "typeInfo": "Value" + }, + "i16": { + "isComponent": false, + "isResource": false, + "long_name": "i16", + "short_name": "i16", + "type": "int", + "typeInfo": "Value" + }, + "i32": { + "isComponent": false, + "isResource": false, + "long_name": "i32", + "short_name": "i32", + "type": "int", + "typeInfo": "Value" + }, + "i64": { + "isComponent": false, + "isResource": false, + "long_name": "i64", + "short_name": "i64", + "type": "int", + "typeInfo": "Value" + }, + "i8": { + "isComponent": false, + "isResource": false, + "long_name": "i8", + "short_name": "i8", + "type": "int", + "typeInfo": "Value" + }, + "isize": { + "isComponent": false, + "isResource": false, + "long_name": "isize", + "short_name": "isize", + "type": "int", + "typeInfo": "Value" + }, + "petgraph::graph::DiGraph": { + "isComponent": false, + "isResource": false, + "long_name": "petgraph::graph::DiGraph", + "short_name": "DiGraph", + "type": "object", + "typeInfo": "Value" + }, + "petgraph::graph::NodeIndex": { + "isComponent": false, + "isResource": false, + "long_name": "petgraph::graph::NodeIndex", + "short_name": "NodeIndex", + "type": "object", + "typeInfo": "Value" + }, + "smallvec::SmallVec<[bevy_ecs::entity::Entity; 8]>": { + "isComponent": false, + "isResource": false, + "items": { + "type": { + "$ref": "#/$defs/bevy_ecs::entity::Entity" + } + }, + "long_name": "smallvec::SmallVec<[bevy_ecs::entity::Entity; 8]>", + "short_name": "SmallVec<[Entity; 8]>", + "type": "array", + "typeInfo": "List" + }, + "smallvec::SmallVec<[bevy_ui::ui_node::GridTrack; 1]>": { + "isComponent": false, + "isResource": false, + "items": { + "type": { + "$ref": "#/$defs/bevy_ui::ui_node::GridTrack" + } + }, + "long_name": "smallvec::SmallVec<[bevy_ui::ui_node::GridTrack; 1]>", + "short_name": "SmallVec<[GridTrack; 1]>", + "type": "array", + "typeInfo": "List" + }, + "smallvec::SmallVec<[u64; 1]>": { + "isComponent": false, + "isResource": false, + "items": { + "type": { + "$ref": "#/$defs/u64" + } + }, + "long_name": "smallvec::SmallVec<[u64; 1]>", + "short_name": "SmallVec<[u64; 1]>", + "type": "array", + "typeInfo": "List" + }, + "smol_str::SmolStr": { + "isComponent": false, + "isResource": false, + "long_name": "smol_str::SmolStr", + "short_name": "SmolStr", + "type": "object", + "typeInfo": "Value" + }, + "std::collections::BTreeMap": { + "isComponent": false, + "isResource": false, + "keyType": { + "type": { + "$ref": "#/$defs/petgraph::graph::NodeIndex" + } + }, + "long_name": "std::collections::BTreeMap", + "short_name": "BTreeMap", + "type": "object", + "typeInfo": "Map", + "valueType": { + "type": { + "$ref": "#/$defs/bevy_animation::ActiveAnimation" + } + } + }, + "std::path::PathBuf": { + "isComponent": false, + "isResource": false, + "long_name": "std::path::PathBuf", + "short_name": "PathBuf", + "type": "object", + "typeInfo": "Value" + }, + "std::sync::Arc": { + "isComponent": false, + "isResource": false, + "long_name": "std::sync::Arc", + "short_name": "Arc", + "type": "object", + "typeInfo": "Value" + }, + "u128": { + "isComponent": false, + "isResource": false, + "long_name": "u128", + "short_name": "u128", + "type": "uint", + "typeInfo": "Value" + }, + "u16": { + "isComponent": false, + "isResource": false, + "long_name": "u16", + "short_name": "u16", + "type": "uint", + "typeInfo": "Value" + }, + "u32": { + "isComponent": false, + "isResource": false, + "long_name": "u32", + "short_name": "u32", + "type": "uint", + "typeInfo": "Value" + }, + "u64": { + "isComponent": false, + "isResource": false, + "long_name": "u64", + "short_name": "u64", + "type": "uint", + "typeInfo": "Value" + }, + "u8": { + "isComponent": false, + "isResource": false, + "long_name": "u8", + "short_name": "u8", + "type": "uint", + "typeInfo": "Value" + }, + "usize": { + "isComponent": false, + "isResource": false, + "long_name": "usize", + "short_name": "usize", + "type": "uint", + "typeInfo": "Value" + }, + "uuid::Uuid": { + "isComponent": false, + "isResource": false, + "long_name": "uuid::Uuid", + "short_name": "Uuid", + "type": "object", + "typeInfo": "Value" + } + }, + "$schema": "https://json-schema.org/draft/2020-12/schema", + "long_name": "bevy component registry schema" +} \ No newline at end of file diff --git a/blend/main.blend b/blend/main.blend new file mode 100644 index 0000000000000000000000000000000000000000..463644aa0af242c37f4757ad1b9eaf4bcc2165db GIT binary patch literal 978444 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

sCp8^ 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 aWCq2_lsfLN)xh6Rt5CgsSrYiafByj%%TwwA literal 0 HcmV?d00001 diff --git a/rust/.cargo/config.toml b/rust/.cargo/config.toml new file mode 100644 index 0000000..008bb13 --- /dev/null +++ b/rust/.cargo/config.toml @@ -0,0 +1,12 @@ +[profile.dev.package."*"] +opt-level = 3 + +[profile.dev] +opt-level = 0 + +[profile.release] +lto = true +opt-level = 3 +codegen-units = 1 +incremental = false +debug = false diff --git a/rust/.gitignore b/rust/.gitignore new file mode 100644 index 0000000..ea8c4bf --- /dev/null +++ b/rust/.gitignore @@ -0,0 +1 @@ +/target diff --git a/rust/Cargo.lock b/rust/Cargo.lock new file mode 100644 index 0000000..4b5d9fe --- /dev/null +++ b/rust/Cargo.lock @@ -0,0 +1,5713 @@ +# This file is automatically @generated by Cargo. +# It is not intended for manual editing. +version = 3 + +[[package]] +name = "ab_glyph" +version = "0.2.29" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec3672c180e71eeaaac3a541fbbc5f5ad4def8b747c595ad30d674e43049f7b0" +dependencies = [ + "ab_glyph_rasterizer", + "owned_ttf_parser", +] + +[[package]] +name = "ab_glyph_rasterizer" +version = "0.1.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c71b1793ee61086797f5c80b6efa2b8ffa6d5dd703f118545808a7f2e27f7046" + +[[package]] +name = "accesskit" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6cf780eb737f2d4a49ffbd512324d53ad089070f813f7be7f99dbd5123a7f448" + +[[package]] +name = "accesskit_consumer" +version = "0.22.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3bdfa1638ddd6eb9c752def95568df8b3ad832df252e9156d2eb783b201ca8a9" +dependencies = [ + "accesskit", + "immutable-chunkmap", +] + +[[package]] +name = "accesskit_macos" +version = "0.15.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c236a84ff1111defc280cee755eaa953d0b24398786851b9d28322c6d3bb1ebd" +dependencies = [ + "accesskit", + "accesskit_consumer", + "objc2", + "objc2-app-kit", + "objc2-foundation", + "once_cell", +] + +[[package]] +name = "accesskit_windows" +version = "0.20.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5d7f43d24b16b3e76bef248124fbfd2493c3a9860edb5aae1010c890e826de5e" +dependencies = [ + "accesskit", + "accesskit_consumer", + "paste", + "static_assertions", + "windows 0.54.0", +] + +[[package]] +name = "accesskit_winit" +version = "0.20.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "755535e6bf711a42dac28b888b884b10fc00ff4010d9d3bd871c5f5beae5aa78" +dependencies = [ + "accesskit", + "accesskit_macos", + "accesskit_windows", + "raw-window-handle", + "winit", +] + +[[package]] +name = "adler2" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627" + +[[package]] +name = "ahash" +version = "0.8.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011" +dependencies = [ + "cfg-if", + "getrandom", + "once_cell", + "version_check", + "zerocopy", +] + +[[package]] +name = "aho-corasick" +version = "1.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916" +dependencies = [ + "memchr", +] + +[[package]] +name = "allocator-api2" +version = "0.2.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "611cc2ae7d2e242c457e4be7f97036b8ad9ca152b499f53faf99b1ed8fc2553f" + +[[package]] +name = "alsa" +version = "0.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed7572b7ba83a31e20d1b48970ee402d2e3e0537dcfe0a3ff4d6eb7508617d43" +dependencies = [ + "alsa-sys", + "bitflags 2.6.0", + "cfg-if", + "libc", +] + +[[package]] +name = "alsa-sys" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "db8fee663d06c4e303404ef5f40488a53e062f89ba8bfed81f42325aafad1527" +dependencies = [ + "libc", + "pkg-config", +] + +[[package]] +name = "android-activity" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ef6978589202a00cd7e118380c448a08b6ed394c3a8df3a430d0898e3a42d046" +dependencies = [ + "android-properties", + "bitflags 2.6.0", + "cc", + "cesu8", + "jni", + "jni-sys", + "libc", + "log", + "ndk 0.9.0", + "ndk-context", + "ndk-sys 0.6.0+11769913", + "num_enum", + "thiserror", +] + +[[package]] +name = "android-properties" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fc7eb209b1518d6bb87b283c20095f5228ecda460da70b44f0802523dea6da04" + +[[package]] +name = "android_log-sys" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5ecc8056bf6ab9892dcd53216c83d1597487d7dacac16c8df6b877d127df9937" + +[[package]] +name = "android_system_properties" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311" +dependencies = [ + "libc", +] + +[[package]] +name = "anyhow" +version = "1.0.93" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4c95c10ba0b00a02636238b814946408b1322d5ac4760326e6fb8ec956d85775" + +[[package]] +name = "approx" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cab112f0a86d568ea0e627cc1d6be74a1e9cd55214684db5561995f6dad897c6" +dependencies = [ + "num-traits", +] + +[[package]] +name = "arboard" +version = "3.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "df099ccb16cd014ff054ac1bf392c67feeef57164b05c42f037cd40f5d4357f4" +dependencies = [ + "clipboard-win", + "core-graphics", + "image 0.25.5", + "log", + "objc2", + "objc2-app-kit", + "objc2-foundation", + "parking_lot", + "windows-sys 0.48.0", + "x11rb", +] + +[[package]] +name = "arrayref" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "76a2e8124351fda1ef8aaaa3bbd7ebbcb486bbcd4225aca0aa0d84bb2db8fecb" + +[[package]] +name = "arrayvec" +version = "0.7.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50" + +[[package]] +name = "as-raw-xcb-connection" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "175571dd1d178ced59193a6fc02dde1b972eb0bc56c892cde9beeceac5bf0f6b" + +[[package]] +name = "ash" +version = "0.37.3+1.3.251" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "39e9c3835d686b0a6084ab4234fcd1b07dbf6e4767dce60874b12356a25ecd4a" +dependencies = [ + "libloading 0.7.4", +] + +[[package]] +name = "async-broadcast" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7c48ccdbf6ca6b121e0f586cbc0e73ae440e56c67c30fa0873b4e110d9c26d2b" +dependencies = [ + "event-listener 2.5.3", + "futures-core", +] + +[[package]] +name = "async-channel" +version = "2.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "89b47800b0be77592da0afd425cc03468052844aff33b84e33cc696f64e77b6a" +dependencies = [ + "concurrent-queue", + "event-listener-strategy", + "futures-core", + "pin-project-lite", +] + +[[package]] +name = "async-executor" +version = "1.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "30ca9a001c1e8ba5149f91a74362376cc6bc5b919d92d988668657bd570bdcec" +dependencies = [ + "async-task", + "concurrent-queue", + "fastrand", + "futures-lite", + "slab", +] + +[[package]] +name = "async-fs" +version = "2.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ebcd09b382f40fcd159c2d695175b2ae620ffa5f3bd6f664131efff4e8b9e04a" +dependencies = [ + "async-lock", + "blocking", + "futures-lite", +] + +[[package]] +name = "async-lock" +version = "3.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ff6e472cdea888a4bd64f342f09b3f50e1886d32afe8df3d663c01140b811b18" +dependencies = [ + "event-listener 5.3.1", + "event-listener-strategy", + "pin-project-lite", +] + +[[package]] +name = "async-task" +version = "4.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b75356056920673b02621b35afd0f7dda9306d03c79a30f5c56c44cf256e3de" + +[[package]] +name = "atomic-waker" +version = "1.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0" + +[[package]] +name = "autocfg" +version = "1.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26" + +[[package]] +name = "avian3d" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "263f406c08c5ec296039ba06d7aa50e54f9ecd996f682aaa63eae25709e8935b" +dependencies = [ + "avian_derive", + "bevy", + "bevy_math", + "bitflags 2.6.0", + "derive_more", + "fxhash", + "indexmap", + "itertools", + "nalgebra", + "parry3d", + "parry3d-f64", +] + +[[package]] +name = "avian_derive" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b4adeeecb6d4628d3ca11836ce9af8309f9552d4bd3e3f6e4368440d8163260c" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.87", +] + +[[package]] +name = "base64" +version = "0.21.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567" + +[[package]] +name = "base64" +version = "0.22.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6" + +[[package]] +name = "bevy" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "043c9ad4b6fc4ca52d779873a8ca792a4e37842d07fce95363c9e17e36a1d8a0" +dependencies = [ + "bevy_dylib", + "bevy_internal", +] + +[[package]] +name = "bevy-inspector-egui" +version = "0.26.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d46ba955761969dbc9a79d3583a175609b4e370303bc0f9a5846397dcb7f05fd" +dependencies = [ + "bevy-inspector-egui-derive", + "bevy_app", + "bevy_asset", + "bevy_color", + "bevy_core", + "bevy_core_pipeline", + "bevy_ecs", + "bevy_egui", + "bevy_hierarchy", + "bevy_log", + "bevy_math", + "bevy_pbr", + "bevy_reflect", + "bevy_render", + "bevy_state", + "bevy_time", + "bevy_utils", + "bevy_window", + "bytemuck", + "egui", + "fuzzy-matcher", + "image 0.24.9", + "once_cell", + "pretty-type-name", + "smallvec", +] + +[[package]] +name = "bevy-inspector-egui-derive" +version = "0.26.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "06683f27065a27065ef8cebe77d7b347c9d0511a091deafd6dd77c5535434934" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.87", +] + +[[package]] +name = "bevy_a11y" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ae1a976cb539d6a5a3ff579cdb78187a6bcfbffa7e8224ea28f23d8b983d9389" +dependencies = [ + "accesskit", + "bevy_app", + "bevy_derive", + "bevy_ecs", +] + +[[package]] +name = "bevy_animation" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "93aef7d21a0342c24b05059493aa31d58f1798d34a2236569a8789b74df5a475" +dependencies = [ + "bevy_app", + "bevy_asset", + "bevy_color", + "bevy_core", + "bevy_derive", + "bevy_ecs", + "bevy_hierarchy", + "bevy_log", + "bevy_math", + "bevy_reflect", + "bevy_render", + "bevy_time", + "bevy_transform", + "bevy_utils", + "blake3", + "fixedbitset 0.5.7", + "petgraph", + "ron", + "serde", + "thiserror", + "thread_local", + "uuid", +] + +[[package]] +name = "bevy_app" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a5361d0f8a8677a5d0102cfe7321a7ecd2a8b9a4f887ce0dde1059311cf9cd42" +dependencies = [ + "bevy_derive", + "bevy_ecs", + "bevy_reflect", + "bevy_tasks", + "bevy_utils", + "console_error_panic_hook", + "downcast-rs", + "thiserror", + "wasm-bindgen", + "web-sys", +] + +[[package]] +name = "bevy_asset" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "60ec5ea257e1ebd3d411f669e29acf60beb715bebc7e1f374c17f49cd3aad46c" +dependencies = [ + "async-broadcast", + "async-fs", + "async-lock", + "bevy_app", + "bevy_asset_macros", + "bevy_ecs", + "bevy_reflect", + "bevy_tasks", + "bevy_utils", + "bevy_winit", + "blake3", + "crossbeam-channel", + "downcast-rs", + "futures-io", + "futures-lite", + "js-sys", + "parking_lot", + "ron", + "serde", + "thiserror", + "uuid", + "wasm-bindgen", + "wasm-bindgen-futures", + "web-sys", +] + +[[package]] +name = "bevy_asset_macros" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c9eb05ce838d282f09d83380b4d6432aec7519d421dee8c75cc20e6148237e6e" +dependencies = [ + "bevy_macro_utils", + "proc-macro2", + "quote", + "syn 2.0.87", +] + +[[package]] +name = "bevy_audio" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8ee31312a0e67f288fe12a1d9aa679dd0ba8a49e1e6fe5fcd2ba1aa1ea34e5ed" +dependencies = [ + "bevy_app", + "bevy_asset", + "bevy_derive", + "bevy_ecs", + "bevy_hierarchy", + "bevy_math", + "bevy_reflect", + "bevy_transform", + "bevy_utils", + "cpal", + "rodio", +] + +[[package]] +name = "bevy_color" +version = "0.14.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "04842e9d38a93f0c75ab46f7f404ea24ef57ad83dbd159e5b4b35318b02257bb" +dependencies = [ + "bevy_math", + "bevy_reflect", + "bytemuck", + "encase", + "serde", + "thiserror", + "wgpu-types", +] + +[[package]] +name = "bevy_common_assets" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6f631ce2863f3b6f1af3fa24143363b9fbd21c44218caad495a17b83e6968256" +dependencies = [ + "anyhow", + "bevy", + "ron", + "serde", + "thiserror", +] + +[[package]] +name = "bevy_core" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "de706862871a1fe99ea619bff2f99d73e43ad82f19ef866a9e19a14c957c8537" +dependencies = [ + "bevy_app", + "bevy_ecs", + "bevy_reflect", + "bevy_tasks", + "bevy_utils", + "uuid", +] + +[[package]] +name = "bevy_core_pipeline" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2f6e1e122ada4cd811442e083fb5ad3e325c59a87271d5ef57193f1c2cad7f8c" +dependencies = [ + "bevy_app", + "bevy_asset", + "bevy_color", + "bevy_core", + "bevy_derive", + "bevy_ecs", + "bevy_math", + "bevy_reflect", + "bevy_render", + "bevy_transform", + "bevy_utils", + "bitflags 2.6.0", + "nonmax", + "radsort", + "serde", + "smallvec", + "thiserror", +] + +[[package]] +name = "bevy_derive" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3fbfc33a4c6b80760bb8bf850a2cc65a1e031da62fd3ca8b552189104dc98514" +dependencies = [ + "bevy_macro_utils", + "quote", + "syn 2.0.87", +] + +[[package]] +name = "bevy_diagnostic" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bebb154e0cc78e3bbfbfdb42fb502b14c1cd47e72f16e6d4228dfe6233ba6cbd" +dependencies = [ + "bevy_app", + "bevy_core", + "bevy_ecs", + "bevy_tasks", + "bevy_time", + "bevy_utils", + "const-fnv1a-hash", + "sysinfo", +] + +[[package]] +name = "bevy_dylib" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0c399292fac67682a72666e78872626f3c1c39b34c430b6f02c81d21da91b500" +dependencies = [ + "bevy_internal", +] + +[[package]] +name = "bevy_ecs" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9ee4222406637f3c8e3991a99788cfcde76097bf997c311f1b6297364057483f" +dependencies = [ + "arrayvec", + "bevy_ecs_macros", + "bevy_ptr", + "bevy_reflect", + "bevy_tasks", + "bevy_utils", + "bitflags 2.6.0", + "concurrent-queue", + "fixedbitset 0.5.7", + "nonmax", + "petgraph", + "serde", + "thiserror", +] + +[[package]] +name = "bevy_ecs_macros" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "36b573430b67aff7bde8292257494f39343401379bfbda64035ba4918bba7b20" +dependencies = [ + "bevy_macro_utils", + "proc-macro2", + "quote", + "syn 2.0.87", +] + +[[package]] +name = "bevy_editor_pls" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e7d2efb3d009000d12a5313025caaeb3cdd21d417ff5dc9f03df07a26835a49f" +dependencies = [ + "bevy", + "bevy_editor_pls_core", + "bevy_editor_pls_default_windows", + "egui", + "transform-gizmo-bevy", +] + +[[package]] +name = "bevy_editor_pls_core" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "91172dff3c376a89e258e7d1fd54cc54da4cecb054699467e4045a8cab7af8eb" +dependencies = [ + "bevy", + "bevy-inspector-egui", + "egui_dock", + "indexmap", +] + +[[package]] +name = "bevy_editor_pls_default_windows" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "045f52ce978be49e27f9c1c627f20d3273cf889d8ebbe977736d68011d95c792" +dependencies = [ + "bevy", + "bevy-inspector-egui", + "bevy_editor_pls_core", + "bevy_mod_debugdump", + "indexmap", + "opener", + "pretty-type-name", + "transform-gizmo-bevy", +] + +[[package]] +name = "bevy_egui" +version = "0.29.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "128438a8163e49528207aabf20d3ff0890fd6be0f0054626915995efac87922b" +dependencies = [ + "arboard", + "bevy", + "bytemuck", + "console_log", + "crossbeam-channel", + "egui", + "js-sys", + "log", + "thread_local", + "wasm-bindgen", + "wasm-bindgen-futures", + "web-sys", + "webbrowser", + "wgpu-types", + "winit", +] + +[[package]] +name = "bevy_encase_derive" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d06c9693847a2a6ea61d6b86288dd4d8b6a79f05d4bf6e27b96d4f5c8d552fe4" +dependencies = [ + "bevy_macro_utils", + "encase_derive_impl", +] + +[[package]] +name = "bevy_gilrs" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0422ccb3ce0f79b264100cf064fdc5ef65cef5c7d51bf6378058f9b96fea4183" +dependencies = [ + "bevy_app", + "bevy_ecs", + "bevy_input", + "bevy_time", + "bevy_utils", + "gilrs", + "thiserror", +] + +[[package]] +name = "bevy_gizmos" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dfe32af0666d8d8a7fd6eb6b5e41eceefdc6f2e5441c74b812e8f0902a9d7f52" +dependencies = [ + "bevy_app", + "bevy_asset", + "bevy_color", + "bevy_core_pipeline", + "bevy_ecs", + "bevy_gizmos_macros", + "bevy_math", + "bevy_pbr", + "bevy_reflect", + "bevy_render", + "bevy_sprite", + "bevy_time", + "bevy_transform", + "bevy_utils", + "bytemuck", +] + +[[package]] +name = "bevy_gizmos_macros" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "906b052f8cf3f3983f0f6df625fb10cbd9b27d44e362a327dc1ed51300d362bc" +dependencies = [ + "bevy_macro_utils", + "proc-macro2", + "quote", + "syn 2.0.87", +] + +[[package]] +name = "bevy_gltf" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d6adbd325b90e3c700d0966b5404e226c7deec1b8bda8f36832788d7b435b9b8" +dependencies = [ + "base64 0.22.1", + "bevy_animation", + "bevy_app", + "bevy_asset", + "bevy_color", + "bevy_core", + "bevy_core_pipeline", + "bevy_ecs", + "bevy_hierarchy", + "bevy_math", + "bevy_pbr", + "bevy_reflect", + "bevy_render", + "bevy_scene", + "bevy_tasks", + "bevy_transform", + "bevy_utils", + "gltf", + "percent-encoding", + "serde", + "serde_json", + "smallvec", + "thiserror", +] + +[[package]] +name = "bevy_hierarchy" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a88b912b37e1bc4dbb2aa40723199f74c8b06c4fbb6da0bb4585131df28ef66e" +dependencies = [ + "bevy_app", + "bevy_core", + "bevy_ecs", + "bevy_reflect", + "bevy_utils", + "smallvec", +] + +[[package]] +name = "bevy_input" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8dd3a54e67cc3ba17971de7b1a7e64eda84493c1e7bb6bfa11c6cf8ac124377b" +dependencies = [ + "bevy_app", + "bevy_ecs", + "bevy_math", + "bevy_reflect", + "bevy_utils", + "smol_str", + "thiserror", +] + +[[package]] +name = "bevy_internal" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "45d435cac77c568f3aef65f786a5fee0e53c81950c5258182dd2c1d6cd6c4fec" +dependencies = [ + "bevy_a11y", + "bevy_animation", + "bevy_app", + "bevy_asset", + "bevy_audio", + "bevy_color", + "bevy_core", + "bevy_core_pipeline", + "bevy_derive", + "bevy_diagnostic", + "bevy_ecs", + "bevy_gilrs", + "bevy_gizmos", + "bevy_gltf", + "bevy_hierarchy", + "bevy_input", + "bevy_log", + "bevy_math", + "bevy_pbr", + "bevy_ptr", + "bevy_reflect", + "bevy_render", + "bevy_scene", + "bevy_sprite", + "bevy_state", + "bevy_tasks", + "bevy_text", + "bevy_time", + "bevy_transform", + "bevy_ui", + "bevy_utils", + "bevy_window", + "bevy_winit", +] + +[[package]] +name = "bevy_log" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "67240c7596c8f0653e50fce35a60196516817449235193246599facba9002e02" +dependencies = [ + "android_log-sys", + "bevy_app", + "bevy_ecs", + "bevy_utils", + "tracing-log", + "tracing-subscriber", + "tracing-wasm", +] + +[[package]] +name = "bevy_macro_utils" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bfc65e570012e64a21f3546df68591aaede8349e6174fb500071677f54f06630" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.87", + "toml_edit", +] + +[[package]] +name = "bevy_math" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5421792749dda753ab3718e77d27bfce38443daf1850b836b97530b6245a4581" +dependencies = [ + "bevy_reflect", + "glam 0.27.0", + "rand", + "serde", + "smallvec", + "thiserror", +] + +[[package]] +name = "bevy_mikktspace" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "66cf695a264b043f2c4edb92dd5c742e6892180d2b30dac870012d153f8557ea" +dependencies = [ + "glam 0.27.0", +] + +[[package]] +name = "bevy_mod_debugdump" +version = "0.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "30f0eab3099d7d474b25a95a6a2a945e6089d75e099af5a571fe896f7c1a455b" +dependencies = [ + "bevy_app", + "bevy_color", + "bevy_ecs", + "bevy_render", + "bevy_utils", + "lexopt", + "once_cell", + "petgraph", + "pretty-type-name", +] + +[[package]] +name = "bevy_pbr" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4dccaa3c945f19834dcf7cd8eb358236dbf0fc4000dacbc7710564e7856714db" +dependencies = [ + "bevy_app", + "bevy_asset", + "bevy_color", + "bevy_core_pipeline", + "bevy_derive", + "bevy_ecs", + "bevy_math", + "bevy_reflect", + "bevy_render", + "bevy_transform", + "bevy_utils", + "bevy_window", + "bitflags 2.6.0", + "bytemuck", + "fixedbitset 0.5.7", + "nonmax", + "radsort", + "smallvec", + "static_assertions", +] + +[[package]] +name = "bevy_ptr" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "61baa1bdc1f4a7ac2c18217570a7cc04e1cd54d38456e91782f0371c79afe0a8" + +[[package]] +name = "bevy_reflect" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2508785a4a5809f25a237eec4fee2c91a4dbcf81324b2bbc2d6c52629e603781" +dependencies = [ + "bevy_ptr", + "bevy_reflect_derive", + "bevy_utils", + "downcast-rs", + "erased-serde", + "glam 0.27.0", + "petgraph", + "serde", + "smallvec", + "smol_str", + "thiserror", + "uuid", +] + +[[package]] +name = "bevy_reflect_derive" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "967d5da1882ec3bb3675353915d3da909cafac033cbf31e58727824a1ad2a288" +dependencies = [ + "bevy_macro_utils", + "proc-macro2", + "quote", + "syn 2.0.87", + "uuid", +] + +[[package]] +name = "bevy_render" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "836cf8a513db013cbe7d55a331060088efd407e49fd5b05c8404700cd82e7619" +dependencies = [ + "async-channel", + "bevy_app", + "bevy_asset", + "bevy_color", + "bevy_core", + "bevy_derive", + "bevy_diagnostic", + "bevy_ecs", + "bevy_encase_derive", + "bevy_hierarchy", + "bevy_math", + "bevy_mikktspace", + "bevy_reflect", + "bevy_render_macros", + "bevy_tasks", + "bevy_time", + "bevy_transform", + "bevy_utils", + "bevy_window", + "bitflags 2.6.0", + "bytemuck", + "codespan-reporting", + "downcast-rs", + "encase", + "futures-lite", + "hexasphere", + "image 0.25.5", + "js-sys", + "ktx2", + "naga", + "naga_oil", + "nonmax", + "ruzstd", + "send_wrapper", + "serde", + "smallvec", + "thiserror", + "wasm-bindgen", + "web-sys", + "wgpu", +] + +[[package]] +name = "bevy_render_macros" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cbc24e0e95061a38a7744218b9c7e52e4c08b53f1499f33480e2b749f3864432" +dependencies = [ + "bevy_macro_utils", + "proc-macro2", + "quote", + "syn 2.0.87", +] + +[[package]] +name = "bevy_scene" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8ec57a72d75273bdbb6154390688fd07ba79ae9f6f99476d1937f799c736c2da" +dependencies = [ + "bevy_app", + "bevy_asset", + "bevy_derive", + "bevy_ecs", + "bevy_hierarchy", + "bevy_reflect", + "bevy_render", + "bevy_transform", + "bevy_utils", + "serde", + "thiserror", + "uuid", +] + +[[package]] +name = "bevy_sprite" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e045b4d8cc8e7422a4c29b1eadbe224f5cc42f170b88d43e7535892fcede3840" +dependencies = [ + "bevy_app", + "bevy_asset", + "bevy_color", + "bevy_core_pipeline", + "bevy_derive", + "bevy_ecs", + "bevy_math", + "bevy_reflect", + "bevy_render", + "bevy_transform", + "bevy_utils", + "bitflags 2.6.0", + "bytemuck", + "fixedbitset 0.5.7", + "guillotiere", + "radsort", + "rectangle-pack", + "thiserror", +] + +[[package]] +name = "bevy_state" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "25335bfa58cc22371182335c3b133017293bc9b6d3308402fd4d1f978b83f937" +dependencies = [ + "bevy_app", + "bevy_ecs", + "bevy_hierarchy", + "bevy_reflect", + "bevy_state_macros", + "bevy_utils", +] + +[[package]] +name = "bevy_state_macros" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dee600b659c739f1911f997a81611fec0a1832cf731727956e5fa4e7532b4dd5" +dependencies = [ + "bevy_macro_utils", + "proc-macro2", + "quote", + "syn 2.0.87", +] + +[[package]] +name = "bevy_tasks" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77865f310b1fc48fb05b7c4adbe76607ec01d0c14f8ab4caba4d714c86439946" +dependencies = [ + "async-channel", + "async-executor", + "concurrent-queue", + "futures-lite", + "wasm-bindgen-futures", +] + +[[package]] +name = "bevy_text" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b661db828fd423fc41a4ccf43aa4d1b8e50e75057ec40453317d0d761e8ad62d" +dependencies = [ + "ab_glyph", + "bevy_app", + "bevy_asset", + "bevy_color", + "bevy_ecs", + "bevy_math", + "bevy_reflect", + "bevy_render", + "bevy_sprite", + "bevy_transform", + "bevy_utils", + "bevy_window", + "glyph_brush_layout", + "serde", + "thiserror", +] + +[[package]] +name = "bevy_time" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f4e4d53ec32a1b16492396951d04de0d2d90e924bf9adcb8d1adacab5ab6c17c" +dependencies = [ + "bevy_app", + "bevy_ecs", + "bevy_reflect", + "bevy_utils", + "crossbeam-channel", + "thiserror", +] + +[[package]] +name = "bevy_transform" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d5493dce84427d00a9266e8e4386d738a72ee8640423b62dfcecb6dfccbfe0d2" +dependencies = [ + "bevy_app", + "bevy_ecs", + "bevy_hierarchy", + "bevy_math", + "bevy_reflect", + "thiserror", +] + +[[package]] +name = "bevy_ui" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "56d2cba6603b39a3765f043212ae530e25550af168a7eec6b23b9b93c19bc5f7" +dependencies = [ + "bevy_a11y", + "bevy_app", + "bevy_asset", + "bevy_color", + "bevy_core_pipeline", + "bevy_derive", + "bevy_ecs", + "bevy_hierarchy", + "bevy_input", + "bevy_math", + "bevy_reflect", + "bevy_render", + "bevy_sprite", + "bevy_text", + "bevy_transform", + "bevy_utils", + "bevy_window", + "bytemuck", + "nonmax", + "smallvec", + "taffy", + "thiserror", +] + +[[package]] +name = "bevy_utils" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ffb0ec333b5965771153bd746f92ffd8aeeb9d008a8620ffd9ed474859381a5e" +dependencies = [ + "ahash", + "bevy_utils_proc_macros", + "getrandom", + "hashbrown 0.14.5", + "thread_local", + "tracing", + "web-time", +] + +[[package]] +name = "bevy_utils_proc_macros" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38f1ab8f2f6f58439d260081d89a42b02690e5fdd64f814edc9417d33fcf2857" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.87", +] + +[[package]] +name = "bevy_window" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c89e88a20db64ea8204540afb4699295947c454738fd50293f7b32ab8be857a6" +dependencies = [ + "bevy_a11y", + "bevy_app", + "bevy_ecs", + "bevy_math", + "bevy_reflect", + "bevy_utils", + "raw-window-handle", + "smol_str", +] + +[[package]] +name = "bevy_winit" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d0bef8ec3e4b45db943ad4d1c0bf59b09e382ce0651a706e2f33a70fa955303c" +dependencies = [ + "accesskit_winit", + "approx", + "bevy_a11y", + "bevy_app", + "bevy_derive", + "bevy_ecs", + "bevy_hierarchy", + "bevy_input", + "bevy_log", + "bevy_math", + "bevy_reflect", + "bevy_tasks", + "bevy_utils", + "bevy_window", + "cfg-if", + "crossbeam-channel", + "raw-window-handle", + "wasm-bindgen", + "web-sys", + "winit", +] + +[[package]] +name = "bindgen" +version = "0.70.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f49d8fed880d473ea71efb9bf597651e77201bdd4893efe54c9e5d65ae04ce6f" +dependencies = [ + "bitflags 2.6.0", + "cexpr", + "clang-sys", + "itertools", + "proc-macro2", + "quote", + "regex", + "rustc-hash", + "shlex", + "syn 2.0.87", +] + +[[package]] +name = "bit-set" +version = "0.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1" +dependencies = [ + "bit-vec", +] + +[[package]] +name = "bit-vec" +version = "0.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb" + +[[package]] +name = "bitflags" +version = "1.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" + +[[package]] +name = "bitflags" +version = "2.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de" +dependencies = [ + "serde", +] + +[[package]] +name = "blake3" +version = "1.5.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d82033247fd8e890df8f740e407ad4d038debb9eb1f40533fffb32e7d17dc6f7" +dependencies = [ + "arrayref", + "arrayvec", + "cc", + "cfg-if", + "constant_time_eq", +] + +[[package]] +name = "blenvy" +version = "0.1.0-alpha.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a54af0aa5fc695e7a3a6880a34570b1a5388851a20cee43f90c43f2580ff8fcd" +dependencies = [ + "bevy", + "bevy_common_assets", + "ron", + "serde", + "serde_json", +] + +[[package]] +name = "block" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0d8c1fef690941d3e7788d328517591fecc684c084084702d6ff1641e993699a" + +[[package]] +name = "block2" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2c132eebf10f5cad5289222520a4a058514204aed6d791f1cf4fe8088b82d15f" +dependencies = [ + "objc2", +] + +[[package]] +name = "blocking" +version = "1.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "703f41c54fc768e63e091340b424302bb1c29ef4aa0c7f10fe849dfb114d29ea" +dependencies = [ + "async-channel", + "async-task", + "futures-io", + "futures-lite", + "piper", +] + +[[package]] +name = "bstr" +version = "1.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "40723b8fb387abc38f4f4a37c09073622e41dd12327033091ef8950659e6dc0c" +dependencies = [ + "memchr", + "regex-automata 0.4.8", + "serde", +] + +[[package]] +name = "bumpalo" +version = "3.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c" + +[[package]] +name = "bytemuck" +version = "1.19.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8334215b81e418a0a7bdb8ef0849474f40bb10c8b71f1c4ed315cff49f32494d" +dependencies = [ + "bytemuck_derive", +] + +[[package]] +name = "bytemuck_derive" +version = "1.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bcfcc3cd946cb52f0bbfdbbcfa2f4e24f75ebb6c0e1002f7c25904fada18b9ec" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.87", +] + +[[package]] +name = "byteorder" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" + +[[package]] +name = "byteorder-lite" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f1fe948ff07f4bd06c30984e69f5b4899c516a3ef74f34df92a2df2ab535495" + +[[package]] +name = "bytes" +version = "1.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9ac0150caa2ae65ca5bd83f25c7de183dea78d4d366469f148435e2acfbad0da" + +[[package]] +name = "calloop" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b99da2f8558ca23c71f4fd15dc57c906239752dd27ff3c00a1d56b685b7cbfec" +dependencies = [ + "bitflags 2.6.0", + "log", + "polling", + "rustix", + "slab", + "thiserror", +] + +[[package]] +name = "calloop-wayland-source" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "95a66a987056935f7efce4ab5668920b5d0dac4a7c99991a67395f13702ddd20" +dependencies = [ + "calloop", + "rustix", + "wayland-backend", + "wayland-client", +] + +[[package]] +name = "cc" +version = "1.1.37" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "40545c26d092346d8a8dab71ee48e7685a7a9cba76e634790c215b41a4a7b4cf" +dependencies = [ + "jobserver", + "libc", + "shlex", +] + +[[package]] +name = "cesu8" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c" + +[[package]] +name = "cexpr" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6fac387a98bb7c37292057cffc56d62ecb629900026402633ae9160df93a8766" +dependencies = [ + "nom", +] + +[[package]] +name = "cfg-if" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" + +[[package]] +name = "cfg_aliases" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fd16c4719339c4530435d38e511904438d07cce7950afa3718a84ac36c10e89e" + +[[package]] +name = "cfg_aliases" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724" + +[[package]] +name = "clang-sys" +version = "1.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b023947811758c97c59bf9d1c188fd619ad4718dcaa767947df1cadb14f39f4" +dependencies = [ + "glob", + "libc", + "libloading 0.8.5", +] + +[[package]] +name = "clipboard-win" +version = "5.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "15efe7a882b08f34e38556b14f2fb3daa98769d06c7f0c1b076dfd0d983bc892" +dependencies = [ + "error-code", +] + +[[package]] +name = "codespan-reporting" +version = "0.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3538270d33cc669650c4b093848450d380def10c331d38c768e34cac80576e6e" +dependencies = [ + "termcolor", + "unicode-width", +] + +[[package]] +name = "color_quant" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b" + +[[package]] +name = "com" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7e17887fd17353b65b1b2ef1c526c83e26cd72e74f598a8dc1bee13a48f3d9f6" +dependencies = [ + "com_macros", +] + +[[package]] +name = "com_macros" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d375883580a668c7481ea6631fc1a8863e33cc335bf56bfad8d7e6d4b04b13a5" +dependencies = [ + "com_macros_support", + "proc-macro2", + "syn 1.0.109", +] + +[[package]] +name = "com_macros_support" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ad899a1087a9296d5644792d7cb72b8e34c1bec8e7d4fbc002230169a6e8710c" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "combine" +version = "4.6.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba5a308b75df32fe02788e748662718f03fde005016435c444eea572398219fd" +dependencies = [ + "bytes", + "memchr", +] + +[[package]] +name = "concurrent-queue" +version = "2.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4ca0197aee26d1ae37445ee532fefce43251d24cc7c166799f4d46817f1d3973" +dependencies = [ + "crossbeam-utils", +] + +[[package]] +name = "console_error_panic_hook" +version = "0.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a06aeb73f470f66dcdbf7223caeebb85984942f22f1adb2a088cf9668146bbbc" +dependencies = [ + "cfg-if", + "wasm-bindgen", +] + +[[package]] +name = "console_log" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "be8aed40e4edbf4d3b4431ab260b63fdc40f5780a4766824329ea0f1eefe3c0f" +dependencies = [ + "log", + "web-sys", +] + +[[package]] +name = "const-fnv1a-hash" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "32b13ea120a812beba79e34316b3942a857c86ec1593cb34f27bb28272ce2cca" + +[[package]] +name = "const_panic" +version = "0.2.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "013b6c2c3a14d678f38cd23994b02da3a1a1b6a5d1eedddfe63a5a5f11b13a81" + +[[package]] +name = "const_soft_float" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "87ca1caa64ef4ed453e68bb3db612e51cf1b2f5b871337f0fcab1c8f87cc3dff" + +[[package]] +name = "constant_time_eq" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7c74b8349d32d297c9134b8c88677813a227df8f779daa29bfc29c183fe3dca6" + +[[package]] +name = "constgebra" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e1aaf9b65849a68662ac6c0810c8893a765c960b907dd7cfab9c4a50bf764fbc" +dependencies = [ + "const_soft_float", +] + +[[package]] +name = "convert_case" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6245d59a3e82a7fc217c5828a6692dbc6dfb63a0c8c90495621f7b9d79704a0e" + +[[package]] +name = "core-foundation" +version = "0.9.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f" +dependencies = [ + "core-foundation-sys", + "libc", +] + +[[package]] +name = "core-foundation" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b55271e5c8c478ad3f38ad24ef34923091e0548492a266d19b3c0b4d82574c63" +dependencies = [ + "core-foundation-sys", + "libc", +] + +[[package]] +name = "core-foundation-sys" +version = "0.8.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b" + +[[package]] +name = "core-graphics" +version = "0.23.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c07782be35f9e1140080c6b96f0d44b739e2278479f64e02fdab4e32dfd8b081" +dependencies = [ + "bitflags 1.3.2", + "core-foundation 0.9.4", + "core-graphics-types", + "foreign-types", + "libc", +] + +[[package]] +name = "core-graphics-types" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "45390e6114f68f718cc7a830514a96f903cccd70d02a8f6d9f643ac4ba45afaf" +dependencies = [ + "bitflags 1.3.2", + "core-foundation 0.9.4", + "libc", +] + +[[package]] +name = "coreaudio-rs" +version = "0.11.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "321077172d79c662f64f5071a03120748d5bb652f5231570141be24cfcd2bace" +dependencies = [ + "bitflags 1.3.2", + "core-foundation-sys", + "coreaudio-sys", +] + +[[package]] +name = "coreaudio-sys" +version = "0.2.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2ce857aa0b77d77287acc1ac3e37a05a8c95a2af3647d23b15f263bdaeb7562b" +dependencies = [ + "bindgen", +] + +[[package]] +name = "cpal" +version = "0.15.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "873dab07c8f743075e57f524c583985fbaf745602acbe916a01539364369a779" +dependencies = [ + "alsa", + "core-foundation-sys", + "coreaudio-rs", + "dasp_sample", + "jni", + "js-sys", + "libc", + "mach2", + "ndk 0.8.0", + "ndk-context", + "oboe", + "wasm-bindgen", + "wasm-bindgen-futures", + "web-sys", + "windows 0.54.0", +] + +[[package]] +name = "crc32fast" +version = "1.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a97769d94ddab943e4510d138150169a2758b5ef3eb191a9ee688de3e23ef7b3" +dependencies = [ + "cfg-if", +] + +[[package]] +name = "crossbeam-channel" +version = "0.5.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "33480d6946193aa8033910124896ca395333cae7e2d1113d1fef6c3272217df2" +dependencies = [ + "crossbeam-utils", +] + +[[package]] +name = "crossbeam-deque" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d" +dependencies = [ + "crossbeam-epoch", + "crossbeam-utils", +] + +[[package]] +name = "crossbeam-epoch" +version = "0.9.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e" +dependencies = [ + "crossbeam-utils", +] + +[[package]] +name = "crossbeam-utils" +version = "0.8.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "22ec99545bb0ed0ea7bb9b8e1e9122ea386ff8a48c0922e43f36d45ab09e0e80" + +[[package]] +name = "cursor-icon" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "96a6ac251f4a2aca6b3f91340350eab87ae57c3f127ffeb585e92bd336717991" + +[[package]] +name = "d3d12" +version = "0.20.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b28bfe653d79bd16c77f659305b195b82bb5ce0c0eb2a4846b82ddbd77586813" +dependencies = [ + "bitflags 2.6.0", + "libloading 0.8.5", + "winapi", +] + +[[package]] +name = "d6" +version = "0.1.0" +dependencies = [ + "avian3d", + "bevy", + "bevy_editor_pls", + "blenvy", + "rand", +] + +[[package]] +name = "darling" +version = "0.20.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6f63b86c8a8826a49b8c21f08a2d07338eec8d900540f8630dc76284be802989" +dependencies = [ + "darling_core", + "darling_macro", +] + +[[package]] +name = "darling_core" +version = "0.20.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "95133861a8032aaea082871032f5815eb9e98cef03fa916ab4500513994df9e5" +dependencies = [ + "fnv", + "ident_case", + "proc-macro2", + "quote", + "syn 2.0.87", +] + +[[package]] +name = "darling_macro" +version = "0.20.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806" +dependencies = [ + "darling_core", + "quote", + "syn 2.0.87", +] + +[[package]] +name = "dasp_sample" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0c87e182de0887fd5361989c677c4e8f5000cd9491d6d563161a8f3a5519fc7f" + +[[package]] +name = "data-encoding" +version = "2.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e8566979429cf69b49a5c740c60791108e86440e8be149bbea4fe54d2c32d6e2" + +[[package]] +name = "derive_more" +version = "0.99.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5f33878137e4dafd7fa914ad4e259e18a4e8e532b9617a2d0150262bf53abfce" +dependencies = [ + "convert_case", + "proc-macro2", + "quote", + "rustc_version", + "syn 2.0.87", +] + +[[package]] +name = "dispatch" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bd0c93bb4b0c6d9b77f4435b0ae98c24d17f1c45b2ff844c6151a07256ca923b" + +[[package]] +name = "displaydoc" +version = "0.2.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.87", +] + +[[package]] +name = "dlib" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "330c60081dcc4c72131f8eb70510f1ac07223e5d4163db481a04a0befcffa412" +dependencies = [ + "libloading 0.8.5", +] + +[[package]] +name = "document-features" +version = "0.2.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cb6969eaabd2421f8a2775cfd2471a2b634372b4a25d41e3bd647b79912850a0" +dependencies = [ + "litrs", +] + +[[package]] +name = "downcast-rs" +version = "1.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "75b325c5dbd37f80359721ad39aca5a29fb04c89279657cffdda8736d0c0b9d2" + +[[package]] +name = "dpi" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f25c0e292a7ca6d6498557ff1df68f32c99850012b6ea401cf8daf771f22ff53" + +[[package]] +name = "duplicate" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "de78e66ac9061e030587b2a2e75cc88f22304913c907b11307bca737141230cb" +dependencies = [ + "heck", + "proc-macro-error", +] + +[[package]] +name = "ecolor" +version = "0.28.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2e6b451ff1143f6de0f33fc7f1b68fecfd2c7de06e104de96c4514de3f5396f8" +dependencies = [ + "bytemuck", + "emath", +] + +[[package]] +name = "egui" +version = "0.28.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "20c97e70a2768de630f161bb5392cbd3874fcf72868f14df0e002e82e06cb798" +dependencies = [ + "ahash", + "emath", + "epaint", + "nohash-hasher", +] + +[[package]] +name = "egui_dock" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "629a8b0e440d69996795669ceacc0dd839a997843489273600d31d16c9cb3500" +dependencies = [ + "duplicate", + "egui", + "paste", +] + +[[package]] +name = "either" +version = "1.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "60b1af1c220855b6ceac025d3f6ecdd2b7c4894bfe9cd9bda4fbb4bc7c0d4cf0" + +[[package]] +name = "emath" +version = "0.28.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0a6a21708405ea88f63d8309650b4d77431f4bc28fb9d8e6f77d3963b51249e6" +dependencies = [ + "bytemuck", +] + +[[package]] +name = "encase" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5a9299a95fa5671ddf29ecc22b00e121843a65cb9ff24911e394b4ae556baf36" +dependencies = [ + "const_panic", + "encase_derive", + "glam 0.27.0", + "thiserror", +] + +[[package]] +name = "encase_derive" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "07e09decb3beb1fe2db6940f598957b2e1f7df6206a804d438ff6cb2a9cddc10" +dependencies = [ + "encase_derive_impl", +] + +[[package]] +name = "encase_derive_impl" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fd31dbbd9743684d339f907a87fe212cb7b51d75b9e8e74181fe363199ee9b47" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.87", +] + +[[package]] +name = "enum_dispatch" +version = "0.3.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aa18ce2bc66555b3218614519ac839ddb759a7d6720732f979ef8d13be147ecd" +dependencies = [ + "once_cell", + "proc-macro2", + "quote", + "syn 2.0.87", +] + +[[package]] +name = "enumset" +version = "1.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d07a4b049558765cef5f0c1a273c3fc57084d768b44d2f98127aef4cceb17293" +dependencies = [ + "enumset_derive", +] + +[[package]] +name = "enumset_derive" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "59c3b24c345d8c314966bdc1832f6c2635bfcce8e7cf363bd115987bba2ee242" +dependencies = [ + "darling", + "proc-macro2", + "quote", + "syn 2.0.87", +] + +[[package]] +name = "epaint" +version = "0.28.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f0dcc0a0771e7500e94cd1cb797bd13c9f23b9409bdc3c824e2cbc562b7fa01" +dependencies = [ + "ab_glyph", + "ahash", + "bytemuck", + "ecolor", + "emath", + "nohash-hasher", + "parking_lot", +] + +[[package]] +name = "equivalent" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" + +[[package]] +name = "erased-serde" +version = "0.4.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "24e2389d65ab4fab27dc2a5de7b191e1f6617d1f1c8855c0dc569c94a4cbb18d" +dependencies = [ + "serde", + "typeid", +] + +[[package]] +name = "errno" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "534c5cf6194dfab3db3242765c03bbe257cf92f22b38f6bc0c58d59108a820ba" +dependencies = [ + "libc", + "windows-sys 0.52.0", +] + +[[package]] +name = "error-code" +version = "3.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a5d9305ccc6942a704f4335694ecd3de2ea531b114ac2d51f5f843750787a92f" + +[[package]] +name = "euclid" +version = "0.22.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ad9cdb4b747e485a12abb0e6566612956c7a1bafa3bdb8d682c5b6d403589e48" +dependencies = [ + "num-traits", +] + +[[package]] +name = "event-listener" +version = "2.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0206175f82b8d6bf6652ff7d71a1e27fd2e4efde587fd368662814d6ec1d9ce0" + +[[package]] +name = "event-listener" +version = "5.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6032be9bd27023a771701cc49f9f053c751055f71efb2e0ae5c15809093675ba" +dependencies = [ + "concurrent-queue", + "parking", + "pin-project-lite", +] + +[[package]] +name = "event-listener-strategy" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0f214dc438f977e6d4e3500aaa277f5ad94ca83fbbd9b1a15713ce2344ccc5a1" +dependencies = [ + "event-listener 5.3.1", + "pin-project-lite", +] + +[[package]] +name = "fastrand" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "486f806e73c5707928240ddc295403b1b93c96a02038563881c4a2fd84b81ac4" + +[[package]] +name = "fdeflate" +version = "0.3.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "07c6f4c64c1d33a3111c4466f7365ebdcc37c5bd1ea0d62aae2e3d722aacbedb" +dependencies = [ + "simd-adler32", +] + +[[package]] +name = "fixedbitset" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80" + +[[package]] +name = "fixedbitset" +version = "0.5.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d674e81391d1e1ab681a28d99df07927c6d4aa5b027d7da16ba32d1d21ecd99" + +[[package]] +name = "flate2" +version = "1.0.34" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1b589b4dc103969ad3cf85c950899926ec64300a1a46d76c03a6072957036f0" +dependencies = [ + "crc32fast", + "miniz_oxide", +] + +[[package]] +name = "fnv" +version = "1.0.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" + +[[package]] +name = "foreign-types" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d737d9aa519fb7b749cbc3b962edcf310a8dd1f4b67c91c4f83975dbdd17d965" +dependencies = [ + "foreign-types-macros", + "foreign-types-shared", +] + +[[package]] +name = "foreign-types-macros" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1a5c6c585bc94aaf2c7b51dd4c2ba22680844aba4c687be581871a6f518c5742" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.87", +] + +[[package]] +name = "foreign-types-shared" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aa9a19cbb55df58761df49b23516a86d432839add4af60fc256da840f66ed35b" + +[[package]] +name = "form_urlencoded" +version = "1.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456" +dependencies = [ + "percent-encoding", +] + +[[package]] +name = "futures-core" +version = "0.3.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "05f29059c0c2090612e8d742178b0580d2dc940c837851ad723096f87af6663e" + +[[package]] +name = "futures-io" +version = "0.3.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9e5c1b78ca4aae1ac06c48a526a655760685149f0d465d21f37abfe57ce075c6" + +[[package]] +name = "futures-lite" +version = "2.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cef40d21ae2c515b51041df9ed313ed21e572df340ea58a922a0aefe7e8891a1" +dependencies = [ + "fastrand", + "futures-core", + "futures-io", + "parking", + "pin-project-lite", +] + +[[package]] +name = "fuzzy-matcher" +version = "0.3.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "54614a3312934d066701a80f20f15fa3b56d67ac7722b39eea5b4c9dd1d66c94" +dependencies = [ + "thread_local", +] + +[[package]] +name = "fxhash" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c31b6d751ae2c7f11320402d34e41349dd1016f8d5d45e48c4312bc8625af50c" +dependencies = [ + "byteorder", +] + +[[package]] +name = "gethostname" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0176e0459c2e4a1fe232f984bca6890e681076abb9934f6cea7c326f3fc47818" +dependencies = [ + "libc", + "windows-targets 0.48.5", +] + +[[package]] +name = "getrandom" +version = "0.2.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7" +dependencies = [ + "cfg-if", + "js-sys", + "libc", + "wasi", + "wasm-bindgen", +] + +[[package]] +name = "gilrs" +version = "0.10.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a556964c6d62458084356ce9770676f5104bd667e12e9a795691076e8a17c5cf" +dependencies = [ + "fnv", + "gilrs-core", + "log", + "uuid", + "vec_map", +] + +[[package]] +name = "gilrs-core" +version = "0.5.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "732dadc05170599ddec9a89653f10d7a2af54da9181b3fa6e2bd49907ec8f7e4" +dependencies = [ + "core-foundation 0.9.4", + "inotify", + "io-kit-sys", + "js-sys", + "libc", + "libudev-sys", + "log", + "nix", + "uuid", + "vec_map", + "wasm-bindgen", + "web-sys", + "windows 0.58.0", +] + +[[package]] +name = "gl_generator" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1a95dfc23a2b4a9a2f5ab41d194f8bfda3cabec42af4e39f08c339eb2a0c124d" +dependencies = [ + "khronos_api", + "log", + "xml-rs", +] + +[[package]] +name = "glam" +version = "0.27.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9e05e7e6723e3455f4818c7b26e855439f7546cf617ef669d1adedb8669e5cb9" +dependencies = [ + "bytemuck", + "mint", + "rand", + "serde", +] + +[[package]] +name = "glam" +version = "0.28.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "779ae4bf7e8421cf91c0b3b64e7e8b40b862fba4d393f59150042de7c4965a94" +dependencies = [ + "mint", +] + +[[package]] +name = "glob" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b" + +[[package]] +name = "glow" +version = "0.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bd348e04c43b32574f2de31c8bb397d96c9fcfa1371bd4ca6d8bdc464ab121b1" +dependencies = [ + "js-sys", + "slotmap", + "wasm-bindgen", + "web-sys", +] + +[[package]] +name = "gltf" +version = "1.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3ce1918195723ce6ac74e80542c5a96a40c2b26162c1957a5cd70799b8cacf7" +dependencies = [ + "byteorder", + "gltf-json", + "lazy_static", + "serde_json", +] + +[[package]] +name = "gltf-derive" +version = "1.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "14070e711538afba5d6c807edb74bcb84e5dbb9211a3bf5dea0dfab5b24f4c51" +dependencies = [ + "inflections", + "proc-macro2", + "quote", + "syn 2.0.87", +] + +[[package]] +name = "gltf-json" +version = "1.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e6176f9d60a7eab0a877e8e96548605dedbde9190a7ae1e80bbcc1c9af03ab14" +dependencies = [ + "gltf-derive", + "serde", + "serde_derive", + "serde_json", +] + +[[package]] +name = "glutin_wgl_sys" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c8098adac955faa2d31079b65dc48841251f69efd3ac25477903fc424362ead" +dependencies = [ + "gl_generator", +] + +[[package]] +name = "glyph_brush_layout" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b1e288bfd2f6c0313f78bf5aa538356ad481a3bb97e9b7f93220ab0066c5992" +dependencies = [ + "ab_glyph", + "approx", + "xi-unicode", +] + +[[package]] +name = "gpu-alloc" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fbcd2dba93594b227a1f57ee09b8b9da8892c34d55aa332e034a228d0fe6a171" +dependencies = [ + "bitflags 2.6.0", + "gpu-alloc-types", +] + +[[package]] +name = "gpu-alloc-types" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "98ff03b468aa837d70984d55f5d3f846f6ec31fe34bbb97c4f85219caeee1ca4" +dependencies = [ + "bitflags 2.6.0", +] + +[[package]] +name = "gpu-allocator" +version = "0.25.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6f56f6318968d03c18e1bcf4857ff88c61157e9da8e47c5f29055d60e1228884" +dependencies = [ + "log", + "presser", + "thiserror", + "winapi", + "windows 0.52.0", +] + +[[package]] +name = "gpu-descriptor" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c08c1f623a8d0b722b8b99f821eb0ba672a1618f0d3b16ddbee1cedd2dd8557" +dependencies = [ + "bitflags 2.6.0", + "gpu-descriptor-types", + "hashbrown 0.14.5", +] + +[[package]] +name = "gpu-descriptor-types" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fdf242682df893b86f33a73828fb09ca4b2d3bb6cc95249707fc684d27484b91" +dependencies = [ + "bitflags 2.6.0", +] + +[[package]] +name = "grid" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "be136d9dacc2a13cc70bb6c8f902b414fb2641f8db1314637c6b7933411a8f82" + +[[package]] +name = "guillotiere" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b62d5865c036cb1393e23c50693df631d3f5d7bcca4c04fe4cc0fd592e74a782" +dependencies = [ + "euclid", + "svg_fmt", +] + +[[package]] +name = "hashbrown" +version = "0.14.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1" +dependencies = [ + "ahash", + "allocator-api2", + "serde", +] + +[[package]] +name = "hashbrown" +version = "0.15.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3a9bfc1af68b1726ea47d3d5109de126281def866b33970e10fbab11b5dafab3" + +[[package]] +name = "hassle-rs" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "af2a7e73e1f34c48da31fb668a907f250794837e08faa144fd24f0b8b741e890" +dependencies = [ + "bitflags 2.6.0", + "com", + "libc", + "libloading 0.8.5", + "thiserror", + "widestring", + "winapi", +] + +[[package]] +name = "heck" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" + +[[package]] +name = "hermit-abi" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fbf6a919d6cf397374f7dfeeea91d974c7c0a7221d0d0f4f20d859d329e53fcc" + +[[package]] +name = "hexasphere" +version = "12.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "edd6b038160f086b0a7496edae34169ae22f328793cbe2b627a5a3d8373748ec" +dependencies = [ + "constgebra", + "glam 0.27.0", +] + +[[package]] +name = "hexf-parse" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dfa686283ad6dd069f105e5ab091b04c62850d3e4cf5d67debad1933f55023df" + +[[package]] +name = "home" +version = "0.5.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3d1354bf6b7235cb4a0576c2619fd4ed18183f689b12b006a0ee7329eeff9a5" +dependencies = [ + "windows-sys 0.52.0", +] + +[[package]] +name = "icu_collections" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "db2fa452206ebee18c4b5c2274dbf1de17008e874b4dc4f0aea9d01ca79e4526" +dependencies = [ + "displaydoc", + "yoke", + "zerofrom", + "zerovec", +] + +[[package]] +name = "icu_locid" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "13acbb8371917fc971be86fc8057c41a64b521c184808a698c02acc242dbf637" +dependencies = [ + "displaydoc", + "litemap", + "tinystr", + "writeable", + "zerovec", +] + +[[package]] +name = "icu_locid_transform" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "01d11ac35de8e40fdeda00d9e1e9d92525f3f9d887cdd7aa81d727596788b54e" +dependencies = [ + "displaydoc", + "icu_locid", + "icu_locid_transform_data", + "icu_provider", + "tinystr", + "zerovec", +] + +[[package]] +name = "icu_locid_transform_data" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fdc8ff3388f852bede6b579ad4e978ab004f139284d7b28715f773507b946f6e" + +[[package]] +name = "icu_normalizer" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "19ce3e0da2ec68599d193c93d088142efd7f9c5d6fc9b803774855747dc6a84f" +dependencies = [ + "displaydoc", + "icu_collections", + "icu_normalizer_data", + "icu_properties", + "icu_provider", + "smallvec", + "utf16_iter", + "utf8_iter", + "write16", + "zerovec", +] + +[[package]] +name = "icu_normalizer_data" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8cafbf7aa791e9b22bec55a167906f9e1215fd475cd22adfcf660e03e989516" + +[[package]] +name = "icu_properties" +version = "1.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "93d6020766cfc6302c15dbbc9c8778c37e62c14427cb7f6e601d849e092aeef5" +dependencies = [ + "displaydoc", + "icu_collections", + "icu_locid_transform", + "icu_properties_data", + "icu_provider", + "tinystr", + "zerovec", +] + +[[package]] +name = "icu_properties_data" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "67a8effbc3dd3e4ba1afa8ad918d5684b8868b3b26500753effea8d2eed19569" + +[[package]] +name = "icu_provider" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6ed421c8a8ef78d3e2dbc98a973be2f3770cb42b606e3ab18d6237c4dfde68d9" +dependencies = [ + "displaydoc", + "icu_locid", + "icu_provider_macros", + "stable_deref_trait", + "tinystr", + "writeable", + "yoke", + "zerofrom", + "zerovec", +] + +[[package]] +name = "icu_provider_macros" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1ec89e9337638ecdc08744df490b221a7399bf8d164eb52a665454e60e075ad6" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.87", +] + +[[package]] +name = "ident_case" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" + +[[package]] +name = "idna" +version = "1.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "686f825264d630750a544639377bae737628043f20d38bbc029e8f29ea968a7e" +dependencies = [ + "idna_adapter", + "smallvec", + "utf8_iter", +] + +[[package]] +name = "idna_adapter" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "daca1df1c957320b2cf139ac61e7bd64fed304c5040df000a745aa1de3b4ef71" +dependencies = [ + "icu_normalizer", + "icu_properties", +] + +[[package]] +name = "image" +version = "0.24.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5690139d2f55868e080017335e4b94cb7414274c74f1669c84fb5feba2c9f69d" +dependencies = [ + "bytemuck", + "byteorder", + "color_quant", + "num-traits", +] + +[[package]] +name = "image" +version = "0.25.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cd6f44aed642f18953a158afeb30206f4d50da59fbc66ecb53c66488de73563b" +dependencies = [ + "bytemuck", + "byteorder-lite", + "num-traits", + "png", + "tiff", +] + +[[package]] +name = "immutable-chunkmap" +version = "2.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "12f97096f508d54f8f8ab8957862eee2ccd628847b6217af1a335e1c44dee578" +dependencies = [ + "arrayvec", +] + +[[package]] +name = "indexmap" +version = "2.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "707907fe3c25f5424cce2cb7e1cbcafee6bdbe735ca90ef77c29e84591e5b9da" +dependencies = [ + "equivalent", + "hashbrown 0.15.1", +] + +[[package]] +name = "inflections" +version = "1.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a257582fdcde896fd96463bf2d40eefea0580021c0712a0e2b028b60b47a837a" + +[[package]] +name = "inotify" +version = "0.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fdd168d97690d0b8c412d6b6c10360277f4d7ee495c5d0d5d5fe0854923255cc" +dependencies = [ + "bitflags 1.3.2", + "inotify-sys", + "libc", +] + +[[package]] +name = "inotify-sys" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e05c02b5e89bff3b946cedeca278abc628fe811e604f027c45a8aa3cf793d0eb" +dependencies = [ + "libc", +] + +[[package]] +name = "io-kit-sys" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "617ee6cf8e3f66f3b4ea67a4058564628cde41901316e19f559e14c7c72c5e7b" +dependencies = [ + "core-foundation-sys", + "mach2", +] + +[[package]] +name = "itertools" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "413ee7dfc52ee1a4949ceeb7dbc8a33f2d6c088194d9f922fb8318faf1f01186" +dependencies = [ + "either", +] + +[[package]] +name = "itoa" +version = "1.0.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b" + +[[package]] +name = "jni" +version = "0.21.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1a87aa2bb7d2af34197c04845522473242e1aa17c12f4935d5856491a7fb8c97" +dependencies = [ + "cesu8", + "cfg-if", + "combine", + "jni-sys", + "log", + "thiserror", + "walkdir", + "windows-sys 0.45.0", +] + +[[package]] +name = "jni-sys" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8eaf4bc02d17cbdd7ff4c7438cafcdf7fb9a4613313ad11b4f8fefe7d3fa0130" + +[[package]] +name = "jobserver" +version = "0.1.32" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "48d1dbcbbeb6a7fec7e059840aa538bd62aaccf972c7346c4d9d2059312853d0" +dependencies = [ + "libc", +] + +[[package]] +name = "jpeg-decoder" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f5d4a7da358eff58addd2877a45865158f0d78c911d43a5784ceb7bbf52833b0" + +[[package]] +name = "js-sys" +version = "0.3.72" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6a88f1bda2bd75b0452a14784937d796722fdebfe50df998aeb3f0b7603019a9" +dependencies = [ + "wasm-bindgen", +] + +[[package]] +name = "khronos-egl" +version = "6.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6aae1df220ece3c0ada96b8153459b67eebe9ae9212258bb0134ae60416fdf76" +dependencies = [ + "libc", + "libloading 0.8.5", + "pkg-config", +] + +[[package]] +name = "khronos_api" +version = "3.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e2db585e1d738fc771bf08a151420d3ed193d9d895a36df7f6f8a9456b911ddc" + +[[package]] +name = "ktx2" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "87d65e08a9ec02e409d27a0139eaa6b9756b4d81fe7cde71f6941a83730ce838" +dependencies = [ + "bitflags 1.3.2", +] + +[[package]] +name = "lazy_static" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" + +[[package]] +name = "lewton" +version = "0.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "777b48df9aaab155475a83a7df3070395ea1ac6902f5cd062b8f2b028075c030" +dependencies = [ + "byteorder", + "ogg", + "tinyvec", +] + +[[package]] +name = "lexopt" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "baff4b617f7df3d896f97fe922b64817f6cd9a756bb81d40f8883f2f66dcb401" + +[[package]] +name = "libc" +version = "0.2.162" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "18d287de67fe55fd7e1581fe933d965a5a9477b38e949cfa9f8574ef01506398" + +[[package]] +name = "libloading" +version = "0.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b67380fd3b2fbe7527a606e18729d21c6f3951633d0500574c4dc22d2d638b9f" +dependencies = [ + "cfg-if", + "winapi", +] + +[[package]] +name = "libloading" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4979f22fdb869068da03c9f7528f8297c6fd2606bc3a4affe42e6a823fdb8da4" +dependencies = [ + "cfg-if", + "windows-targets 0.52.6", +] + +[[package]] +name = "libm" +version = "0.2.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8355be11b20d696c8f18f6cc018c4e372165b1fa8126cef092399c9951984ffa" + +[[package]] +name = "libredox" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d" +dependencies = [ + "bitflags 2.6.0", + "libc", + "redox_syscall 0.5.7", +] + +[[package]] +name = "libudev-sys" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c8469b4a23b962c1396b9b451dda50ef5b283e8dd309d69033475fa9b334324" +dependencies = [ + "libc", + "pkg-config", +] + +[[package]] +name = "linux-raw-sys" +version = "0.4.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89" + +[[package]] +name = "litemap" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "643cb0b8d4fcc284004d5fd0d67ccf61dfffadb7f75e1e71bc420f4688a3a704" + +[[package]] +name = "litrs" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b4ce301924b7887e9d637144fdade93f9dfff9b60981d4ac161db09720d39aa5" + +[[package]] +name = "lock_api" +version = "0.4.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "07af8b9cdd281b7915f413fa73f29ebd5d55d0d3f0155584dade1ff18cea1b17" +dependencies = [ + "autocfg", + "scopeguard", +] + +[[package]] +name = "log" +version = "0.4.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a7a70ba024b9dc04c27ea2f0c0548feb474ec5c54bba33a7f72f873a39d07b24" + +[[package]] +name = "mach2" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "19b955cdeb2a02b9117f121ce63aa52d08ade45de53e48fe6a38b39c10f6f709" +dependencies = [ + "libc", +] + +[[package]] +name = "malloc_buf" +version = "0.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "62bb907fe88d54d8d9ce32a3cceab4218ed2f6b7d35617cafe9adf84e43919cb" +dependencies = [ + "libc", +] + +[[package]] +name = "matchers" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8263075bb86c5a1b1427b5ae862e8889656f126e9f77c484496e8b47cf5c5558" +dependencies = [ + "regex-automata 0.1.10", +] + +[[package]] +name = "matrixmultiply" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9380b911e3e96d10c1f415da0876389aaf1b56759054eeb0de7df940c456ba1a" +dependencies = [ + "autocfg", + "rawpointer", +] + +[[package]] +name = "memchr" +version = "2.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3" + +[[package]] +name = "memmap2" +version = "0.9.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fd3f7eed9d3848f8b98834af67102b720745c4ec028fcd0aa0239277e7de374f" +dependencies = [ + "libc", +] + +[[package]] +name = "metal" +version = "0.28.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5637e166ea14be6063a3f8ba5ccb9a4159df7d8f6d61c02fc3d480b1f90dcfcb" +dependencies = [ + "bitflags 2.6.0", + "block", + "core-graphics-types", + "foreign-types", + "log", + "objc", + "paste", +] + +[[package]] +name = "minimal-lexical" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" + +[[package]] +name = "miniz_oxide" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e2d80299ef12ff69b16a84bb182e3b9df68b5a91574d3d4fa6e41b65deec4df1" +dependencies = [ + "adler2", + "simd-adler32", +] + +[[package]] +name = "mint" +version = "0.5.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e53debba6bda7a793e5f99b8dacf19e626084f525f7829104ba9898f367d85ff" + +[[package]] +name = "naga" +version = "0.20.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e536ae46fcab0876853bd4a632ede5df4b1c2527a58f6c5a4150fe86be858231" +dependencies = [ + "arrayvec", + "bit-set", + "bitflags 2.6.0", + "codespan-reporting", + "hexf-parse", + "indexmap", + "log", + "num-traits", + "pp-rs", + "rustc-hash", + "spirv", + "termcolor", + "thiserror", + "unicode-xid", +] + +[[package]] +name = "naga_oil" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "275d9720a7338eedac966141089232514c84d76a246a58ef501af88c5edf402f" +dependencies = [ + "bit-set", + "codespan-reporting", + "data-encoding", + "indexmap", + "naga", + "once_cell", + "regex", + "regex-syntax 0.8.5", + "rustc-hash", + "thiserror", + "tracing", + "unicode-ident", +] + +[[package]] +name = "nalgebra" +version = "0.32.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b5c17de023a86f59ed79891b2e5d5a94c705dbe904a5b5c9c952ea6221b03e4" +dependencies = [ + "approx", + "glam 0.27.0", + "matrixmultiply", + "nalgebra-macros", + "num-complex", + "num-rational", + "num-traits", + "simba", + "typenum", +] + +[[package]] +name = "nalgebra-macros" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "254a5372af8fc138e36684761d3c0cdb758a4410e938babcff1c860ce14ddbfc" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.87", +] + +[[package]] +name = "ndk" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2076a31b7010b17a38c01907c45b945e8f11495ee4dd588309718901b1f7a5b7" +dependencies = [ + "bitflags 2.6.0", + "jni-sys", + "log", + "ndk-sys 0.5.0+25.2.9519653", + "num_enum", + "thiserror", +] + +[[package]] +name = "ndk" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c3f42e7bbe13d351b6bead8286a43aac9534b82bd3cc43e47037f012ebfd62d4" +dependencies = [ + "bitflags 2.6.0", + "jni-sys", + "log", + "ndk-sys 0.6.0+11769913", + "num_enum", + "raw-window-handle", + "thiserror", +] + +[[package]] +name = "ndk-context" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "27b02d87554356db9e9a873add8782d4ea6e3e58ea071a9adb9a2e8ddb884a8b" + +[[package]] +name = "ndk-sys" +version = "0.5.0+25.2.9519653" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8c196769dd60fd4f363e11d948139556a344e79d451aeb2fa2fd040738ef7691" +dependencies = [ + "jni-sys", +] + +[[package]] +name = "ndk-sys" +version = "0.6.0+11769913" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ee6cda3051665f1fb8d9e08fc35c96d5a244fb1be711a03b71118828afc9a873" +dependencies = [ + "jni-sys", +] + +[[package]] +name = "nix" +version = "0.29.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "71e2746dc3a24dd78b3cfcb7be93368c6de9963d30f43a6a73998a9cf4b17b46" +dependencies = [ + "bitflags 2.6.0", + "cfg-if", + "cfg_aliases 0.2.1", + "libc", +] + +[[package]] +name = "nohash-hasher" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2bf50223579dc7cdcfb3bfcacf7069ff68243f8c363f62ffa99cf000a6b9c451" + +[[package]] +name = "nom" +version = "7.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a" +dependencies = [ + "memchr", + "minimal-lexical", +] + +[[package]] +name = "nonmax" +version = "0.5.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "610a5acd306ec67f907abe5567859a3c693fb9886eb1f012ab8f2a47bef3db51" + +[[package]] +name = "normpath" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c8911957c4b1549ac0dc74e30db9c8b0e66ddcd6d7acc33098f4c63a64a6d7ed" +dependencies = [ + "windows-sys 0.59.0", +] + +[[package]] +name = "ntapi" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e8a3895c6391c39d7fe7ebc444a87eb2991b2a0bc718fdabd071eec617fc68e4" +dependencies = [ + "winapi", +] + +[[package]] +name = "nu-ansi-term" +version = "0.46.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77a8165726e8236064dbb45459242600304b42a5ea24ee2948e18e023bf7ba84" +dependencies = [ + "overload", + "winapi", +] + +[[package]] +name = "num-complex" +version = "0.4.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "73f88a1307638156682bada9d7604135552957b7818057dcef22705b4d509495" +dependencies = [ + "num-traits", +] + +[[package]] +name = "num-derive" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.87", +] + +[[package]] +name = "num-integer" +version = "0.1.46" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f" +dependencies = [ + "num-traits", +] + +[[package]] +name = "num-rational" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f83d14da390562dca69fc84082e73e548e1ad308d24accdedd2720017cb37824" +dependencies = [ + "num-integer", + "num-traits", +] + +[[package]] +name = "num-traits" +version = "0.2.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841" +dependencies = [ + "autocfg", + "libm", +] + +[[package]] +name = "num_enum" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4e613fc340b2220f734a8595782c551f1250e969d87d3be1ae0579e8d4065179" +dependencies = [ + "num_enum_derive", +] + +[[package]] +name = "num_enum_derive" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "af1844ef2428cc3e1cb900be36181049ef3d3193c63e43026cfe202983b27a56" +dependencies = [ + "proc-macro-crate", + "proc-macro2", + "quote", + "syn 2.0.87", +] + +[[package]] +name = "objc" +version = "0.2.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "915b1b472bc21c53464d6c8461c9d3af805ba1ef837e1cac254428f4a77177b1" +dependencies = [ + "malloc_buf", +] + +[[package]] +name = "objc-sys" +version = "0.3.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cdb91bdd390c7ce1a8607f35f3ca7151b65afc0ff5ff3b34fa350f7d7c7e4310" + +[[package]] +name = "objc2" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "46a785d4eeff09c14c487497c162e92766fbb3e4059a71840cecc03d9a50b804" +dependencies = [ + "objc-sys", + "objc2-encode", +] + +[[package]] +name = "objc2-app-kit" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e4e89ad9e3d7d297152b17d39ed92cd50ca8063a89a9fa569046d41568891eff" +dependencies = [ + "bitflags 2.6.0", + "block2", + "libc", + "objc2", + "objc2-core-data", + "objc2-core-image", + "objc2-foundation", + "objc2-quartz-core", +] + +[[package]] +name = "objc2-cloud-kit" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "74dd3b56391c7a0596a295029734d3c1c5e7e510a4cb30245f8221ccea96b009" +dependencies = [ + "bitflags 2.6.0", + "block2", + "objc2", + "objc2-core-location", + "objc2-foundation", +] + +[[package]] +name = "objc2-contacts" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a5ff520e9c33812fd374d8deecef01d4a840e7b41862d849513de77e44aa4889" +dependencies = [ + "block2", + "objc2", + "objc2-foundation", +] + +[[package]] +name = "objc2-core-data" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "617fbf49e071c178c0b24c080767db52958f716d9eabdf0890523aeae54773ef" +dependencies = [ + "bitflags 2.6.0", + "block2", + "objc2", + "objc2-foundation", +] + +[[package]] +name = "objc2-core-image" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "55260963a527c99f1819c4f8e3b47fe04f9650694ef348ffd2227e8196d34c80" +dependencies = [ + "block2", + "objc2", + "objc2-foundation", + "objc2-metal", +] + +[[package]] +name = "objc2-core-location" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "000cfee34e683244f284252ee206a27953279d370e309649dc3ee317b37e5781" +dependencies = [ + "block2", + "objc2", + "objc2-contacts", + "objc2-foundation", +] + +[[package]] +name = "objc2-encode" +version = "4.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7891e71393cd1f227313c9379a26a584ff3d7e6e7159e988851f0934c993f0f8" + +[[package]] +name = "objc2-foundation" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0ee638a5da3799329310ad4cfa62fbf045d5f56e3ef5ba4149e7452dcf89d5a8" +dependencies = [ + "bitflags 2.6.0", + "block2", + "dispatch", + "libc", + "objc2", +] + +[[package]] +name = "objc2-link-presentation" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1a1ae721c5e35be65f01a03b6d2ac13a54cb4fa70d8a5da293d7b0020261398" +dependencies = [ + "block2", + "objc2", + "objc2-app-kit", + "objc2-foundation", +] + +[[package]] +name = "objc2-metal" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dd0cba1276f6023976a406a14ffa85e1fdd19df6b0f737b063b95f6c8c7aadd6" +dependencies = [ + "bitflags 2.6.0", + "block2", + "objc2", + "objc2-foundation", +] + +[[package]] +name = "objc2-quartz-core" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e42bee7bff906b14b167da2bac5efe6b6a07e6f7c0a21a7308d40c960242dc7a" +dependencies = [ + "bitflags 2.6.0", + "block2", + "objc2", + "objc2-foundation", + "objc2-metal", +] + +[[package]] +name = "objc2-symbols" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0a684efe3dec1b305badae1a28f6555f6ddd3bb2c2267896782858d5a78404dc" +dependencies = [ + "objc2", + "objc2-foundation", +] + +[[package]] +name = "objc2-ui-kit" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b8bb46798b20cd6b91cbd113524c490f1686f4c4e8f49502431415f3512e2b6f" +dependencies = [ + "bitflags 2.6.0", + "block2", + "objc2", + "objc2-cloud-kit", + "objc2-core-data", + "objc2-core-image", + "objc2-core-location", + "objc2-foundation", + "objc2-link-presentation", + "objc2-quartz-core", + "objc2-symbols", + "objc2-uniform-type-identifiers", + "objc2-user-notifications", +] + +[[package]] +name = "objc2-uniform-type-identifiers" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "44fa5f9748dbfe1ca6c0b79ad20725a11eca7c2218bceb4b005cb1be26273bfe" +dependencies = [ + "block2", + "objc2", + "objc2-foundation", +] + +[[package]] +name = "objc2-user-notifications" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "76cfcbf642358e8689af64cee815d139339f3ed8ad05103ed5eaf73db8d84cb3" +dependencies = [ + "bitflags 2.6.0", + "block2", + "objc2", + "objc2-core-location", + "objc2-foundation", +] + +[[package]] +name = "oboe" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e8b61bebd49e5d43f5f8cc7ee2891c16e0f41ec7954d36bcb6c14c5e0de867fb" +dependencies = [ + "jni", + "ndk 0.8.0", + "ndk-context", + "num-derive", + "num-traits", + "oboe-sys", +] + +[[package]] +name = "oboe-sys" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c8bb09a4a2b1d668170cfe0a7d5bc103f8999fb316c98099b6a9939c9f2e79d" +dependencies = [ + "cc", +] + +[[package]] +name = "ogg" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6951b4e8bf21c8193da321bcce9c9dd2e13c858fe078bf9054a288b419ae5d6e" +dependencies = [ + "byteorder", +] + +[[package]] +name = "once_cell" +version = "1.20.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1261fe7e33c73b354eab43b1273a57c8f967d0391e80353e51f764ac02cf6775" + +[[package]] +name = "opener" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c62dcb6174f9cb326eac248f07e955d5d559c272730b6c03e396b443b562788" +dependencies = [ + "bstr", + "normpath", + "winapi", +] + +[[package]] +name = "orbclient" +version = "0.3.48" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba0b26cec2e24f08ed8bb31519a9333140a6599b867dac464bb150bdb796fd43" +dependencies = [ + "libredox", +] + +[[package]] +name = "overload" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39" + +[[package]] +name = "owned_ttf_parser" +version = "0.25.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "22ec719bbf3b2a81c109a4e20b1f129b5566b7dce654bc3872f6a05abf82b2c4" +dependencies = [ + "ttf-parser", +] + +[[package]] +name = "parking" +version = "2.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f38d5652c16fde515bb1ecef450ab0f6a219d619a7274976324d5e377f7dceba" + +[[package]] +name = "parking_lot" +version = "0.12.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f1bf18183cf54e8d6059647fc3063646a1801cf30896933ec2311622cc4b9a27" +dependencies = [ + "lock_api", + "parking_lot_core", +] + +[[package]] +name = "parking_lot_core" +version = "0.9.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8" +dependencies = [ + "cfg-if", + "libc", + "redox_syscall 0.5.7", + "smallvec", + "windows-targets 0.52.6", +] + +[[package]] +name = "parry3d" +version = "0.15.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aa342e0cdfc774fed0196714290ba2d85408b8ce9f295c40a0b1e05f3f8256ab" +dependencies = [ + "approx", + "arrayvec", + "bitflags 1.3.2", + "downcast-rs", + "either", + "log", + "nalgebra", + "num-derive", + "num-traits", + "rayon", + "rustc-hash", + "simba", + "slab", + "smallvec", + "spade", +] + +[[package]] +name = "parry3d-f64" +version = "0.15.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fdc07fa374273eca29066d59d3ded520bf845ed582e38c0d60109459ea4ed76e" +dependencies = [ + "approx", + "arrayvec", + "bitflags 1.3.2", + "downcast-rs", + "either", + "log", + "nalgebra", + "num-derive", + "num-traits", + "rayon", + "rustc-hash", + "simba", + "slab", + "smallvec", + "spade", +] + +[[package]] +name = "paste" +version = "1.0.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a" + +[[package]] +name = "percent-encoding" +version = "2.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" + +[[package]] +name = "petgraph" +version = "0.6.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b4c5cc86750666a3ed20bdaf5ca2a0344f9c67674cae0515bec2da16fbaa47db" +dependencies = [ + "fixedbitset 0.4.2", + "indexmap", + "serde", + "serde_derive", +] + +[[package]] +name = "pin-project" +version = "1.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "be57f64e946e500c8ee36ef6331845d40a93055567ec57e8fae13efd33759b95" +dependencies = [ + "pin-project-internal", +] + +[[package]] +name = "pin-project-internal" +version = "1.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c0f5fad0874fc7abcd4d750e76917eaebbecaa2c20bde22e1dbeeba8beb758c" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.87", +] + +[[package]] +name = "pin-project-lite" +version = "0.2.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "915a1e146535de9163f3987b8944ed8cf49a18bb0056bcebcdcece385cece4ff" + +[[package]] +name = "piper" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "96c8c490f422ef9a4efd2cb5b42b76c8613d7e7dfc1caf667b8a3350a5acc066" +dependencies = [ + "atomic-waker", + "fastrand", + "futures-io", +] + +[[package]] +name = "pkg-config" +version = "0.3.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "953ec861398dccce10c670dfeaf3ec4911ca479e9c02154b3a215178c5f566f2" + +[[package]] +name = "png" +version = "0.17.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "52f9d46a34a05a6a57566bc2bfae066ef07585a6e3fa30fbbdff5936380623f0" +dependencies = [ + "bitflags 1.3.2", + "crc32fast", + "fdeflate", + "flate2", + "miniz_oxide", +] + +[[package]] +name = "polling" +version = "3.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a604568c3202727d1507653cb121dbd627a58684eb09a820fd746bee38b4442f" +dependencies = [ + "cfg-if", + "concurrent-queue", + "hermit-abi", + "pin-project-lite", + "rustix", + "tracing", + "windows-sys 0.59.0", +] + +[[package]] +name = "pp-rs" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bb458bb7f6e250e6eb79d5026badc10a3ebb8f9a15d1fff0f13d17c71f4d6dee" +dependencies = [ + "unicode-xid", +] + +[[package]] +name = "ppv-lite86" +version = "0.2.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77957b295656769bb8ad2b6a6b09d897d94f05c41b069aede1fcdaa675eaea04" +dependencies = [ + "zerocopy", +] + +[[package]] +name = "presser" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e8cf8e6a8aa66ce33f63993ffc4ea4271eb5b0530a9002db8455ea6050c77bfa" + +[[package]] +name = "pretty-type-name" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0f73cdaf19b52e6143685c3606206e114a4dfa969d6b14ec3894c88eb38bd4b" + +[[package]] +name = "proc-macro-crate" +version = "3.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8ecf48c7ca261d60b74ab1a7b20da18bede46776b2e55535cb958eb595c5fa7b" +dependencies = [ + "toml_edit", +] + +[[package]] +name = "proc-macro-error" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c" +dependencies = [ + "proc-macro-error-attr", + "proc-macro2", + "quote", + "syn 1.0.109", + "version_check", +] + +[[package]] +name = "proc-macro-error-attr" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869" +dependencies = [ + "proc-macro2", + "quote", + "version_check", +] + +[[package]] +name = "proc-macro2" +version = "1.0.89" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f139b0662de085916d1fb67d2b4169d1addddda1919e696f3252b740b629986e" +dependencies = [ + "unicode-ident", +] + +[[package]] +name = "profiling" +version = "1.0.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "afbdc74edc00b6f6a218ca6a5364d6226a259d4b8ea1af4a0ea063f27e179f4d" + +[[package]] +name = "quick-xml" +version = "0.36.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f7649a7b4df05aed9ea7ec6f628c67c9953a43869b8bc50929569b2999d443fe" +dependencies = [ + "memchr", +] + +[[package]] +name = "quote" +version = "1.0.37" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b5b9d34b8991d19d98081b46eacdd8eb58c6f2b201139f7c5f643cc155a633af" +dependencies = [ + "proc-macro2", +] + +[[package]] +name = "radsort" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "019b4b213425016d7d84a153c4c73afb0946fbb4840e4eece7ba8848b9d6da22" + +[[package]] +name = "rand" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" +dependencies = [ + "libc", + "rand_chacha", + "rand_core", +] + +[[package]] +name = "rand_chacha" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" +dependencies = [ + "ppv-lite86", + "rand_core", +] + +[[package]] +name = "rand_core" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" +dependencies = [ + "getrandom", +] + +[[package]] +name = "range-alloc" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c8a99fddc9f0ba0a85884b8d14e3592853e787d581ca1816c91349b10e4eeab" + +[[package]] +name = "raw-window-handle" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "20675572f6f24e9e76ef639bc5552774ed45f1c30e2951e1e99c59888861c539" + +[[package]] +name = "rawpointer" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "60a357793950651c4ed0f3f52338f53b2f809f32d83a07f72909fa13e4c6c1e3" + +[[package]] +name = "rayon" +version = "1.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa" +dependencies = [ + "either", + "rayon-core", +] + +[[package]] +name = "rayon-core" +version = "1.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2" +dependencies = [ + "crossbeam-deque", + "crossbeam-utils", +] + +[[package]] +name = "rectangle-pack" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a0d463f2884048e7153449a55166f91028d5b0ea53c79377099ce4e8cf0cf9bb" + +[[package]] +name = "redox_syscall" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa" +dependencies = [ + "bitflags 1.3.2", +] + +[[package]] +name = "redox_syscall" +version = "0.5.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9b6dfecf2c74bce2466cabf93f6664d6998a69eb21e39f4207930065b27b771f" +dependencies = [ + "bitflags 2.6.0", +] + +[[package]] +name = "regex" +version = "1.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b544ef1b4eac5dc2db33ea63606ae9ffcfac26c1416a2806ae0bf5f56b201191" +dependencies = [ + "aho-corasick", + "memchr", + "regex-automata 0.4.8", + "regex-syntax 0.8.5", +] + +[[package]] +name = "regex-automata" +version = "0.1.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132" +dependencies = [ + "regex-syntax 0.6.29", +] + +[[package]] +name = "regex-automata" +version = "0.4.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "368758f23274712b504848e9d5a6f010445cc8b87a7cdb4d7cbee666c1288da3" +dependencies = [ + "aho-corasick", + "memchr", + "regex-syntax 0.8.5", +] + +[[package]] +name = "regex-syntax" +version = "0.6.29" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1" + +[[package]] +name = "regex-syntax" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c" + +[[package]] +name = "renderdoc-sys" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "19b30a45b0cd0bcca8037f3d0dc3421eaf95327a17cad11964fb8179b4fc4832" + +[[package]] +name = "robust" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cbf4a6aa5f6d6888f39e980649f3ad6b666acdce1d78e95b8a2cb076e687ae30" + +[[package]] +name = "rodio" +version = "0.18.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d1fceb9d127d515af1586d8d0cc601e1245bdb0af38e75c865a156290184f5b3" +dependencies = [ + "cpal", + "lewton", + "thiserror", +] + +[[package]] +name = "ron" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b91f7eff05f748767f183df4320a63d6936e9c6107d97c9e6bdd9784f4289c94" +dependencies = [ + "base64 0.21.7", + "bitflags 2.6.0", + "serde", + "serde_derive", +] + +[[package]] +name = "rustc-hash" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" + +[[package]] +name = "rustc_version" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cfcb3a22ef46e85b45de6ee7e79d063319ebb6594faafcf1c225ea92ab6e9b92" +dependencies = [ + "semver", +] + +[[package]] +name = "rustix" +version = "0.38.39" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "375116bee2be9ed569afe2154ea6a99dfdffd257f533f187498c2a8f5feaf4ee" +dependencies = [ + "bitflags 2.6.0", + "errno", + "libc", + "linux-raw-sys", + "windows-sys 0.52.0", +] + +[[package]] +name = "ruzstd" +version = "0.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "99c3938e133aac070997ddc684d4b393777d293ba170f2988c8fd5ea2ad4ce21" +dependencies = [ + "twox-hash", +] + +[[package]] +name = "ryu" +version = "1.0.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f" + +[[package]] +name = "safe_arch" +version = "0.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c3460605018fdc9612bce72735cba0d27efbcd9904780d44c7e3a9948f96148a" +dependencies = [ + "bytemuck", +] + +[[package]] +name = "same-file" +version = "1.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" +dependencies = [ + "winapi-util", +] + +[[package]] +name = "scoped-tls" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e1cf6437eb19a8f4a6cc0f7dca544973b0b78843adbfeb3683d1a94a0024a294" + +[[package]] +name = "scopeguard" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" + +[[package]] +name = "sctk-adwaita" +version = "0.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6277f0217056f77f1d8f49f2950ac6c278c0d607c45f5ee99328d792ede24ec" +dependencies = [ + "ab_glyph", + "log", + "memmap2", + "smithay-client-toolkit", + "tiny-skia", +] + +[[package]] +name = "semver" +version = "1.0.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "61697e0a1c7e512e84a621326239844a24d8207b4669b41bc18b32ea5cbf988b" + +[[package]] +name = "send_wrapper" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cd0b0ec5f1c1ca621c432a25813d8d60c88abe6d3e08a3eb9cf37d97a0fe3d73" + +[[package]] +name = "serde" +version = "1.0.214" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f55c3193aca71c12ad7890f1785d2b73e1b9f63a0bbc353c08ef26fe03fc56b5" +dependencies = [ + "serde_derive", +] + +[[package]] +name = "serde_derive" +version = "1.0.214" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "de523f781f095e28fa605cdce0f8307e451cc0fd14e2eb4cd2e98a355b147766" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.87", +] + +[[package]] +name = "serde_json" +version = "1.0.132" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d726bfaff4b320266d395898905d0eba0345aae23b54aee3a737e260fd46db03" +dependencies = [ + "itoa", + "memchr", + "ryu", + "serde", +] + +[[package]] +name = "sharded-slab" +version = "0.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6" +dependencies = [ + "lazy_static", +] + +[[package]] +name = "shlex" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" + +[[package]] +name = "simba" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "061507c94fc6ab4ba1c9a0305018408e312e17c041eb63bef8aa726fa33aceae" +dependencies = [ + "approx", + "num-complex", + "num-traits", + "paste", + "wide", +] + +[[package]] +name = "simd-adler32" +version = "0.3.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d66dc143e6b11c1eddc06d5c423cfc97062865baf299914ab64caa38182078fe" + +[[package]] +name = "slab" +version = "0.4.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67" +dependencies = [ + "autocfg", +] + +[[package]] +name = "slotmap" +version = "1.0.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dbff4acf519f630b3a3ddcfaea6c06b42174d9a44bc70c620e9ed1649d58b82a" +dependencies = [ + "version_check", +] + +[[package]] +name = "smallvec" +version = "1.13.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67" + +[[package]] +name = "smithay-client-toolkit" +version = "0.19.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3457dea1f0eb631b4034d61d4d8c32074caa6cd1ab2d59f2327bd8461e2c0016" +dependencies = [ + "bitflags 2.6.0", + "calloop", + "calloop-wayland-source", + "cursor-icon", + "libc", + "log", + "memmap2", + "rustix", + "thiserror", + "wayland-backend", + "wayland-client", + "wayland-csd-frame", + "wayland-cursor", + "wayland-protocols", + "wayland-protocols-wlr", + "wayland-scanner", + "xkeysym", +] + +[[package]] +name = "smol_str" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dd538fb6910ac1099850255cf94a94df6551fbdd602454387d0adb2d1ca6dead" +dependencies = [ + "serde", +] + +[[package]] +name = "spade" +version = "2.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "93f5ef1f863aca7d1d7dda7ccfc36a0a4279bd6d3c375176e5e0712e25cb4889" +dependencies = [ + "hashbrown 0.14.5", + "num-traits", + "robust", + "smallvec", +] + +[[package]] +name = "spirv" +version = "0.3.0+sdk-1.3.268.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eda41003dc44290527a59b13432d4a0379379fa074b70174882adfbdfd917844" +dependencies = [ + "bitflags 2.6.0", +] + +[[package]] +name = "stable_deref_trait" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" + +[[package]] +name = "static_assertions" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" + +[[package]] +name = "strict-num" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6637bab7722d379c8b41ba849228d680cc12d0a45ba1fa2b48f2a30577a06731" + +[[package]] +name = "svg_fmt" +version = "0.4.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ce5d813d71d82c4cbc1742135004e4a79fd870214c155443451c139c9470a0aa" + +[[package]] +name = "syn" +version = "1.0.109" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + +[[package]] +name = "syn" +version = "2.0.87" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "25aa4ce346d03a6dcd68dd8b4010bcb74e54e62c90c573f394c46eae99aba32d" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + +[[package]] +name = "synstructure" +version = "0.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.87", +] + +[[package]] +name = "sysinfo" +version = "0.30.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0a5b4ddaee55fb2bea2bf0e5000747e5f5c0de765e5a5ff87f4cd106439f4bb3" +dependencies = [ + "cfg-if", + "core-foundation-sys", + "libc", + "ntapi", + "once_cell", + "windows 0.52.0", +] + +[[package]] +name = "taffy" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9cb893bff0f80ae17d3a57e030622a967b8dbc90e38284d9b4b1442e23873c94" +dependencies = [ + "arrayvec", + "grid", + "num-traits", + "serde", + "slotmap", +] + +[[package]] +name = "termcolor" +version = "1.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "06794f8f6c5c898b3275aebefa6b8a1cb24cd2c6c79397ab15774837a0bc5755" +dependencies = [ + "winapi-util", +] + +[[package]] +name = "thiserror" +version = "1.0.68" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "02dd99dc800bbb97186339685293e1cc5d9df1f8fae2d0aecd9ff1c77efea892" +dependencies = [ + "thiserror-impl", +] + +[[package]] +name = "thiserror-impl" +version = "1.0.68" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a7c61ec9a6f64d2793d8a45faba21efbe3ced62a886d44c36a009b2b519b4c7e" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.87", +] + +[[package]] +name = "thread_local" +version = "1.1.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b9ef9bad013ada3808854ceac7b46812a6465ba368859a37e2100283d2d719c" +dependencies = [ + "cfg-if", + "once_cell", +] + +[[package]] +name = "tiff" +version = "0.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba1310fcea54c6a9a4fd1aad794ecc02c31682f6bfbecdf460bf19533eed1e3e" +dependencies = [ + "flate2", + "jpeg-decoder", + "weezl", +] + +[[package]] +name = "tiny-skia" +version = "0.11.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "83d13394d44dae3207b52a326c0c85a8bf87f1541f23b0d143811088497b09ab" +dependencies = [ + "arrayref", + "arrayvec", + "bytemuck", + "cfg-if", + "log", + "tiny-skia-path", +] + +[[package]] +name = "tiny-skia-path" +version = "0.11.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c9e7fc0c2e86a30b117d0462aa261b72b7a99b7ebd7deb3a14ceda95c5bdc93" +dependencies = [ + "arrayref", + "bytemuck", + "strict-num", +] + +[[package]] +name = "tinystr" +version = "0.7.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9117f5d4db391c1cf6927e7bea3db74b9a1c1add8f7eda9ffd5364f40f57b82f" +dependencies = [ + "displaydoc", + "zerovec", +] + +[[package]] +name = "tinyvec" +version = "1.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "445e881f4f6d382d5f27c034e25eb92edd7c784ceab92a0937db7f2e9471b938" +dependencies = [ + "tinyvec_macros", +] + +[[package]] +name = "tinyvec_macros" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" + +[[package]] +name = "toml_datetime" +version = "0.6.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0dd7358ecb8fc2f8d014bf86f6f638ce72ba252a2c3a2572f2a795f1d23efb41" + +[[package]] +name = "toml_edit" +version = "0.22.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4ae48d6208a266e853d946088ed816055e556cc6028c5e8e2b84d9fa5dd7c7f5" +dependencies = [ + "indexmap", + "toml_datetime", + "winnow", +] + +[[package]] +name = "tracing" +version = "0.1.40" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef" +dependencies = [ + "pin-project-lite", + "tracing-attributes", + "tracing-core", +] + +[[package]] +name = "tracing-attributes" +version = "0.1.27" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.87", +] + +[[package]] +name = "tracing-core" +version = "0.1.32" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54" +dependencies = [ + "once_cell", + "valuable", +] + +[[package]] +name = "tracing-log" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ee855f1f400bd0e5c02d150ae5de3840039a3f54b025156404e34c23c03f47c3" +dependencies = [ + "log", + "once_cell", + "tracing-core", +] + +[[package]] +name = "tracing-subscriber" +version = "0.3.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ad0f048c97dbd9faa9b7df56362b8ebcaa52adb06b498c050d2f4e32f90a7a8b" +dependencies = [ + "matchers", + "nu-ansi-term", + "once_cell", + "regex", + "sharded-slab", + "smallvec", + "thread_local", + "tracing", + "tracing-core", + "tracing-log", +] + +[[package]] +name = "tracing-wasm" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4575c663a174420fa2d78f4108ff68f65bf2fbb7dd89f33749b6e826b3626e07" +dependencies = [ + "tracing", + "tracing-subscriber", + "wasm-bindgen", +] + +[[package]] +name = "transform-gizmo" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b43a029251c55e00d44930e24b78f5b471b3e75fa9c88c30ecb816db08646b93" +dependencies = [ + "ahash", + "ecolor", + "emath", + "enum_dispatch", + "enumset", + "epaint", + "glam 0.28.0", + "mint", +] + +[[package]] +name = "transform-gizmo-bevy" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e8240adbd84abd8b020fe5a5c8eb4f11771495f189cb080eb0344947ac18449" +dependencies = [ + "bevy_app", + "bevy_asset", + "bevy_core", + "bevy_core_pipeline", + "bevy_ecs", + "bevy_input", + "bevy_log", + "bevy_math", + "bevy_pbr", + "bevy_reflect", + "bevy_render", + "bevy_transform", + "bevy_utils", + "bevy_window", + "bytemuck", + "transform-gizmo", + "uuid", +] + +[[package]] +name = "ttf-parser" +version = "0.25.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5902c5d130972a0000f60860bfbf46f7ca3db5391eddfedd1b8728bd9dc96c0e" + +[[package]] +name = "twox-hash" +version = "1.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "97fee6b57c6a41524a810daee9286c02d7752c4253064d0b05472833a438f675" +dependencies = [ + "cfg-if", + "static_assertions", +] + +[[package]] +name = "typeid" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0e13db2e0ccd5e14a544e8a246ba2312cd25223f616442d7f2cb0e3db614236e" + +[[package]] +name = "typenum" +version = "1.17.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" + +[[package]] +name = "unicode-ident" +version = "1.0.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e91b56cd4cadaeb79bbf1a5645f6b4f8dc5bde8834ad5894a8db35fda9efa1fe" + +[[package]] +name = "unicode-segmentation" +version = "1.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f6ccf251212114b54433ec949fd6a7841275f9ada20dddd2f29e9ceea4501493" + +[[package]] +name = "unicode-width" +version = "0.1.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7dd6e30e90baa6f72411720665d41d89b9a3d039dc45b8faea1ddd07f617f6af" + +[[package]] +name = "unicode-xid" +version = "0.2.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ebc1c04c71510c7f702b52b7c350734c9ff1295c464a03335b00bb84fc54f853" + +[[package]] +name = "url" +version = "2.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8d157f1b96d14500ffdc1f10ba712e780825526c03d9a49b4d0324b0d9113ada" +dependencies = [ + "form_urlencoded", + "idna", + "percent-encoding", +] + +[[package]] +name = "utf16_iter" +version = "1.0.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c8232dd3cdaed5356e0f716d285e4b40b932ac434100fe9b7e0e8e935b9e6246" + +[[package]] +name = "utf8_iter" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6c140620e7ffbb22c2dee59cafe6084a59b5ffc27a8859a5f0d494b5d52b6be" + +[[package]] +name = "uuid" +version = "1.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8c5f0a0af699448548ad1a2fbf920fb4bee257eae39953ba95cb84891a0446a" +dependencies = [ + "getrandom", + "serde", +] + +[[package]] +name = "valuable" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d" + +[[package]] +name = "vec_map" +version = "0.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191" + +[[package]] +name = "version_check" +version = "0.9.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" + +[[package]] +name = "walkdir" +version = "2.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b" +dependencies = [ + "same-file", + "winapi-util", +] + +[[package]] +name = "wasi" +version = "0.11.0+wasi-snapshot-preview1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" + +[[package]] +name = "wasm-bindgen" +version = "0.2.95" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "128d1e363af62632b8eb57219c8fd7877144af57558fb2ef0368d0087bddeb2e" +dependencies = [ + "cfg-if", + "once_cell", + "wasm-bindgen-macro", +] + +[[package]] +name = "wasm-bindgen-backend" +version = "0.2.95" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cb6dd4d3ca0ddffd1dd1c9c04f94b868c37ff5fac97c30b97cff2d74fce3a358" +dependencies = [ + "bumpalo", + "log", + "once_cell", + "proc-macro2", + "quote", + "syn 2.0.87", + "wasm-bindgen-shared", +] + +[[package]] +name = "wasm-bindgen-futures" +version = "0.4.45" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cc7ec4f8827a71586374db3e87abdb5a2bb3a15afed140221307c3ec06b1f63b" +dependencies = [ + "cfg-if", + "js-sys", + "wasm-bindgen", + "web-sys", +] + +[[package]] +name = "wasm-bindgen-macro" +version = "0.2.95" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e79384be7f8f5a9dd5d7167216f022090cf1f9ec128e6e6a482a2cb5c5422c56" +dependencies = [ + "quote", + "wasm-bindgen-macro-support", +] + +[[package]] +name = "wasm-bindgen-macro-support" +version = "0.2.95" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "26c6ab57572f7a24a4985830b120de1594465e5d500f24afe89e16b4e833ef68" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.87", + "wasm-bindgen-backend", + "wasm-bindgen-shared", +] + +[[package]] +name = "wasm-bindgen-shared" +version = "0.2.95" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "65fc09f10666a9f147042251e0dda9c18f166ff7de300607007e96bdebc1068d" + +[[package]] +name = "wayland-backend" +version = "0.3.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "056535ced7a150d45159d3a8dc30f91a2e2d588ca0b23f70e56033622b8016f6" +dependencies = [ + "cc", + "downcast-rs", + "rustix", + "scoped-tls", + "smallvec", + "wayland-sys", +] + +[[package]] +name = "wayland-client" +version = "0.31.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b66249d3fc69f76fd74c82cc319300faa554e9d865dab1f7cd66cc20db10b280" +dependencies = [ + "bitflags 2.6.0", + "rustix", + "wayland-backend", + "wayland-scanner", +] + +[[package]] +name = "wayland-csd-frame" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "625c5029dbd43d25e6aa9615e88b829a5cad13b2819c4ae129fdbb7c31ab4c7e" +dependencies = [ + "bitflags 2.6.0", + "cursor-icon", + "wayland-backend", +] + +[[package]] +name = "wayland-cursor" +version = "0.31.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "32b08bc3aafdb0035e7fe0fdf17ba0c09c268732707dca4ae098f60cb28c9e4c" +dependencies = [ + "rustix", + "wayland-client", + "xcursor", +] + +[[package]] +name = "wayland-protocols" +version = "0.32.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7cd0ade57c4e6e9a8952741325c30bf82f4246885dca8bf561898b86d0c1f58e" +dependencies = [ + "bitflags 2.6.0", + "wayland-backend", + "wayland-client", + "wayland-scanner", +] + +[[package]] +name = "wayland-protocols-plasma" +version = "0.3.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9b31cab548ee68c7eb155517f2212049dc151f7cd7910c2b66abfd31c3ee12bd" +dependencies = [ + "bitflags 2.6.0", + "wayland-backend", + "wayland-client", + "wayland-protocols", + "wayland-scanner", +] + +[[package]] +name = "wayland-protocols-wlr" +version = "0.3.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "782e12f6cd923c3c316130d56205ebab53f55d6666b7faddfad36cecaeeb4022" +dependencies = [ + "bitflags 2.6.0", + "wayland-backend", + "wayland-client", + "wayland-protocols", + "wayland-scanner", +] + +[[package]] +name = "wayland-scanner" +version = "0.31.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "597f2001b2e5fc1121e3d5b9791d3e78f05ba6bfa4641053846248e3a13661c3" +dependencies = [ + "proc-macro2", + "quick-xml", + "quote", +] + +[[package]] +name = "wayland-sys" +version = "0.31.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "efa8ac0d8e8ed3e3b5c9fc92c7881406a268e11555abe36493efabe649a29e09" +dependencies = [ + "dlib", + "log", + "once_cell", + "pkg-config", +] + +[[package]] +name = "web-sys" +version = "0.3.72" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f6488b90108c040df0fe62fa815cbdee25124641df01814dd7282749234c6112" +dependencies = [ + "js-sys", + "wasm-bindgen", +] + +[[package]] +name = "web-time" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5a6580f308b1fad9207618087a65c04e7a10bc77e02c8e84e9b00dd4b12fa0bb" +dependencies = [ + "js-sys", + "wasm-bindgen", +] + +[[package]] +name = "webbrowser" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2e5f07fb9bc8de2ddfe6b24a71a75430673fd679e568c48b52716cef1cfae923" +dependencies = [ + "block2", + "core-foundation 0.10.0", + "home", + "jni", + "log", + "ndk-context", + "objc2", + "objc2-foundation", + "url", + "web-sys", +] + +[[package]] +name = "weezl" +version = "0.1.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "53a85b86a771b1c87058196170769dd264f66c0782acf1ae6cc51bfd64b39082" + +[[package]] +name = "wgpu" +version = "0.20.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "90e37c7b9921b75dfd26dd973fdcbce36f13dfa6e2dc82aece584e0ed48c355c" +dependencies = [ + "arrayvec", + "cfg-if", + "cfg_aliases 0.1.1", + "document-features", + "js-sys", + "log", + "naga", + "parking_lot", + "profiling", + "raw-window-handle", + "smallvec", + "static_assertions", + "wasm-bindgen", + "wasm-bindgen-futures", + "web-sys", + "wgpu-core", + "wgpu-hal", + "wgpu-types", +] + +[[package]] +name = "wgpu-core" +version = "0.21.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d50819ab545b867d8a454d1d756b90cd5f15da1f2943334ca314af10583c9d39" +dependencies = [ + "arrayvec", + "bit-vec", + "bitflags 2.6.0", + "cfg_aliases 0.1.1", + "codespan-reporting", + "document-features", + "indexmap", + "log", + "naga", + "once_cell", + "parking_lot", + "profiling", + "raw-window-handle", + "rustc-hash", + "smallvec", + "thiserror", + "web-sys", + "wgpu-hal", + "wgpu-types", +] + +[[package]] +name = "wgpu-hal" +version = "0.21.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "172e490a87295564f3fcc0f165798d87386f6231b04d4548bca458cbbfd63222" +dependencies = [ + "android_system_properties", + "arrayvec", + "ash", + "bit-set", + "bitflags 2.6.0", + "block", + "cfg_aliases 0.1.1", + "core-graphics-types", + "d3d12", + "glow", + "glutin_wgl_sys", + "gpu-alloc", + "gpu-allocator", + "gpu-descriptor", + "hassle-rs", + "js-sys", + "khronos-egl", + "libc", + "libloading 0.8.5", + "log", + "metal", + "naga", + "ndk-sys 0.5.0+25.2.9519653", + "objc", + "once_cell", + "parking_lot", + "profiling", + "range-alloc", + "raw-window-handle", + "renderdoc-sys", + "rustc-hash", + "smallvec", + "thiserror", + "wasm-bindgen", + "web-sys", + "wgpu-types", + "winapi", +] + +[[package]] +name = "wgpu-types" +version = "0.20.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1353d9a46bff7f955a680577f34c69122628cc2076e1d6f3a9be6ef00ae793ef" +dependencies = [ + "bitflags 2.6.0", + "js-sys", + "web-sys", +] + +[[package]] +name = "wide" +version = "0.7.28" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b828f995bf1e9622031f8009f8481a85406ce1f4d4588ff746d872043e855690" +dependencies = [ + "bytemuck", + "safe_arch", +] + +[[package]] +name = "widestring" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7219d36b6eac893fa81e84ebe06485e7dcbb616177469b142df14f1f4deb1311" + +[[package]] +name = "winapi" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" +dependencies = [ + "winapi-i686-pc-windows-gnu", + "winapi-x86_64-pc-windows-gnu", +] + +[[package]] +name = "winapi-i686-pc-windows-gnu" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" + +[[package]] +name = "winapi-util" +version = "0.1.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb" +dependencies = [ + "windows-sys 0.59.0", +] + +[[package]] +name = "winapi-x86_64-pc-windows-gnu" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" + +[[package]] +name = "windows" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e48a53791691ab099e5e2ad123536d0fff50652600abaf43bbf952894110d0be" +dependencies = [ + "windows-core 0.52.0", + "windows-targets 0.52.6", +] + +[[package]] +name = "windows" +version = "0.54.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9252e5725dbed82865af151df558e754e4a3c2c30818359eb17465f1346a1b49" +dependencies = [ + "windows-core 0.54.0", + "windows-implement 0.53.0", + "windows-interface 0.53.0", + "windows-targets 0.52.6", +] + +[[package]] +name = "windows" +version = "0.58.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dd04d41d93c4992d421894c18c8b43496aa748dd4c081bac0dc93eb0489272b6" +dependencies = [ + "windows-core 0.58.0", + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-core" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9" +dependencies = [ + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-core" +version = "0.54.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "12661b9c89351d684a50a8a643ce5f608e20243b9fb84687800163429f161d65" +dependencies = [ + "windows-result 0.1.2", + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-core" +version = "0.58.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6ba6d44ec8c2591c134257ce647b7ea6b20335bf6379a27dac5f1641fcf59f99" +dependencies = [ + "windows-implement 0.58.0", + "windows-interface 0.58.0", + "windows-result 0.2.0", + "windows-strings", + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-implement" +version = "0.53.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "942ac266be9249c84ca862f0a164a39533dc2f6f33dc98ec89c8da99b82ea0bd" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.87", +] + +[[package]] +name = "windows-implement" +version = "0.58.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2bbd5b46c938e506ecbce286b6628a02171d56153ba733b6c741fc627ec9579b" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.87", +] + +[[package]] +name = "windows-interface" +version = "0.53.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "da33557140a288fae4e1d5f8873aaf9eb6613a9cf82c3e070223ff177f598b60" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.87", +] + +[[package]] +name = "windows-interface" +version = "0.58.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "053c4c462dc91d3b1504c6fe5a726dd15e216ba718e84a0e46a88fbe5ded3515" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.87", +] + +[[package]] +name = "windows-result" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5e383302e8ec8515204254685643de10811af0ed97ea37210dc26fb0032647f8" +dependencies = [ + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-result" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d1043d8214f791817bab27572aaa8af63732e11bf84aa21a45a78d6c317ae0e" +dependencies = [ + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-strings" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4cd9b125c486025df0eabcb585e62173c6c9eddcec5d117d3b6e8c30e2ee4d10" +dependencies = [ + "windows-result 0.2.0", + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-sys" +version = "0.45.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0" +dependencies = [ + "windows-targets 0.42.2", +] + +[[package]] +name = "windows-sys" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" +dependencies = [ + "windows-targets 0.48.5", +] + +[[package]] +name = "windows-sys" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" +dependencies = [ + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-sys" +version = "0.59.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b" +dependencies = [ + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-targets" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071" +dependencies = [ + "windows_aarch64_gnullvm 0.42.2", + "windows_aarch64_msvc 0.42.2", + "windows_i686_gnu 0.42.2", + "windows_i686_msvc 0.42.2", + "windows_x86_64_gnu 0.42.2", + "windows_x86_64_gnullvm 0.42.2", + "windows_x86_64_msvc 0.42.2", +] + +[[package]] +name = "windows-targets" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" +dependencies = [ + "windows_aarch64_gnullvm 0.48.5", + "windows_aarch64_msvc 0.48.5", + "windows_i686_gnu 0.48.5", + "windows_i686_msvc 0.48.5", + "windows_x86_64_gnu 0.48.5", + "windows_x86_64_gnullvm 0.48.5", + "windows_x86_64_msvc 0.48.5", +] + +[[package]] +name = "windows-targets" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973" +dependencies = [ + "windows_aarch64_gnullvm 0.52.6", + "windows_aarch64_msvc 0.52.6", + "windows_i686_gnu 0.52.6", + "windows_i686_gnullvm", + "windows_i686_msvc 0.52.6", + "windows_x86_64_gnu 0.52.6", + "windows_x86_64_gnullvm 0.52.6", + "windows_x86_64_msvc 0.52.6", +] + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8" + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" + +[[package]] +name = "windows_i686_gnu" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f" + +[[package]] +name = "windows_i686_gnu" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" + +[[package]] +name = "windows_i686_gnu" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" + +[[package]] +name = "windows_i686_gnullvm" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" + +[[package]] +name = "windows_i686_msvc" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060" + +[[package]] +name = "windows_i686_msvc" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" + +[[package]] +name = "windows_i686_msvc" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" + +[[package]] +name = "winit" +version = "0.30.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0be9e76a1f1077e04a411f0b989cbd3c93339e1771cb41e71ac4aee95bfd2c67" +dependencies = [ + "ahash", + "android-activity", + "atomic-waker", + "bitflags 2.6.0", + "block2", + "bytemuck", + "calloop", + "cfg_aliases 0.2.1", + "concurrent-queue", + "core-foundation 0.9.4", + "core-graphics", + "cursor-icon", + "dpi", + "js-sys", + "libc", + "memmap2", + "ndk 0.9.0", + "objc2", + "objc2-app-kit", + "objc2-foundation", + "objc2-ui-kit", + "orbclient", + "percent-encoding", + "pin-project", + "raw-window-handle", + "redox_syscall 0.4.1", + "rustix", + "sctk-adwaita", + "smithay-client-toolkit", + "smol_str", + "tracing", + "unicode-segmentation", + "wasm-bindgen", + "wasm-bindgen-futures", + "wayland-backend", + "wayland-client", + "wayland-protocols", + "wayland-protocols-plasma", + "web-sys", + "web-time", + "windows-sys 0.52.0", + "x11-dl", + "x11rb", + "xkbcommon-dl", +] + +[[package]] +name = "winnow" +version = "0.6.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "36c1fec1a2bb5866f07c25f68c26e565c4c200aebb96d7e55710c19d3e8ac49b" +dependencies = [ + "memchr", +] + +[[package]] +name = "write16" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d1890f4022759daae28ed4fe62859b1236caebfc61ede2f63ed4e695f3f6d936" + +[[package]] +name = "writeable" +version = "0.5.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e9df38ee2d2c3c5948ea468a8406ff0db0b29ae1ffde1bcf20ef305bcc95c51" + +[[package]] +name = "x11-dl" +version = "2.21.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38735924fedd5314a6e548792904ed8c6de6636285cb9fec04d5b1db85c1516f" +dependencies = [ + "libc", + "once_cell", + "pkg-config", +] + +[[package]] +name = "x11rb" +version = "0.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5d91ffca73ee7f68ce055750bf9f6eca0780b8c85eff9bc046a3b0da41755e12" +dependencies = [ + "as-raw-xcb-connection", + "gethostname", + "libc", + "libloading 0.8.5", + "once_cell", + "rustix", + "x11rb-protocol", +] + +[[package]] +name = "x11rb-protocol" +version = "0.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec107c4503ea0b4a98ef47356329af139c0a4f7750e621cf2973cd3385ebcb3d" + +[[package]] +name = "xcursor" +version = "0.3.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0ef33da6b1660b4ddbfb3aef0ade110c8b8a781a3b6382fa5f2b5b040fd55f61" + +[[package]] +name = "xi-unicode" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a67300977d3dc3f8034dae89778f502b6ba20b269527b3223ba59c0cf393bb8a" + +[[package]] +name = "xkbcommon-dl" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d039de8032a9a8856a6be89cea3e5d12fdd82306ab7c94d74e6deab2460651c5" +dependencies = [ + "bitflags 2.6.0", + "dlib", + "log", + "once_cell", + "xkeysym", +] + +[[package]] +name = "xkeysym" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b9cc00251562a284751c9973bace760d86c0276c471b4be569fe6b068ee97a56" + +[[package]] +name = "xml-rs" +version = "0.8.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "af310deaae937e48a26602b730250b4949e125f468f11e6990be3e5304ddd96f" + +[[package]] +name = "yoke" +version = "0.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c5b1314b079b0930c31e3af543d8ee1757b1951ae1e1565ec704403a7240ca5" +dependencies = [ + "serde", + "stable_deref_trait", + "yoke-derive", + "zerofrom", +] + +[[package]] +name = "yoke-derive" +version = "0.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "28cc31741b18cb6f1d5ff12f5b7523e3d6eb0852bbbad19d73905511d9849b95" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.87", + "synstructure", +] + +[[package]] +name = "zerocopy" +version = "0.7.35" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0" +dependencies = [ + "byteorder", + "zerocopy-derive", +] + +[[package]] +name = "zerocopy-derive" +version = "0.7.35" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.87", +] + +[[package]] +name = "zerofrom" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "91ec111ce797d0e0784a1116d0ddcdbea84322cd79e5d5ad173daeba4f93ab55" +dependencies = [ + "zerofrom-derive", +] + +[[package]] +name = "zerofrom-derive" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0ea7b4a3637ea8669cedf0f1fd5c286a17f3de97b8dd5a70a6c167a1730e63a5" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.87", + "synstructure", +] + +[[package]] +name = "zerovec" +version = "0.10.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aa2b893d79df23bfb12d5461018d408ea19dfafe76c2c7ef6d4eba614f8ff079" +dependencies = [ + "yoke", + "zerofrom", + "zerovec-derive", +] + +[[package]] +name = "zerovec-derive" +version = "0.10.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6eafa6dfb17584ea3e2bd6e76e0cc15ad7af12b09abdd1ca55961bed9b1063c6" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.87", +] diff --git a/rust/Cargo.toml b/rust/Cargo.toml new file mode 100644 index 0000000..4d067d0 --- /dev/null +++ b/rust/Cargo.toml @@ -0,0 +1,11 @@ +[package] +name = "d6" +version = "0.1.0" +edition = "2021" + +[dependencies] +bevy = { version = "0.14.2", features = ["dynamic_linking"] } +blenvy = "0.1.0-alpha.1" +rand = "0.8.5" +avian3d = "0.1.2" +bevy_editor_pls = "0.10.0" diff --git a/rust/assets b/rust/assets new file mode 120000 index 0000000..ec2e4be --- /dev/null +++ b/rust/assets @@ -0,0 +1 @@ +../assets \ No newline at end of file diff --git a/rust/rustfmt.toml b/rust/rustfmt.toml new file mode 100644 index 0000000..768ff5c --- /dev/null +++ b/rust/rustfmt.toml @@ -0,0 +1,2 @@ +hard_tabs = true +max_width = 120 diff --git a/rust/src/main.rs b/rust/src/main.rs new file mode 100644 index 0000000..eb9b1bf --- /dev/null +++ b/rust/src/main.rs @@ -0,0 +1,86 @@ +#![allow(clippy::type_complexity)] + +use avian3d::prelude::*; +use bevy::{ + input::mouse::MouseMotion, + prelude::*, + window::{CursorGrabMode, PrimaryWindow}, +}; +use bevy_editor_pls::prelude::*; +use blenvy::{BlenvyPlugin, BlueprintInfo, GameWorldTag, SpawnBlueprint}; + +fn main() { + App::new() + .register_type::() + .add_plugins(( + DefaultPlugins.set(AssetPlugin::default()), + PhysicsPlugins::default(), + BlenvyPlugin::default(), + EditorPlugin::default(), + )) + .add_systems(Startup, startup) + .add_systems(Update, (update_player_mouse, update_player_keyboard)) + .run(); +} + +fn startup(mut commands: Commands) { + commands.spawn(( + BlueprintInfo::from_path("levels/Scene.glb"), + SpawnBlueprint, + GameWorldTag, + )); +} + +#[derive(Debug, Component, Reflect, Default)] +#[reflect(Component)] +pub struct PlayerController; + +const SENSITIVITY: f32 = 3.; +const SPEED: f32 = 10.; + +fn update_player_mouse( + mut evr_motion: EventReader, + mut window: Query<&mut Window, With>, + mut players: Query<&mut Transform, (With, With)>, +) { + if let Ok(mut window) = window.get_single_mut() { + window.cursor.grab_mode = CursorGrabMode::Locked; + window.cursor.visible = false; + } + + for ev in evr_motion.read() { + let x = ev.delta.x * (0.000_1 * SENSITIVITY); + let y = ev.delta.y * (0.000_1 * SENSITIVITY); + + for mut transform in &mut players { + transform.rotate_local_x(-y); + transform.rotate_y(-x); + } + } +} + +fn update_player_keyboard( + keyboard: Res>, + mut window: Query<&mut Window, With>, + mut players: Query<(&mut LinearVelocity, &Transform), (With, With)>, +) { + if let Ok(mut window) = window.get_single_mut() { + window.cursor.grab_mode = CursorGrabMode::Locked; + window.cursor.visible = false; + } + + let mut direction = Vec3::ZERO; + direction += keyboard.pressed(KeyCode::KeyW).then_some(-Vec3::Z).unwrap_or_default(); + direction += keyboard.pressed(KeyCode::KeyS).then_some(Vec3::Z).unwrap_or_default(); + direction += keyboard.pressed(KeyCode::KeyD).then_some(Vec3::X).unwrap_or_default(); + direction += keyboard.pressed(KeyCode::KeyA).then_some(-Vec3::X).unwrap_or_default(); + + for (mut velocity, transform) in &mut players { + let local_forw = transform.local_z(); + let local_side = transform.local_x(); + let new_vel = (local_side * direction.x) + (local_forw * direction.z); + let mut new_vel = new_vel * SPEED; + new_vel.y = velocity.y; + velocity.0 = new_vel; + } +}

%#ZS%=h!p#Tt=RO{GW?D59ZsmDBW4K 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