diff options
author | metamuffin <metamuffin@disroot.org> | 2025-01-04 21:01:06 +0100 |
---|---|---|
committer | metamuffin <metamuffin@disroot.org> | 2025-01-04 21:01:06 +0100 |
commit | 2c1d8fdfd65ceb9361114f0105c23ff6a94bac2e (patch) | |
tree | 377b3c0928647ed9e4723e3175913df2929e24fd /a.md | |
download | weareserver-2c1d8fdfd65ceb9361114f0105c23ff6a94bac2e.tar weareserver-2c1d8fdfd65ceb9361114f0105c23ff6a94bac2e.tar.bz2 weareserver-2c1d8fdfd65ceb9361114f0105c23ff6a94bac2e.tar.zst |
a
Diffstat (limited to 'a.md')
-rw-r--r-- | a.md | 66 |
1 files changed, 66 insertions, 0 deletions
@@ -0,0 +1,66 @@ +## Protocol packets + +```rs +type Obj = u128 +type Res = u128 +01 request_resource(name: Res) +02 respond_resource(name: Res, data: Vec<u8>) +03 add(id: Obj, prefab: Res) +04 remove(id: Obj) +05 position(id: Obj, pos: Vec3) +06 pose(id: Obj, params: Vec<f32>) +07 parent(parent: Obj, child: Obj) +08 sound(id: Obj, data: Vec<u8>) +``` + +## Resource formats + +### Prefab + +```ts +type Prefab = Part[]; +``` + +### Part + +```ts +type Part = { + mesh?: Mesh; + armature?: Armature; + fragment_shader?: Shader; + fragment_shader_data?: ShaderData; + vertex_shader?: Shader; + vertex_shader_data?: ShaderData; + texture?: Texture; +}; +``` + +### Mesh + +``` +[vertex count:u32] [index count:u32] ([x:f32] [y:f32] [z:f32] [u:f32] [v:f32])* ([n:u32])* +``` + +### Texture + +WebP + +### Shader + +glsl source, todo + +### ShaderData + +``` +([param:f32])* +``` + +## Player tree + +- LowerTorso (2x leg tilt) + - FootL + - FootR + - UpperTorso (2x arm tilt) + - HandL (5x finger, 5x tilt) + - HandR (5x finger, 5x tilt) + - Head (2x brow, 2x eyelid, 2x eye, 3x mouth) |