Closed mikhail-dcl closed 2 months ago
There are no such objects with the PB component on the scene
TODO unchange realm
This error appeared:
ScriptEngineException: Error: Outside of the bounds of writen data.
at ReadWriteByteBuffer._ReadWriteByteBuffer_roAdd2 (Script [19]:11130:15)
at ReadWriteByteBuffer.readInt8 (Script [19]:10960:128)
at Object.deserialize (Script [19]:21164:29)
at Object.deserialize (Script [19]:21124:35)
at Object.deserialize (Script [19]:20755:28)
at Object.deserialize (Script [19]:9834:39)
at Object.updateFromCrdt (Script [19]:11901:35)
at Object.receiveMessages (Script [19]:11658:54)
at Object.update (Script [19]:12541:22)
at Object.onUpdate (Script [19]:31341:16)
Cysharp.Threading.Tasks.UniTaskCompletionSourceCore1[TResult].GetResult (System.Int16 token) (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/UniTaskCompletionSource.cs:244) Cysharp.Threading.Tasks.AutoResetUniTaskCompletionSource.GetResult (System.Int16 token) (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/UniTaskCompletionSource.cs:406) Cysharp.Threading.Tasks.UniTask+Awaiter.GetResult () (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/UniTask.cs:312) SceneRunner.SceneFacade.StartUpdateLoopAsync (System.Int32 targetFPS, System.Threading.CancellationToken ct) (at Assets/Scripts/SceneRunner/SceneFacade.cs:153) UnityEngine.DebugLogHandler:LogException(Exception, Object) DCL.Diagnostics.DebugLogReportHandler:LogExceptionInternal(Exception, ReportData, Object) (at Assets/DCL/PerformanceAndDiagnostics/Diagnostics/ReportsHandling/Handlers/DebugLogReportHandler.cs:106) DCL.Diagnostics.ReportHandlerBase:LogException(Exception, ReportData, Object) (at Assets/DCL/PerformanceAndDiagnostics/Diagnostics/ReportsHandling/Handlers/ReportHandlerBase.cs:49) DCL.Diagnostics.ReportHubLogger:LogException(Exception, ReportData, ReportHandler) (at Assets/DCL/PerformanceAndDiagnostics/Diagnostics/ReportsHandling/ReportHubLogger.cs:126) DCL.Diagnostics.ReportHub:LogException(Exception, ReportData, ReportHandler) (at Assets/DCL/PerformanceAndDiagnostics/Diagnostics/ReportsHandling/ReportHub.cs:118) SceneRunner.Scene.ExceptionsHandling.SceneExceptionsHandler:OnJavaScriptException(Exception) (at Assets/Scripts/SceneRunner/Scene/ExceptionsHandling/SceneExceptionsHandler.cs:124) SceneRunner.<StartUpdateLoopAsync>d__30:MoveNext() (at Assets/Scripts/SceneRunner/SceneFacade.cs:157) Cysharp.Threading.Tasks.CompilerServices.AsyncUniTaskMethodBuilder:Start(<StartUpdateLoopAsync>d__30&) (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/CompilerServices/AsyncUniTaskMethodBuilder.cs:111) SceneRunner.SceneFacade:StartUpdateLoopAsync(Int32, CancellationToken) ECS.SceneLifeCycle.Systems.<<StartScene>g__RunOnThreadPoolAsync|0>d:MoveNext() (at Assets/Scripts/ECS/SceneLifeCycle/Systems/ControlSceneUpdateLoopSystem.cs:72) Cysharp.Threading.Tasks.CompilerServices.AsyncUniTaskVoid
1:Run() (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/CompilerServices/StateMachineRunner.cs:104)
Cysharp.Threading.Tasks.Awaiter:Callback(Object) (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/UniTask.Threading.cs:218)
System.Threading._ThreadPoolWaitCallback:PerformWaitCallback()
IndexOutOfRangeException: Index was outside the bounds of the array.
Arch.Core.Chunk.Get[T] (System.Int32 index) (at <8704400f3ef34475945ffb62bfb102d6>:0)
Arch.Core.Archetype.Get[T] (Arch.Core.Slot& slot) (at <8704400f3ef34475945ffb62bfb102d6>:0)
Arch.Core.World.Get[T] (Arch.Core.Entity entity) (at <8704400f3ef34475945ffb62bfb102d6>:0)
CrdtEcsBridge.WorldSynchronizer.CommandBuffer.SDKComponentCommandBufferSynchronizer1[T].Apply (Arch.Core.World world, Arch.Buffer.PersistentCommandBuffer commandBuffer, Arch.Core.Entity entity, CRDT.Protocol.CRDTReconciliationEffect reconciliationEffect, System.Object component) (at Assets/Scripts/CrdtEcsBridge/WorldSynchronizer/CommandBufferSynchronizer/SDKComponentCommandBufferSynchronizer.cs:50) CrdtEcsBridge.WorldSynchronizer.WorldSyncCommandBuffer.Apply (Arch.Core.World world, Arch.Buffer.PersistentCommandBuffer commandBuffer, System.Collections.Generic.Dictionary
2[TKey,TValue] entitiesMap) (at Assets/Scripts/CrdtEcsBridge/WorldSynchronizer/WorldSyncCommandBuffer.cs:246)
CrdtEcsBridge.WorldSynchronizer.WorldSyncCommandBuffer.CrdtEcsBridge.WorldSynchronizer.IWorldSyncCommandBuffer.Apply (Arch.Core.World world, Arch.Buffer.PersistentCommandBuffer commandBuffer, System.Collections.Generic.Dictionary2[TKey,TValue] entitiesMap) (at Assets/Scripts/CrdtEcsBridge/WorldSynchronizer/WorldSyncCommandBuffer.cs:264) CrdtEcsBridge.WorldSynchronizer.CRDTWorldSynchronizer.ApplySyncCommandBuffer (CrdtEcsBridge.WorldSynchronizer.IWorldSyncCommandBuffer syncCommandBuffer) (at Assets/Scripts/CrdtEcsBridge/WorldSynchronizer/CrdtEcsSynchronizer.cs:78) CrdtEcsBridge.JsModulesImplementation.EngineAPIImplementation.ApplySyncCommandBuffer (CrdtEcsBridge.WorldSynchronizer.IWorldSyncCommandBuffer worldSyncBuffer) (at Assets/Scripts/CrdtEcsBridge/JsModulesImplementation/EngineAPIImplementation.cs:242) UnityEngine.DebugLogHandler:LogException(Exception, Object) DCL.Diagnostics.DebugLogReportHandler:LogExceptionInternal(Exception, ReportData, Object) (at Assets/DCL/PerformanceAndDiagnostics/Diagnostics/ReportsHandling/Handlers/DebugLogReportHandler.cs:106) DCL.Diagnostics.ReportHandlerBase:LogException(Exception, ReportData, Object) (at Assets/DCL/PerformanceAndDiagnostics/Diagnostics/ReportsHandling/Handlers/ReportHandlerBase.cs:49) DCL.Diagnostics.ReportHubLogger:LogException(Exception, ReportData, ReportHandler) (at Assets/DCL/PerformanceAndDiagnostics/Diagnostics/ReportsHandling/ReportHubLogger.cs:126) DCL.Diagnostics.ReportHub:LogException(Exception, ReportData, ReportHandler) (at Assets/DCL/PerformanceAndDiagnostics/Diagnostics/ReportsHandling/ReportHub.cs:118) SceneRunner.Scene.ExceptionsHandling.SceneExceptionsHandler:OnEngineException(Exception, String) (at Assets/Scripts/SceneRunner/Scene/ExceptionsHandling/SceneExceptionsHandler.cs:113) CrdtEcsBridge.JsModulesImplementation.EngineAPIImplementation:ApplySyncCommandBuffer(IWorldSyncCommandBuffer) (at Assets/Scripts/CrdtEcsBridge/JsModulesImplementation/EngineAPIImplementation.cs:249) CrdtEcsBridge.JsModulesImplementation.EngineAPIImplementation:CrdtSendToRenderer(ReadOnlyMemory
1, Boolean) (at Assets/Scripts/CrdtEcsBridge/JsModulesImplementation/EngineAPIImplementation.cs:121)
SceneRuntime.Apis.Modules.EngineApi.EngineApiWrapper:CrdtSendToRenderer(ITypedArray1) (at Assets/Scripts/SceneRuntime/Apis/Modules/EngineApi/EngineApiWrapper.cs:45) System.Reflection.MethodBase:Invoke(Object, Object[]) Microsoft.ClearScript.Util.<>c:<InvokeMethod>b__0_0(MethodInfo, Object, Object[]) Microsoft.ClearScript.Util.InvokeHelpers:InvokeMethodInternal(IHostInvokeContext, MethodInfo, Object, Object[], Func
4, Type, ScriptMemberFlags)
Microsoft.ClearScript.Util.InvokeHelpers:InvokeMethod(IHostInvokeContext, MethodInfo, Object, Object[], ScriptMemberFlags)
Microsoft.ClearScript.MethodBindSuccess:Invoke(HostItem)
Microsoft.ClearScript.HostItem:InvokeMethod(String, Type[], Object[], Object[])
Microsoft.ClearScript.HostItem:InvokeMethod(String, Object[], Object[])
Microsoft.ClearScript.HostItem:InvokeHostMember(String, BindingFlags, Object[], Object[], Boolean&)
Microsoft.ClearScript.HostItem:InvokeMember(String, BindingFlags, Object[], Object[], CultureInfo, Boolean, Boolean&)
Microsoft.ClearScript.HostItem:InvokeMember(String, BindingFlags, Object[], Object[], CultureInfo, Boolean)
Microsoft.ClearScript.HostMethod:TryInvoke(IHostInvokeContext, BindingFlags, Object[], Object[], Object&)
Microsoft.ClearScript.Util.InvokeHelpers:TryInvokeObject(IHostInvokeContext, Object, BindingFlags, Object[], Object[], Boolean, Object&)
Microsoft.ClearScript.HostItem:InvokeHostMember(String, BindingFlags, Object[], Object[], Boolean&)
Microsoft.ClearScript.HostItem:InvokeMember(String, BindingFlags, Object[], Object[], CultureInfo, Boolean, Boolean&)
Microsoft.ClearScript.<>cDisplayClass147_0:1) Microsoft.ClearScript.HostItem:HostInvoke(Func
1)
Microsoft.ClearScript.HostItem:InvokeReflectMember(String, BindingFlags, Object[], CultureInfo, String[], Boolean&)
Microsoft.ClearScript.HostItem:InvokeReflectMember(String, BindingFlags, Object[], CultureInfo, String[])
Microsoft.ClearScript.HostItem:System.Reflection.IReflect.InvokeMember(String, BindingFlags, Binder, Object, Object[], ParameterModifier[], CultureInfo, String[])
Microsoft.ClearScript.HostItem:Microsoft.ClearScript.Util.IDynamic.Invoke(Boolean, Object[])
Microsoft.ClearScript.V8.V8ProxyHelpers:InvokeHostObject(Object, Boolean, Object[])
Microsoft.ClearScript.V8.V8ProxyHelpers:InvokeHostObject(IntPtr, Boolean, Object[])
Microsoft.ClearScript.V8.SplitProxy.V8SplitProxyManaged:InvokeHostObject(IntPtr, Boolean, Int32, Ptr, Ptr)
Microsoft.ClearScript.V8.SplitProxy.Impl_OSX_Arm64:V8Object_Invoke(Handle, Boolean, Ptr, Ptr)
Microsoft.ClearScript.V8.SplitProxy.Impl_OSX_Arm64:Microsoft.ClearScript.V8.SplitProxy.IV8SplitProxyNative.V8Object_Invoke(Handle, Boolean, Object[])
Microsoft.ClearScript.V8.SplitProxy.<>cDisplayClass26_0:2) Microsoft.ClearScript.V8.SplitProxy.V8ObjectImpl:Invoke(Boolean, Object[]) Microsoft.ClearScript.V8.<>c__DisplayClass21_0:<Invoke>b__0() Microsoft.ClearScript.ScriptEngine:ScriptInvokeInternal(Func
1)
Microsoft.ClearScript.V8.<>cDisplayClass127_0`1:1) Microsoft.ClearScript.V8.SplitProxy.V8ContextProxyImpl:InvokeWithLock(Action) Microsoft.ClearScript.V8.V8ScriptEngine:ScriptInvoke(Func
1)
Microsoft.ClearScript.V8.V8ScriptItem:Invoke(Boolean, Object[])
Microsoft.ClearScript.ScriptObject:InvokeAsFunction(Object[])
SceneRuntime.SceneRuntimeImpl:UpdateScene(Single) (at Assets/Scripts/SceneRuntime/SceneRuntimeImpl.cs:130)
SceneRunner.
NullReferenceException: Object reference not set to an instance of an object
DCL.SDKComponents.MediaStream.MediaPlayerExtensions.UpdateVolume (RenderHeads.Media.AVProVideo.MediaPlayer mediaPlayer, System.Boolean isCurrentScene, System.Boolean hasVolume, System.Single volume) (at Assets/DCL/SDKComponents/MediaStream/MediaPlayerExtensions.cs:21)
DCL.SDKComponents.MediaStream.UpdateMediaPlayerSystem.UpdateVideoStream (DCL.SDKComponents.MediaStream.MediaPlayerComponent& component, DCL.ECSComponents.PBVideoPlayer sdkComponent) (at Assets/DCL/SDKComponents/MediaStream/Systems/UpdateMediaPlayerSystem.cs:67)
DCL.SDKComponents.MediaStream.UpdateMediaPlayerSystem.UpdateVideoStreamQuery (Arch.Core.World world) (at Arch.System.SourceGenerator/Arch.System.SourceGenerator.QueryGenerator/UpdateMediaPlayerSystem.UpdateVideoStream(ref MediaPlayerComponent, PBVideoPlayer).g.cs:35)
DCL.SDKComponents.MediaStream.UpdateMediaPlayerSystem.Update (System.Single t) (at Assets/DCL/SDKComponents/MediaStream/Systems/UpdateMediaPlayerSystem.cs:44)
ECS.Abstract.BaseUnityLoopSystem.Update (System.Single& t) (at Assets/Scripts/ECS/Abstract/BaseUnityLoopSystem.cs:29)
Rethrow as EcsSystemException: [MEDIA_STREAM] (79, 1): [UpdateMediaPlayerSystem]
ECS.Abstract.BaseUnityLoopSystem.Update (System.Single& t) (at Assets/Scripts/ECS/Abstract/BaseUnityLoopSystem.cs:35)
Arch.SystemGroups.ExecutionNode1[T].Update (T& t, System.Boolean throttle) (at ./Library/PackageCache/com.arch.systemgroups@bd58275fb1/ExecutionNode.cs:78) Arch.SystemGroups.CustomGroupBase
1[T].UpdateInternal (T& t, System.Boolean throttle) (at ./Library/PackageCache/com.arch.systemgroups@bd58275fb1/Groups/CustomGroupBase.cs:119)
ECS.Groups.SyncedGroup.Update (System.Single& t, System.Boolean throttle) (at Assets/Scripts/ECS/Groups/SyncedGroup.cs:73)
Arch.SystemGroups.ExecutionNode`1[T].Update (T& t, System.Boolean throttle) (at ./Library/PackageCache/com.arch.systemgroups@bd58275fb1/ExecutionNode.cs:74)
Arch.SystemGroups.SystemGroup.Update (Arch.SystemGroups.UnityBridge.TimeProvider+Info& timeInfo) (at ./Library/PackageCache/com.arch.systemgroups@bd58275fb1/SystemGroup.cs:107)
UnityEngine.DebugLogHandler:LogException(Exception, Object)
DCL.Diagnostics.DebugLogReportHandler:LogExceptionInternal(EcsSystemException) (at Assets/DCL/PerformanceAndDiagnostics/Diagnostics/ReportsHandling/Handlers/DebugLogReportHandler.cs:88)
DCL.Diagnostics.ReportHandlerBase:LogException(EcsSystemException) (at Assets/DCL/PerformanceAndDiagnostics/Diagnostics/ReportsHandling/Handlers/ReportHandlerBase.cs:42)
DCL.Diagnostics.ReportHubLogger:LogException(EcsSystemException, ReportHandler) (at Assets/DCL/PerformanceAndDiagnostics/Diagnostics/ReportsHandling/ReportHubLogger.cs:110)
DCL.Diagnostics.ReportHub:LogException(EcsSystemException, ReportHandler) (at Assets/DCL/PerformanceAndDiagnostics/Diagnostics/ReportsHandling/ReportHub.cs:106)
SceneRunner.Scene.ExceptionsHandling.SceneExceptionsHandler:Handle(Exception, Type) (at Assets/Scripts/SceneRunner/Scene/ExceptionsHandling/SceneExceptionsHandler.cs:48)
Arch.SystemGroups.SystemGroup:Update(Info&) (at ./Library/PackageCache/com.arch.systemgroups@bd58275fb1/SystemGroup.cs:120)
Arch.SystemGroups.DefaultSystemGroups.PresentationSystemGroup:Update() (at ./Library/PackageCache/com.arch.systemgroups@bd58275fb1/DefaultSystemGroups/PresentationSystemGroup.cs:23)
ECS.Prioritization.PartitionedWorldsAggregate:TriggerUpdate() (at Assets/Scripts/ECS/Prioritization/PartitionedWorldsAggregate.cs:42)
The original issue described is the correct behaviour, we can have objects without PBPointerEvent Components and those should not receive notifications for the hit, but the global pointer event should be sent instead. There is no issue here in that sense. The problem with the shooting range was that raycasts were not working xD
I tried it on the Main, original issue still exists here
ScriptEngineException: Error: Outside of the bounds of writen data. at ReadWriteByteBuffer._ReadWriteByteBuffer_roAdd2 (Script [19]:11130:15) at ReadWriteByteBuffer.readInt8 (Script [19]:10960:128) at Object.deserialize (Script [19]:21164:29) at Object.deserialize (Script [19]:21124:35) at Object.deserialize (Script [19]:20755:28) at Object.deserialize (Script [19]:9834:39) at Object.updateFromCrdt (Script [19]:11901:35) at Object.receiveMessages (Script [19]:11658:54) at Object.update (Script [19]:12541:22) at Object.onUpdate (Script [19]:31341:16) Cysharp.Threading.Tasks.UniTaskCompletionSourceCore
1[TResult].GetResult (System.Int16 token) (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/UniTaskCompletionSource.cs:244)
Cysharp.Threading.Tasks.AutoResetUniTaskCompletionSource.GetResult (System.Int16 token) (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/UniTaskCompletionSource.cs:406)
Cysharp.Threading.Tasks.UniTask+Awaiter.GetResult () (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/UniTask.cs:312)
SceneRunner.SceneFacade.StartUpdateLoopAsync (System.Int32 targetFPS, System.Threading.CancellationToken ct) (at Assets/Scripts/SceneRunner/SceneFacade.cs:138)
UnityEngine.DebugLogHandler:LogException(Exception, Object)
DCL.Diagnostics.DebugLogReportHandler:LogExceptionInternal(Exception, ReportData, Object) (at Assets/DCL/PerformanceAndDiagnostics/Diagnostics/ReportsHandling/Handlers/DebugLogReportHandler.cs:106)
DCL.Diagnostics.ReportHandlerBase:LogException(Exception, ReportData, Object) (at Assets/DCL/PerformanceAndDiagnostics/Diagnostics/ReportsHandling/Handlers/ReportHandlerBase.cs:49)
DCL.Diagnostics.ReportHubLogger:LogException(Exception, ReportData, ReportHandler) (at Assets/DCL/PerformanceAndDiagnostics/Diagnostics/ReportsHandling/ReportHubLogger.cs:126)
DCL.Diagnostics.ReportHub:LogException(Exception, ReportData, ReportHandler) (at Assets/DCL/PerformanceAndDiagnostics/Diagnostics/ReportsHandling/ReportHub.cs:118)
SceneRunner.Scene.ExceptionsHandling.SceneExceptionsHandler:Handle(Exception, ReportData) (at Assets/Scripts/SceneRunner/Scene/ExceptionsHandling/SceneExceptionsHandler.cs:80)
SceneRunner.Scene.ExceptionsHandling.SceneExceptionsHandler:OnJavaScriptException(Exception) (at Assets/Scripts/SceneRunner/Scene/ExceptionsHandling/SceneExceptionsHandler.cs:53)
SceneRunner.1:Run() (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/CompilerServices/StateMachineRunner.cs:104) Cysharp.Threading.Tasks.Awaiter:Callback(Object) (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/UniTask.Threading.cs:218) System.Threading._ThreadPoolWaitCallback:PerformWaitCallback()
The error in the thread it is there, but it is unrelated to the issue described in the ticket. The issue of the ticket was a non-issue, as it was the correct behaviour to have. We were filtering the inputs incorrectly and its why some functionalities did not work. But it could happen that there was an input without a PBPointerEvents on it. This only means that the event must be published to the CRDT as global.
The error you mention is related to raycasts done to objects outside of the scene and I believe Pravus did a fix for that already as well. I will re-test it.
Please retest the shooting range (83,-1; 83,-3) on main; and compare it to what you have in unity-renderer
Some advice to remove noise: 1) Set load radius to 1 through the debug menu 2) Go into first person 3) Lock camera
🟢 Reviewed using dalkia STR and approved by QA.
https://github.com/decentraland/unity-explorer/assets/146741383/197fc969-009e-4845-b4ce-dfcf4d2b51a2
Might be related to #1087 and #752 . We will wait for resolution of those one before closing this one
Closed! Since #1087 and #752 are not related
@anicalbano could not reproduce here
@anicalbano could not reproduce here
Yes, it's working as expected, it was a problem on my end
No worries but what was it? Did you accidently use the wrong interaction mode? I had the same issue
Exactly! That was the issue
Explorer Alpha build version:
Issue Description:
Steps to reproduce:
ProcessPointerEventsSystem
does find the entity but does not findPBPointerEvents
on it. So this line returns false:if (entityRef.IsAlive(world) && world.TryGet(entityRef, out PBPointerEvents pbPointerEvents))
Expected behaviour:
Current behaviour:
Reproduction rate:
Severity:
Priority:
Platforms / OS:
Evidence:
Additional Notes: