@dcl/protocol 1.0.0-21671196520.commit-ca94ea2 → 1.0.0-22309435573.commit-a48721e

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 (105) 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/sdk/components/avatar_equipped_data.gen.d.ts +2 -0
  8. package/out-js/decentraland/sdk/components/avatar_equipped_data.gen.js +19 -2
  9. package/out-js/decentraland/sdk/components/avatar_equipped_data.gen.js.map +1 -1
  10. package/out-js/decentraland/sdk/components/avatar_modifier_area.gen.d.ts +41 -0
  11. package/out-js/decentraland/sdk/components/avatar_modifier_area.gen.js +241 -3
  12. package/out-js/decentraland/sdk/components/avatar_modifier_area.gen.js.map +1 -1
  13. package/out-js/decentraland/sdk/components/avatar_movement.gen.d.ts +34 -0
  14. package/out-js/decentraland/sdk/components/avatar_movement.gen.js +101 -0
  15. package/out-js/decentraland/sdk/components/avatar_movement.gen.js.map +1 -0
  16. package/out-js/decentraland/sdk/components/avatar_movement_info.gen.d.ts +40 -0
  17. package/out-js/decentraland/sdk/components/avatar_movement_info.gen.js +135 -0
  18. package/out-js/decentraland/sdk/components/avatar_movement_info.gen.js.map +1 -0
  19. package/out-js/decentraland/sdk/components/avatar_shape.gen.d.ts +2 -0
  20. package/out-js/decentraland/sdk/components/avatar_shape.gen.js +19 -1
  21. package/out-js/decentraland/sdk/components/avatar_shape.gen.js.map +1 -1
  22. package/out-js/decentraland/sdk/components/camera_mode_area.gen.d.ts +35 -1
  23. package/out-js/decentraland/sdk/components/camera_mode_area.gen.js +172 -3
  24. package/out-js/decentraland/sdk/components/camera_mode_area.gen.js.map +1 -1
  25. package/out-js/decentraland/sdk/components/common/input_action.gen.d.ts +4 -0
  26. package/out-js/decentraland/sdk/components/common/input_action.gen.js +24 -0
  27. package/out-js/decentraland/sdk/components/common/input_action.gen.js.map +1 -1
  28. package/out-js/decentraland/sdk/components/gltf_container_loading_state.gen.d.ts +19 -0
  29. package/out-js/decentraland/sdk/components/gltf_container_loading_state.gen.js +90 -3
  30. package/out-js/decentraland/sdk/components/gltf_container_loading_state.gen.js.map +1 -1
  31. package/out-js/decentraland/sdk/components/gltf_node.gen.d.ts +66 -0
  32. package/out-js/decentraland/sdk/components/gltf_node.gen.js +69 -0
  33. package/out-js/decentraland/sdk/components/gltf_node.gen.js.map +1 -0
  34. package/out-js/decentraland/sdk/components/gltf_node_state.gen.d.ts +43 -0
  35. package/out-js/decentraland/sdk/components/gltf_node_state.gen.js +122 -0
  36. package/out-js/decentraland/sdk/components/gltf_node_state.gen.js.map +1 -0
  37. package/out-js/decentraland/sdk/components/material.gen.d.ts +20 -0
  38. package/out-js/decentraland/sdk/components/material.gen.js +86 -2
  39. package/out-js/decentraland/sdk/components/material.gen.js.map +1 -1
  40. package/out-js/decentraland/sdk/components/mesh_collider.gen.d.ts +18 -0
  41. package/out-js/decentraland/sdk/components/mesh_collider.gen.js +90 -4
  42. package/out-js/decentraland/sdk/components/mesh_collider.gen.js.map +1 -1
  43. package/out-js/decentraland/sdk/components/mesh_renderer.gen.d.ts +19 -3
  44. package/out-js/decentraland/sdk/components/mesh_renderer.gen.js +90 -4
  45. package/out-js/decentraland/sdk/components/mesh_renderer.gen.js.map +1 -1
  46. package/out-js/decentraland/sdk/components/raycast.gen.d.ts +13 -0
  47. package/out-js/decentraland/sdk/components/raycast.gen.js +64 -2
  48. package/out-js/decentraland/sdk/components/raycast.gen.js.map +1 -1
  49. package/out-js/decentraland/sdk/components/ui_text.gen.d.ts +4 -0
  50. package/out-js/decentraland/sdk/components/ui_text.gen.js +30 -1
  51. package/out-js/decentraland/sdk/components/ui_text.gen.js.map +1 -1
  52. package/out-js/decentraland/sdk/components/ui_transform.gen.d.ts +33 -0
  53. package/out-js/decentraland/sdk/components/ui_transform.gen.js +176 -3
  54. package/out-js/decentraland/sdk/components/ui_transform.gen.js.map +1 -1
  55. package/out-js/decentraland/social_service/v2/social_service_v2.gen.d.ts +0 -3
  56. package/out-js/decentraland/social_service/v2/social_service_v2.gen.js +2 -40
  57. package/out-js/decentraland/social_service/v2/social_service_v2.gen.js.map +1 -1
  58. package/out-ts/decentraland/common/texture.gen.ts +119 -4
  59. package/out-ts/decentraland/kernel/apis/restricted_actions.gen.ts +242 -0
  60. package/out-ts/decentraland/sdk/components/avatar_equipped_data.gen.ts +20 -1
  61. package/out-ts/decentraland/sdk/components/avatar_modifier_area.gen.ts +292 -1
  62. package/out-ts/decentraland/sdk/components/avatar_movement.gen.ts +119 -0
  63. package/out-ts/decentraland/sdk/components/avatar_movement_info.gen.ts +163 -0
  64. package/out-ts/decentraland/sdk/components/avatar_shape.gen.ts +23 -1
  65. package/out-ts/decentraland/sdk/components/camera_mode_area.gen.ts +218 -2
  66. package/out-ts/decentraland/sdk/components/common/input_action.gen.ts +24 -0
  67. package/out-ts/decentraland/sdk/components/gltf_container_loading_state.gen.ts +108 -2
  68. package/out-ts/decentraland/sdk/components/gltf_node.gen.ts +116 -0
  69. package/out-ts/decentraland/sdk/components/gltf_node_state.gen.ts +139 -0
  70. package/out-ts/decentraland/sdk/components/material.gen.ts +102 -1
  71. package/out-ts/decentraland/sdk/components/mesh_collider.gen.ts +99 -0
  72. package/out-ts/decentraland/sdk/components/mesh_renderer.gen.ts +100 -3
  73. package/out-ts/decentraland/sdk/components/raycast.gen.ts +73 -1
  74. package/out-ts/decentraland/sdk/components/ui_text.gen.ts +40 -1
  75. package/out-ts/decentraland/sdk/components/ui_transform.gen.ts +193 -0
  76. package/out-ts/decentraland/social_service/v2/social_service_v2.gen.ts +2 -44
  77. package/package.json +6 -3
  78. package/proto/decentraland/common/texture.proto +8 -1
  79. package/proto/decentraland/kernel/apis/restricted_actions.proto +22 -0
  80. package/proto/decentraland/sdk/components/avatar_equipped_data.proto +2 -1
  81. package/proto/decentraland/sdk/components/avatar_locomotion_settings.proto +18 -0
  82. package/proto/decentraland/sdk/components/avatar_modifier_area.proto +21 -0
  83. package/proto/decentraland/sdk/components/avatar_movement.proto +45 -0
  84. package/proto/decentraland/sdk/components/avatar_movement_info.proto +16 -0
  85. package/proto/decentraland/sdk/components/avatar_shape.proto +1 -0
  86. package/proto/decentraland/sdk/components/camera_layer.proto +30 -0
  87. package/proto/decentraland/sdk/components/camera_layers.proto +11 -0
  88. package/proto/decentraland/sdk/components/camera_mode_area.proto +22 -3
  89. package/proto/decentraland/sdk/components/common/input_action.proto +4 -0
  90. package/proto/decentraland/sdk/components/global_light.proto +22 -0
  91. package/proto/decentraland/sdk/components/gltf_container_loading_state.proto +13 -0
  92. package/proto/decentraland/sdk/components/gltf_node.proto +42 -0
  93. package/proto/decentraland/sdk/components/gltf_node_state.proto +20 -0
  94. package/proto/decentraland/sdk/components/material.proto +13 -1
  95. package/proto/decentraland/sdk/components/mesh_collider.proto +7 -0
  96. package/proto/decentraland/sdk/components/mesh_renderer.proto +8 -3
  97. package/proto/decentraland/sdk/components/primary_pointer_info.proto +5 -0
  98. package/proto/decentraland/sdk/components/raycast.proto +13 -0
  99. package/proto/decentraland/sdk/components/texture_camera.proto +46 -0
  100. package/proto/decentraland/sdk/components/ui_canvas.proto +16 -0
  101. package/proto/decentraland/sdk/components/ui_scroll_result.proto +12 -0
  102. package/proto/decentraland/sdk/components/ui_text.proto +3 -0
  103. package/proto/decentraland/sdk/components/ui_transform.proto +20 -0
  104. package/proto/decentraland/social_service/v2/social_service_v2.proto +0 -3
  105. package/public/sdk-components.proto +4 -0
@@ -0,0 +1,139 @@
1
+ /* eslint-disable */
2
+ import _m0 from "protobufjs/minimal";
3
+
4
+ export const protobufPackage = "decentraland.sdk.components";
5
+
6
+ export enum GltfNodeStateValue {
7
+ GNSV_PENDING = 0,
8
+ GNSV_FAILED = 1,
9
+ GNSV_READY = 2,
10
+ UNRECOGNIZED = -1,
11
+ }
12
+
13
+ export function gltfNodeStateValueFromJSON(object: any): GltfNodeStateValue {
14
+ switch (object) {
15
+ case 0:
16
+ case "GNSV_PENDING":
17
+ return GltfNodeStateValue.GNSV_PENDING;
18
+ case 1:
19
+ case "GNSV_FAILED":
20
+ return GltfNodeStateValue.GNSV_FAILED;
21
+ case 2:
22
+ case "GNSV_READY":
23
+ return GltfNodeStateValue.GNSV_READY;
24
+ case -1:
25
+ case "UNRECOGNIZED":
26
+ default:
27
+ return GltfNodeStateValue.UNRECOGNIZED;
28
+ }
29
+ }
30
+
31
+ export function gltfNodeStateValueToJSON(object: GltfNodeStateValue): string {
32
+ switch (object) {
33
+ case GltfNodeStateValue.GNSV_PENDING:
34
+ return "GNSV_PENDING";
35
+ case GltfNodeStateValue.GNSV_FAILED:
36
+ return "GNSV_FAILED";
37
+ case GltfNodeStateValue.GNSV_READY:
38
+ return "GNSV_READY";
39
+ case GltfNodeStateValue.UNRECOGNIZED:
40
+ default:
41
+ return "UNRECOGNIZED";
42
+ }
43
+ }
44
+
45
+ /**
46
+ * The state of a linked gltf node.
47
+ * If the state is GNSV_FAILED, the renderer may describe the failure in the error string.
48
+ */
49
+ export interface PBGltfNodeState {
50
+ state: GltfNodeStateValue;
51
+ error?: string | undefined;
52
+ }
53
+
54
+ function createBasePBGltfNodeState(): PBGltfNodeState {
55
+ return { state: 0, error: undefined };
56
+ }
57
+
58
+ export namespace PBGltfNodeState {
59
+ export function encode(message: PBGltfNodeState, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {
60
+ if (message.state !== 0) {
61
+ writer.uint32(8).int32(message.state);
62
+ }
63
+ if (message.error !== undefined) {
64
+ writer.uint32(18).string(message.error);
65
+ }
66
+ return writer;
67
+ }
68
+
69
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBGltfNodeState {
70
+ const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);
71
+ let end = length === undefined ? reader.len : reader.pos + length;
72
+ const message = createBasePBGltfNodeState();
73
+ while (reader.pos < end) {
74
+ const tag = reader.uint32();
75
+ switch (tag >>> 3) {
76
+ case 1:
77
+ if (tag !== 8) {
78
+ break;
79
+ }
80
+
81
+ message.state = reader.int32() as any;
82
+ continue;
83
+ case 2:
84
+ if (tag !== 18) {
85
+ break;
86
+ }
87
+
88
+ message.error = reader.string();
89
+ continue;
90
+ }
91
+ if ((tag & 7) === 4 || tag === 0) {
92
+ break;
93
+ }
94
+ reader.skipType(tag & 7);
95
+ }
96
+ return message;
97
+ }
98
+
99
+ export function fromJSON(object: any): PBGltfNodeState {
100
+ return {
101
+ state: isSet(object.state) ? gltfNodeStateValueFromJSON(object.state) : 0,
102
+ error: isSet(object.error) ? String(object.error) : undefined,
103
+ };
104
+ }
105
+
106
+ export function toJSON(message: PBGltfNodeState): unknown {
107
+ const obj: any = {};
108
+ message.state !== undefined && (obj.state = gltfNodeStateValueToJSON(message.state));
109
+ message.error !== undefined && (obj.error = message.error);
110
+ return obj;
111
+ }
112
+
113
+ export function create<I extends Exact<DeepPartial<PBGltfNodeState>, I>>(base?: I): PBGltfNodeState {
114
+ return PBGltfNodeState.fromPartial(base ?? {});
115
+ }
116
+
117
+ export function fromPartial<I extends Exact<DeepPartial<PBGltfNodeState>, I>>(object: I): PBGltfNodeState {
118
+ const message = createBasePBGltfNodeState();
119
+ message.state = object.state ?? 0;
120
+ message.error = object.error ?? undefined;
121
+ return message;
122
+ }
123
+ }
124
+
125
+ type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;
126
+
127
+ export type DeepPartial<T> = T extends Builtin ? T
128
+ : T extends Array<infer U> ? Array<DeepPartial<U>> : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>>
129
+ : T extends { $case: string } ? { [K in keyof Omit<T, "$case">]?: DeepPartial<T[K]> } & { $case: T["$case"] }
130
+ : T extends {} ? { [K in keyof T]?: DeepPartial<T[K]> }
131
+ : Partial<T>;
132
+
133
+ type KeysOfUnion<T> = T extends T ? keyof T : never;
134
+ export type Exact<P, I extends P> = P extends Builtin ? P
135
+ : P & { [K in keyof P]: Exact<P[K], I[K]> } & { [K in Exclude<keyof I, KeysOfUnion<P>>]: never };
136
+
137
+ function isSet(value: any): boolean {
138
+ return value !== null && value !== undefined;
139
+ }
@@ -61,6 +61,14 @@ export interface PBMaterial {
61
61
  | { $case: "unlit"; unlit: PBMaterial_UnlitMaterial }
62
62
  | { $case: "pbr"; pbr: PBMaterial_PbrMaterial }
63
63
  | undefined;
64
+ /**
65
+ * A gltf material that may provide additional features not supported by the PbMaterial fields.
66
+ * If both gltf and material fields are provided, the gltf will be used only for extended features not
67
+ * supported by the PbMaterial.
68
+ * If this is provided and the `material` field is not provided, the renderer will update the material
69
+ * field with data that reflects the gltf material once it is loaded.
70
+ */
71
+ gltf?: PBMaterial_GltfMaterial | undefined;
64
72
  }
65
73
 
66
74
  export interface PBMaterial_UnlitMaterial {
@@ -145,8 +153,13 @@ export interface PBMaterial_PbrMaterial {
145
153
  directIntensity?: number | undefined;
146
154
  }
147
155
 
156
+ export interface PBMaterial_GltfMaterial {
157
+ gltfSrc: string;
158
+ name: string;
159
+ }
160
+
148
161
  function createBasePBMaterial(): PBMaterial {
149
- return { material: undefined };
162
+ return { material: undefined, gltf: undefined };
150
163
  }
151
164
 
152
165
  export namespace PBMaterial {
@@ -159,6 +172,9 @@ export namespace PBMaterial {
159
172
  PBMaterial_PbrMaterial.encode(message.material.pbr, writer.uint32(18).fork()).ldelim();
160
173
  break;
161
174
  }
175
+ if (message.gltf !== undefined) {
176
+ PBMaterial_GltfMaterial.encode(message.gltf, writer.uint32(26).fork()).ldelim();
177
+ }
162
178
  return writer;
163
179
  }
164
180
 
@@ -183,6 +199,13 @@ export namespace PBMaterial {
183
199
 
184
200
  message.material = { $case: "pbr", pbr: PBMaterial_PbrMaterial.decode(reader, reader.uint32()) };
185
201
  continue;
202
+ case 3:
203
+ if (tag !== 26) {
204
+ break;
205
+ }
206
+
207
+ message.gltf = PBMaterial_GltfMaterial.decode(reader, reader.uint32());
208
+ continue;
186
209
  }
187
210
  if ((tag & 7) === 4 || tag === 0) {
188
211
  break;
@@ -199,6 +222,7 @@ export namespace PBMaterial {
199
222
  : isSet(object.pbr)
200
223
  ? { $case: "pbr", pbr: PBMaterial_PbrMaterial.fromJSON(object.pbr) }
201
224
  : undefined,
225
+ gltf: isSet(object.gltf) ? PBMaterial_GltfMaterial.fromJSON(object.gltf) : undefined,
202
226
  };
203
227
  }
204
228
 
@@ -208,6 +232,7 @@ export namespace PBMaterial {
208
232
  (obj.unlit = message.material?.unlit ? PBMaterial_UnlitMaterial.toJSON(message.material?.unlit) : undefined);
209
233
  message.material?.$case === "pbr" &&
210
234
  (obj.pbr = message.material?.pbr ? PBMaterial_PbrMaterial.toJSON(message.material?.pbr) : undefined);
235
+ message.gltf !== undefined && (obj.gltf = message.gltf ? PBMaterial_GltfMaterial.toJSON(message.gltf) : undefined);
211
236
  return obj;
212
237
  }
213
238
 
@@ -223,6 +248,9 @@ export namespace PBMaterial {
223
248
  if (object.material?.$case === "pbr" && object.material?.pbr !== undefined && object.material?.pbr !== null) {
224
249
  message.material = { $case: "pbr", pbr: PBMaterial_PbrMaterial.fromPartial(object.material.pbr) };
225
250
  }
251
+ message.gltf = (object.gltf !== undefined && object.gltf !== null)
252
+ ? PBMaterial_GltfMaterial.fromPartial(object.gltf)
253
+ : undefined;
226
254
  return message;
227
255
  }
228
256
  }
@@ -638,6 +666,79 @@ export namespace PBMaterial_PbrMaterial {
638
666
  }
639
667
  }
640
668
 
669
+ function createBasePBMaterial_GltfMaterial(): PBMaterial_GltfMaterial {
670
+ return { gltfSrc: "", name: "" };
671
+ }
672
+
673
+ export namespace PBMaterial_GltfMaterial {
674
+ export function encode(message: PBMaterial_GltfMaterial, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {
675
+ if (message.gltfSrc !== "") {
676
+ writer.uint32(10).string(message.gltfSrc);
677
+ }
678
+ if (message.name !== "") {
679
+ writer.uint32(18).string(message.name);
680
+ }
681
+ return writer;
682
+ }
683
+
684
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMaterial_GltfMaterial {
685
+ const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);
686
+ let end = length === undefined ? reader.len : reader.pos + length;
687
+ const message = createBasePBMaterial_GltfMaterial();
688
+ while (reader.pos < end) {
689
+ const tag = reader.uint32();
690
+ switch (tag >>> 3) {
691
+ case 1:
692
+ if (tag !== 10) {
693
+ break;
694
+ }
695
+
696
+ message.gltfSrc = reader.string();
697
+ continue;
698
+ case 2:
699
+ if (tag !== 18) {
700
+ break;
701
+ }
702
+
703
+ message.name = reader.string();
704
+ continue;
705
+ }
706
+ if ((tag & 7) === 4 || tag === 0) {
707
+ break;
708
+ }
709
+ reader.skipType(tag & 7);
710
+ }
711
+ return message;
712
+ }
713
+
714
+ export function fromJSON(object: any): PBMaterial_GltfMaterial {
715
+ return {
716
+ gltfSrc: isSet(object.gltfSrc) ? String(object.gltfSrc) : "",
717
+ name: isSet(object.name) ? String(object.name) : "",
718
+ };
719
+ }
720
+
721
+ export function toJSON(message: PBMaterial_GltfMaterial): unknown {
722
+ const obj: any = {};
723
+ message.gltfSrc !== undefined && (obj.gltfSrc = message.gltfSrc);
724
+ message.name !== undefined && (obj.name = message.name);
725
+ return obj;
726
+ }
727
+
728
+ export function create<I extends Exact<DeepPartial<PBMaterial_GltfMaterial>, I>>(base?: I): PBMaterial_GltfMaterial {
729
+ return PBMaterial_GltfMaterial.fromPartial(base ?? {});
730
+ }
731
+
732
+ export function fromPartial<I extends Exact<DeepPartial<PBMaterial_GltfMaterial>, I>>(
733
+ object: I,
734
+ ): PBMaterial_GltfMaterial {
735
+ const message = createBasePBMaterial_GltfMaterial();
736
+ message.gltfSrc = object.gltfSrc ?? "";
737
+ message.name = object.name ?? "";
738
+ return message;
739
+ }
740
+ }
741
+
641
742
  type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;
642
743
 
643
744
  export type DeepPartial<T> = T extends Builtin ? T
@@ -149,6 +149,7 @@ export interface PBMeshCollider {
149
149
  | { $case: "sphere"; sphere: PBMeshCollider_SphereMesh }
150
150
  | { $case: "cylinder"; cylinder: PBMeshCollider_CylinderMesh }
151
151
  | { $case: "plane"; plane: PBMeshCollider_PlaneMesh }
152
+ | { $case: "gltf"; gltf: PBMeshCollider_GltfMesh }
152
153
  | undefined;
153
154
  }
154
155
 
@@ -174,6 +175,14 @@ export interface PBMeshCollider_PlaneMesh {
174
175
  export interface PBMeshCollider_SphereMesh {
175
176
  }
176
177
 
178
+ /** A collider constructed from a Gltf Mesh. */
179
+ export interface PBMeshCollider_GltfMesh {
180
+ /** the GLTF file path as listed in the scene's manifest. */
181
+ gltfSrc: string;
182
+ /** the name of the mesh asset */
183
+ name: string;
184
+ }
185
+
177
186
  function createBasePBMeshCollider(): PBMeshCollider {
178
187
  return { collisionMask: undefined, mesh: undefined };
179
188
  }
@@ -196,6 +205,9 @@ export namespace PBMeshCollider {
196
205
  case "plane":
197
206
  PBMeshCollider_PlaneMesh.encode(message.mesh.plane, writer.uint32(42).fork()).ldelim();
198
207
  break;
208
+ case "gltf":
209
+ PBMeshCollider_GltfMesh.encode(message.mesh.gltf, writer.uint32(50).fork()).ldelim();
210
+ break;
199
211
  }
200
212
  return writer;
201
213
  }
@@ -242,6 +254,13 @@ export namespace PBMeshCollider {
242
254
 
243
255
  message.mesh = { $case: "plane", plane: PBMeshCollider_PlaneMesh.decode(reader, reader.uint32()) };
244
256
  continue;
257
+ case 6:
258
+ if (tag !== 50) {
259
+ break;
260
+ }
261
+
262
+ message.mesh = { $case: "gltf", gltf: PBMeshCollider_GltfMesh.decode(reader, reader.uint32()) };
263
+ continue;
245
264
  }
246
265
  if ((tag & 7) === 4 || tag === 0) {
247
266
  break;
@@ -262,6 +281,8 @@ export namespace PBMeshCollider {
262
281
  ? { $case: "cylinder", cylinder: PBMeshCollider_CylinderMesh.fromJSON(object.cylinder) }
263
282
  : isSet(object.plane)
264
283
  ? { $case: "plane", plane: PBMeshCollider_PlaneMesh.fromJSON(object.plane) }
284
+ : isSet(object.gltf)
285
+ ? { $case: "gltf", gltf: PBMeshCollider_GltfMesh.fromJSON(object.gltf) }
265
286
  : undefined,
266
287
  };
267
288
  }
@@ -277,6 +298,8 @@ export namespace PBMeshCollider {
277
298
  (obj.cylinder = message.mesh?.cylinder ? PBMeshCollider_CylinderMesh.toJSON(message.mesh?.cylinder) : undefined);
278
299
  message.mesh?.$case === "plane" &&
279
300
  (obj.plane = message.mesh?.plane ? PBMeshCollider_PlaneMesh.toJSON(message.mesh?.plane) : undefined);
301
+ message.mesh?.$case === "gltf" &&
302
+ (obj.gltf = message.mesh?.gltf ? PBMeshCollider_GltfMesh.toJSON(message.mesh?.gltf) : undefined);
280
303
  return obj;
281
304
  }
282
305
 
@@ -299,6 +322,9 @@ export namespace PBMeshCollider {
299
322
  if (object.mesh?.$case === "plane" && object.mesh?.plane !== undefined && object.mesh?.plane !== null) {
300
323
  message.mesh = { $case: "plane", plane: PBMeshCollider_PlaneMesh.fromPartial(object.mesh.plane) };
301
324
  }
325
+ if (object.mesh?.$case === "gltf" && object.mesh?.gltf !== undefined && object.mesh?.gltf !== null) {
326
+ message.mesh = { $case: "gltf", gltf: PBMeshCollider_GltfMesh.fromPartial(object.mesh.gltf) };
327
+ }
302
328
  return message;
303
329
  }
304
330
  }
@@ -518,6 +544,79 @@ export namespace PBMeshCollider_SphereMesh {
518
544
  }
519
545
  }
520
546
 
547
+ function createBasePBMeshCollider_GltfMesh(): PBMeshCollider_GltfMesh {
548
+ return { gltfSrc: "", name: "" };
549
+ }
550
+
551
+ export namespace PBMeshCollider_GltfMesh {
552
+ export function encode(message: PBMeshCollider_GltfMesh, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {
553
+ if (message.gltfSrc !== "") {
554
+ writer.uint32(10).string(message.gltfSrc);
555
+ }
556
+ if (message.name !== "") {
557
+ writer.uint32(18).string(message.name);
558
+ }
559
+ return writer;
560
+ }
561
+
562
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMeshCollider_GltfMesh {
563
+ const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);
564
+ let end = length === undefined ? reader.len : reader.pos + length;
565
+ const message = createBasePBMeshCollider_GltfMesh();
566
+ while (reader.pos < end) {
567
+ const tag = reader.uint32();
568
+ switch (tag >>> 3) {
569
+ case 1:
570
+ if (tag !== 10) {
571
+ break;
572
+ }
573
+
574
+ message.gltfSrc = reader.string();
575
+ continue;
576
+ case 2:
577
+ if (tag !== 18) {
578
+ break;
579
+ }
580
+
581
+ message.name = reader.string();
582
+ continue;
583
+ }
584
+ if ((tag & 7) === 4 || tag === 0) {
585
+ break;
586
+ }
587
+ reader.skipType(tag & 7);
588
+ }
589
+ return message;
590
+ }
591
+
592
+ export function fromJSON(object: any): PBMeshCollider_GltfMesh {
593
+ return {
594
+ gltfSrc: isSet(object.gltfSrc) ? String(object.gltfSrc) : "",
595
+ name: isSet(object.name) ? String(object.name) : "",
596
+ };
597
+ }
598
+
599
+ export function toJSON(message: PBMeshCollider_GltfMesh): unknown {
600
+ const obj: any = {};
601
+ message.gltfSrc !== undefined && (obj.gltfSrc = message.gltfSrc);
602
+ message.name !== undefined && (obj.name = message.name);
603
+ return obj;
604
+ }
605
+
606
+ export function create<I extends Exact<DeepPartial<PBMeshCollider_GltfMesh>, I>>(base?: I): PBMeshCollider_GltfMesh {
607
+ return PBMeshCollider_GltfMesh.fromPartial(base ?? {});
608
+ }
609
+
610
+ export function fromPartial<I extends Exact<DeepPartial<PBMeshCollider_GltfMesh>, I>>(
611
+ object: I,
612
+ ): PBMeshCollider_GltfMesh {
613
+ const message = createBasePBMeshCollider_GltfMesh();
614
+ message.gltfSrc = object.gltfSrc ?? "";
615
+ message.name = object.name ?? "";
616
+ return message;
617
+ }
618
+ }
619
+
521
620
  type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;
522
621
 
523
622
  export type DeepPartial<T> = T extends Builtin ? T
@@ -5,13 +5,11 @@ export const protobufPackage = "decentraland.sdk.components";
5
5
 
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
  */
16
14
  export interface PBMeshRenderer {
17
15
  mesh?:
@@ -19,6 +17,7 @@ export interface PBMeshRenderer {
19
17
  | { $case: "sphere"; sphere: PBMeshRenderer_SphereMesh }
20
18
  | { $case: "cylinder"; cylinder: PBMeshRenderer_CylinderMesh }
21
19
  | { $case: "plane"; plane: PBMeshRenderer_PlaneMesh }
20
+ | { $case: "gltf"; gltf: PBMeshRenderer_GltfMesh }
22
21
  | undefined;
23
22
  }
24
23
 
@@ -48,6 +47,14 @@ export interface PBMeshRenderer_PlaneMesh {
48
47
  export interface PBMeshRenderer_SphereMesh {
49
48
  }
50
49
 
50
+ /** A mesh from a Gltf. */
51
+ export interface PBMeshRenderer_GltfMesh {
52
+ /** the GLTF file path as listed in the scene's manifest. */
53
+ gltfSrc: string;
54
+ /** the name of the mesh asset */
55
+ name: string;
56
+ }
57
+
51
58
  function createBasePBMeshRenderer(): PBMeshRenderer {
52
59
  return { mesh: undefined };
53
60
  }
@@ -67,6 +74,9 @@ export namespace PBMeshRenderer {
67
74
  case "plane":
68
75
  PBMeshRenderer_PlaneMesh.encode(message.mesh.plane, writer.uint32(34).fork()).ldelim();
69
76
  break;
77
+ case "gltf":
78
+ PBMeshRenderer_GltfMesh.encode(message.mesh.gltf, writer.uint32(42).fork()).ldelim();
79
+ break;
70
80
  }
71
81
  return writer;
72
82
  }
@@ -106,6 +116,13 @@ export namespace PBMeshRenderer {
106
116
 
107
117
  message.mesh = { $case: "plane", plane: PBMeshRenderer_PlaneMesh.decode(reader, reader.uint32()) };
108
118
  continue;
119
+ case 5:
120
+ if (tag !== 42) {
121
+ break;
122
+ }
123
+
124
+ message.mesh = { $case: "gltf", gltf: PBMeshRenderer_GltfMesh.decode(reader, reader.uint32()) };
125
+ continue;
109
126
  }
110
127
  if ((tag & 7) === 4 || tag === 0) {
111
128
  break;
@@ -125,6 +142,8 @@ export namespace PBMeshRenderer {
125
142
  ? { $case: "cylinder", cylinder: PBMeshRenderer_CylinderMesh.fromJSON(object.cylinder) }
126
143
  : isSet(object.plane)
127
144
  ? { $case: "plane", plane: PBMeshRenderer_PlaneMesh.fromJSON(object.plane) }
145
+ : isSet(object.gltf)
146
+ ? { $case: "gltf", gltf: PBMeshRenderer_GltfMesh.fromJSON(object.gltf) }
128
147
  : undefined,
129
148
  };
130
149
  }
@@ -139,6 +158,8 @@ export namespace PBMeshRenderer {
139
158
  (obj.cylinder = message.mesh?.cylinder ? PBMeshRenderer_CylinderMesh.toJSON(message.mesh?.cylinder) : undefined);
140
159
  message.mesh?.$case === "plane" &&
141
160
  (obj.plane = message.mesh?.plane ? PBMeshRenderer_PlaneMesh.toJSON(message.mesh?.plane) : undefined);
161
+ message.mesh?.$case === "gltf" &&
162
+ (obj.gltf = message.mesh?.gltf ? PBMeshRenderer_GltfMesh.toJSON(message.mesh?.gltf) : undefined);
142
163
  return obj;
143
164
  }
144
165
 
@@ -160,6 +181,9 @@ export namespace PBMeshRenderer {
160
181
  if (object.mesh?.$case === "plane" && object.mesh?.plane !== undefined && object.mesh?.plane !== null) {
161
182
  message.mesh = { $case: "plane", plane: PBMeshRenderer_PlaneMesh.fromPartial(object.mesh.plane) };
162
183
  }
184
+ if (object.mesh?.$case === "gltf" && object.mesh?.gltf !== undefined && object.mesh?.gltf !== null) {
185
+ message.mesh = { $case: "gltf", gltf: PBMeshRenderer_GltfMesh.fromPartial(object.mesh.gltf) };
186
+ }
163
187
  return message;
164
188
  }
165
189
  }
@@ -437,6 +461,79 @@ export namespace PBMeshRenderer_SphereMesh {
437
461
  }
438
462
  }
439
463
 
464
+ function createBasePBMeshRenderer_GltfMesh(): PBMeshRenderer_GltfMesh {
465
+ return { gltfSrc: "", name: "" };
466
+ }
467
+
468
+ export namespace PBMeshRenderer_GltfMesh {
469
+ export function encode(message: PBMeshRenderer_GltfMesh, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {
470
+ if (message.gltfSrc !== "") {
471
+ writer.uint32(10).string(message.gltfSrc);
472
+ }
473
+ if (message.name !== "") {
474
+ writer.uint32(18).string(message.name);
475
+ }
476
+ return writer;
477
+ }
478
+
479
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMeshRenderer_GltfMesh {
480
+ const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);
481
+ let end = length === undefined ? reader.len : reader.pos + length;
482
+ const message = createBasePBMeshRenderer_GltfMesh();
483
+ while (reader.pos < end) {
484
+ const tag = reader.uint32();
485
+ switch (tag >>> 3) {
486
+ case 1:
487
+ if (tag !== 10) {
488
+ break;
489
+ }
490
+
491
+ message.gltfSrc = reader.string();
492
+ continue;
493
+ case 2:
494
+ if (tag !== 18) {
495
+ break;
496
+ }
497
+
498
+ message.name = reader.string();
499
+ continue;
500
+ }
501
+ if ((tag & 7) === 4 || tag === 0) {
502
+ break;
503
+ }
504
+ reader.skipType(tag & 7);
505
+ }
506
+ return message;
507
+ }
508
+
509
+ export function fromJSON(object: any): PBMeshRenderer_GltfMesh {
510
+ return {
511
+ gltfSrc: isSet(object.gltfSrc) ? String(object.gltfSrc) : "",
512
+ name: isSet(object.name) ? String(object.name) : "",
513
+ };
514
+ }
515
+
516
+ export function toJSON(message: PBMeshRenderer_GltfMesh): unknown {
517
+ const obj: any = {};
518
+ message.gltfSrc !== undefined && (obj.gltfSrc = message.gltfSrc);
519
+ message.name !== undefined && (obj.name = message.name);
520
+ return obj;
521
+ }
522
+
523
+ export function create<I extends Exact<DeepPartial<PBMeshRenderer_GltfMesh>, I>>(base?: I): PBMeshRenderer_GltfMesh {
524
+ return PBMeshRenderer_GltfMesh.fromPartial(base ?? {});
525
+ }
526
+
527
+ export function fromPartial<I extends Exact<DeepPartial<PBMeshRenderer_GltfMesh>, I>>(
528
+ object: I,
529
+ ): PBMeshRenderer_GltfMesh {
530
+ const message = createBasePBMeshRenderer_GltfMesh();
531
+ message.gltfSrc = object.gltfSrc ?? "";
532
+ message.name = object.name ?? "";
533
+ return message;
534
+ }
535
+ }
536
+
440
537
  type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;
441
538
 
442
539
  export type DeepPartial<T> = T extends Builtin ? T