@dcl/protocol 1.0.0-22560904528.commit-203bb4a → 1.0.0-22576259823.commit-260e173

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (130) hide show
  1. package/out-js/decentraland/common/texture.gen.d.ts +18 -0
  2. package/out-js/decentraland/common/texture.gen.js +104 -4
  3. package/out-js/decentraland/common/texture.gen.js.map +1 -1
  4. package/out-js/decentraland/kernel/apis/restricted_actions.gen.d.ts +70 -0
  5. package/out-js/decentraland/kernel/apis/restricted_actions.gen.js +228 -1
  6. package/out-js/decentraland/kernel/apis/restricted_actions.gen.js.map +1 -1
  7. package/out-js/decentraland/kernel/comms/rfc4/comms.gen.d.ts +0 -46
  8. package/out-js/decentraland/kernel/comms/rfc4/comms.gen.js +12 -315
  9. package/out-js/decentraland/kernel/comms/rfc4/comms.gen.js.map +1 -1
  10. package/out-js/decentraland/sdk/components/avatar_equipped_data.gen.d.ts +2 -0
  11. package/out-js/decentraland/sdk/components/avatar_equipped_data.gen.js +19 -2
  12. package/out-js/decentraland/sdk/components/avatar_equipped_data.gen.js.map +1 -1
  13. package/out-js/decentraland/sdk/components/avatar_locomotion_settings.gen.d.ts +45 -0
  14. package/out-js/decentraland/sdk/components/avatar_locomotion_settings.gen.js +138 -0
  15. package/out-js/decentraland/sdk/components/avatar_locomotion_settings.gen.js.map +1 -0
  16. package/out-js/decentraland/sdk/components/avatar_modifier_area.gen.d.ts +41 -0
  17. package/out-js/decentraland/sdk/components/avatar_modifier_area.gen.js +241 -3
  18. package/out-js/decentraland/sdk/components/avatar_modifier_area.gen.js.map +1 -1
  19. package/out-js/decentraland/sdk/components/avatar_movement.gen.d.ts +34 -0
  20. package/out-js/decentraland/sdk/components/avatar_movement.gen.js +101 -0
  21. package/out-js/decentraland/sdk/components/avatar_movement.gen.js.map +1 -0
  22. package/out-js/decentraland/sdk/components/avatar_movement_info.gen.d.ts +44 -0
  23. package/out-js/decentraland/sdk/components/avatar_movement_info.gen.js +178 -0
  24. package/out-js/decentraland/sdk/components/avatar_movement_info.gen.js.map +1 -0
  25. package/out-js/decentraland/sdk/components/avatar_shape.gen.d.ts +2 -0
  26. package/out-js/decentraland/sdk/components/avatar_shape.gen.js +19 -1
  27. package/out-js/decentraland/sdk/components/avatar_shape.gen.js.map +1 -1
  28. package/out-js/decentraland/sdk/components/camera_mode_area.gen.d.ts +35 -1
  29. package/out-js/decentraland/sdk/components/camera_mode_area.gen.js +172 -3
  30. package/out-js/decentraland/sdk/components/camera_mode_area.gen.js.map +1 -1
  31. package/out-js/decentraland/sdk/components/common/input_action.gen.d.ts +3 -9
  32. package/out-js/decentraland/sdk/components/common/input_action.gen.js +17 -44
  33. package/out-js/decentraland/sdk/components/common/input_action.gen.js.map +1 -1
  34. package/out-js/decentraland/sdk/components/gltf_container_loading_state.gen.d.ts +19 -0
  35. package/out-js/decentraland/sdk/components/gltf_container_loading_state.gen.js +90 -3
  36. package/out-js/decentraland/sdk/components/gltf_container_loading_state.gen.js.map +1 -1
  37. package/out-js/decentraland/sdk/components/gltf_node.gen.d.ts +66 -0
  38. package/out-js/decentraland/sdk/components/gltf_node.gen.js +69 -0
  39. package/out-js/decentraland/sdk/components/gltf_node.gen.js.map +1 -0
  40. package/out-js/decentraland/sdk/components/gltf_node_state.gen.d.ts +43 -0
  41. package/out-js/decentraland/sdk/components/gltf_node_state.gen.js +122 -0
  42. package/out-js/decentraland/sdk/components/gltf_node_state.gen.js.map +1 -0
  43. package/out-js/decentraland/sdk/components/input_modifier.gen.d.ts +50 -0
  44. package/out-js/decentraland/sdk/components/input_modifier.gen.js +207 -0
  45. package/out-js/decentraland/sdk/components/input_modifier.gen.js.map +1 -0
  46. package/out-js/decentraland/sdk/components/material.gen.d.ts +20 -0
  47. package/out-js/decentraland/sdk/components/material.gen.js +86 -2
  48. package/out-js/decentraland/sdk/components/material.gen.js.map +1 -1
  49. package/out-js/decentraland/sdk/components/mesh_collider.gen.d.ts +18 -0
  50. package/out-js/decentraland/sdk/components/mesh_collider.gen.js +90 -4
  51. package/out-js/decentraland/sdk/components/mesh_collider.gen.js.map +1 -1
  52. package/out-js/decentraland/sdk/components/mesh_renderer.gen.d.ts +19 -3
  53. package/out-js/decentraland/sdk/components/mesh_renderer.gen.js +90 -4
  54. package/out-js/decentraland/sdk/components/mesh_renderer.gen.js.map +1 -1
  55. package/out-js/decentraland/sdk/components/pointer_events.gen.d.ts +1 -5
  56. package/out-js/decentraland/sdk/components/pointer_events.gen.js +3 -31
  57. package/out-js/decentraland/sdk/components/pointer_events.gen.js.map +1 -1
  58. package/out-js/decentraland/sdk/components/raycast.gen.d.ts +13 -0
  59. package/out-js/decentraland/sdk/components/raycast.gen.js +64 -2
  60. package/out-js/decentraland/sdk/components/raycast.gen.js.map +1 -1
  61. package/out-js/decentraland/sdk/components/tween.gen.d.ts +0 -36
  62. package/out-js/decentraland/sdk/components/tween.gen.js +6 -302
  63. package/out-js/decentraland/sdk/components/tween.gen.js.map +1 -1
  64. package/out-js/decentraland/sdk/components/ui_text.gen.d.ts +4 -0
  65. package/out-js/decentraland/sdk/components/ui_text.gen.js +30 -1
  66. package/out-js/decentraland/sdk/components/ui_text.gen.js.map +1 -1
  67. package/out-js/decentraland/sdk/components/ui_transform.gen.d.ts +33 -0
  68. package/out-js/decentraland/sdk/components/ui_transform.gen.js +176 -3
  69. package/out-js/decentraland/sdk/components/ui_transform.gen.js.map +1 -1
  70. package/out-js/decentraland/social_service/v2/social_service_v2.gen.d.ts +3 -0
  71. package/out-js/decentraland/social_service/v2/social_service_v2.gen.js +40 -2
  72. package/out-js/decentraland/social_service/v2/social_service_v2.gen.js.map +1 -1
  73. package/out-ts/decentraland/common/texture.gen.ts +119 -4
  74. package/out-ts/decentraland/kernel/apis/restricted_actions.gen.ts +242 -0
  75. package/out-ts/decentraland/kernel/comms/rfc4/comms.gen.ts +3 -375
  76. package/out-ts/decentraland/sdk/components/avatar_equipped_data.gen.ts +20 -1
  77. package/out-ts/decentraland/sdk/components/avatar_locomotion_settings.gen.ts +183 -0
  78. package/out-ts/decentraland/sdk/components/avatar_modifier_area.gen.ts +292 -1
  79. package/out-ts/decentraland/sdk/components/avatar_movement.gen.ts +119 -0
  80. package/out-ts/decentraland/sdk/components/avatar_movement_info.gen.ts +210 -0
  81. package/out-ts/decentraland/sdk/components/avatar_shape.gen.ts +23 -1
  82. package/out-ts/decentraland/sdk/components/camera_mode_area.gen.ts +218 -2
  83. package/out-ts/decentraland/sdk/components/common/input_action.gen.ts +16 -43
  84. package/out-ts/decentraland/sdk/components/gltf_container_loading_state.gen.ts +108 -2
  85. package/out-ts/decentraland/sdk/components/gltf_node.gen.ts +116 -0
  86. package/out-ts/decentraland/sdk/components/gltf_node_state.gen.ts +139 -0
  87. package/out-ts/decentraland/sdk/components/input_modifier.gen.ts +235 -0
  88. package/out-ts/decentraland/sdk/components/material.gen.ts +102 -1
  89. package/out-ts/decentraland/sdk/components/mesh_collider.gen.ts +99 -0
  90. package/out-ts/decentraland/sdk/components/mesh_renderer.gen.ts +100 -3
  91. package/out-ts/decentraland/sdk/components/pointer_events.gen.ts +3 -44
  92. package/out-ts/decentraland/sdk/components/raycast.gen.ts +73 -1
  93. package/out-ts/decentraland/sdk/components/tween.gen.ts +0 -333
  94. package/out-ts/decentraland/sdk/components/ui_text.gen.ts +40 -1
  95. package/out-ts/decentraland/sdk/components/ui_transform.gen.ts +193 -0
  96. package/out-ts/decentraland/social_service/v2/social_service_v2.gen.ts +44 -2
  97. package/package.json +7 -4
  98. package/proto/decentraland/common/texture.proto +8 -1
  99. package/proto/decentraland/kernel/apis/restricted_actions.proto +22 -0
  100. package/proto/decentraland/kernel/comms/rfc4/comms.proto +0 -29
  101. package/proto/decentraland/sdk/components/avatar_equipped_data.proto +2 -1
  102. package/proto/decentraland/sdk/components/avatar_modifier_area.proto +21 -0
  103. package/proto/decentraland/sdk/components/avatar_movement.proto +45 -0
  104. package/proto/decentraland/sdk/components/avatar_movement_info.proto +20 -0
  105. package/proto/decentraland/sdk/components/avatar_shape.proto +1 -0
  106. package/proto/decentraland/sdk/components/camera_layer.proto +30 -0
  107. package/proto/decentraland/sdk/components/camera_layers.proto +11 -0
  108. package/proto/decentraland/sdk/components/camera_mode_area.proto +22 -3
  109. package/proto/decentraland/sdk/components/common/input_action.proto +3 -7
  110. package/proto/decentraland/sdk/components/global_light.proto +22 -0
  111. package/proto/decentraland/sdk/components/gltf_container_loading_state.proto +13 -0
  112. package/proto/decentraland/sdk/components/gltf_node.proto +42 -0
  113. package/proto/decentraland/sdk/components/gltf_node_state.proto +20 -0
  114. package/proto/decentraland/sdk/components/light_source.proto +1 -1
  115. package/proto/decentraland/sdk/components/material.proto +13 -1
  116. package/proto/decentraland/sdk/components/mesh_collider.proto +7 -0
  117. package/proto/decentraland/sdk/components/mesh_renderer.proto +8 -3
  118. package/proto/decentraland/sdk/components/pointer_events.proto +0 -2
  119. package/proto/decentraland/sdk/components/primary_pointer_info.proto +5 -0
  120. package/proto/decentraland/sdk/components/raycast.proto +13 -0
  121. package/proto/decentraland/sdk/components/texture_camera.proto +46 -0
  122. package/proto/decentraland/sdk/components/tween.proto +0 -18
  123. package/proto/decentraland/sdk/components/ui_canvas.proto +16 -0
  124. package/proto/decentraland/sdk/components/ui_scroll_result.proto +12 -0
  125. package/proto/decentraland/sdk/components/ui_text.proto +3 -0
  126. package/proto/decentraland/sdk/components/ui_transform.proto +20 -0
  127. package/proto/decentraland/sdk/components/virtual_camera.proto +0 -2
  128. package/proto/decentraland/social_service/v2/social_service_v2.proto +3 -0
  129. package/public/sdk-components.proto +4 -0
  130. package/proto/decentraland/sdk/components/audio_analysis.proto +0 -44
@@ -0,0 +1,30 @@
1
+ syntax = "proto3";
2
+
3
+ package decentraland.sdk.components;
4
+
5
+ import "decentraland/sdk/components/common/id.proto";
6
+ import "decentraland/common/colors.proto";
7
+
8
+ option (common.ecs_component_id) = 1211;
9
+
10
+ message PBCameraLayer {
11
+ // layer to which these settings apply. must be > 0
12
+ // Layer 0 is the default "real world" layer viewed by the player and cannot be modified.
13
+ uint32 layer = 1;
14
+
15
+ // should the sun light affect this layer? default false
16
+ optional bool directional_light = 2;
17
+
18
+ // should this layer show player avatars? default false
19
+ optional bool show_avatars = 3;
20
+
21
+ // should this layer show the sky? default false
22
+ optional bool show_skybox = 4;
23
+
24
+ // should this layer show distance fog? default false
25
+ optional bool show_fog = 5;
26
+
27
+ // ambient light overrides for this layer. default -> use same as main camera
28
+ optional decentraland.common.Color3 ambient_color_override = 6;
29
+ optional float ambient_brightness_override = 7;
30
+ }
@@ -0,0 +1,11 @@
1
+ syntax = "proto3";
2
+
3
+ package decentraland.sdk.components;
4
+
5
+ import "decentraland/sdk/components/common/id.proto";
6
+
7
+ option (common.ecs_component_id) = 1208;
8
+
9
+ message PBCameraLayers {
10
+ repeated uint32 layers = 1;
11
+ }
@@ -9,7 +9,7 @@ import "decentraland/sdk/components/common/id.proto";
9
9
  option (common.ecs_component_id) = 1071;
10
10
 
11
11
  // The CameraModeArea component can be attached to an Entity to define a region of space where
12
- // the player's camera mode (1st-person or 3rd-person) is overridden.
12
+ // the player's camera mode (1st-person, 3rd-person or cinematic) is overridden.
13
13
  //
14
14
  // The Entity's Transform position determines the center-point of the region, while its size is
15
15
  // given as a vector in the `area` property below. The Transform rotation is applied, but the scale
@@ -19,7 +19,26 @@ option (common.ecs_component_id) = 1071;
19
19
  //
20
20
  // Note that, while commonly used to delineate a 2D area in a scene (hence the name), the region
21
21
  // is actually a 3D volume.
22
+ //
23
+ // When mode is set to CtCinematic, the cinematic_settings field must also be provided.
22
24
  message PBCameraModeArea {
23
- decentraland.common.Vector3 area = 1; // the 3D size of the region
24
- common.CameraType mode = 2; // the camera mode to enforce
25
+ decentraland.common.Vector3 area = 1; // the 3D size of the region
26
+ common.CameraType mode = 2; // the camera mode to enforce
27
+ optional CinematicSettings cinematic_settings = 3;
28
+ optional bool use_collider_range = 4; // if true, the player will be considered inside the area when they are within 0.3m of the area. default true
29
+ }
30
+
31
+ message CinematicSettings {
32
+ uint32 camera_entity = 1; // Entity that defines the cinematic camera transform.
33
+ // Position -> camera's position
34
+ // Rotation -> camera's direction
35
+ // scale.z -> zoom level
36
+ // scale.x and scale.y -> unused
37
+ optional bool allow_manual_rotation = 2; // whether the user can move the camera's rotation. default false
38
+ optional float yaw_range = 3; // how far the camera can rotate around the y-axis / look left/right, in radians. default unrestricted
39
+ optional float pitch_range = 4; // how far the camera can rotate around the x-axis / look up-down, in radians. default unrestricted
40
+ // note: cameras can never look up/down further than Vec3::Y
41
+ optional float roll_range = 5; // how far the camera can rotate around the z-axis / tilt, in radians. default unrestricted
42
+ optional float zoom_min = 6; // minimum zoom level. must be greater than 0. defaults to the input zoom level
43
+ optional float zoom_max = 7; // maximum zoom level. must be greater than 0. defaults to the input zoom level
25
44
  }
@@ -26,11 +26,7 @@ enum PointerEventType {
26
26
  PET_DOWN = 1;
27
27
  PET_HOVER_ENTER = 2;
28
28
  PET_HOVER_LEAVE = 3;
29
- PET_PROXIMITY_ENTER = 4;
30
- PET_PROXIMITY_LEAVE = 5;
31
- }
32
-
33
- enum InteractionType {
34
- CURSOR = 0;
35
- PROXIMITY = 1;
29
+ PET_DRAG_LOCKED = 4;
30
+ PET_DRAG = 5;
31
+ PET_DRAG_END = 6;
36
32
  }
@@ -0,0 +1,22 @@
1
+ syntax = "proto3";
2
+ package decentraland.sdk.components;
3
+
4
+ import "decentraland/common/colors.proto";
5
+ import "decentraland/common/vectors.proto";
6
+
7
+ import "decentraland/sdk/components/common/id.proto";
8
+ option (common.ecs_component_id) = 1206;
9
+
10
+ // defines the global scene light settings. must be added to the scene root.
11
+ // to control sunlight color, intensity, shadows etc, you can also add a PBLight to the scene root.
12
+ message PBGlobalLight {
13
+ // the direction the directional light shines in.
14
+ // default depends on time of day and explorer implementation
15
+ optional decentraland.common.Vector3 direction = 1;
16
+ // ambient light color
17
+ // default: White
18
+ optional decentraland.common.Color3 ambient_color = 2;
19
+ // ambient light intensity. the explorer default ambient brightness is multiplied by this non-physical quantity.
20
+ // default 1
21
+ optional float ambient_brightness = 3;
22
+ }
@@ -10,4 +10,17 @@ import "decentraland/sdk/components/common/loading_state.proto";
10
10
  // the current state of the GltfContainer of an entity.
11
11
  message PBGltfContainerLoadingState {
12
12
  common.LoadingState current_state = 1;
13
+ repeated string node_paths = 2; // all node paths in the gltf, which can be used with a GltfNode to inspect and modify the gltf contents
14
+ repeated string mesh_names = 3; // all meshes in the gltf. unnamed meshes will be auto-assigned a name of the form `MeshX` or `MeshX/PrimitiveY`
15
+ // where X is the mesh index and Y is the primitive index (and there is more than 1 primitive). note this may
16
+ // conflict with manually named meshes - to avoid any issues make sure all your meshes are explicitly named.
17
+ repeated string material_names = 4; // all materials in the gltf. unnamed materials will be auto-assigned a name of the form `MaterialX` where
18
+ // X is the material index. note this may conflict with manually named materials - to avoid any issues make
19
+ // sure all your materials are explicitly named.
20
+ repeated string skin_names = 5; // all mesh skins in the gltf. unnamed skins will be auto-assigned a name of the form `SkinX` where
21
+ // X is the skin index. note this may conflict with manually named skins - to avoid any issues make sure all
22
+ // your skins are explicitly named.
23
+ repeated string animation_names = 6; // all animations in the gltf. unnamed animations will be auto-assigned a name of the form `AnimationX` where
24
+ // X is the animation index. note this may conflict with manually named anims - to avoid any issues make sure all
25
+ // your animations are explicitly named.
13
26
  }
@@ -0,0 +1,42 @@
1
+ syntax = "proto3";
2
+ package decentraland.sdk.components;
3
+
4
+ import "decentraland/sdk/components/common/id.proto";
5
+ option (common.ecs_component_id) = 1200;
6
+
7
+ // a GltfNode links a scene entity with a node from within a gltf, allowing the scene to inspect it or modify it.
8
+ // This component must be added to a direct child of an entity with a PBGltfContainer component, or
9
+ // to a direct child of another entity with a GltfNode component, and the referenced gltf node must be a descendent of the gltf node
10
+ // in the parent.
11
+ // The name must match the path of one of the nodes within the Gltf. These are available on the GltfContainerLoadingState component.
12
+ //
13
+ // The renderer will attach a PBGltfNodeState to the entity describing the state. Once the state is `GNS_READY`,
14
+ // - the `Transform` will be updated to match the position of the node within the gltf (relative to the gltf root, or the parent node),
15
+ // - a `MeshRenderer` with a GltfMesh mesh type will be added (if the gltf node has a mesh).
16
+ // - a `MeshCollider` with a GltfMesh mesh type will be added (if the gltf node has a collider).
17
+ // - a `Material` component including a GltfMaterial reference will be added (if the gltf node has a material).
18
+ //
19
+ // After creation, if an animation moves the node, the `Transform` will be updated.
20
+ //
21
+ // From the scene, you can modify various components to alter the gltf node:
22
+ // - modifying the `Transform` position/rotation/scale will move the node. The position is interpreted relative to the gltf root (or parent node),
23
+ // regardless of any intermediate gltf node hierarchy.
24
+ // If an animation is playing, the animation takes priority and the scene entity's position will be updated to match the animation.
25
+ // - `Visibility` can be added to hide or show the node and it's children in the gltf hierarchy.
26
+ // - `MeshRenderer` can be added/modified/removed to create/modify/remove a mesh on the node.
27
+ // - `MeshCollider` can be added/modified/removed to create/modify/remove a collider on the node.
28
+ // - `Material` can be added or modified to change the material properties. If the gltf node has a material, the original material will be
29
+ // used as a base, and any gltf features (e.g. occlusion maps) from the gtlf spec that the renderer supports but that are not exposed in the
30
+ // PBMaterial will be maintained.
31
+ //
32
+ // The scene can add additional entities as children to the gltf node, but structural modifications of the gltf are not possible:
33
+ // - changing the scene hierarchy will not change the gltf node hierarchy. Moving the entity out of the gltf will sever the link and
34
+ // change the state to `GNS_FAILED`.
35
+ // - deleting the scene entity will not delete the gltf node.
36
+ //
37
+ // Removing the GltfNode will revert any changes to the original gltf. If the GltfNode component is removed and the mesh/collider/material
38
+ // are not removed, this will result in a duplication of these components as the previously-linked entity will retain it's components and
39
+ // the gltf node will also be displayed.
40
+ message PBGltfNode {
41
+ string path = 1; // the path of the target node in the Gltf.
42
+ }
@@ -0,0 +1,20 @@
1
+ syntax = "proto3";
2
+ package decentraland.sdk.components;
3
+
4
+ import "decentraland/sdk/components/common/id.proto";
5
+ option (common.ecs_component_id) = 1201;
6
+
7
+ // See the details of the GltfNode component for more information.
8
+
9
+ // The state of a linked gltf node.
10
+ // If the state is GNSV_FAILED, the renderer may describe the failure in the error string.
11
+ message PBGltfNodeState {
12
+ GltfNodeStateValue state = 1;
13
+ optional string error = 2;
14
+ }
15
+
16
+ enum GltfNodeStateValue {
17
+ GNSV_PENDING = 0;
18
+ GNSV_FAILED = 1;
19
+ GNSV_READY = 2;
20
+ }
@@ -25,4 +25,4 @@ message PBLightSource {
25
25
  optional float inner_angle = 9; // default = 21.8. Inner angle can't be higher than outer angle, otherwise will default to same value. Min value is 0. Max value is 179.
26
26
  optional float outer_angle = 10; // default = 30. Outer angle can't be lower than inner angle, otherwise will inner angle will be set to same value. Max value is 179.
27
27
  }
28
- }
28
+ }
@@ -54,4 +54,16 @@ message PBMaterial {
54
54
  UnlitMaterial unlit = 1;
55
55
  PbrMaterial pbr = 2;
56
56
  }
57
- }
57
+
58
+ message GltfMaterial {
59
+ string gltf_src = 1;
60
+ string name = 2;
61
+ }
62
+
63
+ // A gltf material that may provide additional features not supported by the PbMaterial fields.
64
+ // If both gltf and material fields are provided, the gltf will be used only for extended features not
65
+ // supported by the PbMaterial.
66
+ // If this is provided and the `material` field is not provided, the renderer will update the material
67
+ // field with data that reflects the gltf material once it is loaded.
68
+ optional GltfMaterial gltf = 3;
69
+ }
@@ -30,6 +30,12 @@ message PBMeshCollider {
30
30
  // SphereMesh is a sphere shape that contains the Entity.
31
31
  message SphereMesh {}
32
32
 
33
+ // A collider constructed from a Gltf Mesh.
34
+ message GltfMesh {
35
+ string gltf_src = 1; // the GLTF file path as listed in the scene's manifest.
36
+ string name = 2; // the name of the mesh asset
37
+ }
38
+
33
39
  optional uint32 collision_mask = 1; // enabled ColliderLayers (default CL_POINTER | CL_PHYSICS)
34
40
 
35
41
  oneof mesh {
@@ -37,6 +43,7 @@ message PBMeshCollider {
37
43
  SphereMesh sphere = 3;
38
44
  CylinderMesh cylinder = 4;
39
45
  PlaneMesh plane = 5;
46
+ GltfMesh gltf = 6;
40
47
  }
41
48
  }
42
49
 
@@ -5,13 +5,11 @@ import "decentraland/sdk/components/common/id.proto";
5
5
  option (common.ecs_component_id) = 1018;
6
6
 
7
7
  // The MeshRenderer component renders a basic geometric shape for an Entity. It can be a cube, a
8
- // plane, a sphere or a cylinder.
8
+ // plane, a sphere, a cylinder, or a Gltf mesh.
9
9
  //
10
10
  // The cube and plane variants can include a UV texture mapping, so specific areas of a material
11
11
  // texture are rendered on different faces of the shape. They are serialized as a sequence of 2D
12
12
  // `float` coordinates, one for each corner of each side of each face.
13
- //
14
- // More complex shapes require the use of a `GltfContainer` component.
15
13
  message PBMeshRenderer {
16
14
 
17
15
  // BoxMesh renders a prism shape.
@@ -34,10 +32,17 @@ message PBMeshRenderer {
34
32
  message SphereMesh {
35
33
  }
36
34
 
35
+ // A mesh from a Gltf.
36
+ message GltfMesh {
37
+ string gltf_src = 1; // the GLTF file path as listed in the scene's manifest.
38
+ string name = 2; // the name of the mesh asset
39
+ }
40
+
37
41
  oneof mesh {
38
42
  BoxMesh box = 1;
39
43
  SphereMesh sphere = 2;
40
44
  CylinderMesh cylinder = 3;
41
45
  PlaneMesh plane = 4;
46
+ GltfMesh gltf = 5;
42
47
  }
43
48
  }
@@ -51,13 +51,11 @@ message PBPointerEvents {
51
51
  optional bool show_feedback = 4; // enable or disable hover text and highlight (default true)
52
52
  optional bool show_highlight = 5; // enable or disable hover highlight (default true)
53
53
  optional float max_player_distance = 6; // range of interaction from the avatar's position (default 0)
54
- optional uint32 priority = 7; // resolution order when multiple events overlap, higher wins (default 0)
55
54
  }
56
55
 
57
56
  message Entry {
58
57
  common.PointerEventType event_type = 1; // the kind of interaction to detect
59
58
  Info event_info = 2; // additional configuration for this detection
60
- optional common.InteractionType interaction_type = 3; // the type of interaction source (default 0 == CURSOR)
61
59
  }
62
60
 
63
61
  repeated Entry pointer_events = 1; // the list of relevant events to detect
@@ -28,6 +28,8 @@ message PBPrimaryPointerInfo {
28
28
  optional PointerType pointer_type = 1; // The type of input device being used
29
29
  optional decentraland.common.Vector2 screen_coordinates = 2; // Current position in screen space (pixels)
30
30
  optional decentraland.common.Vector2 screen_delta = 3; // Movement since last frame (pixels)
31
+ // ray direction that can be used with the primary camera origin for
32
+ // raycasting from the cursor into the world
31
33
  optional decentraland.common.Vector3 world_ray_direction = 4; // Direction vector for 3D ray casting
32
34
  }
33
35
 
@@ -36,4 +38,7 @@ message PBPrimaryPointerInfo {
36
38
  enum PointerType {
37
39
  POT_NONE = 0; // No pointer input
38
40
  POT_MOUSE = 1; // Traditional mouse input
41
+ POT_PAD = 2;
42
+ POT_TOUCH = 3;
43
+ POT_WAND = 4;
39
44
  }
@@ -45,6 +45,12 @@ message PBRaycast {
45
45
 
46
46
  // Collision mask, by default CL_POINTER | CL_PHYSICS
47
47
  optional uint32 collision_mask = 9;
48
+
49
+ // shape to cast, default ray
50
+ optional RaycastShape shape = 11;
51
+
52
+ // include hits with entities from other scenes
53
+ optional bool include_world = 12;
48
54
  }
49
55
 
50
56
  // RaycastQueryType indicates whether the ray should stop on the first collition, or continue.
@@ -56,3 +62,10 @@ enum RaycastQueryType {
56
62
  // Do not perform the raycast, only set the raycast result with empty hits
57
63
  RQT_NONE = 2;
58
64
  }
65
+
66
+ enum RaycastShape {
67
+ // cast a point, get collisions along a ray
68
+ RS_RAY = 0;
69
+ // cast the avatar collider shape, get collisions from sweeping the shape
70
+ RS_AVATAR = 1;
71
+ }
@@ -0,0 +1,46 @@
1
+ syntax = "proto3";
2
+
3
+ package decentraland.sdk.components;
4
+
5
+ import "decentraland/sdk/components/common/id.proto";
6
+ import "decentraland/common/colors.proto";
7
+
8
+ option (common.ecs_component_id) = 1207;
9
+
10
+ message PBTextureCamera {
11
+ // rendered texture width
12
+ optional uint32 width = 1;
13
+ // rendered texture height
14
+ optional uint32 height = 2;
15
+ // which layer of entities to render. entity layers can be specified by adding PBCameraLayers to target entities.
16
+ // defaults to 0
17
+ optional uint32 layer = 3;
18
+
19
+ // default black
20
+ optional decentraland.common.Color4 clear_color = 6;
21
+ // default infinity
22
+ optional float far_plane = 7;
23
+
24
+ oneof mode {
25
+ Perspective perspective = 8;
26
+ Orthographic orthographic = 9;
27
+ /* Portal portal = 10; */
28
+ };
29
+
30
+ // controls whether this camera acts as a receiver for audio on sources with matching `PBCameraLayers`.
31
+ // range: 0 (off) - 1 (full volume)
32
+ // default: 0
33
+ optional float volume = 10;
34
+ }
35
+
36
+ message Perspective {
37
+ // vertical field of view in radians
38
+ // defaults to pi/4 = 45 degrees
39
+ optional float field_of_view = 1;
40
+ }
41
+
42
+ message Orthographic {
43
+ // vertical extent of the visible range in meters
44
+ // defaults to 4m
45
+ optional float vertical_range = 1;
46
+ }
@@ -19,8 +19,6 @@ message PBTween {
19
19
  RotateContinuous rotate_continuous = 9;
20
20
  MoveContinuous move_continuous = 10;
21
21
  TextureMoveContinuous texture_move_continuous = 11;
22
- MoveRotateScale move_rotate_scale = 12;
23
- MoveRotateScaleContinuous move_rotate_scale_continuous = 13;
24
22
  }
25
23
 
26
24
  optional bool playing = 6; // default true (pause or running)
@@ -43,15 +41,6 @@ message Scale {
43
41
  decentraland.common.Vector3 end = 2;
44
42
  }
45
43
 
46
- message MoveRotateScale {
47
- decentraland.common.Vector3 position_start = 1;
48
- decentraland.common.Vector3 position_end = 2;
49
- decentraland.common.Quaternion rotation_start = 3;
50
- decentraland.common.Quaternion rotation_end = 4;
51
- decentraland.common.Vector3 scale_start = 5;
52
- decentraland.common.Vector3 scale_end = 6;
53
- }
54
-
55
44
  // This tween mode allows to move the texture of a PbrMaterial or UnlitMaterial.
56
45
  // You can also specify the movement type (offset or tiling)
57
46
  message TextureMove {
@@ -70,13 +59,6 @@ message MoveContinuous {
70
59
  float speed = 2;
71
60
  }
72
61
 
73
- message MoveRotateScaleContinuous {
74
- decentraland.common.Vector3 position_direction = 1;
75
- decentraland.common.Quaternion rotation_direction = 2;
76
- decentraland.common.Vector3 scale_direction = 3;
77
- float speed = 4;
78
- }
79
-
80
62
  message TextureMoveContinuous {
81
63
  decentraland.common.Vector2 direction = 1;
82
64
  float speed = 2;
@@ -0,0 +1,16 @@
1
+ syntax = "proto3";
2
+
3
+ import "decentraland/sdk/components/common/id.proto";
4
+ package decentraland.sdk.components;
5
+
6
+ option (common.ecs_component_id) = 1203;
7
+
8
+ import "decentraland/common/colors.proto";
9
+
10
+ // The UiCanvas component can be attached to a ui root entity to specify properties of the ui texture.
11
+ message PBUiCanvas {
12
+ uint32 width = 1;
13
+ uint32 height = 2;
14
+
15
+ optional decentraland.common.Color4 color = 3; // default = (0.0, 0.0, 0.0, 0.0) / transparent
16
+ }
@@ -0,0 +1,12 @@
1
+ syntax = "proto3";
2
+
3
+ package decentraland.sdk.components;
4
+
5
+ import "decentraland/sdk/components/common/id.proto";
6
+ import "decentraland/common/vectors.proto";
7
+
8
+ option (common.ecs_component_id) = 1202;
9
+
10
+ message PBUiScrollResult {
11
+ decentraland.common.Vector2 value = 1;
12
+ }
@@ -23,4 +23,7 @@ message PBUiText {
23
23
  optional common.Font font = 4; // font for the text (default: sans-serif)
24
24
  optional int32 font_size = 5; // size of the text (default: 10)
25
25
  optional TextWrap text_wrap = 6; // wrap text when the border is reached (default: TW_WRAP)
26
+
27
+ optional float outline_width = 7; // width of the outline (default: 0)
28
+ optional decentraland.common.Color4 outline_color = 8; // RGBA color of the outline (default: opaque black)
26
29
  }
@@ -4,6 +4,7 @@ package decentraland.sdk.components;
4
4
 
5
5
  import "decentraland/sdk/components/common/id.proto";
6
6
  import "decentraland/common/colors.proto";
7
+ import "decentraland/common/vectors.proto";
7
8
 
8
9
  option (common.ecs_component_id) = 1050;
9
10
 
@@ -80,6 +81,20 @@ enum PointerFilterMode {
80
81
  PFM_BLOCK = 1;
81
82
  }
82
83
 
84
+ enum ShowScrollBar {
85
+ SSB_BOTH = 0;
86
+ SSB_ONLY_VERTICAL = 1;
87
+ SSB_ONLY_HORIZONTAL = 2;
88
+ SSB_HIDDEN = 3;
89
+ }
90
+
91
+ message ScrollPositionValue {
92
+ oneof value {
93
+ decentraland.common.Vector2 position = 1;
94
+ string reference = 2;
95
+ }
96
+ }
97
+
83
98
  message PBUiTransform {
84
99
  int32 parent = 1;
85
100
  int32 right_of = 2;
@@ -174,5 +189,10 @@ message PBUiTransform {
174
189
  optional decentraland.common.Color4 border_right_color = 72;
175
190
 
176
191
  optional float opacity = 73; // default: 1
192
+
193
+ optional string element_id = 74; // reference for scroll_position. default empty
194
+ optional ScrollPositionValue scroll_position = 75; // default position=(0,0)
195
+ optional ShowScrollBar scroll_visible = 76; // default ShowScrollBar.SSB_BOTH
196
+
177
197
  optional int32 z_index = 77; // default: 0 — controls render stacking order. Higher values appear in front of lower values.
178
198
  }
@@ -10,9 +10,7 @@ option (common.ecs_component_id) = 1076;
10
10
  // an 'instant' transition (like using speed/time = 0)
11
11
  // * The lookAtEntity defines to which entity the Camera has to look at constantly (independent from
12
12
  // the holding entity transform).
13
- // * The fov defines the Field of View of the virtual camera
14
13
  message PBVirtualCamera {
15
14
  optional common.CameraTransition default_transition = 1;
16
15
  optional uint32 look_at_entity = 2;
17
- optional float fov = 3; // default: 60
18
16
  }
@@ -2,6 +2,7 @@ syntax = "proto3";
2
2
  package decentraland.social_service.v2;
3
3
 
4
4
  import "google/protobuf/empty.proto";
5
+ import "decentraland/common/colors.proto";
5
6
  import "decentraland/social_service/errors.proto";
6
7
 
7
8
  // Types
@@ -12,6 +13,7 @@ message FriendProfile {
12
13
  string name = 2;
13
14
  bool has_claimed_name = 3;
14
15
  string profile_picture_url = 4;
16
+ optional decentraland.common.Color3 name_color = 5;
15
17
  }
16
18
 
17
19
  message BlockedUserProfile {
@@ -20,6 +22,7 @@ message BlockedUserProfile {
20
22
  bool has_claimed_name = 3;
21
23
  string profile_picture_url = 4;
22
24
  optional int64 blocked_at = 5;
25
+ optional decentraland.common.Color3 name_color = 6;
23
26
  }
24
27
 
25
28
  message Pagination {
@@ -9,6 +9,8 @@ import public "decentraland/sdk/components/avatar_base.proto";
9
9
  import public "decentraland/sdk/components/avatar_emote_command.proto";
10
10
  import public "decentraland/sdk/components/avatar_equipped_data.proto";
11
11
  import public "decentraland/sdk/components/avatar_modifier_area.proto";
12
+ import public "decentraland/sdk/components/avatar_movement.proto";
13
+ import public "decentraland/sdk/components/avatar_movement_info.proto";
12
14
  import public "decentraland/sdk/components/avatar_shape.proto";
13
15
  import public "decentraland/sdk/components/billboard.proto";
14
16
  import public "decentraland/sdk/components/camera_mode_area.proto";
@@ -17,6 +19,8 @@ import public "decentraland/sdk/components/engine_info.proto";
17
19
  import public "decentraland/sdk/components/gltf_container.proto";
18
20
  import public "decentraland/sdk/components/gltf_node_modifiers.proto";
19
21
  import public "decentraland/sdk/components/gltf_container_loading_state.proto";
22
+ import public "decentraland/sdk/components/gltf_node.proto";
23
+ import public "decentraland/sdk/components/gltf_node_state.proto";
20
24
  import public "decentraland/sdk/components/material.proto";
21
25
  import public "decentraland/sdk/components/mesh_collider.proto";
22
26
  import public "decentraland/sdk/components/mesh_renderer.proto";
@@ -1,44 +0,0 @@
1
- syntax = "proto3";
2
- package decentraland.sdk.components;
3
-
4
- import "decentraland/sdk/components/common/id.proto";
5
- option (common.ecs_component_id) = 1212;
6
-
7
- enum PBAudioAnalysisMode {
8
- MODE_RAW = 0;
9
- MODE_LOGARITHMIC = 1;
10
- }
11
-
12
- message PBAudioAnalysis {
13
-
14
- // Parameters section
15
- PBAudioAnalysisMode mode = 1;
16
-
17
- // Used only when mode == MODE_LOGARITHMIC
18
- optional float amplitude_gain = 100;
19
- optional float bands_gain = 101;
20
- // End when mode == MODE_LOGARITHMIC
21
-
22
- // End Parameters section
23
-
24
- // Result section
25
- float amplitude = 200;
26
-
27
- // Protobuf doesn't support fixed arrays -> 8 band fields
28
- float band_0 = 201;
29
- float band_1 = 202;
30
- float band_2 = 203;
31
- float band_3 = 204;
32
- float band_4 = 205;
33
- float band_5 = 206;
34
- float band_6 = 207;
35
- float band_7 = 208;
36
-
37
- // End Result section
38
-
39
- // Future fields
40
- // float spectral_centroid = 13;
41
- // float spectral_flux = 14;
42
- // bool onset = 15;
43
- // float bpm = 16;
44
- }