@caspertech/node-metaverse 0.7.50 → 0.7.51
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/dist/examples/Camera/Camera.js +3 -14
- package/dist/examples/Camera/Camera.js.map +1 -1
- package/dist/examples/ExampleBot.js +66 -87
- package/dist/examples/ExampleBot.js.map +1 -1
- package/dist/examples/Friends/Friends.js +29 -44
- package/dist/examples/Friends/Friends.js.map +1 -1
- package/dist/examples/Grid/Name2Key.js +25 -36
- package/dist/examples/Grid/Name2Key.js.map +1 -1
- package/dist/examples/Groups/Group.js +42 -55
- package/dist/examples/Groups/Group.js.map +1 -1
- package/dist/examples/Groups/GroupChat.js +55 -68
- package/dist/examples/Groups/GroupChat.js.map +1 -1
- package/dist/examples/InstantMessages/InstantMessages.js +8 -21
- package/dist/examples/InstantMessages/InstantMessages.js.map +1 -1
- package/dist/examples/Inventory/Inventory.js +80 -97
- package/dist/examples/Inventory/Inventory.js.map +1 -1
- package/dist/examples/MFA/MFA.js +24 -40
- package/dist/examples/MFA/MFA.js.map +1 -1
- package/dist/examples/Money/Money.js +28 -41
- package/dist/examples/Money/Money.js.map +1 -1
- package/dist/examples/Objects/TaskInventory.js +13 -24
- package/dist/examples/Objects/TaskInventory.js.map +1 -1
- package/dist/examples/Region/Agents.js +6 -17
- package/dist/examples/Region/Agents.js.map +1 -1
- package/dist/examples/Region/Estate.js +9 -20
- package/dist/examples/Region/Estate.js.map +1 -1
- package/dist/examples/Region/Parcels.js +12 -23
- package/dist/examples/Region/Parcels.js.map +1 -1
- package/dist/examples/Region/Region.js +2 -13
- package/dist/examples/Region/Region.js.map +1 -1
- package/dist/examples/Region/Settings.js +15 -0
- package/dist/examples/Region/Settings.js.map +1 -0
- package/dist/examples/Teleports/Teleports.js +22 -35
- package/dist/examples/Teleports/Teleports.js.map +1 -1
- package/dist/lib/Bot.d.ts +14 -14
- package/dist/lib/Bot.js +217 -231
- package/dist/lib/Bot.js.map +1 -1
- package/dist/lib/LoginHandler.d.ts +3 -3
- package/dist/lib/LoginHandler.js +106 -116
- package/dist/lib/LoginHandler.js.map +1 -1
- package/dist/lib/classes/Agent.d.ts +23 -35
- package/dist/lib/classes/Agent.js +96 -108
- package/dist/lib/classes/Agent.js.map +1 -1
- package/dist/lib/classes/AssetMap.d.ts +18 -95
- package/dist/lib/classes/AssetMap.js +86 -16
- package/dist/lib/classes/AssetMap.js.map +1 -1
- package/dist/lib/classes/AssetRegistry.d.ts +31 -0
- package/dist/lib/classes/AssetRegistry.js +26 -0
- package/dist/lib/classes/AssetRegistry.js.map +1 -0
- package/dist/lib/classes/AssetTypeRegistry.d.ts +21 -0
- package/dist/lib/classes/AssetTypeRegistry.js +81 -0
- package/dist/lib/classes/AssetTypeRegistry.js.map +1 -0
- package/dist/lib/classes/BVH.js.map +1 -1
- package/dist/lib/classes/BVHJoint.js.map +1 -1
- package/dist/lib/classes/BVHJointKeyframe.d.ts +1 -1
- package/dist/lib/classes/BatchQueue.d.ts +2 -2
- package/dist/lib/classes/BatchQueue.js +66 -80
- package/dist/lib/classes/BatchQueue.js.map +1 -1
- package/dist/lib/classes/BatchQueue.spec.js +17 -26
- package/dist/lib/classes/BatchQueue.spec.js.map +1 -1
- package/dist/lib/classes/BinaryReader.d.ts +66 -0
- package/dist/lib/classes/BinaryReader.js +304 -0
- package/dist/lib/classes/BinaryReader.js.map +1 -0
- package/dist/lib/classes/BinaryReader.spec.js +241 -0
- package/dist/lib/classes/BinaryReader.spec.js.map +1 -0
- package/dist/lib/classes/BinaryWriter.d.ts +34 -0
- package/dist/lib/classes/BinaryWriter.js +192 -0
- package/dist/lib/classes/BinaryWriter.js.map +1 -0
- package/dist/lib/classes/BinaryWriter.spec.d.ts +1 -0
- package/dist/lib/classes/BinaryWriter.spec.js +328 -0
- package/dist/lib/classes/BinaryWriter.spec.js.map +1 -0
- package/dist/lib/classes/BitPack.d.ts +2 -2
- package/dist/lib/classes/BitPack.js +1 -1
- package/dist/lib/classes/BitPack.js.map +1 -1
- package/dist/lib/classes/BuildMap.d.ts +6 -6
- package/dist/lib/classes/BuildMap.js.map +1 -1
- package/dist/lib/classes/Caps.d.ts +18 -24
- package/dist/lib/classes/Caps.js +278 -297
- package/dist/lib/classes/Caps.js.map +1 -1
- package/dist/lib/classes/Circuit.d.ts +20 -28
- package/dist/lib/classes/Circuit.js +104 -91
- package/dist/lib/classes/Circuit.js.map +1 -1
- package/dist/lib/classes/ClientCommands.d.ts +3 -3
- package/dist/lib/classes/ClientCommands.js.map +1 -1
- package/dist/lib/classes/ClientEvents.d.ts +41 -32
- package/dist/lib/classes/ClientEvents.js +65 -0
- package/dist/lib/classes/ClientEvents.js.map +1 -1
- package/dist/lib/classes/CoalescedGameObject.d.ts +2 -2
- package/dist/lib/classes/CoalescedGameObject.js +37 -49
- package/dist/lib/classes/CoalescedGameObject.js.map +1 -1
- package/dist/lib/classes/Color4.d.ts +2 -2
- package/dist/lib/classes/Color4.js +42 -42
- package/dist/lib/classes/Color4.js.map +1 -1
- package/dist/lib/classes/Comms.d.ts +3 -3
- package/dist/lib/classes/Comms.js +236 -236
- package/dist/lib/classes/Comms.js.map +1 -1
- package/dist/lib/classes/ConcurrentQueue.d.ts +3 -3
- package/dist/lib/classes/ConcurrentQueue.js +16 -11
- package/dist/lib/classes/ConcurrentQueue.js.map +1 -1
- package/dist/lib/classes/EventQueueClient.d.ts +6 -6
- package/dist/lib/classes/EventQueueClient.js +189 -201
- package/dist/lib/classes/EventQueueClient.js.map +1 -1
- package/dist/lib/classes/GroupBan.d.ts +3 -3
- package/dist/lib/classes/GroupBan.js.map +1 -1
- package/dist/lib/classes/GroupMember.d.ts +2 -2
- package/dist/lib/classes/GroupRole.d.ts +2 -2
- package/dist/lib/classes/IPAddress.d.ts +3 -2
- package/dist/lib/classes/IPAddress.js +14 -13
- package/dist/lib/classes/IPAddress.js.map +1 -1
- package/dist/lib/classes/Inventory.d.ts +7 -15
- package/dist/lib/classes/Inventory.js +69 -80
- package/dist/lib/classes/Inventory.js.map +1 -1
- package/dist/lib/classes/InventoryFolder.d.ts +11 -11
- package/dist/lib/classes/InventoryFolder.js +539 -601
- package/dist/lib/classes/InventoryFolder.js.map +1 -1
- package/dist/lib/classes/InventoryItem.d.ts +15 -11
- package/dist/lib/classes/InventoryItem.js +494 -486
- package/dist/lib/classes/InventoryItem.js.map +1 -1
- package/dist/lib/classes/InventoryTypeRegistry.d.ts +19 -0
- package/dist/lib/classes/InventoryTypeRegistry.js +69 -0
- package/dist/lib/classes/InventoryTypeRegistry.js.map +1 -0
- package/dist/lib/classes/LLGLTFMaterial.d.ts +1 -1
- package/dist/lib/classes/LLGLTFMaterial.js +2 -2
- package/dist/lib/classes/LLGLTFMaterial.js.map +1 -1
- package/dist/lib/classes/LLGLTFMaterial.spec.js +17 -18
- package/dist/lib/classes/LLGLTFMaterial.spec.js.map +1 -1
- package/dist/lib/classes/LLGLTFMaterialOverride.d.ts +1 -1
- package/dist/lib/classes/LLGLTFMaterialOverride.js +119 -118
- package/dist/lib/classes/LLGLTFMaterialOverride.js.map +1 -1
- package/dist/lib/classes/LLGLTFMaterialOverride.spec.js +70 -71
- package/dist/lib/classes/LLGLTFMaterialOverride.spec.js.map +1 -1
- package/dist/lib/classes/LLGesture.d.ts +1 -1
- package/dist/lib/classes/LLGesture.js +1 -1
- package/dist/lib/classes/LLGesture.js.map +1 -1
- package/dist/lib/classes/LLGestureAnimationStep.d.ts +1 -1
- package/dist/lib/classes/LLGestureAnimationStep.js.map +1 -1
- package/dist/lib/classes/LLGestureChatStep.js.map +1 -1
- package/dist/lib/classes/LLGestureSoundStep.d.ts +1 -1
- package/dist/lib/classes/LLGestureSoundStep.js.map +1 -1
- package/dist/lib/classes/LLGestureStep.d.ts +1 -1
- package/dist/lib/classes/LLGestureWaitStep.js.map +1 -1
- package/dist/lib/classes/LLLindenText.d.ts +2 -4
- package/dist/lib/classes/LLLindenText.js +12 -8
- package/dist/lib/classes/LLLindenText.js.map +1 -1
- package/dist/lib/classes/LLSettings.d.ts +98 -83
- package/dist/lib/classes/LLSettings.js +240 -83
- package/dist/lib/classes/LLSettings.js.map +1 -1
- package/dist/lib/classes/LLSettings.spec.d.ts +1 -0
- package/dist/lib/classes/LLSettings.spec.js +27 -0
- package/dist/lib/classes/LLSettings.spec.js.map +1 -0
- package/dist/lib/classes/LLWearable.d.ts +4 -8
- package/dist/lib/classes/LLWearable.js +1 -1
- package/dist/lib/classes/LLWearable.js.map +1 -1
- package/dist/lib/classes/Logger.d.ts +3 -3
- package/dist/lib/classes/Logger.js +1 -1
- package/dist/lib/classes/Logger.js.map +1 -1
- package/dist/lib/classes/LoginParameters.js.map +1 -1
- package/dist/lib/classes/LoginResponse.d.ts +4 -9
- package/dist/lib/classes/LoginResponse.js +120 -113
- package/dist/lib/classes/LoginResponse.js.map +1 -1
- package/dist/lib/classes/MapBlock.d.ts +2 -2
- package/dist/lib/classes/MessageBase.d.ts +5 -5
- package/dist/lib/classes/MessageClasses.js.map +1 -1
- package/dist/lib/classes/ObjectResolver.d.ts +6 -6
- package/dist/lib/classes/ObjectResolver.js +127 -152
- package/dist/lib/classes/ObjectResolver.js.map +1 -1
- package/dist/lib/classes/ObjectStoreFull.d.ts +9 -9
- package/dist/lib/classes/ObjectStoreFull.js +176 -192
- package/dist/lib/classes/ObjectStoreFull.js.map +1 -1
- package/dist/lib/classes/ObjectStoreLite.d.ts +29 -31
- package/dist/lib/classes/ObjectStoreLite.js +485 -494
- package/dist/lib/classes/ObjectStoreLite.js.map +1 -1
- package/dist/lib/classes/Packet.d.ts +2 -2
- package/dist/lib/classes/Packet.js +2 -2
- package/dist/lib/classes/Packet.js.map +1 -1
- package/dist/lib/classes/ParticleSystem.js +1 -1
- package/dist/lib/classes/ParticleSystem.js.map +1 -1
- package/dist/lib/classes/PrimFacesHelper.d.ts +14 -0
- package/dist/lib/classes/PrimFacesHelper.js +75 -0
- package/dist/lib/classes/PrimFacesHelper.js.map +1 -0
- package/dist/lib/classes/Quaternion.d.ts +31 -6
- package/dist/lib/classes/Quaternion.js +236 -48
- package/dist/lib/classes/Quaternion.js.map +1 -1
- package/dist/lib/classes/Region.d.ts +22 -22
- package/dist/lib/classes/Region.js +449 -526
- package/dist/lib/classes/Region.js.map +1 -1
- package/dist/lib/classes/TarArchive.d.ts +1 -1
- package/dist/lib/classes/TarArchive.js.map +1 -1
- package/dist/lib/classes/TarFile.js +1 -1
- package/dist/lib/classes/TarFile.js.map +1 -1
- package/dist/lib/classes/TarReader.d.ts +1 -2
- package/dist/lib/classes/TarReader.js +15 -17
- package/dist/lib/classes/TarReader.js.map +1 -1
- package/dist/lib/classes/TarWriter.d.ts +1 -1
- package/dist/lib/classes/TarWriter.js +51 -68
- package/dist/lib/classes/TarWriter.js.map +1 -1
- package/dist/lib/classes/TextureEntry.d.ts +2 -3
- package/dist/lib/classes/TextureEntry.js +12 -12
- package/dist/lib/classes/TextureEntry.js.map +1 -1
- package/dist/lib/classes/TextureEntryFace.d.ts +4 -4
- package/dist/lib/classes/TextureEntryFace.js.map +1 -1
- package/dist/lib/classes/UUID.d.ts +2 -2
- package/dist/lib/classes/UUID.js +28 -28
- package/dist/lib/classes/UUID.js.map +1 -1
- package/dist/lib/classes/Utils.d.ts +2 -11
- package/dist/lib/classes/Utils.js +72 -328
- package/dist/lib/classes/Utils.js.map +1 -1
- package/dist/lib/classes/Vector2.d.ts +35 -6
- package/dist/lib/classes/Vector2.js +192 -28
- package/dist/lib/classes/Vector2.js.map +1 -1
- package/dist/lib/classes/Vector3.d.ts +38 -6
- package/dist/lib/classes/Vector3.js +229 -48
- package/dist/lib/classes/Vector3.js.map +1 -1
- package/dist/lib/classes/Vector4.d.ts +36 -6
- package/dist/lib/classes/Vector4.js +225 -21
- package/dist/lib/classes/Vector4.js.map +1 -1
- package/dist/lib/classes/Wearable.d.ts +1 -1
- package/dist/lib/classes/Zerocoder.js +2 -2
- package/dist/lib/classes/Zerocoder.js.map +1 -1
- package/dist/lib/classes/commands/AgentCommands.d.ts +7 -5
- package/dist/lib/classes/commands/AgentCommands.js +60 -76
- package/dist/lib/classes/commands/AgentCommands.js.map +1 -1
- package/dist/lib/classes/commands/AssetCommands.d.ts +5 -10
- package/dist/lib/classes/commands/AssetCommands.js +176 -179
- package/dist/lib/classes/commands/AssetCommands.js.map +1 -1
- package/dist/lib/classes/commands/CommandsBase.d.ts +4 -4
- package/dist/lib/classes/commands/CommandsBase.js.map +1 -1
- package/dist/lib/classes/commands/CommunicationsCommands.d.ts +3 -3
- package/dist/lib/classes/commands/CommunicationsCommands.js +350 -426
- package/dist/lib/classes/commands/CommunicationsCommands.js.map +1 -1
- package/dist/lib/classes/commands/FriendCommands.d.ts +9 -10
- package/dist/lib/classes/commands/FriendCommands.js +238 -236
- package/dist/lib/classes/commands/FriendCommands.js.map +1 -1
- package/dist/lib/classes/commands/GridCommands.d.ts +3 -3
- package/dist/lib/classes/commands/GridCommands.js +299 -336
- package/dist/lib/classes/commands/GridCommands.js.map +1 -1
- package/dist/lib/classes/commands/GroupCommands.d.ts +2 -2
- package/dist/lib/classes/commands/GroupCommands.js +293 -336
- package/dist/lib/classes/commands/GroupCommands.js.map +1 -1
- package/dist/lib/classes/commands/InventoryCommands.d.ts +4 -4
- package/dist/lib/classes/commands/InventoryCommands.js +54 -69
- package/dist/lib/classes/commands/InventoryCommands.js.map +1 -1
- package/dist/lib/classes/commands/MovementCommands.d.ts +2 -2
- package/dist/lib/classes/commands/MovementCommands.js +23 -38
- package/dist/lib/classes/commands/MovementCommands.js.map +1 -1
- package/dist/lib/classes/commands/NetworkCommands.js +35 -46
- package/dist/lib/classes/commands/NetworkCommands.js.map +1 -1
- package/dist/lib/classes/commands/ParcelCommands.d.ts +4 -4
- package/dist/lib/classes/commands/ParcelCommands.js +64 -77
- package/dist/lib/classes/commands/ParcelCommands.js.map +1 -1
- package/dist/lib/classes/commands/RegionCommands.d.ts +11 -10
- package/dist/lib/classes/commands/RegionCommands.js +1126 -1211
- package/dist/lib/classes/commands/RegionCommands.js.map +1 -1
- package/dist/lib/classes/commands/TeleportCommands.d.ts +8 -8
- package/dist/lib/classes/commands/TeleportCommands.js +58 -58
- package/dist/lib/classes/commands/TeleportCommands.js.map +1 -1
- package/dist/lib/classes/interfaces/IGameObjectData.d.ts +18 -20
- package/dist/lib/classes/interfaces/ILandBlock.d.ts +2 -2
- package/dist/lib/classes/interfaces/IObjectStore.d.ts +12 -12
- package/dist/lib/classes/interfaces/IResolveJob.d.ts +2 -2
- package/dist/lib/classes/interfaces/ITreeBoundingBox.d.ts +2 -2
- package/dist/lib/classes/llsd/LLSD.d.ts +12 -0
- package/dist/lib/classes/llsd/LLSD.js +128 -0
- package/dist/lib/classes/llsd/LLSD.js.map +1 -0
- package/dist/lib/classes/llsd/LLSD.spec.d.ts +1 -0
- package/dist/lib/classes/llsd/LLSD.spec.js +249 -0
- package/dist/lib/classes/llsd/LLSD.spec.js.map +1 -0
- package/dist/lib/classes/llsd/LLSDArray.d.ts +26 -3
- package/dist/lib/classes/llsd/LLSDArray.js +182 -6
- package/dist/lib/classes/llsd/LLSDArray.js.map +1 -1
- package/dist/lib/classes/llsd/LLSDBinary.d.ts +7 -0
- package/dist/lib/classes/llsd/LLSDBinary.js +114 -0
- package/dist/lib/classes/llsd/LLSDBinary.js.map +1 -0
- package/dist/lib/classes/llsd/LLSDInteger.d.ts +9 -0
- package/dist/lib/classes/llsd/LLSDInteger.js +25 -0
- package/dist/lib/classes/llsd/LLSDInteger.js.map +1 -0
- package/dist/lib/classes/llsd/LLSDMap.d.ts +16 -5
- package/dist/lib/classes/llsd/LLSDMap.js +197 -16
- package/dist/lib/classes/llsd/LLSDMap.js.map +1 -1
- package/dist/lib/classes/llsd/LLSDNotation.d.ts +11 -0
- package/dist/lib/classes/llsd/LLSDNotation.js +271 -0
- package/dist/lib/classes/llsd/LLSDNotation.js.map +1 -0
- package/dist/lib/classes/llsd/LLSDReal.d.ts +10 -0
- package/dist/lib/classes/llsd/LLSDReal.js +71 -0
- package/dist/lib/classes/llsd/LLSDReal.js.map +1 -0
- package/dist/lib/classes/llsd/LLSDToken.d.ts +1 -1
- package/dist/lib/classes/llsd/LLSDTokenContainer.d.ts +2 -2
- package/dist/lib/classes/llsd/LLSDTokenGenerator.d.ts +1 -1
- package/dist/lib/classes/llsd/LLSDTokenSpec.d.ts +1 -1
- package/dist/lib/classes/llsd/LLSDTokenType.d.ts +18 -18
- package/dist/lib/classes/llsd/LLSDTokenType.js +18 -18
- package/dist/lib/classes/llsd/LLSDTokenType.js.map +1 -1
- package/dist/lib/classes/llsd/LLSDType.d.ts +6 -3
- package/dist/lib/classes/llsd/LLSDURI.d.ts +7 -0
- package/dist/lib/classes/llsd/LLSDURI.js +19 -0
- package/dist/lib/classes/llsd/LLSDURI.js.map +1 -0
- package/dist/lib/classes/llsd/LLSDXML.d.ts +5 -0
- package/dist/lib/classes/llsd/LLSDXML.js +245 -0
- package/dist/lib/classes/llsd/LLSDXML.js.map +1 -0
- package/dist/lib/classes/messages/ObjectUpdate.d.ts +4 -5
- package/dist/lib/classes/messages/ObjectUpdate.js +115 -115
- package/dist/lib/classes/messages/ObjectUpdate.js.map +1 -1
- package/dist/lib/classes/messages/SimStats.d.ts +3 -2
- package/dist/lib/classes/messages/SimStats.js +17 -17
- package/dist/lib/classes/messages/SimStats.js.map +1 -1
- package/dist/lib/classes/public/Avatar.d.ts +4 -4
- package/dist/lib/classes/public/Avatar.js +39 -33
- package/dist/lib/classes/public/Avatar.js.map +1 -1
- package/dist/lib/classes/public/AvatarQueryResult.d.ts +4 -4
- package/dist/lib/classes/public/AvatarQueryResult.js.map +1 -1
- package/dist/lib/classes/public/ExtendedMeshData.d.ts +1 -1
- package/dist/lib/classes/public/ExtendedMeshData.js.map +1 -1
- package/dist/lib/classes/public/ExtraParams.d.ts +6 -6
- package/dist/lib/classes/public/ExtraParams.js +36 -39
- package/dist/lib/classes/public/ExtraParams.js.map +1 -1
- package/dist/lib/classes/public/ExtraParams.spec.js +2 -11
- package/dist/lib/classes/public/ExtraParams.spec.js.map +1 -1
- package/dist/lib/classes/public/FlexibleData.js.map +1 -1
- package/dist/lib/classes/public/Friend.js.map +1 -1
- package/dist/lib/classes/public/GameObject.d.ts +23 -21
- package/dist/lib/classes/public/GameObject.js +1294 -1306
- package/dist/lib/classes/public/GameObject.js.map +1 -1
- package/dist/lib/classes/public/GameObject.spec.js +8 -18
- package/dist/lib/classes/public/GameObject.spec.js.map +1 -1
- package/dist/lib/classes/public/LLMesh.d.ts +5 -7
- package/dist/lib/classes/public/LLMesh.js +194 -213
- package/dist/lib/classes/public/LLMesh.js.map +1 -1
- package/dist/lib/classes/public/LightData.js.map +1 -1
- package/dist/lib/classes/public/LightImageData.js.map +1 -1
- package/dist/lib/classes/public/Material.js +45 -56
- package/dist/lib/classes/public/Material.js.map +1 -1
- package/dist/lib/classes/public/MeshData.js.map +1 -1
- package/dist/lib/classes/public/Parcel.d.ts +4 -4
- package/dist/lib/classes/public/Parcel.js +1 -2
- package/dist/lib/classes/public/Parcel.js.map +1 -1
- package/dist/lib/classes/public/ReflectionProbeData.d.ts +1 -1
- package/dist/lib/classes/public/ReflectionProbeData.js.map +1 -1
- package/dist/lib/classes/public/RegionEnvironment.d.ts +14 -13
- package/dist/lib/classes/public/RegionEnvironment.js +94 -53
- package/dist/lib/classes/public/RegionEnvironment.js.map +1 -1
- package/dist/lib/classes/public/RegionEnvironmentSky.d.ts +2 -0
- package/dist/lib/classes/public/RegionEnvironmentSky.js +7 -0
- package/dist/lib/classes/public/RegionEnvironmentSky.js.map +1 -0
- package/dist/lib/classes/public/RegionEnvironmentWater.d.ts +2 -0
- package/dist/lib/classes/public/RegionEnvironmentWater.js +7 -0
- package/dist/lib/classes/public/RegionEnvironmentWater.js.map +1 -0
- package/dist/lib/classes/public/RenderMaterialData.js.map +1 -1
- package/dist/lib/classes/public/RenderMaterialParam.d.ts +1 -1
- package/dist/lib/classes/public/SculptData.js.map +1 -1
- package/dist/lib/classes/public/TextureAnim.js +2 -1
- package/dist/lib/classes/public/TextureAnim.js.map +1 -1
- package/dist/lib/classes/public/interfaces/GlobalPosition.d.ts +1 -1
- package/dist/lib/classes/public/interfaces/LLPhysicsConvex.d.ts +1 -1
- package/dist/lib/classes/public/interfaces/LLSkin.d.ts +1 -1
- package/dist/lib/classes/public/interfaces/LLSubMesh.d.ts +3 -5
- package/dist/lib/classes/public/interfaces/MapLocation.d.ts +3 -3
- package/dist/lib/classes/public/interfaces/RegionEnvironmentSkyLLSD.d.ts +26 -0
- package/dist/lib/classes/public/interfaces/RegionEnvironmentSkyLLSD.js +3 -0
- package/dist/lib/classes/public/interfaces/RegionEnvironmentSkyLLSD.js.map +1 -0
- package/dist/lib/classes/public/interfaces/RegionEnvironmentWaterLLSD.d.ts +15 -0
- package/dist/lib/classes/public/interfaces/RegionEnvironmentWaterLLSD.js +3 -0
- package/dist/lib/classes/public/interfaces/RegionEnvironmentWaterLLSD.js.map +1 -0
- package/dist/lib/classes/public/interfaces/SkyPreset.d.ts +3 -3
- package/dist/lib/classes/public/interfaces/WaterPreset.d.ts +4 -4
- package/dist/lib/deviceToken.json +1 -0
- package/dist/lib/enums/AssetType.d.ts +6 -4
- package/dist/lib/enums/AssetType.js +5 -3
- package/dist/lib/enums/AssetType.js.map +1 -1
- package/dist/lib/enums/AttachmentPoint.d.ts +0 -1
- package/dist/lib/enums/AttachmentPoint.js +0 -1
- package/dist/lib/enums/AttachmentPoint.js.map +1 -1
- package/dist/lib/enums/InventoryType.d.ts +3 -5
- package/dist/lib/enums/InventoryType.js +2 -4
- package/dist/lib/enums/InventoryType.js.map +1 -1
- package/dist/lib/enums/LayerType.d.ts +1 -1
- package/dist/lib/enums/LayerType.js +1 -1
- package/dist/lib/events/AvatarPropertiesReplyEvent.d.ts +1 -1
- package/dist/lib/events/BalanceUpdatedEvent.d.ts +2 -2
- package/dist/lib/events/BulkUpdateInventoryEvent.d.ts +2 -2
- package/dist/lib/events/BulkUpdateInventoryEvent.js.map +1 -1
- package/dist/lib/events/ChatEvent.d.ts +5 -5
- package/dist/lib/events/FriendOnlineEvent.d.ts +1 -1
- package/dist/lib/events/FriendRemovedEvent.d.ts +1 -1
- package/dist/lib/events/FriendRequestEvent.d.ts +1 -1
- package/dist/lib/events/FriendResponseEvent.d.ts +1 -1
- package/dist/lib/events/FriendRightsEvent.d.ts +2 -2
- package/dist/lib/events/GroupChatClosedEvent.d.ts +1 -1
- package/dist/lib/events/GroupChatEvent.d.ts +1 -1
- package/dist/lib/events/GroupChatSessionAgentListEvent.d.ts +1 -1
- package/dist/lib/events/GroupChatSessionJoinEvent.d.ts +1 -1
- package/dist/lib/events/GroupInviteEvent.d.ts +1 -1
- package/dist/lib/events/GroupNoticeEvent.d.ts +1 -1
- package/dist/lib/events/GroupProfileReplyEvent.d.ts +2 -2
- package/dist/lib/events/InstantMessageEvent.d.ts +3 -3
- package/dist/lib/events/InventoryOfferedEvent.d.ts +3 -3
- package/dist/lib/events/InventoryResponseEvent.d.ts +1 -1
- package/dist/lib/events/LandStatsEvent.d.ts +4 -4
- package/dist/lib/events/LandStatsEvent.js.map +1 -1
- package/dist/lib/events/LureEvent.d.ts +2 -2
- package/dist/lib/events/MapInfoRangeReplyEvent.d.ts +1 -1
- package/dist/lib/events/MapInfoReplyEvent.d.ts +2 -2
- package/dist/lib/events/NewObjectEvent.d.ts +2 -2
- package/dist/lib/events/ObjectKilledEvent.d.ts +2 -2
- package/dist/lib/events/ObjectPhysicsDataEvent.d.ts +1 -1
- package/dist/lib/events/ObjectResolvedEvent.d.ts +1 -1
- package/dist/lib/events/ObjectUpdatedEvent.d.ts +2 -2
- package/dist/lib/events/ParcelInfoReplyEvent.d.ts +3 -3
- package/dist/lib/events/ParcelPropertiesEvent.d.ts +3 -3
- package/dist/lib/events/RegionInfoReplyEvent.d.ts +2 -2
- package/dist/lib/events/ScriptDialogEvent.d.ts +1 -1
- package/dist/lib/events/SelectedObjectEvent.d.ts +1 -1
- package/dist/lib/events/TeleportEvent.d.ts +1 -1
- package/dist/lib/index.d.ts +6 -8
- package/dist/lib/index.js +4 -7
- package/dist/lib/index.js.map +1 -1
- package/dist/lib/tsm/common.d.ts +1 -1
- package/dist/lib/tsm/common.js +3 -1
- package/dist/lib/tsm/common.js.map +1 -1
- package/dist/lib/tsm/mat2.d.ts +8 -8
- package/dist/lib/tsm/mat2.js +8 -7
- package/dist/lib/tsm/mat2.js.map +1 -1
- package/dist/lib/tsm/mat3.d.ts +7 -7
- package/dist/lib/tsm/mat3.js +8 -7
- package/dist/lib/tsm/mat3.js.map +1 -1
- package/dist/lib/tsm/mat4.d.ts +9 -9
- package/dist/lib/tsm/mat4.js +8 -7
- package/dist/lib/tsm/mat4.js.map +1 -1
- package/dist/lib/tsm/quat.d.ts +19 -19
- package/dist/lib/tsm/quat.js +69 -68
- package/dist/lib/tsm/quat.js.map +1 -1
- package/dist/lib/tsm/vec2.d.ts +13 -13
- package/dist/lib/tsm/vec2.js +30 -29
- package/dist/lib/tsm/vec2.js.map +1 -1
- package/dist/lib/tsm/vec3.d.ts +16 -16
- package/dist/lib/tsm/vec3.js +48 -47
- package/dist/lib/tsm/vec3.js.map +1 -1
- package/dist/lib/tsm/vec4.d.ts +22 -22
- package/dist/lib/tsm/vec4.js +94 -93
- package/dist/lib/tsm/vec4.js.map +1 -1
- package/eslint.config.mjs +104 -0
- package/examples/Inventory/Inventory.ts +4 -2
- package/examples/Money/Money.ts +6 -6
- package/examples/Objects/TaskInventory.ts +4 -3
- package/examples/Region/Settings.ts +19 -0
- package/package.json +10 -9
- package/.eslintrc +0 -224
- package/dist/lib/classes/llsd/LLSDNotationParser.d.ts +0 -9
- package/dist/lib/classes/llsd/LLSDNotationParser.js +0 -177
- package/dist/lib/classes/llsd/LLSDNotationParser.js.map +0 -1
- package/dist/lib/classes/llsd/LLSDNotationParser.spec.js +0 -167
- package/dist/lib/classes/llsd/LLSDNotationParser.spec.js.map +0 -1
- package/dist/lib/enums/AssetTypeLL.d.ts +0 -27
- package/dist/lib/enums/AssetTypeLL.js +0 -32
- package/dist/lib/enums/AssetTypeLL.js.map +0 -1
- package/dist/lib/enums/HTTPAssets.d.ts +0 -24
- package/dist/lib/enums/HTTPAssets.js +0 -29
- package/dist/lib/enums/HTTPAssets.js.map +0 -1
- package/dist/lib/tsm/test.js +0 -11
- package/dist/lib/tsm/test.js.map +0 -1
- /package/dist/{lib/classes/llsd/LLSDNotationParser.spec.d.ts → examples/Region/Settings.d.ts} +0 -0
- /package/dist/lib/{tsm/test.d.ts → classes/BinaryReader.spec.d.ts} +0 -0
|
@@ -1,13 +1,4 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
3
|
exports.LLMesh = void 0;
|
|
13
4
|
const LLSD = require("@caspertech/llsd");
|
|
@@ -20,84 +11,82 @@ class LLMesh {
|
|
|
20
11
|
constructor() {
|
|
21
12
|
this.lodLevels = {};
|
|
22
13
|
}
|
|
23
|
-
static from(buf) {
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
llmesh.lodLevels[key] = this.parseLODLevel(mesh['result']);
|
|
66
|
-
}
|
|
14
|
+
static async from(buf) {
|
|
15
|
+
const llmesh = new LLMesh();
|
|
16
|
+
const binData = new LLSD.Binary(Array.from(buf), 'BASE64');
|
|
17
|
+
let obj = LLSD.LLSD.parseBinary(binData);
|
|
18
|
+
if (obj.result === undefined) {
|
|
19
|
+
throw new Error('Failed to decode header');
|
|
20
|
+
}
|
|
21
|
+
if (obj.position === undefined) {
|
|
22
|
+
throw new Error('Position not reported');
|
|
23
|
+
}
|
|
24
|
+
const startPos = parseInt(obj.position, 10);
|
|
25
|
+
obj = obj.result;
|
|
26
|
+
if (obj.creator !== undefined) {
|
|
27
|
+
llmesh.creatorID = new UUID_1.UUID(obj.creator.toString());
|
|
28
|
+
}
|
|
29
|
+
if (obj.date !== undefined) {
|
|
30
|
+
llmesh.date = obj.date;
|
|
31
|
+
}
|
|
32
|
+
if (obj.version !== undefined) {
|
|
33
|
+
llmesh.version = parseInt(obj.version, 10);
|
|
34
|
+
}
|
|
35
|
+
for (const key of Object.keys(obj)) {
|
|
36
|
+
const o = obj[key];
|
|
37
|
+
if (typeof o === 'object' && o !== null && o.offset !== undefined) {
|
|
38
|
+
const bufFrom = startPos + parseInt(o.offset, 10);
|
|
39
|
+
const bufTo = startPos + parseInt(o.offset, 10) + parseInt(o.size, 10);
|
|
40
|
+
const partBuf = buf.subarray(bufFrom, bufTo);
|
|
41
|
+
const deflated = await Utils_1.Utils.inflate(partBuf);
|
|
42
|
+
const mesh = LLSD.LLSD.parseBinary(new LLSD.Binary(Array.from(deflated), 'BASE64'));
|
|
43
|
+
if (mesh.result === undefined) {
|
|
44
|
+
throw new Error('Failed to parse compressed submesh data');
|
|
45
|
+
}
|
|
46
|
+
if (key === 'physics_convex') {
|
|
47
|
+
llmesh.physicsConvex = this.parsePhysicsConvex(mesh.result);
|
|
48
|
+
}
|
|
49
|
+
else if (key === 'skin') {
|
|
50
|
+
llmesh.skin = this.parseSkin(mesh.result);
|
|
51
|
+
}
|
|
52
|
+
else if (key === 'physics_havok' || key === 'physics_cost_data') {
|
|
53
|
+
}
|
|
54
|
+
else {
|
|
55
|
+
llmesh.lodLevels[key] = this.parseLODLevel(mesh.result);
|
|
67
56
|
}
|
|
68
57
|
}
|
|
69
|
-
|
|
70
|
-
|
|
58
|
+
}
|
|
59
|
+
return llmesh;
|
|
71
60
|
}
|
|
72
61
|
static parseSkin(mesh) {
|
|
73
|
-
if (
|
|
62
|
+
if (mesh.joint_names === undefined) {
|
|
74
63
|
throw new Error('Joint names missing from skin');
|
|
75
64
|
}
|
|
76
|
-
if (
|
|
65
|
+
if (mesh.bind_shape_matrix === undefined) {
|
|
77
66
|
throw new Error('Bind shape matrix missing from skin');
|
|
78
67
|
}
|
|
79
|
-
if (
|
|
68
|
+
if (mesh.inverse_bind_matrix === undefined) {
|
|
80
69
|
throw new Error('Inverse bind matrix missing from skin');
|
|
81
70
|
}
|
|
82
71
|
const skin = {
|
|
83
|
-
jointNames: mesh
|
|
84
|
-
bindShapeMatrix: new mat4_1.TSMMat4(mesh
|
|
72
|
+
jointNames: mesh.joint_names,
|
|
73
|
+
bindShapeMatrix: new mat4_1.TSMMat4(mesh.bind_shape_matrix),
|
|
85
74
|
inverseBindMatrix: []
|
|
86
75
|
};
|
|
87
|
-
if (mesh
|
|
76
|
+
if (mesh.inverse_bind_matrix !== undefined) {
|
|
88
77
|
skin.inverseBindMatrix = [];
|
|
89
|
-
for (const inv of mesh
|
|
78
|
+
for (const inv of mesh.inverse_bind_matrix) {
|
|
90
79
|
skin.inverseBindMatrix.push(new mat4_1.TSMMat4(inv));
|
|
91
80
|
}
|
|
92
81
|
}
|
|
93
|
-
if (mesh
|
|
82
|
+
if (mesh.alt_inverse_bind_matrix !== undefined) {
|
|
94
83
|
skin.altInverseBindMatrix = [];
|
|
95
|
-
for (const inv of mesh
|
|
84
|
+
for (const inv of mesh.alt_inverse_bind_matrix) {
|
|
96
85
|
skin.altInverseBindMatrix.push(new mat4_1.TSMMat4(inv));
|
|
97
86
|
}
|
|
98
87
|
}
|
|
99
|
-
if (mesh
|
|
100
|
-
skin.pelvisOffset = new mat4_1.TSMMat4(mesh
|
|
88
|
+
if (mesh.pelvis_offset !== undefined) {
|
|
89
|
+
skin.pelvisOffset = new mat4_1.TSMMat4(mesh.pelvis_offset);
|
|
101
90
|
}
|
|
102
91
|
return skin;
|
|
103
92
|
}
|
|
@@ -119,22 +108,22 @@ class LLMesh {
|
|
|
119
108
|
max: new Vector3_1.Vector3([0.5, 0.5, 0.5])
|
|
120
109
|
}
|
|
121
110
|
};
|
|
122
|
-
if (mesh
|
|
123
|
-
conv.domain.min.x = mesh
|
|
124
|
-
conv.domain.min.y = mesh
|
|
125
|
-
conv.domain.min.z = mesh
|
|
126
|
-
}
|
|
127
|
-
if (mesh
|
|
128
|
-
conv.domain.max.x = mesh
|
|
129
|
-
conv.domain.max.y = mesh
|
|
130
|
-
conv.domain.max.z = mesh
|
|
131
|
-
}
|
|
132
|
-
if (mesh
|
|
133
|
-
if (
|
|
111
|
+
if (mesh.Min !== undefined) {
|
|
112
|
+
conv.domain.min.x = mesh.Min[0];
|
|
113
|
+
conv.domain.min.y = mesh.Min[1];
|
|
114
|
+
conv.domain.min.z = mesh.Min[2];
|
|
115
|
+
}
|
|
116
|
+
if (mesh.Max !== undefined) {
|
|
117
|
+
conv.domain.max.x = mesh.Max[0];
|
|
118
|
+
conv.domain.max.y = mesh.Max[1];
|
|
119
|
+
conv.domain.max.z = mesh.Max[2];
|
|
120
|
+
}
|
|
121
|
+
if (mesh.HullList !== undefined) {
|
|
122
|
+
if (mesh.Positions === undefined) {
|
|
134
123
|
throw new Error('Positions must be supplied if hull list is present');
|
|
135
124
|
}
|
|
136
|
-
conv.positions = this.decodeByteDomain3(mesh
|
|
137
|
-
conv.hullList = mesh
|
|
125
|
+
conv.positions = this.decodeByteDomain3(mesh.Positions.toArray(), conv.domain.min, conv.domain.max);
|
|
126
|
+
conv.hullList = mesh.HullList.toArray();
|
|
138
127
|
if (conv.hullList === undefined) {
|
|
139
128
|
throw new Error('HullList undefined');
|
|
140
129
|
}
|
|
@@ -148,10 +137,10 @@ class LLMesh {
|
|
|
148
137
|
}
|
|
149
138
|
}
|
|
150
139
|
}
|
|
151
|
-
if (
|
|
140
|
+
if (mesh.BoundingVerts === undefined) {
|
|
152
141
|
throw new Error('BoundingVerts is required');
|
|
153
142
|
}
|
|
154
|
-
conv.boundingVerts = this.decodeByteDomain3(mesh
|
|
143
|
+
conv.boundingVerts = this.decodeByteDomain3(mesh.BoundingVerts.toArray(), conv.domain.min, conv.domain.max);
|
|
155
144
|
return conv;
|
|
156
145
|
}
|
|
157
146
|
static parseLODLevel(mesh) {
|
|
@@ -163,51 +152,51 @@ class LLMesh {
|
|
|
163
152
|
max: new Vector3_1.Vector3([0.5, 0.5, 0.5])
|
|
164
153
|
}
|
|
165
154
|
};
|
|
166
|
-
if (submesh
|
|
155
|
+
if (submesh.NoGeometry) {
|
|
167
156
|
decoded.noGeometry = true;
|
|
168
157
|
list.push(decoded);
|
|
169
158
|
}
|
|
170
159
|
else {
|
|
171
160
|
decoded.position = [];
|
|
172
|
-
if (!submesh
|
|
161
|
+
if (!submesh.Position) {
|
|
173
162
|
throw new Error('Submesh does not contain position data');
|
|
174
163
|
}
|
|
175
164
|
if (decoded.positionDomain !== undefined) {
|
|
176
|
-
if (submesh
|
|
177
|
-
if (submesh
|
|
178
|
-
const dom = submesh
|
|
165
|
+
if (submesh.PositionDomain) {
|
|
166
|
+
if (submesh.PositionDomain.Max !== undefined) {
|
|
167
|
+
const dom = submesh.PositionDomain.Max;
|
|
179
168
|
decoded.positionDomain.max.x = dom[0];
|
|
180
169
|
decoded.positionDomain.max.y = dom[1];
|
|
181
170
|
decoded.positionDomain.max.z = dom[2];
|
|
182
171
|
}
|
|
183
|
-
if (submesh
|
|
184
|
-
const dom = submesh
|
|
172
|
+
if (submesh.PositionDomain.Min !== undefined) {
|
|
173
|
+
const dom = submesh.PositionDomain.Min;
|
|
185
174
|
decoded.positionDomain.min.x = dom[0];
|
|
186
175
|
decoded.positionDomain.min.y = dom[1];
|
|
187
176
|
decoded.positionDomain.min.z = dom[2];
|
|
188
177
|
}
|
|
189
178
|
}
|
|
190
|
-
decoded.position = this.decodeByteDomain3(submesh
|
|
179
|
+
decoded.position = this.decodeByteDomain3(submesh.Position.toArray(), decoded.positionDomain.min, decoded.positionDomain.max);
|
|
191
180
|
}
|
|
192
|
-
if (submesh
|
|
193
|
-
decoded.normal = this.decodeByteDomain3(submesh
|
|
181
|
+
if (submesh.Normal) {
|
|
182
|
+
decoded.normal = this.decodeByteDomain3(submesh.Normal.toArray(), new Vector3_1.Vector3([-1.0, -1.0, -1.0]), new Vector3_1.Vector3([1.0, 1.0, 1.0]));
|
|
194
183
|
if (decoded.normal.length !== decoded.position.length) {
|
|
195
184
|
throw new Error('Normal length does not match vertex position length');
|
|
196
185
|
}
|
|
197
186
|
}
|
|
198
|
-
if (submesh
|
|
187
|
+
if (submesh.TexCoord0) {
|
|
199
188
|
decoded.texCoord0Domain = {
|
|
200
189
|
min: new Vector2_1.Vector2([-0.5, -0.5]),
|
|
201
190
|
max: new Vector2_1.Vector2([0.5, 0.5])
|
|
202
191
|
};
|
|
203
|
-
if (submesh
|
|
204
|
-
if (submesh
|
|
205
|
-
const dom = submesh
|
|
192
|
+
if (submesh.TexCoord0Domain) {
|
|
193
|
+
if (submesh.TexCoord0Domain.Max !== undefined) {
|
|
194
|
+
const dom = submesh.TexCoord0Domain.Max;
|
|
206
195
|
decoded.texCoord0Domain.max.x = dom[0];
|
|
207
196
|
decoded.texCoord0Domain.max.y = dom[1];
|
|
208
197
|
}
|
|
209
|
-
if (submesh
|
|
210
|
-
const dom = submesh
|
|
198
|
+
if (submesh.TexCoord0Domain.Min !== undefined) {
|
|
199
|
+
const dom = submesh.TexCoord0Domain.Min;
|
|
211
200
|
decoded.texCoord0Domain.min.x = dom[0];
|
|
212
201
|
decoded.texCoord0Domain.min.y = dom[1];
|
|
213
202
|
}
|
|
@@ -215,12 +204,12 @@ class LLMesh {
|
|
|
215
204
|
else {
|
|
216
205
|
throw new Error('TexCoord0Domain is required if Texcoord0 is present');
|
|
217
206
|
}
|
|
218
|
-
decoded.texCoord0 = this.decodeByteDomain2(submesh
|
|
207
|
+
decoded.texCoord0 = this.decodeByteDomain2(submesh.TexCoord0.toArray(), decoded.texCoord0Domain.min, decoded.texCoord0Domain.max);
|
|
219
208
|
}
|
|
220
|
-
if (!submesh
|
|
209
|
+
if (!submesh.TriangleList) {
|
|
221
210
|
throw new Error('TriangleList is required');
|
|
222
211
|
}
|
|
223
|
-
const indexBuf = Buffer.from(submesh
|
|
212
|
+
const indexBuf = Buffer.from(submesh.TriangleList.toArray());
|
|
224
213
|
decoded.triangleList = [];
|
|
225
214
|
for (let pos = 0; pos < indexBuf.length; pos = pos + 2) {
|
|
226
215
|
const vertIndex = indexBuf.readUInt16LE(pos);
|
|
@@ -229,8 +218,8 @@ class LLMesh {
|
|
|
229
218
|
}
|
|
230
219
|
decoded.triangleList.push(vertIndex);
|
|
231
220
|
}
|
|
232
|
-
if (submesh
|
|
233
|
-
const skinBuf = Buffer.from(submesh
|
|
221
|
+
if (submesh.Weights) {
|
|
222
|
+
const skinBuf = Buffer.from(submesh.Weights.toArray());
|
|
234
223
|
decoded.weights = [];
|
|
235
224
|
let pos = 0;
|
|
236
225
|
while (pos < skinBuf.length) {
|
|
@@ -279,6 +268,44 @@ class LLMesh {
|
|
|
279
268
|
static normalizeDomain(value, min, max) {
|
|
280
269
|
return ((value / 65535) * (max - min)) + min;
|
|
281
270
|
}
|
|
271
|
+
async toAsset() {
|
|
272
|
+
const llsd = {
|
|
273
|
+
'creator': new LLSD.UUID(this.creatorID.toString()),
|
|
274
|
+
'version': this.version,
|
|
275
|
+
'date': null
|
|
276
|
+
};
|
|
277
|
+
let offset = 0;
|
|
278
|
+
const bufs = [];
|
|
279
|
+
for (const lod of Object.keys(this.lodLevels)) {
|
|
280
|
+
const lodBlob = await this.encodeLODLevel(lod, this.lodLevels[lod]);
|
|
281
|
+
llsd[lod] = {
|
|
282
|
+
'offset': offset,
|
|
283
|
+
'size': lodBlob.length
|
|
284
|
+
};
|
|
285
|
+
offset += lodBlob.length;
|
|
286
|
+
bufs.push(lodBlob);
|
|
287
|
+
}
|
|
288
|
+
if (this.physicsConvex) {
|
|
289
|
+
const physBlob = await this.encodePhysicsConvex(this.physicsConvex);
|
|
290
|
+
llsd.physics_convex = {
|
|
291
|
+
'offset': offset,
|
|
292
|
+
'size': physBlob.length
|
|
293
|
+
};
|
|
294
|
+
offset += physBlob.length;
|
|
295
|
+
bufs.push(physBlob);
|
|
296
|
+
}
|
|
297
|
+
if (this.skin) {
|
|
298
|
+
const skinBlob = await this.encodeSkin(this.skin);
|
|
299
|
+
llsd.skin = {
|
|
300
|
+
'offset': offset,
|
|
301
|
+
'size': skinBlob.length
|
|
302
|
+
};
|
|
303
|
+
offset += skinBlob.length;
|
|
304
|
+
bufs.push(skinBlob);
|
|
305
|
+
}
|
|
306
|
+
bufs.unshift(Buffer.from(LLSD.LLSD.formatBinary(llsd).toArray()));
|
|
307
|
+
return Buffer.concat(bufs);
|
|
308
|
+
}
|
|
282
309
|
encodeSubMesh(mesh) {
|
|
283
310
|
const data = {};
|
|
284
311
|
if (mesh.noGeometry === true) {
|
|
@@ -308,8 +335,8 @@ class LLMesh {
|
|
|
308
335
|
if (mesh.triangleList) {
|
|
309
336
|
const triangles = Buffer.allocUnsafe(mesh.triangleList.length * 2);
|
|
310
337
|
let pos = 0;
|
|
311
|
-
for (
|
|
312
|
-
triangles.writeUInt16LE(
|
|
338
|
+
for (const triangle of mesh.triangleList) {
|
|
339
|
+
triangles.writeUInt16LE(triangle, pos);
|
|
313
340
|
pos = pos + 2;
|
|
314
341
|
}
|
|
315
342
|
data.triangleList = new LLSD.Binary(Array.from(triangles));
|
|
@@ -369,120 +396,74 @@ class LLMesh {
|
|
|
369
396
|
}
|
|
370
397
|
return buf;
|
|
371
398
|
}
|
|
372
|
-
encodeLODLevel(_, submeshes) {
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
return Utils_1.Utils.deflate(Buffer.from(mesh.toArray()));
|
|
380
|
-
});
|
|
381
|
-
}
|
|
382
|
-
encodePhysicsConvex(conv) {
|
|
383
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
384
|
-
const llsd = {
|
|
385
|
-
Min: LLMesh.fixReal(conv.domain.min.toArray()),
|
|
386
|
-
Max: LLMesh.fixReal(conv.domain.max.toArray())
|
|
387
|
-
};
|
|
388
|
-
const sizeX = conv.domain.max.x - conv.domain.min.x;
|
|
389
|
-
const sizeY = conv.domain.max.y - conv.domain.min.y;
|
|
390
|
-
const sizeZ = conv.domain.max.z - conv.domain.min.z;
|
|
391
|
-
if (conv.hullList) {
|
|
392
|
-
if (!conv.positions) {
|
|
393
|
-
throw new Error('Positions must be present if hullList is set.');
|
|
394
|
-
}
|
|
395
|
-
llsd.HullList = new LLSD.Binary(conv.hullList);
|
|
396
|
-
const buf = Buffer.allocUnsafe(conv.positions.length * 6);
|
|
397
|
-
let pos = 0;
|
|
398
|
-
for (const vec of conv.positions) {
|
|
399
|
-
buf.writeUInt16LE(Math.round(((vec.x - conv.domain.min.x) / sizeX) * 65535), pos);
|
|
400
|
-
pos = pos + 2;
|
|
401
|
-
buf.writeUInt16LE(Math.round(((vec.y - conv.domain.min.y) / sizeY) * 65535), pos);
|
|
402
|
-
pos = pos + 2;
|
|
403
|
-
buf.writeUInt16LE(Math.round(((vec.z - conv.domain.min.z) / sizeZ) * 65535), pos);
|
|
404
|
-
pos = pos + 2;
|
|
405
|
-
}
|
|
406
|
-
llsd.Positions = new LLSD.Binary(Array.from(buf));
|
|
407
|
-
}
|
|
408
|
-
{
|
|
409
|
-
const buf = Buffer.allocUnsafe(conv.boundingVerts.length * 6);
|
|
410
|
-
let pos = 0;
|
|
411
|
-
for (const vec of conv.boundingVerts) {
|
|
412
|
-
buf.writeUInt16LE(Math.round(((vec.x - conv.domain.min.x) / sizeX)) * 65535, pos);
|
|
413
|
-
pos = pos + 2;
|
|
414
|
-
buf.writeUInt16LE(Math.round(((vec.y - conv.domain.min.y) / sizeY)) * 65535, pos);
|
|
415
|
-
pos = pos + 2;
|
|
416
|
-
buf.writeUInt16LE(Math.round(((vec.z - conv.domain.min.z) / sizeZ)) * 65535, pos);
|
|
417
|
-
pos = pos + 2;
|
|
418
|
-
}
|
|
419
|
-
llsd.BoundingVerts = new LLSD.Binary(Array.from(buf));
|
|
420
|
-
}
|
|
421
|
-
const mesh = LLSD.LLSD.formatBinary(llsd);
|
|
422
|
-
return yield Utils_1.Utils.deflate(Buffer.from(mesh.toArray()));
|
|
423
|
-
});
|
|
399
|
+
async encodeLODLevel(_, submeshes) {
|
|
400
|
+
const smList = [];
|
|
401
|
+
for (const sub of submeshes) {
|
|
402
|
+
smList.push(this.encodeSubMesh(sub));
|
|
403
|
+
}
|
|
404
|
+
const mesh = LLSD.LLSD.formatBinary(smList);
|
|
405
|
+
return Utils_1.Utils.deflate(Buffer.from(mesh.toArray()));
|
|
424
406
|
}
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
407
|
+
async encodePhysicsConvex(conv) {
|
|
408
|
+
const llsd = {
|
|
409
|
+
Min: LLMesh.fixReal(conv.domain.min.toArray()),
|
|
410
|
+
Max: LLMesh.fixReal(conv.domain.max.toArray())
|
|
411
|
+
};
|
|
412
|
+
const sizeX = conv.domain.max.x - conv.domain.min.x;
|
|
413
|
+
const sizeY = conv.domain.max.y - conv.domain.min.y;
|
|
414
|
+
const sizeZ = conv.domain.max.z - conv.domain.min.z;
|
|
415
|
+
if (conv.hullList) {
|
|
416
|
+
if (!conv.positions) {
|
|
417
|
+
throw new Error('Positions must be present if hullList is set.');
|
|
433
418
|
}
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
419
|
+
llsd.HullList = new LLSD.Binary(conv.hullList);
|
|
420
|
+
const buf = Buffer.allocUnsafe(conv.positions.length * 6);
|
|
421
|
+
let pos = 0;
|
|
422
|
+
for (const vec of conv.positions) {
|
|
423
|
+
buf.writeUInt16LE(Math.round(((vec.x - conv.domain.min.x) / sizeX) * 65535), pos);
|
|
424
|
+
pos = pos + 2;
|
|
425
|
+
buf.writeUInt16LE(Math.round(((vec.y - conv.domain.min.y) / sizeY) * 65535), pos);
|
|
426
|
+
pos = pos + 2;
|
|
427
|
+
buf.writeUInt16LE(Math.round(((vec.z - conv.domain.min.z) / sizeZ) * 65535), pos);
|
|
428
|
+
pos = pos + 2;
|
|
439
429
|
}
|
|
440
|
-
|
|
441
|
-
|
|
430
|
+
llsd.Positions = new LLSD.Binary(Array.from(buf));
|
|
431
|
+
}
|
|
432
|
+
{
|
|
433
|
+
const buf = Buffer.allocUnsafe(conv.boundingVerts.length * 6);
|
|
434
|
+
let pos = 0;
|
|
435
|
+
for (const vec of conv.boundingVerts) {
|
|
436
|
+
buf.writeUInt16LE(Math.round(((vec.x - conv.domain.min.x) / sizeX)) * 65535, pos);
|
|
437
|
+
pos = pos + 2;
|
|
438
|
+
buf.writeUInt16LE(Math.round(((vec.y - conv.domain.min.y) / sizeY)) * 65535, pos);
|
|
439
|
+
pos = pos + 2;
|
|
440
|
+
buf.writeUInt16LE(Math.round(((vec.z - conv.domain.min.z) / sizeZ)) * 65535, pos);
|
|
441
|
+
pos = pos + 2;
|
|
442
442
|
}
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
443
|
+
llsd.BoundingVerts = new LLSD.Binary(Array.from(buf));
|
|
444
|
+
}
|
|
445
|
+
const mesh = LLSD.LLSD.formatBinary(llsd);
|
|
446
|
+
return Utils_1.Utils.deflate(Buffer.from(mesh.toArray()));
|
|
446
447
|
}
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
llsd
|
|
459
|
-
'offset': offset,
|
|
460
|
-
'size': lodBlob.length
|
|
461
|
-
};
|
|
462
|
-
offset += lodBlob.length;
|
|
463
|
-
bufs.push(lodBlob);
|
|
464
|
-
}
|
|
465
|
-
if (this.physicsConvex) {
|
|
466
|
-
const physBlob = yield this.encodePhysicsConvex(this.physicsConvex);
|
|
467
|
-
llsd['physics_convex'] = {
|
|
468
|
-
'offset': offset,
|
|
469
|
-
'size': physBlob.length
|
|
470
|
-
};
|
|
471
|
-
offset += physBlob.length;
|
|
472
|
-
bufs.push(physBlob);
|
|
473
|
-
}
|
|
474
|
-
if (this.skin) {
|
|
475
|
-
const skinBlob = yield this.encodeSkin(this.skin);
|
|
476
|
-
llsd['skin'] = {
|
|
477
|
-
'offset': offset,
|
|
478
|
-
'size': skinBlob.length
|
|
479
|
-
};
|
|
480
|
-
offset += skinBlob.length;
|
|
481
|
-
bufs.push(skinBlob);
|
|
448
|
+
async encodeSkin(skin) {
|
|
449
|
+
const llsd = {};
|
|
450
|
+
llsd.joint_names = skin.jointNames;
|
|
451
|
+
llsd.bind_shape_matrix = skin.bindShapeMatrix.toArray();
|
|
452
|
+
llsd.inverse_bind_matrix = [];
|
|
453
|
+
for (const matrix of skin.inverseBindMatrix) {
|
|
454
|
+
llsd.inverse_bind_matrix.push(matrix.toArray());
|
|
455
|
+
}
|
|
456
|
+
if (skin.altInverseBindMatrix) {
|
|
457
|
+
llsd.alt_inverse_bind_matrix = [];
|
|
458
|
+
for (const matrix of skin.altInverseBindMatrix) {
|
|
459
|
+
llsd.alt_inverse_bind_matrix.push(matrix.toArray());
|
|
482
460
|
}
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
461
|
+
}
|
|
462
|
+
if (skin.pelvisOffset) {
|
|
463
|
+
llsd.pelvis_offset = skin.pelvisOffset.toArray();
|
|
464
|
+
}
|
|
465
|
+
const mesh = LLSD.LLSD.formatBinary(llsd);
|
|
466
|
+
return Utils_1.Utils.deflate(Buffer.from(mesh.toArray()));
|
|
486
467
|
}
|
|
487
468
|
}
|
|
488
469
|
exports.LLMesh = LLMesh;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LLMesh.js","sourceRoot":"","sources":["../../../../lib/classes/public/LLMesh.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"LLMesh.js","sourceRoot":"","sources":["../../../../lib/classes/public/LLMesh.ts"],"names":[],"mappings":"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"}
|