@dcl/protocol 1.0.0-2569677750.commit-6ce832a → 1.0.0-25751414897.commit-a9f7d81

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 (529) hide show
  1. package/README.md +68 -0
  2. package/out-js/about.gen.d.ts +1 -0
  3. package/out-js/about.gen.js +6 -0
  4. package/out-js/about.gen.js.map +1 -0
  5. package/out-js/comms.gen.d.ts +1 -0
  6. package/out-js/comms.gen.js +6 -0
  7. package/out-js/comms.gen.js.map +1 -0
  8. package/out-js/decentraland/common/border_rect.gen.d.ts +49 -0
  9. package/out-js/decentraland/common/border_rect.gen.js +201 -0
  10. package/out-js/decentraland/common/border_rect.gen.js.map +1 -0
  11. package/out-js/decentraland/common/colors.gen.d.ts +59 -0
  12. package/out-js/decentraland/common/colors.gen.js +260 -0
  13. package/out-js/decentraland/common/colors.gen.js.map +1 -0
  14. package/out-js/decentraland/common/content_mapping.gen.d.ts +31 -0
  15. package/out-js/decentraland/common/content_mapping.gen.js +80 -0
  16. package/out-js/decentraland/common/content_mapping.gen.js.map +1 -0
  17. package/out-js/decentraland/common/sdk/user_data.gen.d.ts +63 -0
  18. package/out-js/decentraland/common/sdk/user_data.gen.js +330 -0
  19. package/out-js/decentraland/common/sdk/user_data.gen.js.map +1 -0
  20. package/out-js/decentraland/common/texture.gen.d.ts +123 -0
  21. package/out-js/decentraland/common/texture.gen.js +575 -0
  22. package/out-js/decentraland/common/texture.gen.js.map +1 -0
  23. package/out-js/decentraland/common/vectors.gen.d.ts +71 -0
  24. package/out-js/decentraland/common/vectors.gen.js +338 -0
  25. package/out-js/decentraland/common/vectors.gen.js.map +1 -0
  26. package/out-js/decentraland/kernel/apis/comms_api.gen.d.ts +76 -0
  27. package/out-js/decentraland/kernel/apis/comms_api.gen.js +257 -0
  28. package/out-js/decentraland/kernel/apis/comms_api.gen.js.map +1 -0
  29. package/out-js/decentraland/kernel/apis/communications_controller.gen.d.ts +105 -0
  30. package/out-js/decentraland/kernel/apis/communications_controller.gen.js +400 -0
  31. package/out-js/decentraland/kernel/apis/communications_controller.gen.js.map +1 -0
  32. package/out-js/decentraland/kernel/apis/dev_tools.gen.d.ts +58 -0
  33. package/out-js/decentraland/kernel/apis/dev_tools.gen.js +142 -0
  34. package/out-js/decentraland/kernel/apis/dev_tools.gen.js.map +1 -0
  35. package/out-js/decentraland/kernel/apis/engine_api.gen.d.ts +338 -0
  36. package/out-js/decentraland/kernel/apis/engine_api.gen.js +1452 -0
  37. package/out-js/decentraland/kernel/apis/engine_api.gen.js.map +1 -0
  38. package/out-js/decentraland/kernel/apis/environment_api.gen.d.ts +283 -0
  39. package/out-js/decentraland/kernel/apis/environment_api.gen.js +1122 -0
  40. package/out-js/decentraland/kernel/apis/environment_api.gen.js.map +1 -0
  41. package/out-js/decentraland/kernel/apis/ethereum_controller.gen.d.ts +225 -0
  42. package/out-js/decentraland/kernel/apis/ethereum_controller.gen.js +878 -0
  43. package/out-js/decentraland/kernel/apis/ethereum_controller.gen.js.map +1 -0
  44. package/out-js/decentraland/kernel/apis/parcel_identity.gen.d.ts +146 -0
  45. package/out-js/decentraland/kernel/apis/parcel_identity.gen.js +557 -0
  46. package/out-js/decentraland/kernel/apis/parcel_identity.gen.js.map +1 -0
  47. package/out-js/decentraland/kernel/apis/permissions.gen.d.ts +100 -0
  48. package/out-js/decentraland/kernel/apis/permissions.gen.js +360 -0
  49. package/out-js/decentraland/kernel/apis/permissions.gen.js.map +1 -0
  50. package/out-js/decentraland/kernel/apis/players.gen.d.ts +127 -0
  51. package/out-js/decentraland/kernel/apis/players.gen.js +372 -0
  52. package/out-js/decentraland/kernel/apis/players.gen.js.map +1 -0
  53. package/out-js/decentraland/kernel/apis/portable_experiences.gen.d.ts +178 -0
  54. package/out-js/decentraland/kernel/apis/portable_experiences.gen.js +607 -0
  55. package/out-js/decentraland/kernel/apis/portable_experiences.gen.js.map +1 -0
  56. package/out-js/decentraland/kernel/apis/restricted_actions.gen.d.ts +391 -0
  57. package/out-js/decentraland/kernel/apis/restricted_actions.gen.js +1359 -0
  58. package/out-js/decentraland/kernel/apis/restricted_actions.gen.js.map +1 -0
  59. package/out-js/decentraland/kernel/apis/runtime.gen.d.ts +217 -0
  60. package/out-js/decentraland/kernel/apis/runtime.gen.js +801 -0
  61. package/out-js/decentraland/kernel/apis/runtime.gen.js.map +1 -0
  62. package/out-js/decentraland/kernel/apis/scene.gen.d.ts +59 -0
  63. package/out-js/decentraland/kernel/apis/scene.gen.js +171 -0
  64. package/out-js/decentraland/kernel/apis/scene.gen.js.map +1 -0
  65. package/out-js/decentraland/kernel/apis/signed_fetch.gen.d.ts +139 -0
  66. package/out-js/decentraland/kernel/apis/signed_fetch.gen.js +615 -0
  67. package/out-js/decentraland/kernel/apis/signed_fetch.gen.js.map +1 -0
  68. package/out-js/decentraland/kernel/apis/social_controller.gen.d.ts +72 -0
  69. package/out-js/decentraland/kernel/apis/social_controller.gen.js +207 -0
  70. package/out-js/decentraland/kernel/apis/social_controller.gen.js.map +1 -0
  71. package/out-js/decentraland/kernel/apis/testing.gen.d.ts +249 -0
  72. package/out-js/decentraland/kernel/apis/testing.gen.js +1073 -0
  73. package/out-js/decentraland/kernel/apis/testing.gen.js.map +1 -0
  74. package/out-js/decentraland/kernel/apis/user_action_module.gen.d.ts +56 -0
  75. package/out-js/decentraland/kernel/apis/user_action_module.gen.js +128 -0
  76. package/out-js/decentraland/kernel/apis/user_action_module.gen.js.map +1 -0
  77. package/out-js/decentraland/kernel/apis/user_identity.gen.d.ts +86 -0
  78. package/out-js/decentraland/kernel/apis/user_identity.gen.js +236 -0
  79. package/out-js/decentraland/kernel/apis/user_identity.gen.js.map +1 -0
  80. package/out-js/decentraland/kernel/comms/rfc4/comms.gen.d.ts +261 -0
  81. package/out-js/decentraland/kernel/comms/rfc4/comms.gen.js +1639 -0
  82. package/out-js/decentraland/kernel/comms/rfc4/comms.gen.js.map +1 -0
  83. package/out-js/decentraland/kernel/comms/rfc5/ws_comms.gen.d.ts +183 -0
  84. package/out-js/decentraland/kernel/comms/rfc5/ws_comms.gen.js +906 -0
  85. package/out-js/decentraland/kernel/comms/rfc5/ws_comms.gen.js.map +1 -0
  86. package/out-js/decentraland/kernel/comms/v3/archipelago.gen.d.ts +224 -0
  87. package/out-js/decentraland/kernel/comms/v3/archipelago.gen.js +1204 -0
  88. package/out-js/decentraland/kernel/comms/v3/archipelago.gen.js.map +1 -0
  89. package/out-js/decentraland/quests/definitions.gen.d.ts +541 -0
  90. package/out-js/decentraland/quests/definitions.gen.js +2728 -0
  91. package/out-js/decentraland/quests/definitions.gen.js.map +1 -0
  92. package/out-js/decentraland/realm/about.gen.d.ts +229 -0
  93. package/out-js/decentraland/realm/about.gen.js +1185 -0
  94. package/out-js/decentraland/realm/about.gen.js.map +1 -0
  95. package/out-js/decentraland/sdk/components/animator.gen.d.ts +62 -0
  96. package/out-js/decentraland/sdk/components/animator.gen.js +192 -0
  97. package/out-js/decentraland/sdk/components/animator.gen.js.map +1 -0
  98. package/out-js/decentraland/sdk/components/audio_source.gen.d.ts +61 -0
  99. package/out-js/decentraland/sdk/components/audio_source.gen.js +151 -0
  100. package/out-js/decentraland/sdk/components/audio_source.gen.js.map +1 -0
  101. package/out-js/decentraland/sdk/components/audio_stream.gen.d.ts +50 -0
  102. package/out-js/decentraland/sdk/components/audio_stream.gen.js +138 -0
  103. package/out-js/decentraland/sdk/components/audio_stream.gen.js.map +1 -0
  104. package/out-js/decentraland/sdk/components/avatar_attach.gen.d.ts +76 -0
  105. package/out-js/decentraland/sdk/components/avatar_attach.gen.js +262 -0
  106. package/out-js/decentraland/sdk/components/avatar_attach.gen.js.map +1 -0
  107. package/out-js/decentraland/sdk/components/avatar_base.gen.d.ts +36 -0
  108. package/out-js/decentraland/sdk/components/avatar_base.gen.js +129 -0
  109. package/out-js/decentraland/sdk/components/avatar_base.gen.js.map +1 -0
  110. package/out-js/decentraland/sdk/components/avatar_emote_command.gen.d.ts +37 -0
  111. package/out-js/decentraland/sdk/components/avatar_emote_command.gen.js +95 -0
  112. package/out-js/decentraland/sdk/components/avatar_emote_command.gen.js.map +1 -0
  113. package/out-js/decentraland/sdk/components/avatar_equipped_data.gen.d.ts +38 -0
  114. package/out-js/decentraland/sdk/components/avatar_equipped_data.gen.js +107 -0
  115. package/out-js/decentraland/sdk/components/avatar_equipped_data.gen.js.map +1 -0
  116. package/out-js/decentraland/sdk/components/avatar_locomotion_settings.gen.d.ts +45 -0
  117. package/out-js/decentraland/sdk/components/avatar_locomotion_settings.gen.js +138 -0
  118. package/out-js/decentraland/sdk/components/avatar_locomotion_settings.gen.js.map +1 -0
  119. package/out-js/decentraland/sdk/components/avatar_modifier_area.gen.d.ts +101 -0
  120. package/out-js/decentraland/sdk/components/avatar_modifier_area.gen.js +391 -0
  121. package/out-js/decentraland/sdk/components/avatar_modifier_area.gen.js.map +1 -0
  122. package/out-js/decentraland/sdk/components/avatar_movement.gen.d.ts +36 -0
  123. package/out-js/decentraland/sdk/components/avatar_movement.gen.js +113 -0
  124. package/out-js/decentraland/sdk/components/avatar_movement.gen.js.map +1 -0
  125. package/out-js/decentraland/sdk/components/avatar_movement_info.gen.d.ts +48 -0
  126. package/out-js/decentraland/sdk/components/avatar_movement_info.gen.js +207 -0
  127. package/out-js/decentraland/sdk/components/avatar_movement_info.gen.js.map +1 -0
  128. package/out-js/decentraland/sdk/components/avatar_shape.gen.d.ts +76 -0
  129. package/out-js/decentraland/sdk/components/avatar_shape.gen.js +282 -0
  130. package/out-js/decentraland/sdk/components/avatar_shape.gen.js.map +1 -0
  131. package/out-js/decentraland/sdk/components/billboard.gen.d.ts +54 -0
  132. package/out-js/decentraland/sdk/components/billboard.gen.js +128 -0
  133. package/out-js/decentraland/sdk/components/billboard.gen.js.map +1 -0
  134. package/out-js/decentraland/sdk/components/camera_mode.gen.d.ts +36 -0
  135. package/out-js/decentraland/sdk/components/camera_mode.gen.js +70 -0
  136. package/out-js/decentraland/sdk/components/camera_mode.gen.js.map +1 -0
  137. package/out-js/decentraland/sdk/components/camera_mode_area.gen.d.ts +82 -0
  138. package/out-js/decentraland/sdk/components/camera_mode_area.gen.js +254 -0
  139. package/out-js/decentraland/sdk/components/camera_mode_area.gen.js.map +1 -0
  140. package/out-js/decentraland/sdk/components/common/camera_type.gen.d.ts +10 -0
  141. package/out-js/decentraland/sdk/components/common/camera_type.gen.js +46 -0
  142. package/out-js/decentraland/sdk/components/common/camera_type.gen.js.map +1 -0
  143. package/out-js/decentraland/sdk/components/common/id.gen.d.ts +1 -0
  144. package/out-js/decentraland/sdk/components/common/id.gen.js +6 -0
  145. package/out-js/decentraland/sdk/components/common/id.gen.js.map +1 -0
  146. package/out-js/decentraland/sdk/components/common/input_action.gen.d.ts +43 -0
  147. package/out-js/decentraland/sdk/components/common/input_action.gen.js +226 -0
  148. package/out-js/decentraland/sdk/components/common/input_action.gen.js.map +1 -0
  149. package/out-js/decentraland/sdk/components/common/loading_state.gen.d.ts +11 -0
  150. package/out-js/decentraland/sdk/components/common/loading_state.gen.js +57 -0
  151. package/out-js/decentraland/sdk/components/common/loading_state.gen.js.map +1 -0
  152. package/out-js/decentraland/sdk/components/common/raycast_hit.gen.d.ts +45 -0
  153. package/out-js/decentraland/sdk/components/common/raycast_hit.gen.js +163 -0
  154. package/out-js/decentraland/sdk/components/common/raycast_hit.gen.js.map +1 -0
  155. package/out-js/decentraland/sdk/components/common/texts.gen.d.ts +23 -0
  156. package/out-js/decentraland/sdk/components/common/texts.gen.js +120 -0
  157. package/out-js/decentraland/sdk/components/common/texts.gen.js.map +1 -0
  158. package/out-js/decentraland/sdk/components/engine_info.gen.d.ts +41 -0
  159. package/out-js/decentraland/sdk/components/engine_info.gen.js +95 -0
  160. package/out-js/decentraland/sdk/components/engine_info.gen.js.map +1 -0
  161. package/out-js/decentraland/sdk/components/gltf_container.gen.d.ts +41 -0
  162. package/out-js/decentraland/sdk/components/gltf_container.gen.js +101 -0
  163. package/out-js/decentraland/sdk/components/gltf_container.gen.js.map +1 -0
  164. package/out-js/decentraland/sdk/components/gltf_container_loading_state.gen.d.ts +54 -0
  165. package/out-js/decentraland/sdk/components/gltf_container_loading_state.gen.js +157 -0
  166. package/out-js/decentraland/sdk/components/gltf_container_loading_state.gen.js.map +1 -0
  167. package/out-js/decentraland/sdk/components/gltf_node.gen.d.ts +66 -0
  168. package/out-js/decentraland/sdk/components/gltf_node.gen.js +69 -0
  169. package/out-js/decentraland/sdk/components/gltf_node.gen.js.map +1 -0
  170. package/out-js/decentraland/sdk/components/gltf_node_modifiers.gen.d.ts +57 -0
  171. package/out-js/decentraland/sdk/components/gltf_node_modifiers.gen.js +164 -0
  172. package/out-js/decentraland/sdk/components/gltf_node_modifiers.gen.js.map +1 -0
  173. package/out-js/decentraland/sdk/components/gltf_node_state.gen.d.ts +43 -0
  174. package/out-js/decentraland/sdk/components/gltf_node_state.gen.js +122 -0
  175. package/out-js/decentraland/sdk/components/gltf_node_state.gen.js.map +1 -0
  176. package/out-js/decentraland/sdk/components/input_modifier.gen.d.ts +52 -0
  177. package/out-js/decentraland/sdk/components/input_modifier.gen.js +233 -0
  178. package/out-js/decentraland/sdk/components/input_modifier.gen.js.map +1 -0
  179. package/out-js/decentraland/sdk/components/material.gen.d.ts +128 -0
  180. package/out-js/decentraland/sdk/components/material.gen.js +620 -0
  181. package/out-js/decentraland/sdk/components/material.gen.js.map +1 -0
  182. package/out-js/decentraland/sdk/components/mesh_collider.gen.d.ts +147 -0
  183. package/out-js/decentraland/sdk/components/mesh_collider.gen.js +556 -0
  184. package/out-js/decentraland/sdk/components/mesh_collider.gen.js.map +1 -0
  185. package/out-js/decentraland/sdk/components/mesh_renderer.gen.d.ts +120 -0
  186. package/out-js/decentraland/sdk/components/mesh_renderer.gen.js +468 -0
  187. package/out-js/decentraland/sdk/components/mesh_renderer.gen.js.map +1 -0
  188. package/out-js/decentraland/sdk/components/nft_shape.gen.d.ts +74 -0
  189. package/out-js/decentraland/sdk/components/nft_shape.gen.js +259 -0
  190. package/out-js/decentraland/sdk/components/nft_shape.gen.js.map +1 -0
  191. package/out-js/decentraland/sdk/components/player_identity_data.gen.d.ts +37 -0
  192. package/out-js/decentraland/sdk/components/player_identity_data.gen.js +83 -0
  193. package/out-js/decentraland/sdk/components/player_identity_data.gen.js.map +1 -0
  194. package/out-js/decentraland/sdk/components/pointer_events.gen.d.ts +110 -0
  195. package/out-js/decentraland/sdk/components/pointer_events.gen.js +306 -0
  196. package/out-js/decentraland/sdk/components/pointer_events.gen.js.map +1 -0
  197. package/out-js/decentraland/sdk/components/pointer_events_result.gen.d.ts +42 -0
  198. package/out-js/decentraland/sdk/components/pointer_events_result.gen.js +133 -0
  199. package/out-js/decentraland/sdk/components/pointer_events_result.gen.js.map +1 -0
  200. package/out-js/decentraland/sdk/components/pointer_lock.gen.d.ts +35 -0
  201. package/out-js/decentraland/sdk/components/pointer_lock.gen.js +69 -0
  202. package/out-js/decentraland/sdk/components/pointer_lock.gen.js.map +1 -0
  203. package/out-js/decentraland/sdk/components/raycast.gen.d.ts +92 -0
  204. package/out-js/decentraland/sdk/components/raycast.gen.js +336 -0
  205. package/out-js/decentraland/sdk/components/raycast.gen.js.map +1 -0
  206. package/out-js/decentraland/sdk/components/raycast_result.gen.d.ts +48 -0
  207. package/out-js/decentraland/sdk/components/raycast_result.gen.js +132 -0
  208. package/out-js/decentraland/sdk/components/raycast_result.gen.js.map +1 -0
  209. package/out-js/decentraland/sdk/components/realm_info.gen.d.ts +43 -0
  210. package/out-js/decentraland/sdk/components/realm_info.gen.js +151 -0
  211. package/out-js/decentraland/sdk/components/realm_info.gen.js.map +1 -0
  212. package/out-js/decentraland/sdk/components/text_shape.gen.d.ts +81 -0
  213. package/out-js/decentraland/sdk/components/text_shape.gen.js +345 -0
  214. package/out-js/decentraland/sdk/components/text_shape.gen.js.map +1 -0
  215. package/out-js/decentraland/sdk/components/tween.gen.d.ts +220 -0
  216. package/out-js/decentraland/sdk/components/tween.gen.js +1213 -0
  217. package/out-js/decentraland/sdk/components/tween.gen.js.map +1 -0
  218. package/out-js/decentraland/sdk/components/tween_sequence.gen.d.ts +39 -0
  219. package/out-js/decentraland/sdk/components/tween_sequence.gen.js +122 -0
  220. package/out-js/decentraland/sdk/components/tween_sequence.gen.js.map +1 -0
  221. package/out-js/decentraland/sdk/components/tween_state.gen.d.ts +40 -0
  222. package/out-js/decentraland/sdk/components/tween_state.gen.js +122 -0
  223. package/out-js/decentraland/sdk/components/tween_state.gen.js.map +1 -0
  224. package/out-js/decentraland/sdk/components/ui_background.gen.d.ts +63 -0
  225. package/out-js/decentraland/sdk/components/ui_background.gen.js +197 -0
  226. package/out-js/decentraland/sdk/components/ui_background.gen.js.map +1 -0
  227. package/out-js/decentraland/sdk/components/ui_dropdown.gen.d.ts +45 -0
  228. package/out-js/decentraland/sdk/components/ui_dropdown.gen.js +187 -0
  229. package/out-js/decentraland/sdk/components/ui_dropdown.gen.js.map +1 -0
  230. package/out-js/decentraland/sdk/components/ui_dropdown_result.gen.d.ts +30 -0
  231. package/out-js/decentraland/sdk/components/ui_dropdown_result.gen.js +69 -0
  232. package/out-js/decentraland/sdk/components/ui_dropdown_result.gen.js.map +1 -0
  233. package/out-js/decentraland/sdk/components/ui_input.gen.d.ts +48 -0
  234. package/out-js/decentraland/sdk/components/ui_input.gen.js +198 -0
  235. package/out-js/decentraland/sdk/components/ui_input.gen.js.map +1 -0
  236. package/out-js/decentraland/sdk/components/ui_input_result.gen.d.ts +32 -0
  237. package/out-js/decentraland/sdk/components/ui_input_result.gen.js +83 -0
  238. package/out-js/decentraland/sdk/components/ui_input_result.gen.js.map +1 -0
  239. package/out-js/decentraland/sdk/components/ui_text.gen.d.ts +54 -0
  240. package/out-js/decentraland/sdk/components/ui_text.gen.js +206 -0
  241. package/out-js/decentraland/sdk/components/ui_text.gen.js.map +1 -0
  242. package/out-js/decentraland/sdk/components/ui_transform.gen.d.ts +271 -0
  243. package/out-js/decentraland/sdk/components/ui_transform.gen.js +1720 -0
  244. package/out-js/decentraland/sdk/components/ui_transform.gen.js.map +1 -0
  245. package/out-js/decentraland/sdk/components/video_player.gen.d.ts +51 -0
  246. package/out-js/decentraland/sdk/components/video_player.gen.js +177 -0
  247. package/out-js/decentraland/sdk/components/video_player.gen.js.map +1 -0
  248. package/out-js/decentraland/sdk/components/visibility_component.gen.d.ts +39 -0
  249. package/out-js/decentraland/sdk/components/visibility_component.gen.js +83 -0
  250. package/out-js/decentraland/sdk/components/visibility_component.gen.js.map +1 -0
  251. package/out-js/decentraland/sdk/development/local_development.gen.d.ts +70 -0
  252. package/out-js/decentraland/sdk/development/local_development.gen.js +283 -0
  253. package/out-js/decentraland/sdk/development/local_development.gen.js.map +1 -0
  254. package/out-js/decentraland/sdk/ecs6/components_ecs6.gen.d.ts +1005 -0
  255. package/out-js/decentraland/sdk/ecs6/components_ecs6.gen.js +7842 -0
  256. package/out-js/decentraland/sdk/ecs6/components_ecs6.gen.js.map +1 -0
  257. package/out-js/decentraland/sdk/ecs6/engine_interface_ecs6.gen.d.ts +398 -0
  258. package/out-js/decentraland/sdk/ecs6/engine_interface_ecs6.gen.js +2512 -0
  259. package/out-js/decentraland/sdk/ecs6/engine_interface_ecs6.gen.js.map +1 -0
  260. package/out-js/decentraland/social_service/errors.gen.d.ts +96 -0
  261. package/out-js/decentraland/social_service/errors.gen.js +405 -0
  262. package/out-js/decentraland/social_service/errors.gen.js.map +1 -0
  263. package/out-js/decentraland/social_service/v1/social_service_v1.gen.d.ts +501 -0
  264. package/out-js/decentraland/social_service/v1/social_service_v1.gen.js +2517 -0
  265. package/out-js/decentraland/social_service/v1/social_service_v1.gen.js.map +1 -0
  266. package/out-js/decentraland/social_service/v2/social_service_v2.gen.d.ts +1827 -0
  267. package/out-js/decentraland/social_service/v2/social_service_v2.gen.js +9308 -0
  268. package/out-js/decentraland/social_service/v2/social_service_v2.gen.js.map +1 -0
  269. package/out-js/google/protobuf/descriptor.gen.d.ts +436 -0
  270. package/out-js/google/protobuf/descriptor.gen.js +3173 -0
  271. package/out-js/google/protobuf/descriptor.gen.js.map +1 -0
  272. package/out-js/google/protobuf/empty.gen.d.ts +38 -0
  273. package/out-js/google/protobuf/empty.gen.js +54 -0
  274. package/out-js/google/protobuf/empty.gen.js.map +1 -0
  275. package/out-js/quests.gen.d.ts +1 -0
  276. package/out-js/quests.gen.js +6 -0
  277. package/out-js/quests.gen.js.map +1 -0
  278. package/out-js/sdk-apis.gen.d.ts +1 -0
  279. package/out-js/sdk-apis.gen.js +6 -0
  280. package/out-js/sdk-apis.gen.js.map +1 -0
  281. package/out-js/sdk-components.gen.d.ts +1 -0
  282. package/out-js/sdk-components.gen.js +6 -0
  283. package/out-js/sdk-components.gen.js.map +1 -0
  284. package/out-js/sdk-development.gen.d.ts +1 -0
  285. package/out-js/sdk-development.gen.js +6 -0
  286. package/out-js/sdk-development.gen.js.map +1 -0
  287. package/out-js/social.gen.d.ts +1 -0
  288. package/out-js/social.gen.js +6 -0
  289. package/out-js/social.gen.js.map +1 -0
  290. package/out-ts/about.gen.ts +3 -0
  291. package/out-ts/comms.gen.ts +3 -0
  292. package/out-ts/decentraland/common/border_rect.gen.ts +230 -0
  293. package/out-ts/decentraland/common/colors.gen.ts +293 -0
  294. package/out-ts/decentraland/common/content_mapping.gen.ts +93 -0
  295. package/out-ts/decentraland/common/sdk/user_data.gen.ts +370 -0
  296. package/out-ts/decentraland/common/texture.gen.ts +654 -0
  297. package/out-ts/decentraland/common/vectors.gen.ts +377 -0
  298. package/out-ts/decentraland/kernel/apis/comms_api.gen.ts +295 -0
  299. package/out-ts/decentraland/kernel/apis/communications_controller.gen.ts +434 -0
  300. package/out-ts/decentraland/kernel/apis/dev_tools.gen.ts +161 -0
  301. package/out-ts/decentraland/kernel/apis/engine_api.gen.ts +1587 -0
  302. package/out-ts/decentraland/kernel/apis/environment_api.gen.ts +1264 -0
  303. package/out-ts/decentraland/kernel/apis/ethereum_controller.gen.ts +982 -0
  304. package/out-ts/decentraland/kernel/apis/parcel_identity.gen.ts +608 -0
  305. package/out-ts/decentraland/kernel/apis/permissions.gen.ts +397 -0
  306. package/out-ts/decentraland/kernel/apis/players.gen.ts +415 -0
  307. package/out-ts/decentraland/kernel/apis/portable_experiences.gen.ts +668 -0
  308. package/out-ts/decentraland/kernel/apis/restricted_actions.gen.ts +1474 -0
  309. package/out-ts/decentraland/kernel/apis/runtime.gen.ts +911 -0
  310. package/out-ts/decentraland/kernel/apis/scene.gen.ts +192 -0
  311. package/out-ts/decentraland/kernel/apis/signed_fetch.gen.ts +691 -0
  312. package/out-ts/decentraland/kernel/apis/social_controller.gen.ts +230 -0
  313. package/out-ts/decentraland/kernel/apis/testing.gen.ts +1270 -0
  314. package/out-ts/decentraland/kernel/apis/user_action_module.gen.ts +146 -0
  315. package/out-ts/decentraland/kernel/apis/user_identity.gen.ts +264 -0
  316. package/out-ts/decentraland/kernel/comms/rfc4/comms.gen.ts +1849 -0
  317. package/out-ts/decentraland/kernel/comms/rfc5/ws_comms.gen.ts +1029 -0
  318. package/out-ts/decentraland/kernel/comms/v3/archipelago.gen.ts +1338 -0
  319. package/out-ts/decentraland/quests/definitions.gen.ts +3020 -0
  320. package/out-ts/decentraland/realm/about.gen.ts +1415 -0
  321. package/out-ts/decentraland/sdk/components/animator.gen.ts +240 -0
  322. package/out-ts/decentraland/sdk/components/audio_source.gen.ts +209 -0
  323. package/out-ts/decentraland/sdk/components/audio_stream.gen.ts +182 -0
  324. package/out-ts/decentraland/sdk/components/avatar_attach.gen.ts +289 -0
  325. package/out-ts/decentraland/sdk/components/avatar_base.gen.ts +149 -0
  326. package/out-ts/decentraland/sdk/components/avatar_emote_command.gen.ts +115 -0
  327. package/out-ts/decentraland/sdk/components/avatar_equipped_data.gen.ts +124 -0
  328. package/out-ts/decentraland/sdk/components/avatar_locomotion_settings.gen.ts +183 -0
  329. package/out-ts/decentraland/sdk/components/avatar_modifier_area.gen.ts +479 -0
  330. package/out-ts/decentraland/sdk/components/avatar_movement.gen.ts +136 -0
  331. package/out-ts/decentraland/sdk/components/avatar_movement_info.gen.ts +249 -0
  332. package/out-ts/decentraland/sdk/components/avatar_shape.gen.ts +371 -0
  333. package/out-ts/decentraland/sdk/components/billboard.gen.ts +148 -0
  334. package/out-ts/decentraland/sdk/components/camera_mode.gen.ts +86 -0
  335. package/out-ts/decentraland/sdk/components/camera_mode_area.gen.ts +331 -0
  336. package/out-ts/decentraland/sdk/components/common/camera_type.gen.ts +43 -0
  337. package/out-ts/decentraland/sdk/components/common/id.gen.ts +3 -0
  338. package/out-ts/decentraland/sdk/components/common/input_action.gen.ts +223 -0
  339. package/out-ts/decentraland/sdk/components/common/loading_state.gen.ts +54 -0
  340. package/out-ts/decentraland/sdk/components/common/raycast_hit.gen.ts +204 -0
  341. package/out-ts/decentraland/sdk/components/common/texts.gen.ts +117 -0
  342. package/out-ts/decentraland/sdk/components/engine_info.gen.ts +119 -0
  343. package/out-ts/decentraland/sdk/components/gltf_container.gen.ts +127 -0
  344. package/out-ts/decentraland/sdk/components/gltf_container_loading_state.gen.ts +195 -0
  345. package/out-ts/decentraland/sdk/components/gltf_node.gen.ts +116 -0
  346. package/out-ts/decentraland/sdk/components/gltf_node_modifiers.gen.ts +204 -0
  347. package/out-ts/decentraland/sdk/components/gltf_node_state.gen.ts +139 -0
  348. package/out-ts/decentraland/sdk/components/input_modifier.gen.ts +265 -0
  349. package/out-ts/decentraland/sdk/components/material.gen.ts +756 -0
  350. package/out-ts/decentraland/sdk/components/mesh_collider.gen.ts +634 -0
  351. package/out-ts/decentraland/sdk/components/mesh_renderer.gen.ts +551 -0
  352. package/out-ts/decentraland/sdk/components/nft_shape.gen.ts +288 -0
  353. package/out-ts/decentraland/sdk/components/player_identity_data.gen.ts +102 -0
  354. package/out-ts/decentraland/sdk/components/pointer_events.gen.ts +415 -0
  355. package/out-ts/decentraland/sdk/components/pointer_events_result.gen.ts +170 -0
  356. package/out-ts/decentraland/sdk/components/pointer_lock.gen.ts +85 -0
  357. package/out-ts/decentraland/sdk/components/raycast.gen.ts +405 -0
  358. package/out-ts/decentraland/sdk/components/raycast_result.gen.ts +168 -0
  359. package/out-ts/decentraland/sdk/components/realm_info.gen.ts +183 -0
  360. package/out-ts/decentraland/sdk/components/text_shape.gen.ts +470 -0
  361. package/out-ts/decentraland/sdk/components/tween.gen.ts +1336 -0
  362. package/out-ts/decentraland/sdk/components/tween_sequence.gen.ts +134 -0
  363. package/out-ts/decentraland/sdk/components/tween_state.gen.ts +136 -0
  364. package/out-ts/decentraland/sdk/components/ui_background.gen.ts +223 -0
  365. package/out-ts/decentraland/sdk/components/ui_dropdown.gen.ts +231 -0
  366. package/out-ts/decentraland/sdk/components/ui_dropdown_result.gen.ts +80 -0
  367. package/out-ts/decentraland/sdk/components/ui_input.gen.ts +251 -0
  368. package/out-ts/decentraland/sdk/components/ui_input_result.gen.ts +97 -0
  369. package/out-ts/decentraland/sdk/components/ui_text.gen.ts +258 -0
  370. package/out-ts/decentraland/sdk/components/ui_transform.gen.ts +1968 -0
  371. package/out-ts/decentraland/sdk/components/video_player.gen.ts +231 -0
  372. package/out-ts/decentraland/sdk/components/visibility_component.gen.ts +108 -0
  373. package/out-ts/decentraland/sdk/development/local_development.gen.ts +316 -0
  374. package/out-ts/decentraland/sdk/ecs6/components_ecs6.gen.ts +8957 -0
  375. package/out-ts/decentraland/sdk/ecs6/engine_interface_ecs6.gen.ts +2886 -0
  376. package/out-ts/decentraland/social_service/errors.gen.ts +442 -0
  377. package/out-ts/decentraland/social_service/v1/social_service_v1.gen.ts +2799 -0
  378. package/out-ts/decentraland/social_service/v2/social_service_v2.gen.ts +10674 -0
  379. package/out-ts/google/protobuf/descriptor.gen.ts +3470 -0
  380. package/out-ts/google/protobuf/empty.gen.ts +72 -0
  381. package/out-ts/quests.gen.ts +3 -0
  382. package/out-ts/sdk-apis.gen.ts +3 -0
  383. package/out-ts/sdk-components.gen.ts +3 -0
  384. package/out-ts/sdk-development.gen.ts +3 -0
  385. package/out-ts/social.gen.ts +3 -0
  386. package/package.json +26 -10
  387. package/proto/buf.yaml +47 -0
  388. package/proto/decentraland/common/border_rect.proto +18 -0
  389. package/proto/decentraland/common/colors.proto +21 -0
  390. package/proto/decentraland/common/content_mapping.proto +7 -0
  391. package/proto/decentraland/common/entity.proto +13 -0
  392. package/proto/decentraland/common/floats.proto +8 -0
  393. package/proto/decentraland/common/sdk/user_data.proto +25 -0
  394. package/proto/decentraland/common/texture.proto +52 -0
  395. package/proto/decentraland/common/vectors.proto +26 -0
  396. package/proto/decentraland/kernel/apis/comms_api.proto +25 -0
  397. package/proto/decentraland/kernel/apis/communications_controller.proto +29 -0
  398. package/proto/decentraland/kernel/apis/dev_tools.proto +15 -0
  399. package/proto/decentraland/kernel/apis/engine_api.proto +118 -0
  400. package/proto/decentraland/kernel/apis/environment_api.proto +76 -0
  401. package/proto/decentraland/kernel/apis/ethereum_controller.proto +64 -0
  402. package/proto/decentraland/kernel/apis/parcel_identity.proto +43 -0
  403. package/proto/decentraland/kernel/apis/permissions.proto +36 -0
  404. package/proto/decentraland/kernel/apis/players.proto +35 -0
  405. package/proto/decentraland/kernel/apis/portable_experiences.proto +55 -0
  406. package/proto/decentraland/kernel/apis/restricted_actions.proto +131 -0
  407. package/proto/decentraland/kernel/apis/runtime.proto +71 -0
  408. package/proto/decentraland/kernel/apis/scene.proto +16 -0
  409. package/proto/decentraland/kernel/apis/signed_fetch.proto +33 -0
  410. package/proto/decentraland/kernel/apis/social_controller.proto +19 -0
  411. package/proto/decentraland/kernel/apis/testing.proto +100 -0
  412. package/proto/decentraland/kernel/apis/user_action_module.proto +13 -0
  413. package/proto/decentraland/kernel/apis/user_identity.proto +22 -0
  414. package/proto/decentraland/kernel/comms/rfc4/comms.proto +140 -0
  415. package/proto/decentraland/kernel/comms/rfc5/ws_comms.proto +104 -0
  416. package/proto/decentraland/kernel/comms/v1/broker.proto +114 -0
  417. package/proto/decentraland/kernel/comms/v1/comms.proto +68 -0
  418. package/proto/decentraland/kernel/comms/v2/comms.proto +61 -0
  419. package/proto/decentraland/kernel/comms/v3/archipelago.proto +86 -0
  420. package/proto/decentraland/kernel/comms/v3/comms.proto +64 -0
  421. package/proto/decentraland/quests/definitions.proto +185 -0
  422. package/proto/decentraland/realm/about.proto +138 -0
  423. package/proto/decentraland/sdk/components/README.md +32 -0
  424. package/proto/decentraland/sdk/components/Transform.md +25 -0
  425. package/proto/decentraland/sdk/components/animator.proto +31 -0
  426. package/proto/decentraland/sdk/components/asset_load.proto +10 -0
  427. package/proto/decentraland/sdk/components/asset_load_loading_state.proto +16 -0
  428. package/proto/decentraland/sdk/components/audio_event.proto +12 -0
  429. package/proto/decentraland/sdk/components/audio_source.proto +31 -0
  430. package/proto/decentraland/sdk/components/audio_stream.proto +22 -0
  431. package/proto/decentraland/sdk/components/avatar_attach.proto +51 -0
  432. package/proto/decentraland/sdk/components/avatar_base.proto +15 -0
  433. package/proto/decentraland/sdk/components/avatar_emote_command.proto +13 -0
  434. package/proto/decentraland/sdk/components/avatar_equipped_data.proto +14 -0
  435. package/proto/decentraland/sdk/components/avatar_locomotion_settings.proto +18 -0
  436. package/proto/decentraland/sdk/components/avatar_modifier_area.proto +53 -0
  437. package/proto/decentraland/sdk/components/avatar_movement.proto +46 -0
  438. package/proto/decentraland/sdk/components/avatar_movement_info.proto +22 -0
  439. package/proto/decentraland/sdk/components/avatar_shape.proto +45 -0
  440. package/proto/decentraland/sdk/components/billboard.proto +29 -0
  441. package/proto/decentraland/sdk/components/camera_layer.proto +30 -0
  442. package/proto/decentraland/sdk/components/camera_layers.proto +11 -0
  443. package/proto/decentraland/sdk/components/camera_mode.proto +12 -0
  444. package/proto/decentraland/sdk/components/camera_mode_area.proto +44 -0
  445. package/proto/decentraland/sdk/components/common/camera_transition.proto +11 -0
  446. package/proto/decentraland/sdk/components/common/camera_type.proto +9 -0
  447. package/proto/decentraland/sdk/components/common/id.md +2 -0
  448. package/proto/decentraland/sdk/components/common/id.proto +8 -0
  449. package/proto/decentraland/sdk/components/common/input_action.proto +39 -0
  450. package/proto/decentraland/sdk/components/common/loading_state.proto +10 -0
  451. package/proto/decentraland/sdk/components/common/media_state.proto +13 -0
  452. package/proto/decentraland/sdk/components/common/raycast_hit.proto +16 -0
  453. package/proto/decentraland/sdk/components/common/texts.proto +21 -0
  454. package/proto/decentraland/sdk/components/engine_info.proto +15 -0
  455. package/proto/decentraland/sdk/components/global_light.proto +22 -0
  456. package/proto/decentraland/sdk/components/gltf_container.proto +19 -0
  457. package/proto/decentraland/sdk/components/gltf_container_loading_state.proto +26 -0
  458. package/proto/decentraland/sdk/components/gltf_node.proto +42 -0
  459. package/proto/decentraland/sdk/components/gltf_node_modifiers.proto +25 -0
  460. package/proto/decentraland/sdk/components/gltf_node_state.proto +20 -0
  461. package/proto/decentraland/sdk/components/input_modifier.proto +22 -0
  462. package/proto/decentraland/sdk/components/light_source.proto +28 -0
  463. package/proto/decentraland/sdk/components/main_camera.proto +11 -0
  464. package/proto/decentraland/sdk/components/map_pin.proto +16 -0
  465. package/proto/decentraland/sdk/components/material.proto +69 -0
  466. package/proto/decentraland/sdk/components/mesh_collider.proto +69 -0
  467. package/proto/decentraland/sdk/components/mesh_renderer.proto +48 -0
  468. package/proto/decentraland/sdk/components/nft_shape.proto +48 -0
  469. package/proto/decentraland/sdk/components/particle_system.proto +129 -0
  470. package/proto/decentraland/sdk/components/physics_combined_force.proto +21 -0
  471. package/proto/decentraland/sdk/components/physics_combined_impulse.proto +23 -0
  472. package/proto/decentraland/sdk/components/player_identity_data.proto +13 -0
  473. package/proto/decentraland/sdk/components/pointer_events.proto +64 -0
  474. package/proto/decentraland/sdk/components/pointer_events_result.proto +19 -0
  475. package/proto/decentraland/sdk/components/pointer_lock.proto +11 -0
  476. package/proto/decentraland/sdk/components/primary_pointer_info.proto +44 -0
  477. package/proto/decentraland/sdk/components/raycast.proto +71 -0
  478. package/proto/decentraland/sdk/components/raycast_result.proto +21 -0
  479. package/proto/decentraland/sdk/components/realm_info.proto +15 -0
  480. package/proto/decentraland/sdk/components/skybox_time.proto +20 -0
  481. package/proto/decentraland/sdk/components/text_shape.proto +45 -0
  482. package/proto/decentraland/sdk/components/texture_camera.proto +46 -0
  483. package/proto/decentraland/sdk/components/trigger_area.proto +23 -0
  484. package/proto/decentraland/sdk/components/trigger_area_result.proto +34 -0
  485. package/proto/decentraland/sdk/components/tween.proto +117 -0
  486. package/proto/decentraland/sdk/components/tween_sequence.proto +18 -0
  487. package/proto/decentraland/sdk/components/tween_state.proto +18 -0
  488. package/proto/decentraland/sdk/components/ui_background.proto +34 -0
  489. package/proto/decentraland/sdk/components/ui_canvas.proto +16 -0
  490. package/proto/decentraland/sdk/components/ui_canvas_information.proto +30 -0
  491. package/proto/decentraland/sdk/components/ui_dropdown.proto +22 -0
  492. package/proto/decentraland/sdk/components/ui_dropdown_result.proto +11 -0
  493. package/proto/decentraland/sdk/components/ui_input.proto +22 -0
  494. package/proto/decentraland/sdk/components/ui_input_result.proto +12 -0
  495. package/proto/decentraland/sdk/components/ui_scroll_result.proto +12 -0
  496. package/proto/decentraland/sdk/components/ui_text.proto +29 -0
  497. package/proto/decentraland/sdk/components/ui_transform.proto +198 -0
  498. package/proto/decentraland/sdk/components/video_event.proto +25 -0
  499. package/proto/decentraland/sdk/components/video_player.proto +24 -0
  500. package/proto/decentraland/sdk/components/virtual_camera.proto +16 -0
  501. package/proto/decentraland/sdk/components/visibility_component.proto +16 -0
  502. package/proto/decentraland/sdk/development/local_development.proto +29 -0
  503. package/proto/decentraland/sdk/ecs6/components_ecs6.proto +678 -0
  504. package/proto/decentraland/sdk/ecs6/engine_interface_ecs6.proto +151 -0
  505. package/proto/decentraland/social_service/errors.proto +30 -0
  506. package/proto/decentraland/social_service/v1/social_service_v1.proto +163 -0
  507. package/proto/decentraland/social_service/v2/social_service_v2.proto +721 -0
  508. package/proto/google/LICENSE +27 -0
  509. package/proto/google/README.md +1 -0
  510. package/proto/google/api/annotations.json +83 -0
  511. package/proto/google/api/annotations.proto +11 -0
  512. package/proto/google/api/http.json +86 -0
  513. package/proto/google/api/http.proto +31 -0
  514. package/proto/google/protobuf/api.json +118 -0
  515. package/proto/google/protobuf/api.proto +34 -0
  516. package/proto/google/protobuf/descriptor.json +739 -0
  517. package/proto/google/protobuf/descriptor.proto +286 -0
  518. package/proto/google/protobuf/source_context.json +20 -0
  519. package/proto/google/protobuf/source_context.proto +7 -0
  520. package/proto/google/protobuf/type.json +202 -0
  521. package/proto/google/protobuf/type.proto +89 -0
  522. package/public/about.proto +5 -0
  523. package/public/comms.proto +5 -0
  524. package/public/quests.proto +5 -0
  525. package/public/sdk-apis.proto +25 -0
  526. package/public/sdk-components.proto +47 -0
  527. package/public/sdk-development.proto +5 -0
  528. package/public/social.proto +6 -0
  529. package/renderer-protocol/RendererProtocol.proto +0 -21
@@ -0,0 +1,53 @@
1
+ syntax = "proto3";
2
+
3
+ package decentraland.sdk.components;
4
+
5
+ import "decentraland/common/vectors.proto";
6
+ import "decentraland/sdk/components/common/id.proto";
7
+
8
+ option (common.ecs_component_id) = 1070;
9
+
10
+ // The AvatarModifierArea component can be attached to an Entity to define a region of space where
11
+ // avatar behavior changes.
12
+ //
13
+ // The Entity's Transform position determines the center-point of the region, while its size is
14
+ // given as a vector in the `area` property below. The Transform rotation is applied, but the scale
15
+ // is ignored.
16
+ //
17
+ // The modifier effect is only applied to avatars inside the region. It does not affect how players
18
+ // standing inside it see avatars on the other side of the boundary.
19
+ //
20
+ // Note that, while commonly used to delineate a 2D area in a scene (hence the name), the region
21
+ // is actually a 3D volume.
22
+ message PBAvatarModifierArea {
23
+ decentraland.common.Vector3 area = 1; // the 3D size of the region
24
+ repeated string exclude_ids = 2; // user IDs that can enter and remain unaffected
25
+ repeated AvatarModifierType modifiers = 3; // list of modifiers to apply
26
+ optional AvatarMovementSettings movement_settings = 4;
27
+ optional bool use_collider_range = 5; // if true, the player will be considered inside the area when they are within 0.3m of the area. default true
28
+ }
29
+
30
+ // AvatarModifierType is an effect that should be applied to avatars inside the region.
31
+ enum AvatarModifierType {
32
+ AMT_HIDE_AVATARS = 0; // avatars are invisible
33
+ AMT_DISABLE_PASSPORTS = 1; // selecting (e.g. clicking) an avatar will not bring up their profile.
34
+ }
35
+
36
+ message AvatarMovementSettings {
37
+ optional AvatarControlType control_mode = 1;
38
+ // if not explicitly set, the following properties default to user's preference settings
39
+ optional float run_speed = 2; // speed the player moves at, in m/s
40
+ optional float friction = 3; // how fast the player gets up to speed or comes to rest. higher = more responsive
41
+ optional float gravity = 4; // how fast the player accelerates vertically when not on a solid surface, in m/s. should normally be negative
42
+ optional float jump_height = 5; // how high the player can jump, in meters. should normally be positive. gravity must have the same sign for jumping to be possible
43
+ optional float max_fall_speed = 6; // max fall speed in m/s. should normally be negative
44
+ optional float turn_speed = 7; // speed the player turns in tank mode, in radians/s
45
+ optional float walk_speed = 8; // speed the player walks at, in m/s
46
+ optional bool allow_weighted_movement = 9; // whether to allow player to move at a slower speed (e.g. with a walk-key or when using a gamepad/joystick). defaults to true
47
+ }
48
+
49
+ enum AvatarControlType {
50
+ CCT_NONE = 0; // avatar cannot move
51
+ CCT_RELATIVE = 1; // avatar moves relative to the camera origin
52
+ CCT_TANK = 2; // avatar moves like a tank: left/right rotate the player, forward/backward advance/retreat the player
53
+ }
@@ -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/vectors.proto";
7
+
8
+ option (common.ecs_component_id) = 1501;
9
+
10
+ message PBAvatarMovement {
11
+ decentraland.common.Vector3 velocity = 1;
12
+ float orientation = 2; // 0-360, we don't allow pitch/roll
13
+ optional decentraland.common.Vector3 ground_direction = 3;
14
+ optional bool walk_success = 4; // set for one frame when a walk_target ends: true = reached target, false = failed; absent = in progress or no walk
15
+ }
16
+
17
+ // engine behaviour (uses only capsule shapecasts and GJK closest point for portability):
18
+ // 1: set avatar orientation from movement info -> P1
19
+ // 2: record "ground collider" - nearest collider within threshold distance in ground_direction using avatar collider shapecast
20
+ // 3: update all colliders, record previous transform and new transform.
21
+ // 4: apply ground collider movement: take collider closest point, modify P1 translation and rotation by closest point translation and rotation change -> P2
22
+ // 5: resolve collisions using position-based constraints
23
+ // initialize constraints to -inf, +inf
24
+ // repeat
25
+ // for each collider[i] that collides with the P3+N player:
26
+ // if closest point = capsule middle (i.e. collider collides with P3 collider but with radius 0),
27
+ // ignore / continue
28
+ // else
29
+ // update constraints based on minimum movement to escape collision
30
+ // e.g. if avatar is 1cm into the floor, constraint_min = max(constraint_min, vec3(0, 0.01, 0))
31
+ // reposition player to satisfy constraints for each axis:
32
+ // y: satsify floor before ceiling: new position = max(constraint_min, min(constraint_max, current position))
33
+ // x and z: if squashed, take average, else satisfy the required constraint
34
+ // if constraint_min > constraint_max then new position = average(constraint_min, constraint_max)
35
+ // else new position = clamp(current position, constraint_min, constraint_max)
36
+ // while position !~= previous position
37
+ // 6: apply velocity (collide and slide)
38
+ // disable anything we are initially colliding with
39
+ // shapecast avatar from position to position + velocity * timestep
40
+ // on impact:
41
+ // project velocity onto slide plane (standard "Collide & Slide")
42
+ // velocity = old velocity - (normal * dot(velocity, normal))
43
+ // repeat continue with residual velocity and residual time
44
+ // 7: provide AvatarMovementInfo values
45
+ // actual velocity = (final - P3+N) / timestep
46
+ // external_velocity = (P3+N - P1) / timestep
@@ -0,0 +1,22 @@
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
+ import "decentraland/sdk/components/avatar_locomotion_settings.proto";
8
+ import "decentraland/sdk/components/input_modifier.proto";
9
+
10
+ option (common.ecs_component_id) = 1500;
11
+
12
+ message PBAvatarMovementInfo {
13
+ float step_time = 1; // the length of time the current step velocity will apply for
14
+ float previous_step_time = 2; // the length of time the previous step velocity applied for
15
+ decentraland.common.Vector3 requested_velocity = 3; // the velocity requested for the previous frame
16
+ decentraland.common.Vector3 actual_velocity = 4; // the resulting velocity taking collisions into account
17
+ decentraland.common.Vector3 external_velocity = 5; // the velocity imparted by movement of the "ground" platform or pushing from other moving colliders
18
+ decentraland.sdk.components.PBAvatarLocomotionSettings active_avatar_locomotion_settings = 6;
19
+ decentraland.sdk.components.PBInputModifier active_input_modifier = 7;
20
+ optional decentraland.common.Vector3 walk_target = 8; // if set, the movement scene should walk the player to this scene-relative position
21
+ optional float walk_threshold = 9; // stop distance for walk_target; considered reached when within this distance
22
+ }
@@ -0,0 +1,45 @@
1
+ syntax = "proto3";
2
+ package decentraland.sdk.components;
3
+
4
+ import "decentraland/sdk/components/common/id.proto";
5
+ option (common.ecs_component_id) = 1080;
6
+ import "decentraland/common/colors.proto";
7
+
8
+ // The AvatarShape component contains the information required to draw and animate avatar, acting as
9
+ // a simplified GLTF container for this specific case.
10
+ //
11
+ // All fields (except ID) are optional have reasonable default values. In the case of `wearables`,
12
+ // each slot on the Avatar's body that is not explicitly included in the list has its own default.
13
+ //
14
+ // Note that, while AvatarShape can be attached to any Entity, it's only actually used in the global
15
+ // Avatar Scene. Other requirements are usually better served by GLTFs.
16
+ message PBAvatarShape {
17
+ string id = 1; // the user ID
18
+ optional string name = 2; // visible name (default: "NPC")
19
+ optional string body_shape = 3; // shape URN (default "urn:decentraland:off-chain:base-avatars:BaseFemale")
20
+
21
+ optional decentraland.common.Color3 skin_color = 4; // RGB (default [0.6, 0.462, 0.356])
22
+ optional decentraland.common.Color3 hair_color = 5; // RGB (default [0.283, 0.142, 0])
23
+ optional decentraland.common.Color3 eye_color = 6; // RGB (default [0.6, 0.462, 0.356])
24
+
25
+ optional string expression_trigger_id = 7; // current emote animations
26
+ optional int64 expression_trigger_timestamp = 8; // start of emote animations (in the same order)
27
+
28
+ optional bool talking = 9; // whether to display the floating voice chat icon
29
+
30
+ // Wearable URNs, one for each body slot.
31
+ // Default values for each unspecified slot:
32
+ // Eyes : "urn:decentraland:off-chain:base-avatars:f_eyes_00",
33
+ // Eyebrows: "urn:decentraland:off-chain:base-avatars:f_eyebrows_00",
34
+ // Mouth : "urn:decentraland:off-chain:base-avatars:f_mouth_00"
35
+ // Hair : "urn:decentraland:off-chain:base-avatars:standard_hair",
36
+ // Shirt : "urn:decentraland:off-chain:base-avatars:f_simple_yellow_tshirt",
37
+ // Trousers: "urn:decentraland:off-chain:base-avatars:f_brown_trousers",
38
+ // Shoes : "urn:decentraland:off-chain:base-avatars:bun_shoes"]
39
+ repeated string wearables = 10;
40
+ repeated string emotes = 11; // available emotes (default empty)
41
+
42
+ optional bool show_only_wearables = 12; // hides the skin + hair + facial features (default: false)
43
+ repeated string force_render = 13; // slots that will render even if hidden
44
+ }
45
+
@@ -0,0 +1,29 @@
1
+ syntax = "proto3";
2
+
3
+ package decentraland.sdk.components;
4
+
5
+ import "decentraland/sdk/components/common/id.proto";
6
+
7
+ // https://adr.decentraland.org/adr/ADR-198
8
+ option (common.ecs_component_id) = 1090;
9
+
10
+ // The Billboard component makes an Entity automatically reorient its rotation to face the camera.
11
+ // As the name indicates, it’s used to display in-game billboards and frequently combined with
12
+ // the TextShape component.
13
+ //
14
+ // Billboard only affects the Entity's rotation. Its scale and position are still determined by its
15
+ // Transform.
16
+ message PBBillboard {
17
+ optional BillboardMode billboard_mode = 1; // the BillboardMode (default: BM_ALL)
18
+ }
19
+
20
+ // BillboardMode indicates one or more axis for automatic rotation, in OR-able bit flag form.
21
+ // Only the values below and the (BM_X | BM_Y) combination are valid.
22
+ enum BillboardMode {
23
+ BM_NONE = 0;
24
+ BM_X = 1;
25
+ BM_Y = 2;
26
+ BM_Z = 4;
27
+ BM_ALL = 7; // bitwise combination BM_X | BM_Y | BM_Z
28
+ }
29
+
@@ -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) = 1503;
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
+ }
@@ -0,0 +1,12 @@
1
+ syntax = "proto3";
2
+ package decentraland.sdk.components;
3
+
4
+ import "decentraland/sdk/components/common/id.proto";
5
+ option (common.ecs_component_id) = 1072;
6
+ import "decentraland/sdk/components/common/camera_type.proto";
7
+
8
+ // The CameraMode component can be used to determine whether the player is using a first-person o
9
+ // third-person view.
10
+ message PBCameraMode {
11
+ common.CameraType mode = 1; // the camera type (1st-person or 3rd-person)
12
+ }
@@ -0,0 +1,44 @@
1
+ syntax = "proto3";
2
+
3
+ package decentraland.sdk.components;
4
+
5
+ import "decentraland/common/vectors.proto";
6
+ import "decentraland/sdk/components/common/camera_type.proto";
7
+ import "decentraland/sdk/components/common/id.proto";
8
+
9
+ option (common.ecs_component_id) = 1071;
10
+
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, 3rd-person or cinematic) is overridden.
13
+ //
14
+ // The Entity's Transform position determines the center-point of the region, while its size is
15
+ // given as a vector in the `area` property below. The Transform rotation is applied, but the scale
16
+ // is ignored.
17
+ //
18
+ // When players leave the region, their previous setting is restored.
19
+ //
20
+ // Note that, while commonly used to delineate a 2D area in a scene (hence the name), the region
21
+ // is actually a 3D volume.
22
+ //
23
+ // When mode is set to CtCinematic, the cinematic_settings field must also be provided.
24
+ message PBCameraModeArea {
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
44
+ }
@@ -0,0 +1,11 @@
1
+ syntax = "proto3";
2
+ package decentraland.sdk.components.common;
3
+
4
+ // Defines the transition used towards the camera that contains the CameraTransition.
5
+ // This structure may be updated in the future to specify from/to entities and to have easing functions.
6
+ message CameraTransition {
7
+ oneof transition_mode {
8
+ float time = 1;
9
+ float speed = 2; // meters per second; e.g. speed 1 -> 1 meter per second
10
+ }
11
+ }
@@ -0,0 +1,9 @@
1
+ syntax = "proto3";
2
+
3
+ package decentraland.sdk.components.common;
4
+
5
+ enum CameraType {
6
+ CT_FIRST_PERSON = 0;
7
+ CT_THIRD_PERSON = 1;
8
+ CT_CINEMATIC = 2; // controlled by the scene
9
+ }
@@ -0,0 +1,2 @@
1
+ # Why id as file option?
2
+ Extending this option in the component definition allows having the data of its ID in the protocol buffer code generator.
@@ -0,0 +1,8 @@
1
+ syntax = "proto3";
2
+ package decentraland.sdk.components.common;
3
+
4
+ import "google/protobuf/descriptor.proto";
5
+
6
+ extend google.protobuf.FileOptions {
7
+ optional int32 ecs_component_id = 50000;
8
+ }
@@ -0,0 +1,39 @@
1
+ syntax = "proto3";
2
+
3
+ package decentraland.sdk.components.common;
4
+
5
+ enum InputAction {
6
+ IA_POINTER = 0;
7
+ IA_PRIMARY = 1;
8
+ IA_SECONDARY = 2;
9
+ IA_ANY = 3;
10
+ IA_FORWARD = 4;
11
+ IA_BACKWARD = 5;
12
+ IA_RIGHT = 6;
13
+ IA_LEFT = 7;
14
+ IA_JUMP = 8;
15
+ IA_WALK = 9;
16
+ IA_ACTION_3 = 10;
17
+ IA_ACTION_4 = 11;
18
+ IA_ACTION_5 = 12;
19
+ IA_ACTION_6 = 13;
20
+ IA_MODIFIER = 14;
21
+ }
22
+
23
+ // PointerEventType is a kind of interaction that can be detected.
24
+ enum PointerEventType {
25
+ PET_UP = 0;
26
+ PET_DOWN = 1;
27
+ PET_HOVER_ENTER = 2;
28
+ PET_HOVER_LEAVE = 3;
29
+ PET_PROXIMITY_ENTER = 4;
30
+ PET_PROXIMITY_LEAVE = 5;
31
+ PET_DRAG_LOCKED = 6;
32
+ PET_DRAG = 7;
33
+ PET_DRAG_END = 8;
34
+ }
35
+
36
+ enum InteractionType {
37
+ CURSOR = 0;
38
+ PROXIMITY = 1;
39
+ }
@@ -0,0 +1,10 @@
1
+ syntax = "proto3";
2
+ package decentraland.sdk.components.common;
3
+
4
+ enum LoadingState {
5
+ UNKNOWN = 0;
6
+ LOADING = 1;
7
+ NOT_FOUND = 2;
8
+ FINISHED_WITH_ERROR = 3;
9
+ FINISHED = 4;
10
+ }
@@ -0,0 +1,13 @@
1
+ syntax = "proto3";
2
+ package decentraland.sdk.components.common;
3
+
4
+ enum MediaState {
5
+ MS_NONE = 0;
6
+ MS_ERROR = 1;
7
+ MS_LOADING = 2;
8
+ MS_READY = 3;
9
+ MS_PLAYING = 4;
10
+ MS_BUFFERING = 5;
11
+ MS_SEEKING = 6;
12
+ MS_PAUSED = 7;
13
+ }
@@ -0,0 +1,16 @@
1
+ syntax = "proto3";
2
+
3
+ package decentraland.sdk.components.common;
4
+ import "decentraland/common/vectors.proto";
5
+
6
+ // RaycastHit contains information about the intersection of a ray with a mesh.
7
+ message RaycastHit {
8
+ // Position will be relative to the scene
9
+ decentraland.common.Vector3 position = 1; // the intersection point in global coordinates
10
+ decentraland.common.Vector3 global_origin = 2; // the starting point of the ray in global coordinates
11
+ decentraland.common.Vector3 direction = 3; // the direction vector of the ray in global coordinates
12
+ decentraland.common.Vector3 normal_hit = 4; // normal of the hit surface in global coordinates
13
+ float length = 5; // the distance between the ray origin and the hit position
14
+ optional string mesh_name = 6; // mesh name, if collision happened inside a GltfContainer
15
+ optional uint32 entity_id = 7; // the ID of the Entity that has the impacted mesh attached
16
+ }
@@ -0,0 +1,21 @@
1
+ syntax = "proto3";
2
+
3
+ package decentraland.sdk.components.common;
4
+
5
+ enum TextAlignMode {
6
+ TAM_TOP_LEFT = 0;
7
+ TAM_TOP_CENTER = 1;
8
+ TAM_TOP_RIGHT = 2;
9
+ TAM_MIDDLE_LEFT = 3;
10
+ TAM_MIDDLE_CENTER = 4;
11
+ TAM_MIDDLE_RIGHT = 5;
12
+ TAM_BOTTOM_LEFT = 6;
13
+ TAM_BOTTOM_CENTER = 7;
14
+ TAM_BOTTOM_RIGHT = 8;
15
+ }
16
+
17
+ enum Font {
18
+ F_SANS_SERIF = 0;
19
+ F_SERIF = 1;
20
+ F_MONOSPACE = 2;
21
+ }
@@ -0,0 +1,15 @@
1
+ syntax = "proto3";
2
+ package decentraland.sdk.components;
3
+
4
+ import "decentraland/sdk/components/common/id.proto";
5
+ option (common.ecs_component_id) = 1048;
6
+
7
+ // EngineInfo provides information about the graphics engine running the scene.
8
+ // The values of this component are written at the "physics" stage of the ADR-148. Meaning
9
+ // the tick_number and frame_number of the same frame could be used as correlation numbers
10
+ // for timestamps in other components.
11
+ message PBEngineInfo {
12
+ uint32 frame_number = 1; // frame counter of the engine
13
+ float total_runtime = 2; // total runtime of this scene in seconds
14
+ uint32 tick_number = 3; // tick counter of the scene as per ADR-148
15
+ }
@@ -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
+ }
@@ -0,0 +1,19 @@
1
+ syntax = "proto3";
2
+ package decentraland.sdk.components;
3
+
4
+ import "decentraland/sdk/components/common/id.proto";
5
+ option (common.ecs_component_id) = 1041;
6
+
7
+ // GltfContainer loads a GLTF file (and any additional files packaged inside) attached to an Entity.
8
+ //
9
+ // This allows the use of custom models, materials, collision boundaries and shapes that can't be
10
+ // achieved using MeshRenderer, MeshCollider and other standard components.
11
+ message PBGltfContainer {
12
+ string src = 1; // the GLTF file path as listed in the scene's manifest.
13
+
14
+ reserved 2;
15
+ reserved 3;
16
+
17
+ optional uint32 visible_meshes_collision_mask = 4; // default: 0
18
+ optional uint32 invisible_meshes_collision_mask = 5; // default: CL_POINTER | CL_PHYSICS
19
+ }
@@ -0,0 +1,26 @@
1
+ syntax = "proto3";
2
+ package decentraland.sdk.components;
3
+
4
+ import "decentraland/sdk/components/common/id.proto";
5
+ option (common.ecs_component_id) = 1049;
6
+
7
+ import "decentraland/sdk/components/common/loading_state.proto";
8
+
9
+ // GltfContainerLoadingState is set by the engine and provides information about
10
+ // the current state of the GltfContainer of an entity.
11
+ message PBGltfContainerLoadingState {
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.
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,25 @@
1
+ syntax = "proto3";
2
+
3
+ package decentraland.sdk.components;
4
+
5
+ import "decentraland/sdk/components/common/id.proto";
6
+ import "decentraland/sdk/components/material.proto";
7
+
8
+ option (common.ecs_component_id) = 1099;
9
+
10
+ // GltfNodeModifiers component is to be used attached to entities that have the GltfContainer component.
11
+ //
12
+ // This allows to override either the Material or the Casting Shadows behaviour of the target GLTF Node.
13
+ //
14
+ // * If the 'path' of the first modifier in the collection is an empty string: the configuration will
15
+ // affect all of the GLTF Nodes (as a global modifier).
16
+ // * Otherwise, for the modifiers whose 'path' is found in the GLTF hierarchy, the modifier will affect only
17
+ // the target Nodes.
18
+ message PBGltfNodeModifiers {
19
+ message GltfNodeModifier {
20
+ string path = 1; // The GLTF hierarchy path of the target Node to be affected
21
+ optional bool cast_shadows = 2; // The casting shadows enabled override
22
+ optional PBMaterial material = 3; // The Material that will be overridden on the target Node
23
+ }
24
+ repeated GltfNodeModifier modifiers = 1;
25
+ }
@@ -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
+ }