@dcl/protocol 1.0.0-3695908652.commit-2552b6c → 1.0.0-3761391741.commit-d4dfa66
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.
- package/out-ts/decentraland/bff/topics_service.gen.ts +7 -7
- package/out-ts/decentraland/common/entity.gen.ts +122 -0
- package/out-ts/decentraland/kernel/apis/engine_api.gen.ts +7 -7
- package/out-ts/decentraland/kernel/comms/rfc4/comms.gen.ts +7 -7
- package/out-ts/decentraland/kernel/comms/rfc5/ws_comms.gen.ts +7 -7
- package/out-ts/decentraland/renderer/common/friend_request_common.gen.ts +2 -2
- package/out-ts/decentraland/renderer/engine_interface.gen.ts +2 -2
- package/out-ts/decentraland/renderer/kernel_services/analytics.gen.ts +2 -2
- package/out-ts/decentraland/renderer/renderer_services/crdt.gen.ts +7 -7
- package/out-ts/decentraland/renderer/renderer_services/scene_controller.gen.ts +551 -0
- package/out-ts/decentraland/renderer/renderer_services/transport.gen.ts +7 -7
- package/package.json +2 -2
- package/proto/decentraland/common/entity.proto +1 -1
- package/proto/decentraland/renderer/renderer_services/scene_controller.proto +54 -0
- package/proto/decentraland/sdk/components/common/texts.proto +2 -0
- package/public/renderer-interface.proto +1 -0
|
@@ -347,7 +347,7 @@ export const TopicsServiceDefinition = {
|
|
|
347
347
|
declare var self: any | undefined;
|
|
348
348
|
declare var window: any | undefined;
|
|
349
349
|
declare var global: any | undefined;
|
|
350
|
-
var
|
|
350
|
+
var tsProtoGlobalThis: any = (() => {
|
|
351
351
|
if (typeof globalThis !== "undefined") {
|
|
352
352
|
return globalThis;
|
|
353
353
|
}
|
|
@@ -364,10 +364,10 @@ var globalThis: any = (() => {
|
|
|
364
364
|
})();
|
|
365
365
|
|
|
366
366
|
function bytesFromBase64(b64: string): Uint8Array {
|
|
367
|
-
if (
|
|
368
|
-
return Uint8Array.from(
|
|
367
|
+
if (tsProtoGlobalThis.Buffer) {
|
|
368
|
+
return Uint8Array.from(tsProtoGlobalThis.Buffer.from(b64, "base64"));
|
|
369
369
|
} else {
|
|
370
|
-
const bin =
|
|
370
|
+
const bin = tsProtoGlobalThis.atob(b64);
|
|
371
371
|
const arr = new Uint8Array(bin.length);
|
|
372
372
|
for (let i = 0; i < bin.length; ++i) {
|
|
373
373
|
arr[i] = bin.charCodeAt(i);
|
|
@@ -377,14 +377,14 @@ function bytesFromBase64(b64: string): Uint8Array {
|
|
|
377
377
|
}
|
|
378
378
|
|
|
379
379
|
function base64FromBytes(arr: Uint8Array): string {
|
|
380
|
-
if (
|
|
381
|
-
return
|
|
380
|
+
if (tsProtoGlobalThis.Buffer) {
|
|
381
|
+
return tsProtoGlobalThis.Buffer.from(arr).toString("base64");
|
|
382
382
|
} else {
|
|
383
383
|
const bin: string[] = [];
|
|
384
384
|
arr.forEach((byte) => {
|
|
385
385
|
bin.push(String.fromCharCode(byte));
|
|
386
386
|
});
|
|
387
|
-
return
|
|
387
|
+
return tsProtoGlobalThis.btoa(bin.join(""));
|
|
388
388
|
}
|
|
389
389
|
}
|
|
390
390
|
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
/* eslint-disable */
|
|
2
|
+
import _m0 from "protobufjs/minimal";
|
|
3
|
+
import { ContentMapping } from "./content_mapping.gen";
|
|
4
|
+
|
|
5
|
+
export const protobufPackage = "decentraland.common";
|
|
6
|
+
|
|
7
|
+
export interface Entity {
|
|
8
|
+
id: string;
|
|
9
|
+
pointers: string[];
|
|
10
|
+
metadata: string;
|
|
11
|
+
timestamp: number;
|
|
12
|
+
content: ContentMapping[];
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
function createBaseEntity(): Entity {
|
|
16
|
+
return { id: "", pointers: [], metadata: "", timestamp: 0, content: [] };
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
export const Entity = {
|
|
20
|
+
encode(message: Entity, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {
|
|
21
|
+
if (message.id !== "") {
|
|
22
|
+
writer.uint32(10).string(message.id);
|
|
23
|
+
}
|
|
24
|
+
for (const v of message.pointers) {
|
|
25
|
+
writer.uint32(18).string(v!);
|
|
26
|
+
}
|
|
27
|
+
if (message.metadata !== "") {
|
|
28
|
+
writer.uint32(26).string(message.metadata);
|
|
29
|
+
}
|
|
30
|
+
if (message.timestamp !== 0) {
|
|
31
|
+
writer.uint32(32).uint32(message.timestamp);
|
|
32
|
+
}
|
|
33
|
+
for (const v of message.content) {
|
|
34
|
+
ContentMapping.encode(v!, writer.uint32(42).fork()).ldelim();
|
|
35
|
+
}
|
|
36
|
+
return writer;
|
|
37
|
+
},
|
|
38
|
+
|
|
39
|
+
decode(input: _m0.Reader | Uint8Array, length?: number): Entity {
|
|
40
|
+
const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
|
|
41
|
+
let end = length === undefined ? reader.len : reader.pos + length;
|
|
42
|
+
const message = createBaseEntity();
|
|
43
|
+
while (reader.pos < end) {
|
|
44
|
+
const tag = reader.uint32();
|
|
45
|
+
switch (tag >>> 3) {
|
|
46
|
+
case 1:
|
|
47
|
+
message.id = reader.string();
|
|
48
|
+
break;
|
|
49
|
+
case 2:
|
|
50
|
+
message.pointers.push(reader.string());
|
|
51
|
+
break;
|
|
52
|
+
case 3:
|
|
53
|
+
message.metadata = reader.string();
|
|
54
|
+
break;
|
|
55
|
+
case 4:
|
|
56
|
+
message.timestamp = reader.uint32();
|
|
57
|
+
break;
|
|
58
|
+
case 5:
|
|
59
|
+
message.content.push(ContentMapping.decode(reader, reader.uint32()));
|
|
60
|
+
break;
|
|
61
|
+
default:
|
|
62
|
+
reader.skipType(tag & 7);
|
|
63
|
+
break;
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
return message;
|
|
67
|
+
},
|
|
68
|
+
|
|
69
|
+
fromJSON(object: any): Entity {
|
|
70
|
+
return {
|
|
71
|
+
id: isSet(object.id) ? String(object.id) : "",
|
|
72
|
+
pointers: Array.isArray(object?.pointers) ? object.pointers.map((e: any) => String(e)) : [],
|
|
73
|
+
metadata: isSet(object.metadata) ? String(object.metadata) : "",
|
|
74
|
+
timestamp: isSet(object.timestamp) ? Number(object.timestamp) : 0,
|
|
75
|
+
content: Array.isArray(object?.content) ? object.content.map((e: any) => ContentMapping.fromJSON(e)) : [],
|
|
76
|
+
};
|
|
77
|
+
},
|
|
78
|
+
|
|
79
|
+
toJSON(message: Entity): unknown {
|
|
80
|
+
const obj: any = {};
|
|
81
|
+
message.id !== undefined && (obj.id = message.id);
|
|
82
|
+
if (message.pointers) {
|
|
83
|
+
obj.pointers = message.pointers.map((e) => e);
|
|
84
|
+
} else {
|
|
85
|
+
obj.pointers = [];
|
|
86
|
+
}
|
|
87
|
+
message.metadata !== undefined && (obj.metadata = message.metadata);
|
|
88
|
+
message.timestamp !== undefined && (obj.timestamp = Math.round(message.timestamp));
|
|
89
|
+
if (message.content) {
|
|
90
|
+
obj.content = message.content.map((e) => e ? ContentMapping.toJSON(e) : undefined);
|
|
91
|
+
} else {
|
|
92
|
+
obj.content = [];
|
|
93
|
+
}
|
|
94
|
+
return obj;
|
|
95
|
+
},
|
|
96
|
+
|
|
97
|
+
fromPartial<I extends Exact<DeepPartial<Entity>, I>>(object: I): Entity {
|
|
98
|
+
const message = createBaseEntity();
|
|
99
|
+
message.id = object.id ?? "";
|
|
100
|
+
message.pointers = object.pointers?.map((e) => e) || [];
|
|
101
|
+
message.metadata = object.metadata ?? "";
|
|
102
|
+
message.timestamp = object.timestamp ?? 0;
|
|
103
|
+
message.content = object.content?.map((e) => ContentMapping.fromPartial(e)) || [];
|
|
104
|
+
return message;
|
|
105
|
+
},
|
|
106
|
+
};
|
|
107
|
+
|
|
108
|
+
type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;
|
|
109
|
+
|
|
110
|
+
export type DeepPartial<T> = T extends Builtin ? T
|
|
111
|
+
: T extends Array<infer U> ? Array<DeepPartial<U>> : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>>
|
|
112
|
+
: T extends { $case: string } ? { [K in keyof Omit<T, "$case">]?: DeepPartial<T[K]> } & { $case: T["$case"] }
|
|
113
|
+
: T extends {} ? { [K in keyof T]?: DeepPartial<T[K]> }
|
|
114
|
+
: Partial<T>;
|
|
115
|
+
|
|
116
|
+
type KeysOfUnion<T> = T extends T ? keyof T : never;
|
|
117
|
+
export type Exact<P, I extends P> = P extends Builtin ? P
|
|
118
|
+
: P & { [K in keyof P]: Exact<P[K], I[K]> } & { [K in Exclude<keyof I, KeysOfUnion<P>>]: never };
|
|
119
|
+
|
|
120
|
+
function isSet(value: any): boolean {
|
|
121
|
+
return value !== null && value !== undefined;
|
|
122
|
+
}
|
|
@@ -2469,7 +2469,7 @@ export const EngineApiServiceDefinition = {
|
|
|
2469
2469
|
declare var self: any | undefined;
|
|
2470
2470
|
declare var window: any | undefined;
|
|
2471
2471
|
declare var global: any | undefined;
|
|
2472
|
-
var
|
|
2472
|
+
var tsProtoGlobalThis: any = (() => {
|
|
2473
2473
|
if (typeof globalThis !== "undefined") {
|
|
2474
2474
|
return globalThis;
|
|
2475
2475
|
}
|
|
@@ -2486,10 +2486,10 @@ var globalThis: any = (() => {
|
|
|
2486
2486
|
})();
|
|
2487
2487
|
|
|
2488
2488
|
function bytesFromBase64(b64: string): Uint8Array {
|
|
2489
|
-
if (
|
|
2490
|
-
return Uint8Array.from(
|
|
2489
|
+
if (tsProtoGlobalThis.Buffer) {
|
|
2490
|
+
return Uint8Array.from(tsProtoGlobalThis.Buffer.from(b64, "base64"));
|
|
2491
2491
|
} else {
|
|
2492
|
-
const bin =
|
|
2492
|
+
const bin = tsProtoGlobalThis.atob(b64);
|
|
2493
2493
|
const arr = new Uint8Array(bin.length);
|
|
2494
2494
|
for (let i = 0; i < bin.length; ++i) {
|
|
2495
2495
|
arr[i] = bin.charCodeAt(i);
|
|
@@ -2499,14 +2499,14 @@ function bytesFromBase64(b64: string): Uint8Array {
|
|
|
2499
2499
|
}
|
|
2500
2500
|
|
|
2501
2501
|
function base64FromBytes(arr: Uint8Array): string {
|
|
2502
|
-
if (
|
|
2503
|
-
return
|
|
2502
|
+
if (tsProtoGlobalThis.Buffer) {
|
|
2503
|
+
return tsProtoGlobalThis.Buffer.from(arr).toString("base64");
|
|
2504
2504
|
} else {
|
|
2505
2505
|
const bin: string[] = [];
|
|
2506
2506
|
arr.forEach((byte) => {
|
|
2507
2507
|
bin.push(String.fromCharCode(byte));
|
|
2508
2508
|
});
|
|
2509
|
-
return
|
|
2509
|
+
return tsProtoGlobalThis.btoa(bin.join(""));
|
|
2510
2510
|
}
|
|
2511
2511
|
}
|
|
2512
2512
|
|
|
@@ -716,7 +716,7 @@ export const Voice = {
|
|
|
716
716
|
declare var self: any | undefined;
|
|
717
717
|
declare var window: any | undefined;
|
|
718
718
|
declare var global: any | undefined;
|
|
719
|
-
var
|
|
719
|
+
var tsProtoGlobalThis: any = (() => {
|
|
720
720
|
if (typeof globalThis !== "undefined") {
|
|
721
721
|
return globalThis;
|
|
722
722
|
}
|
|
@@ -733,10 +733,10 @@ var globalThis: any = (() => {
|
|
|
733
733
|
})();
|
|
734
734
|
|
|
735
735
|
function bytesFromBase64(b64: string): Uint8Array {
|
|
736
|
-
if (
|
|
737
|
-
return Uint8Array.from(
|
|
736
|
+
if (tsProtoGlobalThis.Buffer) {
|
|
737
|
+
return Uint8Array.from(tsProtoGlobalThis.Buffer.from(b64, "base64"));
|
|
738
738
|
} else {
|
|
739
|
-
const bin =
|
|
739
|
+
const bin = tsProtoGlobalThis.atob(b64);
|
|
740
740
|
const arr = new Uint8Array(bin.length);
|
|
741
741
|
for (let i = 0; i < bin.length; ++i) {
|
|
742
742
|
arr[i] = bin.charCodeAt(i);
|
|
@@ -746,14 +746,14 @@ function bytesFromBase64(b64: string): Uint8Array {
|
|
|
746
746
|
}
|
|
747
747
|
|
|
748
748
|
function base64FromBytes(arr: Uint8Array): string {
|
|
749
|
-
if (
|
|
750
|
-
return
|
|
749
|
+
if (tsProtoGlobalThis.Buffer) {
|
|
750
|
+
return tsProtoGlobalThis.Buffer.from(arr).toString("base64");
|
|
751
751
|
} else {
|
|
752
752
|
const bin: string[] = [];
|
|
753
753
|
arr.forEach((byte) => {
|
|
754
754
|
bin.push(String.fromCharCode(byte));
|
|
755
755
|
});
|
|
756
|
-
return
|
|
756
|
+
return tsProtoGlobalThis.btoa(bin.join(""));
|
|
757
757
|
}
|
|
758
758
|
}
|
|
759
759
|
|
|
@@ -814,7 +814,7 @@ export const WsPacket = {
|
|
|
814
814
|
declare var self: any | undefined;
|
|
815
815
|
declare var window: any | undefined;
|
|
816
816
|
declare var global: any | undefined;
|
|
817
|
-
var
|
|
817
|
+
var tsProtoGlobalThis: any = (() => {
|
|
818
818
|
if (typeof globalThis !== "undefined") {
|
|
819
819
|
return globalThis;
|
|
820
820
|
}
|
|
@@ -831,10 +831,10 @@ var globalThis: any = (() => {
|
|
|
831
831
|
})();
|
|
832
832
|
|
|
833
833
|
function bytesFromBase64(b64: string): Uint8Array {
|
|
834
|
-
if (
|
|
835
|
-
return Uint8Array.from(
|
|
834
|
+
if (tsProtoGlobalThis.Buffer) {
|
|
835
|
+
return Uint8Array.from(tsProtoGlobalThis.Buffer.from(b64, "base64"));
|
|
836
836
|
} else {
|
|
837
|
-
const bin =
|
|
837
|
+
const bin = tsProtoGlobalThis.atob(b64);
|
|
838
838
|
const arr = new Uint8Array(bin.length);
|
|
839
839
|
for (let i = 0; i < bin.length; ++i) {
|
|
840
840
|
arr[i] = bin.charCodeAt(i);
|
|
@@ -844,14 +844,14 @@ function bytesFromBase64(b64: string): Uint8Array {
|
|
|
844
844
|
}
|
|
845
845
|
|
|
846
846
|
function base64FromBytes(arr: Uint8Array): string {
|
|
847
|
-
if (
|
|
848
|
-
return
|
|
847
|
+
if (tsProtoGlobalThis.Buffer) {
|
|
848
|
+
return tsProtoGlobalThis.Buffer.from(arr).toString("base64");
|
|
849
849
|
} else {
|
|
850
850
|
const bin: string[] = [];
|
|
851
851
|
arr.forEach((byte) => {
|
|
852
852
|
bin.push(String.fromCharCode(byte));
|
|
853
853
|
});
|
|
854
|
-
return
|
|
854
|
+
return tsProtoGlobalThis.btoa(bin.join(""));
|
|
855
855
|
}
|
|
856
856
|
}
|
|
857
857
|
|
|
@@ -157,7 +157,7 @@ export const FriendRequestInfo = {
|
|
|
157
157
|
declare var self: any | undefined;
|
|
158
158
|
declare var window: any | undefined;
|
|
159
159
|
declare var global: any | undefined;
|
|
160
|
-
var
|
|
160
|
+
var tsProtoGlobalThis: any = (() => {
|
|
161
161
|
if (typeof globalThis !== "undefined") {
|
|
162
162
|
return globalThis;
|
|
163
163
|
}
|
|
@@ -187,7 +187,7 @@ export type Exact<P, I extends P> = P extends Builtin ? P
|
|
|
187
187
|
|
|
188
188
|
function longToNumber(long: Long): number {
|
|
189
189
|
if (long.gt(Number.MAX_SAFE_INTEGER)) {
|
|
190
|
-
throw new
|
|
190
|
+
throw new tsProtoGlobalThis.Error("Value is larger than Number.MAX_SAFE_INTEGER");
|
|
191
191
|
}
|
|
192
192
|
return long.toNumber();
|
|
193
193
|
}
|
|
@@ -8624,7 +8624,7 @@ export const PBOpenNFTDialog = {
|
|
|
8624
8624
|
declare var self: any | undefined;
|
|
8625
8625
|
declare var window: any | undefined;
|
|
8626
8626
|
declare var global: any | undefined;
|
|
8627
|
-
var
|
|
8627
|
+
var tsProtoGlobalThis: any = (() => {
|
|
8628
8628
|
if (typeof globalThis !== "undefined") {
|
|
8629
8629
|
return globalThis;
|
|
8630
8630
|
}
|
|
@@ -8654,7 +8654,7 @@ export type Exact<P, I extends P> = P extends Builtin ? P
|
|
|
8654
8654
|
|
|
8655
8655
|
function longToNumber(long: Long): number {
|
|
8656
8656
|
if (long.gt(Number.MAX_SAFE_INTEGER)) {
|
|
8657
|
-
throw new
|
|
8657
|
+
throw new tsProtoGlobalThis.Error("Value is larger than Number.MAX_SAFE_INTEGER");
|
|
8658
8658
|
}
|
|
8659
8659
|
return long.toNumber();
|
|
8660
8660
|
}
|
|
@@ -913,7 +913,7 @@ export const AnalyticsKernelServiceDefinition = {
|
|
|
913
913
|
declare var self: any | undefined;
|
|
914
914
|
declare var window: any | undefined;
|
|
915
915
|
declare var global: any | undefined;
|
|
916
|
-
var
|
|
916
|
+
var tsProtoGlobalThis: any = (() => {
|
|
917
917
|
if (typeof globalThis !== "undefined") {
|
|
918
918
|
return globalThis;
|
|
919
919
|
}
|
|
@@ -943,7 +943,7 @@ export type Exact<P, I extends P> = P extends Builtin ? P
|
|
|
943
943
|
|
|
944
944
|
function longToNumber(long: Long): number {
|
|
945
945
|
if (long.gt(Number.MAX_SAFE_INTEGER)) {
|
|
946
|
-
throw new
|
|
946
|
+
throw new tsProtoGlobalThis.Error("Value is larger than Number.MAX_SAFE_INTEGER");
|
|
947
947
|
}
|
|
948
948
|
return long.toNumber();
|
|
949
949
|
}
|
|
@@ -209,7 +209,7 @@ export const CRDTServiceDefinition = {
|
|
|
209
209
|
declare var self: any | undefined;
|
|
210
210
|
declare var window: any | undefined;
|
|
211
211
|
declare var global: any | undefined;
|
|
212
|
-
var
|
|
212
|
+
var tsProtoGlobalThis: any = (() => {
|
|
213
213
|
if (typeof globalThis !== "undefined") {
|
|
214
214
|
return globalThis;
|
|
215
215
|
}
|
|
@@ -226,10 +226,10 @@ var globalThis: any = (() => {
|
|
|
226
226
|
})();
|
|
227
227
|
|
|
228
228
|
function bytesFromBase64(b64: string): Uint8Array {
|
|
229
|
-
if (
|
|
230
|
-
return Uint8Array.from(
|
|
229
|
+
if (tsProtoGlobalThis.Buffer) {
|
|
230
|
+
return Uint8Array.from(tsProtoGlobalThis.Buffer.from(b64, "base64"));
|
|
231
231
|
} else {
|
|
232
|
-
const bin =
|
|
232
|
+
const bin = tsProtoGlobalThis.atob(b64);
|
|
233
233
|
const arr = new Uint8Array(bin.length);
|
|
234
234
|
for (let i = 0; i < bin.length; ++i) {
|
|
235
235
|
arr[i] = bin.charCodeAt(i);
|
|
@@ -239,14 +239,14 @@ function bytesFromBase64(b64: string): Uint8Array {
|
|
|
239
239
|
}
|
|
240
240
|
|
|
241
241
|
function base64FromBytes(arr: Uint8Array): string {
|
|
242
|
-
if (
|
|
243
|
-
return
|
|
242
|
+
if (tsProtoGlobalThis.Buffer) {
|
|
243
|
+
return tsProtoGlobalThis.Buffer.from(arr).toString("base64");
|
|
244
244
|
} else {
|
|
245
245
|
const bin: string[] = [];
|
|
246
246
|
arr.forEach((byte) => {
|
|
247
247
|
bin.push(String.fromCharCode(byte));
|
|
248
248
|
});
|
|
249
|
-
return
|
|
249
|
+
return tsProtoGlobalThis.btoa(bin.join(""));
|
|
250
250
|
}
|
|
251
251
|
}
|
|
252
252
|
|
|
@@ -0,0 +1,551 @@
|
|
|
1
|
+
/* eslint-disable */
|
|
2
|
+
import _m0 from "protobufjs/minimal";
|
|
3
|
+
import { Entity } from "../../common/entity.gen";
|
|
4
|
+
|
|
5
|
+
export const protobufPackage = "decentraland.renderer.renderer_services";
|
|
6
|
+
|
|
7
|
+
export interface LoadSceneMessage {
|
|
8
|
+
/** entity and content mappings of the scene (string scene_id = 1; THIS IS NOW entity.id) */
|
|
9
|
+
entity:
|
|
10
|
+
| Entity
|
|
11
|
+
| undefined;
|
|
12
|
+
/** scene number is used to refer to the scene internally in kernel */
|
|
13
|
+
sceneNumber: number;
|
|
14
|
+
/** name for the UI, handy for portable experiences */
|
|
15
|
+
sceneName: string;
|
|
16
|
+
/** baseUrl to be used to resolve the entity's content mappings */
|
|
17
|
+
baseUrl: string;
|
|
18
|
+
/** if present, this scene will try to download asset bundles */
|
|
19
|
+
baseUrlAssetBundles: string;
|
|
20
|
+
/** this scene is bound to a wearable */
|
|
21
|
+
isPortableExperience: boolean;
|
|
22
|
+
/** this scene is a global scene, like the avatar scene */
|
|
23
|
+
isGlobalScene: boolean;
|
|
24
|
+
/** this scene uses the new runtime */
|
|
25
|
+
sdk7: boolean;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
export interface LoadSceneResult {
|
|
29
|
+
/** if false, the port should be closed and resources released. */
|
|
30
|
+
success: boolean;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
export interface GetCurrentStateMessage {
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
export interface UnloadSceneMessage {
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
export interface UnloadSceneResult {
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
export interface CRDTSceneMessage {
|
|
43
|
+
payload: Uint8Array;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
export interface CRDTSceneCurrentState {
|
|
47
|
+
hasOwnEntities: boolean;
|
|
48
|
+
payload: Uint8Array;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
function createBaseLoadSceneMessage(): LoadSceneMessage {
|
|
52
|
+
return {
|
|
53
|
+
entity: undefined,
|
|
54
|
+
sceneNumber: 0,
|
|
55
|
+
sceneName: "",
|
|
56
|
+
baseUrl: "",
|
|
57
|
+
baseUrlAssetBundles: "",
|
|
58
|
+
isPortableExperience: false,
|
|
59
|
+
isGlobalScene: false,
|
|
60
|
+
sdk7: false,
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
export const LoadSceneMessage = {
|
|
65
|
+
encode(message: LoadSceneMessage, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {
|
|
66
|
+
if (message.entity !== undefined) {
|
|
67
|
+
Entity.encode(message.entity, writer.uint32(10).fork()).ldelim();
|
|
68
|
+
}
|
|
69
|
+
if (message.sceneNumber !== 0) {
|
|
70
|
+
writer.uint32(16).int32(message.sceneNumber);
|
|
71
|
+
}
|
|
72
|
+
if (message.sceneName !== "") {
|
|
73
|
+
writer.uint32(26).string(message.sceneName);
|
|
74
|
+
}
|
|
75
|
+
if (message.baseUrl !== "") {
|
|
76
|
+
writer.uint32(34).string(message.baseUrl);
|
|
77
|
+
}
|
|
78
|
+
if (message.baseUrlAssetBundles !== "") {
|
|
79
|
+
writer.uint32(42).string(message.baseUrlAssetBundles);
|
|
80
|
+
}
|
|
81
|
+
if (message.isPortableExperience === true) {
|
|
82
|
+
writer.uint32(48).bool(message.isPortableExperience);
|
|
83
|
+
}
|
|
84
|
+
if (message.isGlobalScene === true) {
|
|
85
|
+
writer.uint32(56).bool(message.isGlobalScene);
|
|
86
|
+
}
|
|
87
|
+
if (message.sdk7 === true) {
|
|
88
|
+
writer.uint32(64).bool(message.sdk7);
|
|
89
|
+
}
|
|
90
|
+
return writer;
|
|
91
|
+
},
|
|
92
|
+
|
|
93
|
+
decode(input: _m0.Reader | Uint8Array, length?: number): LoadSceneMessage {
|
|
94
|
+
const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
|
|
95
|
+
let end = length === undefined ? reader.len : reader.pos + length;
|
|
96
|
+
const message = createBaseLoadSceneMessage();
|
|
97
|
+
while (reader.pos < end) {
|
|
98
|
+
const tag = reader.uint32();
|
|
99
|
+
switch (tag >>> 3) {
|
|
100
|
+
case 1:
|
|
101
|
+
message.entity = Entity.decode(reader, reader.uint32());
|
|
102
|
+
break;
|
|
103
|
+
case 2:
|
|
104
|
+
message.sceneNumber = reader.int32();
|
|
105
|
+
break;
|
|
106
|
+
case 3:
|
|
107
|
+
message.sceneName = reader.string();
|
|
108
|
+
break;
|
|
109
|
+
case 4:
|
|
110
|
+
message.baseUrl = reader.string();
|
|
111
|
+
break;
|
|
112
|
+
case 5:
|
|
113
|
+
message.baseUrlAssetBundles = reader.string();
|
|
114
|
+
break;
|
|
115
|
+
case 6:
|
|
116
|
+
message.isPortableExperience = reader.bool();
|
|
117
|
+
break;
|
|
118
|
+
case 7:
|
|
119
|
+
message.isGlobalScene = reader.bool();
|
|
120
|
+
break;
|
|
121
|
+
case 8:
|
|
122
|
+
message.sdk7 = reader.bool();
|
|
123
|
+
break;
|
|
124
|
+
default:
|
|
125
|
+
reader.skipType(tag & 7);
|
|
126
|
+
break;
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
return message;
|
|
130
|
+
},
|
|
131
|
+
|
|
132
|
+
fromJSON(object: any): LoadSceneMessage {
|
|
133
|
+
return {
|
|
134
|
+
entity: isSet(object.entity) ? Entity.fromJSON(object.entity) : undefined,
|
|
135
|
+
sceneNumber: isSet(object.sceneNumber) ? Number(object.sceneNumber) : 0,
|
|
136
|
+
sceneName: isSet(object.sceneName) ? String(object.sceneName) : "",
|
|
137
|
+
baseUrl: isSet(object.baseUrl) ? String(object.baseUrl) : "",
|
|
138
|
+
baseUrlAssetBundles: isSet(object.baseUrlAssetBundles) ? String(object.baseUrlAssetBundles) : "",
|
|
139
|
+
isPortableExperience: isSet(object.isPortableExperience) ? Boolean(object.isPortableExperience) : false,
|
|
140
|
+
isGlobalScene: isSet(object.isGlobalScene) ? Boolean(object.isGlobalScene) : false,
|
|
141
|
+
sdk7: isSet(object.sdk7) ? Boolean(object.sdk7) : false,
|
|
142
|
+
};
|
|
143
|
+
},
|
|
144
|
+
|
|
145
|
+
toJSON(message: LoadSceneMessage): unknown {
|
|
146
|
+
const obj: any = {};
|
|
147
|
+
message.entity !== undefined && (obj.entity = message.entity ? Entity.toJSON(message.entity) : undefined);
|
|
148
|
+
message.sceneNumber !== undefined && (obj.sceneNumber = Math.round(message.sceneNumber));
|
|
149
|
+
message.sceneName !== undefined && (obj.sceneName = message.sceneName);
|
|
150
|
+
message.baseUrl !== undefined && (obj.baseUrl = message.baseUrl);
|
|
151
|
+
message.baseUrlAssetBundles !== undefined && (obj.baseUrlAssetBundles = message.baseUrlAssetBundles);
|
|
152
|
+
message.isPortableExperience !== undefined && (obj.isPortableExperience = message.isPortableExperience);
|
|
153
|
+
message.isGlobalScene !== undefined && (obj.isGlobalScene = message.isGlobalScene);
|
|
154
|
+
message.sdk7 !== undefined && (obj.sdk7 = message.sdk7);
|
|
155
|
+
return obj;
|
|
156
|
+
},
|
|
157
|
+
|
|
158
|
+
fromPartial<I extends Exact<DeepPartial<LoadSceneMessage>, I>>(object: I): LoadSceneMessage {
|
|
159
|
+
const message = createBaseLoadSceneMessage();
|
|
160
|
+
message.entity = (object.entity !== undefined && object.entity !== null)
|
|
161
|
+
? Entity.fromPartial(object.entity)
|
|
162
|
+
: undefined;
|
|
163
|
+
message.sceneNumber = object.sceneNumber ?? 0;
|
|
164
|
+
message.sceneName = object.sceneName ?? "";
|
|
165
|
+
message.baseUrl = object.baseUrl ?? "";
|
|
166
|
+
message.baseUrlAssetBundles = object.baseUrlAssetBundles ?? "";
|
|
167
|
+
message.isPortableExperience = object.isPortableExperience ?? false;
|
|
168
|
+
message.isGlobalScene = object.isGlobalScene ?? false;
|
|
169
|
+
message.sdk7 = object.sdk7 ?? false;
|
|
170
|
+
return message;
|
|
171
|
+
},
|
|
172
|
+
};
|
|
173
|
+
|
|
174
|
+
function createBaseLoadSceneResult(): LoadSceneResult {
|
|
175
|
+
return { success: false };
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
export const LoadSceneResult = {
|
|
179
|
+
encode(message: LoadSceneResult, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {
|
|
180
|
+
if (message.success === true) {
|
|
181
|
+
writer.uint32(8).bool(message.success);
|
|
182
|
+
}
|
|
183
|
+
return writer;
|
|
184
|
+
},
|
|
185
|
+
|
|
186
|
+
decode(input: _m0.Reader | Uint8Array, length?: number): LoadSceneResult {
|
|
187
|
+
const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
|
|
188
|
+
let end = length === undefined ? reader.len : reader.pos + length;
|
|
189
|
+
const message = createBaseLoadSceneResult();
|
|
190
|
+
while (reader.pos < end) {
|
|
191
|
+
const tag = reader.uint32();
|
|
192
|
+
switch (tag >>> 3) {
|
|
193
|
+
case 1:
|
|
194
|
+
message.success = reader.bool();
|
|
195
|
+
break;
|
|
196
|
+
default:
|
|
197
|
+
reader.skipType(tag & 7);
|
|
198
|
+
break;
|
|
199
|
+
}
|
|
200
|
+
}
|
|
201
|
+
return message;
|
|
202
|
+
},
|
|
203
|
+
|
|
204
|
+
fromJSON(object: any): LoadSceneResult {
|
|
205
|
+
return { success: isSet(object.success) ? Boolean(object.success) : false };
|
|
206
|
+
},
|
|
207
|
+
|
|
208
|
+
toJSON(message: LoadSceneResult): unknown {
|
|
209
|
+
const obj: any = {};
|
|
210
|
+
message.success !== undefined && (obj.success = message.success);
|
|
211
|
+
return obj;
|
|
212
|
+
},
|
|
213
|
+
|
|
214
|
+
fromPartial<I extends Exact<DeepPartial<LoadSceneResult>, I>>(object: I): LoadSceneResult {
|
|
215
|
+
const message = createBaseLoadSceneResult();
|
|
216
|
+
message.success = object.success ?? false;
|
|
217
|
+
return message;
|
|
218
|
+
},
|
|
219
|
+
};
|
|
220
|
+
|
|
221
|
+
function createBaseGetCurrentStateMessage(): GetCurrentStateMessage {
|
|
222
|
+
return {};
|
|
223
|
+
}
|
|
224
|
+
|
|
225
|
+
export const GetCurrentStateMessage = {
|
|
226
|
+
encode(_: GetCurrentStateMessage, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {
|
|
227
|
+
return writer;
|
|
228
|
+
},
|
|
229
|
+
|
|
230
|
+
decode(input: _m0.Reader | Uint8Array, length?: number): GetCurrentStateMessage {
|
|
231
|
+
const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
|
|
232
|
+
let end = length === undefined ? reader.len : reader.pos + length;
|
|
233
|
+
const message = createBaseGetCurrentStateMessage();
|
|
234
|
+
while (reader.pos < end) {
|
|
235
|
+
const tag = reader.uint32();
|
|
236
|
+
switch (tag >>> 3) {
|
|
237
|
+
default:
|
|
238
|
+
reader.skipType(tag & 7);
|
|
239
|
+
break;
|
|
240
|
+
}
|
|
241
|
+
}
|
|
242
|
+
return message;
|
|
243
|
+
},
|
|
244
|
+
|
|
245
|
+
fromJSON(_: any): GetCurrentStateMessage {
|
|
246
|
+
return {};
|
|
247
|
+
},
|
|
248
|
+
|
|
249
|
+
toJSON(_: GetCurrentStateMessage): unknown {
|
|
250
|
+
const obj: any = {};
|
|
251
|
+
return obj;
|
|
252
|
+
},
|
|
253
|
+
|
|
254
|
+
fromPartial<I extends Exact<DeepPartial<GetCurrentStateMessage>, I>>(_: I): GetCurrentStateMessage {
|
|
255
|
+
const message = createBaseGetCurrentStateMessage();
|
|
256
|
+
return message;
|
|
257
|
+
},
|
|
258
|
+
};
|
|
259
|
+
|
|
260
|
+
function createBaseUnloadSceneMessage(): UnloadSceneMessage {
|
|
261
|
+
return {};
|
|
262
|
+
}
|
|
263
|
+
|
|
264
|
+
export const UnloadSceneMessage = {
|
|
265
|
+
encode(_: UnloadSceneMessage, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {
|
|
266
|
+
return writer;
|
|
267
|
+
},
|
|
268
|
+
|
|
269
|
+
decode(input: _m0.Reader | Uint8Array, length?: number): UnloadSceneMessage {
|
|
270
|
+
const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
|
|
271
|
+
let end = length === undefined ? reader.len : reader.pos + length;
|
|
272
|
+
const message = createBaseUnloadSceneMessage();
|
|
273
|
+
while (reader.pos < end) {
|
|
274
|
+
const tag = reader.uint32();
|
|
275
|
+
switch (tag >>> 3) {
|
|
276
|
+
default:
|
|
277
|
+
reader.skipType(tag & 7);
|
|
278
|
+
break;
|
|
279
|
+
}
|
|
280
|
+
}
|
|
281
|
+
return message;
|
|
282
|
+
},
|
|
283
|
+
|
|
284
|
+
fromJSON(_: any): UnloadSceneMessage {
|
|
285
|
+
return {};
|
|
286
|
+
},
|
|
287
|
+
|
|
288
|
+
toJSON(_: UnloadSceneMessage): unknown {
|
|
289
|
+
const obj: any = {};
|
|
290
|
+
return obj;
|
|
291
|
+
},
|
|
292
|
+
|
|
293
|
+
fromPartial<I extends Exact<DeepPartial<UnloadSceneMessage>, I>>(_: I): UnloadSceneMessage {
|
|
294
|
+
const message = createBaseUnloadSceneMessage();
|
|
295
|
+
return message;
|
|
296
|
+
},
|
|
297
|
+
};
|
|
298
|
+
|
|
299
|
+
function createBaseUnloadSceneResult(): UnloadSceneResult {
|
|
300
|
+
return {};
|
|
301
|
+
}
|
|
302
|
+
|
|
303
|
+
export const UnloadSceneResult = {
|
|
304
|
+
encode(_: UnloadSceneResult, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {
|
|
305
|
+
return writer;
|
|
306
|
+
},
|
|
307
|
+
|
|
308
|
+
decode(input: _m0.Reader | Uint8Array, length?: number): UnloadSceneResult {
|
|
309
|
+
const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
|
|
310
|
+
let end = length === undefined ? reader.len : reader.pos + length;
|
|
311
|
+
const message = createBaseUnloadSceneResult();
|
|
312
|
+
while (reader.pos < end) {
|
|
313
|
+
const tag = reader.uint32();
|
|
314
|
+
switch (tag >>> 3) {
|
|
315
|
+
default:
|
|
316
|
+
reader.skipType(tag & 7);
|
|
317
|
+
break;
|
|
318
|
+
}
|
|
319
|
+
}
|
|
320
|
+
return message;
|
|
321
|
+
},
|
|
322
|
+
|
|
323
|
+
fromJSON(_: any): UnloadSceneResult {
|
|
324
|
+
return {};
|
|
325
|
+
},
|
|
326
|
+
|
|
327
|
+
toJSON(_: UnloadSceneResult): unknown {
|
|
328
|
+
const obj: any = {};
|
|
329
|
+
return obj;
|
|
330
|
+
},
|
|
331
|
+
|
|
332
|
+
fromPartial<I extends Exact<DeepPartial<UnloadSceneResult>, I>>(_: I): UnloadSceneResult {
|
|
333
|
+
const message = createBaseUnloadSceneResult();
|
|
334
|
+
return message;
|
|
335
|
+
},
|
|
336
|
+
};
|
|
337
|
+
|
|
338
|
+
function createBaseCRDTSceneMessage(): CRDTSceneMessage {
|
|
339
|
+
return { payload: new Uint8Array() };
|
|
340
|
+
}
|
|
341
|
+
|
|
342
|
+
export const CRDTSceneMessage = {
|
|
343
|
+
encode(message: CRDTSceneMessage, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {
|
|
344
|
+
if (message.payload.length !== 0) {
|
|
345
|
+
writer.uint32(10).bytes(message.payload);
|
|
346
|
+
}
|
|
347
|
+
return writer;
|
|
348
|
+
},
|
|
349
|
+
|
|
350
|
+
decode(input: _m0.Reader | Uint8Array, length?: number): CRDTSceneMessage {
|
|
351
|
+
const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
|
|
352
|
+
let end = length === undefined ? reader.len : reader.pos + length;
|
|
353
|
+
const message = createBaseCRDTSceneMessage();
|
|
354
|
+
while (reader.pos < end) {
|
|
355
|
+
const tag = reader.uint32();
|
|
356
|
+
switch (tag >>> 3) {
|
|
357
|
+
case 1:
|
|
358
|
+
message.payload = reader.bytes();
|
|
359
|
+
break;
|
|
360
|
+
default:
|
|
361
|
+
reader.skipType(tag & 7);
|
|
362
|
+
break;
|
|
363
|
+
}
|
|
364
|
+
}
|
|
365
|
+
return message;
|
|
366
|
+
},
|
|
367
|
+
|
|
368
|
+
fromJSON(object: any): CRDTSceneMessage {
|
|
369
|
+
return { payload: isSet(object.payload) ? bytesFromBase64(object.payload) : new Uint8Array() };
|
|
370
|
+
},
|
|
371
|
+
|
|
372
|
+
toJSON(message: CRDTSceneMessage): unknown {
|
|
373
|
+
const obj: any = {};
|
|
374
|
+
message.payload !== undefined &&
|
|
375
|
+
(obj.payload = base64FromBytes(message.payload !== undefined ? message.payload : new Uint8Array()));
|
|
376
|
+
return obj;
|
|
377
|
+
},
|
|
378
|
+
|
|
379
|
+
fromPartial<I extends Exact<DeepPartial<CRDTSceneMessage>, I>>(object: I): CRDTSceneMessage {
|
|
380
|
+
const message = createBaseCRDTSceneMessage();
|
|
381
|
+
message.payload = object.payload ?? new Uint8Array();
|
|
382
|
+
return message;
|
|
383
|
+
},
|
|
384
|
+
};
|
|
385
|
+
|
|
386
|
+
function createBaseCRDTSceneCurrentState(): CRDTSceneCurrentState {
|
|
387
|
+
return { hasOwnEntities: false, payload: new Uint8Array() };
|
|
388
|
+
}
|
|
389
|
+
|
|
390
|
+
export const CRDTSceneCurrentState = {
|
|
391
|
+
encode(message: CRDTSceneCurrentState, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {
|
|
392
|
+
if (message.hasOwnEntities === true) {
|
|
393
|
+
writer.uint32(8).bool(message.hasOwnEntities);
|
|
394
|
+
}
|
|
395
|
+
if (message.payload.length !== 0) {
|
|
396
|
+
writer.uint32(18).bytes(message.payload);
|
|
397
|
+
}
|
|
398
|
+
return writer;
|
|
399
|
+
},
|
|
400
|
+
|
|
401
|
+
decode(input: _m0.Reader | Uint8Array, length?: number): CRDTSceneCurrentState {
|
|
402
|
+
const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
|
|
403
|
+
let end = length === undefined ? reader.len : reader.pos + length;
|
|
404
|
+
const message = createBaseCRDTSceneCurrentState();
|
|
405
|
+
while (reader.pos < end) {
|
|
406
|
+
const tag = reader.uint32();
|
|
407
|
+
switch (tag >>> 3) {
|
|
408
|
+
case 1:
|
|
409
|
+
message.hasOwnEntities = reader.bool();
|
|
410
|
+
break;
|
|
411
|
+
case 2:
|
|
412
|
+
message.payload = reader.bytes();
|
|
413
|
+
break;
|
|
414
|
+
default:
|
|
415
|
+
reader.skipType(tag & 7);
|
|
416
|
+
break;
|
|
417
|
+
}
|
|
418
|
+
}
|
|
419
|
+
return message;
|
|
420
|
+
},
|
|
421
|
+
|
|
422
|
+
fromJSON(object: any): CRDTSceneCurrentState {
|
|
423
|
+
return {
|
|
424
|
+
hasOwnEntities: isSet(object.hasOwnEntities) ? Boolean(object.hasOwnEntities) : false,
|
|
425
|
+
payload: isSet(object.payload) ? bytesFromBase64(object.payload) : new Uint8Array(),
|
|
426
|
+
};
|
|
427
|
+
},
|
|
428
|
+
|
|
429
|
+
toJSON(message: CRDTSceneCurrentState): unknown {
|
|
430
|
+
const obj: any = {};
|
|
431
|
+
message.hasOwnEntities !== undefined && (obj.hasOwnEntities = message.hasOwnEntities);
|
|
432
|
+
message.payload !== undefined &&
|
|
433
|
+
(obj.payload = base64FromBytes(message.payload !== undefined ? message.payload : new Uint8Array()));
|
|
434
|
+
return obj;
|
|
435
|
+
},
|
|
436
|
+
|
|
437
|
+
fromPartial<I extends Exact<DeepPartial<CRDTSceneCurrentState>, I>>(object: I): CRDTSceneCurrentState {
|
|
438
|
+
const message = createBaseCRDTSceneCurrentState();
|
|
439
|
+
message.hasOwnEntities = object.hasOwnEntities ?? false;
|
|
440
|
+
message.payload = object.payload ?? new Uint8Array();
|
|
441
|
+
return message;
|
|
442
|
+
},
|
|
443
|
+
};
|
|
444
|
+
|
|
445
|
+
/**
|
|
446
|
+
* The SceneController exists once per RPC port. Every scene is a independent
|
|
447
|
+
* port and thus, rpcContext and its lifecycle is controlled by the SceneController.
|
|
448
|
+
*/
|
|
449
|
+
export type RpcSceneControllerServiceDefinition = typeof RpcSceneControllerServiceDefinition;
|
|
450
|
+
export const RpcSceneControllerServiceDefinition = {
|
|
451
|
+
name: "RpcSceneControllerService",
|
|
452
|
+
fullName: "decentraland.renderer.renderer_services.RpcSceneControllerService",
|
|
453
|
+
methods: {
|
|
454
|
+
/** creates a scene in the renderer */
|
|
455
|
+
loadScene: {
|
|
456
|
+
name: "LoadScene",
|
|
457
|
+
requestType: LoadSceneMessage,
|
|
458
|
+
requestStream: false,
|
|
459
|
+
responseType: LoadSceneResult,
|
|
460
|
+
responseStream: false,
|
|
461
|
+
options: {},
|
|
462
|
+
},
|
|
463
|
+
/** unloads the scene and releases its resources */
|
|
464
|
+
unloadScene: {
|
|
465
|
+
name: "UnloadScene",
|
|
466
|
+
requestType: UnloadSceneMessage,
|
|
467
|
+
requestStream: false,
|
|
468
|
+
responseType: UnloadSceneResult,
|
|
469
|
+
responseStream: false,
|
|
470
|
+
options: {},
|
|
471
|
+
},
|
|
472
|
+
/** back and forth of CRDT messages */
|
|
473
|
+
sendCrdt: {
|
|
474
|
+
name: "SendCrdt",
|
|
475
|
+
requestType: CRDTSceneMessage,
|
|
476
|
+
requestStream: false,
|
|
477
|
+
responseType: CRDTSceneMessage,
|
|
478
|
+
responseStream: false,
|
|
479
|
+
options: {},
|
|
480
|
+
},
|
|
481
|
+
/** back and forth of CRDT messages */
|
|
482
|
+
getCurrentState: {
|
|
483
|
+
name: "GetCurrentState",
|
|
484
|
+
requestType: GetCurrentStateMessage,
|
|
485
|
+
requestStream: false,
|
|
486
|
+
responseType: CRDTSceneCurrentState,
|
|
487
|
+
responseStream: false,
|
|
488
|
+
options: {},
|
|
489
|
+
},
|
|
490
|
+
},
|
|
491
|
+
} as const;
|
|
492
|
+
|
|
493
|
+
declare var self: any | undefined;
|
|
494
|
+
declare var window: any | undefined;
|
|
495
|
+
declare var global: any | undefined;
|
|
496
|
+
var tsProtoGlobalThis: any = (() => {
|
|
497
|
+
if (typeof globalThis !== "undefined") {
|
|
498
|
+
return globalThis;
|
|
499
|
+
}
|
|
500
|
+
if (typeof self !== "undefined") {
|
|
501
|
+
return self;
|
|
502
|
+
}
|
|
503
|
+
if (typeof window !== "undefined") {
|
|
504
|
+
return window;
|
|
505
|
+
}
|
|
506
|
+
if (typeof global !== "undefined") {
|
|
507
|
+
return global;
|
|
508
|
+
}
|
|
509
|
+
throw "Unable to locate global object";
|
|
510
|
+
})();
|
|
511
|
+
|
|
512
|
+
function bytesFromBase64(b64: string): Uint8Array {
|
|
513
|
+
if (tsProtoGlobalThis.Buffer) {
|
|
514
|
+
return Uint8Array.from(tsProtoGlobalThis.Buffer.from(b64, "base64"));
|
|
515
|
+
} else {
|
|
516
|
+
const bin = tsProtoGlobalThis.atob(b64);
|
|
517
|
+
const arr = new Uint8Array(bin.length);
|
|
518
|
+
for (let i = 0; i < bin.length; ++i) {
|
|
519
|
+
arr[i] = bin.charCodeAt(i);
|
|
520
|
+
}
|
|
521
|
+
return arr;
|
|
522
|
+
}
|
|
523
|
+
}
|
|
524
|
+
|
|
525
|
+
function base64FromBytes(arr: Uint8Array): string {
|
|
526
|
+
if (tsProtoGlobalThis.Buffer) {
|
|
527
|
+
return tsProtoGlobalThis.Buffer.from(arr).toString("base64");
|
|
528
|
+
} else {
|
|
529
|
+
const bin: string[] = [];
|
|
530
|
+
arr.forEach((byte) => {
|
|
531
|
+
bin.push(String.fromCharCode(byte));
|
|
532
|
+
});
|
|
533
|
+
return tsProtoGlobalThis.btoa(bin.join(""));
|
|
534
|
+
}
|
|
535
|
+
}
|
|
536
|
+
|
|
537
|
+
type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;
|
|
538
|
+
|
|
539
|
+
export type DeepPartial<T> = T extends Builtin ? T
|
|
540
|
+
: T extends Array<infer U> ? Array<DeepPartial<U>> : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>>
|
|
541
|
+
: T extends { $case: string } ? { [K in keyof Omit<T, "$case">]?: DeepPartial<T[K]> } & { $case: T["$case"] }
|
|
542
|
+
: T extends {} ? { [K in keyof T]?: DeepPartial<T[K]> }
|
|
543
|
+
: Partial<T>;
|
|
544
|
+
|
|
545
|
+
type KeysOfUnion<T> = T extends T ? keyof T : never;
|
|
546
|
+
export type Exact<P, I extends P> = P extends Builtin ? P
|
|
547
|
+
: P & { [K in keyof P]: Exact<P[K], I[K]> } & { [K in Exclude<keyof I, KeysOfUnion<P>>]: never };
|
|
548
|
+
|
|
549
|
+
function isSet(value: any): boolean {
|
|
550
|
+
return value !== null && value !== undefined;
|
|
551
|
+
}
|
|
@@ -79,7 +79,7 @@ export const TransportServiceDefinition = {
|
|
|
79
79
|
declare var self: any | undefined;
|
|
80
80
|
declare var window: any | undefined;
|
|
81
81
|
declare var global: any | undefined;
|
|
82
|
-
var
|
|
82
|
+
var tsProtoGlobalThis: any = (() => {
|
|
83
83
|
if (typeof globalThis !== "undefined") {
|
|
84
84
|
return globalThis;
|
|
85
85
|
}
|
|
@@ -96,10 +96,10 @@ var globalThis: any = (() => {
|
|
|
96
96
|
})();
|
|
97
97
|
|
|
98
98
|
function bytesFromBase64(b64: string): Uint8Array {
|
|
99
|
-
if (
|
|
100
|
-
return Uint8Array.from(
|
|
99
|
+
if (tsProtoGlobalThis.Buffer) {
|
|
100
|
+
return Uint8Array.from(tsProtoGlobalThis.Buffer.from(b64, "base64"));
|
|
101
101
|
} else {
|
|
102
|
-
const bin =
|
|
102
|
+
const bin = tsProtoGlobalThis.atob(b64);
|
|
103
103
|
const arr = new Uint8Array(bin.length);
|
|
104
104
|
for (let i = 0; i < bin.length; ++i) {
|
|
105
105
|
arr[i] = bin.charCodeAt(i);
|
|
@@ -109,14 +109,14 @@ function bytesFromBase64(b64: string): Uint8Array {
|
|
|
109
109
|
}
|
|
110
110
|
|
|
111
111
|
function base64FromBytes(arr: Uint8Array): string {
|
|
112
|
-
if (
|
|
113
|
-
return
|
|
112
|
+
if (tsProtoGlobalThis.Buffer) {
|
|
113
|
+
return tsProtoGlobalThis.Buffer.from(arr).toString("base64");
|
|
114
114
|
} else {
|
|
115
115
|
const bin: string[] = [];
|
|
116
116
|
arr.forEach((byte) => {
|
|
117
117
|
bin.push(String.fromCharCode(byte));
|
|
118
118
|
});
|
|
119
|
-
return
|
|
119
|
+
return tsProtoGlobalThis.btoa(bin.join(""));
|
|
120
120
|
}
|
|
121
121
|
}
|
|
122
122
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dcl/protocol",
|
|
3
|
-
"version": "1.0.0-
|
|
3
|
+
"version": "1.0.0-3761391741.commit-d4dfa66",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"scripts": {
|
|
@@ -25,5 +25,5 @@
|
|
|
25
25
|
"out-ts",
|
|
26
26
|
"public"
|
|
27
27
|
],
|
|
28
|
-
"commit": "
|
|
28
|
+
"commit": "d4dfa66fc86c7c10b8e7c302ae1723c6734691b1"
|
|
29
29
|
}
|
|
@@ -5,7 +5,7 @@ import "decentraland/common/content_mapping.proto";
|
|
|
5
5
|
// Entity schema compliant with https://rfc.decentraland.org/adr/ADR-80
|
|
6
6
|
|
|
7
7
|
message Entity {
|
|
8
|
-
|
|
8
|
+
string id = 1;
|
|
9
9
|
repeated string pointers = 2;
|
|
10
10
|
string metadata = 3;
|
|
11
11
|
uint32 timestamp = 4;
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
syntax = "proto3";
|
|
2
|
+
package decentraland.renderer.renderer_services;
|
|
3
|
+
import "decentraland/common/entity.proto";
|
|
4
|
+
|
|
5
|
+
message LoadSceneMessage {
|
|
6
|
+
// entity and content mappings of the scene (string scene_id = 1; THIS IS NOW entity.id)
|
|
7
|
+
decentraland.common.Entity entity = 1;
|
|
8
|
+
// scene number is used to refer to the scene internally in kernel
|
|
9
|
+
int32 scene_number = 2;
|
|
10
|
+
// name for the UI, handy for portable experiences
|
|
11
|
+
string scene_name = 3;
|
|
12
|
+
// baseUrl to be used to resolve the entity's content mappings
|
|
13
|
+
string base_url = 4;
|
|
14
|
+
// if present, this scene will try to download asset bundles
|
|
15
|
+
string base_url_asset_bundles = 5;
|
|
16
|
+
// this scene is bound to a wearable
|
|
17
|
+
bool is_portable_experience = 6;
|
|
18
|
+
// this scene is a global scene, like the avatar scene
|
|
19
|
+
bool is_global_scene = 7;
|
|
20
|
+
// this scene uses the new runtime
|
|
21
|
+
bool sdk7 = 8;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
message LoadSceneResult {
|
|
25
|
+
// if false, the port should be closed and resources released.
|
|
26
|
+
bool success = 1;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
message GetCurrentStateMessage {}
|
|
30
|
+
message UnloadSceneMessage {}
|
|
31
|
+
message UnloadSceneResult {}
|
|
32
|
+
|
|
33
|
+
message CRDTSceneMessage {
|
|
34
|
+
bytes payload = 1;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
message CRDTSceneCurrentState {
|
|
38
|
+
bool has_own_entities = 1;
|
|
39
|
+
bytes payload = 2;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
// The SceneController exists once per RPC port. Every scene is a independent
|
|
44
|
+
// port and thus, rpcContext and its lifecycle is controlled by the SceneController.
|
|
45
|
+
service RpcSceneControllerService {
|
|
46
|
+
// creates a scene in the renderer
|
|
47
|
+
rpc LoadScene(LoadSceneMessage) returns (LoadSceneResult){}
|
|
48
|
+
// unloads the scene and releases its resources
|
|
49
|
+
rpc UnloadScene(UnloadSceneMessage) returns (UnloadSceneResult){}
|
|
50
|
+
// back and forth of CRDT messages
|
|
51
|
+
rpc SendCrdt(CRDTSceneMessage) returns (CRDTSceneMessage) {}
|
|
52
|
+
// back and forth of CRDT messages
|
|
53
|
+
rpc GetCurrentState(GetCurrentStateMessage) returns (CRDTSceneCurrentState) {}
|
|
54
|
+
}
|
|
@@ -4,6 +4,7 @@ import public "decentraland/renderer/engine_interface.proto";
|
|
|
4
4
|
import public "decentraland/renderer/renderer_services/crdt.proto";
|
|
5
5
|
import public "decentraland/renderer/renderer_services/transport.proto";
|
|
6
6
|
import public "decentraland/renderer/renderer_services/emotes_renderer.proto";
|
|
7
|
+
import public "decentraland/renderer/renderer_services/scene_controller.proto";
|
|
7
8
|
import public "decentraland/renderer/renderer_services/friend_request_renderer.proto";
|
|
8
9
|
import public "decentraland/renderer/kernel_services/emotes_kernel.proto";
|
|
9
10
|
import public "decentraland/renderer/kernel_services/analytics.proto";
|