Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve performance of single light scene #83018

Closed
wants to merge 1 commit into from

Conversation

darksylinc
Copy link
Contributor

@darksylinc darksylinc commented Oct 8, 2023

On pixel shader bound scenarios, use a specialization constant to generate a variant that uses one single directional light; which is the most common use case.

This improves framerate of Adreno 505 by 33%

NOTE: For Adreno 505 performance improvements to actually appear this PR also needs #82805 to workaround a driver bug.

NOTE: This PR can be merged without having to merge #82805.

On pixel shader bound scenarios, use a specialization constant to
generate a variant that uses one single directional light; which is the
most common use case.

This improves framerate of Adreno 505 by 33%
@darksylinc darksylinc requested a review from a team as a code owner October 8, 2023 22:40
@jcostello
Copy link
Contributor

Sorry, this improvement applies for all hardwares?

@darksylinc
Copy link
Contributor Author

darksylinc commented Oct 9, 2023

YMMV and 33% improvement is the upper bound, not the average case.

Generally speaking advanced GPUs (such as GCN/RDNA/NVIDIA) doesn't really benefit from this at all (and for that HW we often use Forward+, this PR only affects the Mobile backend).

But low end GPUs get benefit more. Specially low end phones. The scene must be pixel shader bound to be noticeable.

This PR combined with #82215 together can give a combined boost of up to 58% improvement on low end GPUs.

There are more things I want to improve (the best I've managed was a combined 87.5% improvement, but that change wasn't simple and changes how the scene looks); although after this PR I will have to focus on fixing the MSAA bug on Forward+ which has much greater priority.

@Calinou
Copy link
Member

Calinou commented Oct 9, 2023

Tested locally (rebased on top of master 42425ba). This PR causes the Truck Town app to freeze with Could not submit graphics queue. when loading a 3D scene on my Samsung Galaxy Z Fold4 (Android 13.0). This device has an Adreno 730.

A build of master doesn't cause a freeze, but regular vertex explosions are visible (likely a regression from the vertex attribute compression PR, as it didn't occur beforehand).

Export templates:

Logcat:

10-09 17:53:42.158 I/ApplyLoadPlanOperationImpl(4278): taskId = 5667, ComponentInfo{com.example.trucktown/com.godot.game.GodotApp}
10-09 17:53:42.342 I/AppInfo (4278): set ComponentInfo{com.example.trucktown/com.godot.game.GodotApp} app progress level to 100
10-09 17:53:42.846 I/ActivityManager(2324): Start proc 3197:com.example.trucktown/u0a490 for activelaunch {com.example.trucktown/com.godot.game.GodotApp}
10-09 17:53:42.895 I/ActivityTaskManager(2324): START u0 {act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=com.example.trucktown/com.godot.game.GodotApp bnds=[1346,161][1535,483]} from uid 10138
10-09 17:53:42.897 D/ActivityTaskManager(2324): TaskLaunchParamsModifier:task=null activity=ActivityRecord{ec81a57 u0 com.example.trucktown/com.godot.game.GodotApp} display-from-option=0 display-id=0 display-windowing-mode=1 suggested-display-area=DefaultTaskDisplayArea@7345602
10-09 17:53:42.897 D/ActivityTaskManager(2324): TaskLaunchParamsModifier:task=null activity=ActivityRecord{ec81a57 u0 com.example.trucktown/com.godot.game.GodotApp} t-1} display-from-option=0 display-id=0 display-windowing-mode=1 suggested-display-area=DefaultTaskDisplayArea@7345602 inherit-from-source=fullscreen activity-options-fullscreen=Rect(0, 0 - 0, 0) non-freeform-display display-area=DefaultTaskDisplayArea@7345602 maximized-bounds
10-09 17:53:42.901 D/ActivityTaskManager(2324): TaskLaunchParamsModifier:task=Task{cd53a2d #5668 type=standard A=10490:com.example.trucktown U=0 visible=false visibleRequested=false mode=fullscreen translucent=true sz=0} activity=ActivityRecord{ec81a57 u0 com.example.trucktown/com.godot.game.GodotApp} t-1} display-from-option=0 display-id=0 display-windowing-mode=1 suggested-display-area=DefaultTaskDisplayArea@7345602 inherit-from-source=fullscreen activity-options-fullscreen=Rect(0, 0 - 0, 0) non-freeform-display display-area=DefaultTaskDisplayArea@7345602 maximized-bounds
10-09 17:53:42.902 I/SurfaceFlinger(1586): id=74975 createSurf, flag=80004, ActivityRecord{ec81a57 u0 com.example.trucktown/com.godot.game.GodotApp} t5668}#74975
10-09 17:53:42.905 V/WindowManager(2324): Added starting ActivityRecord{ec81a57 u0 com.example.trucktown/com.godot.game.GodotApp} t5668}: startingWindow=null startingView=com.android.server.wm.StartingSurfaceController$StartingSurface@9f5fd4f
10-09 17:53:42.912 D/WindowManagerServiceExt(2324): notifyOccludeChangeNotice: cn=ComponentInfo{com.example.trucktown/com.godot.game.GodotApp} occludesParent=true inMultiWindow=false styleFloating=false caller=com.android.server.wm.WindowManagerServiceExt.updateOccludeTargetIfNeeded:1423 com.android.server.wm.DisplayContent.ensureActivitiesVisible:7598 com.android.server.wm.RootWindowContainer.ensureActivitiesVisible:2270 com.android.server.wm.RootWindowContainer.ensureVisibilityAndConfig:2148 com.android.server.wm.ActivityTaskSupervisor.realStartActivityLocked:919 
10-09 17:53:42.913 D/WindowManager(2324): rotationForOrientation, orientationSource=ActivityRecord{ec81a57 u0 com.example.trucktown/com.godot.game.GodotApp} t5668}
10-09 17:53:42.913 D/ActivityTaskManager(2324): applyFixedRotationTransform, r=ActivityRecord{ec81a57 u0 com.example.trucktown/com.godot.game.GodotApp} t5668}, caller=com.android.server.wm.DisplayContent.startFixedRotationTransform:2316 com.android.server.wm.DisplayContent.setFixedRotationLaunchingApp:2248 com.android.server.wm.DisplayContent.handleTopActivityLaunchingInDifferentOrientation:2150 com.android.server.wm.DisplayContent.updateOrientation:1998 com.android.server.wm.DisplayContent.updateOrientation:1903 
10-09 17:53:42.919 D/WindowManager(2324): setFixedRotationLaunchingAppUnchecked, rotation=1, r=ActivityRecord{ec81a57 u0 com.example.trucktown/com.godot.game.GodotApp} t5668}, caller=com.android.server.wm.DisplayContent.setFixedRotationLaunchingApp:2250 com.android.server.wm.DisplayContent.handleTopActivityLaunchingInDifferentOrientation:2150 com.android.server.wm.DisplayContent.updateOrientation:1998 com.android.server.wm.DisplayContent.updateOrientation:1903 com.android.server.wm.RootWindowContainer.ensureVisibilityAndConfig:2161 
10-09 17:53:42.922 D/ActivityTaskManager(2324): scheduleTopResumedActivityChanged, onTop=true r=ActivityRecord{ec81a57 u0 com.example.trucktown/com.godot.game.GodotApp} t5668} caller=com.android.server.wm.ActivityTaskSupervisor.scheduleTopResumedActivityStateIfNeeded:2591 com.android.server.wm.ActivityTaskSupervisor.updateTopResumedActivityIfNeeded:2583 com.android.server.wm.TaskFragment.setResumedActivity:508 com.android.server.wm.TaskFragment.onActivityStateChanged:820 com.android.server.wm.ActivityRecord.setState:6643 com.android.server.wm.Task.minimalResumeActivityLocked:6377 
10-09 17:53:42.922 D/InputDispatcher(2324): Focused application(0): ActivityRecord{ec81a57 u0 com.example.trucktown/com.godot.game.GodotApp} t5668}
10-09 17:53:42.932 V/WindowManager(2324): addWindow: ActivityRecord{ec81a57 u0 com.example.trucktown/com.godot.game.GodotApp} t5668} startingWindow=Window{d04f8d3 u0 Splash Screen com.example.trucktown}
10-09 17:53:42.938 I/Launcher(4278): onOccludeChangeNotice: cn = ComponentInfo{com.example.trucktown/com.godot.game.GodotApp}, fullscreen: true
10-09 17:53:42.960 V/GodotActivity(3197): Creating new Godot fragment instance.
10-09 17:53:42.967 I/SurfaceFlinger(1586): id=74983 createSurf, flag=80000, c76e7d6 ActivityRecordInputSink com.example.trucktown/com.godot.game.GodotApp#74983
10-09 17:53:42.969 I/WindowManager(2324):   taskInfo=TaskInfo{userId=0 taskId=5668 displayId=0 isRunning=true baseIntent=Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=com.example.trucktown/com.godot.game.GodotApp } baseActivity=ComponentInfo{com.example.trucktown/com.godot.game.GodotApp} topActivity=ComponentInfo{com.example.trucktown/com.godot.game.GodotApp} origActivity=null realActivity=ComponentInfo{com.example.trucktown/com.godot.game.GodotApp} numActivities=1 lastActiveTime=1475319616 supportsSplitScreenMultiWindow=true supportsMultiWindow=true resizeMode=2 isResizeable=true minWidth=-1 minHeight=-1 maxWidth=0 maxHeight=0 defaultMinSize=220 token=WCT{RemoteToken{c53815 Task{cd53a2d #5668 type=standard A=10490:com.example.trucktown U=0 visible=true visibleRequested=true mode=fullscreen translucent=false sz=1}}} topActivityType=1 pictureInPictureParams=null shouldDockBigOverlays=false launchIntoPipHostTaskId=0 displayCutoutSafeInsets=null topActivityInfo=ActivityInfo{4d772a com.godot.game.GodotApp} launchCookies=[android.os.BinderProxy@fc6b91b] positionInParent=Point(0, 0) parentTaskId=-1 isFocused=true isVisible=true isSleeping=false topActivityInSizeCompat=false topActivityEligibleForLetterboxEducation= false locusId=null displayAreaFeatureId=1 cameraCompatControlState=hidden originallySupportedSplitScreen=true hasWallpaper=false isTopTransparentActivity=false topActivityInFixedAspectRatio=false topActivityInDisplayCompat=false topActivityInBoundsCompat=false topActivityBounds=null singleTapFromLetterbox=false rootAffinity=10490:com.example.trucktown CoverLauncherWidgetTask=false isTopTaskInStage=false}
10-09 17:53:42.972 D/WindowManager(2324): rotationForOrientation, orientationSource=ActivityRecord{ec81a57 u0 com.example.trucktown/com.godot.game.GodotApp} t5668}
10-09 17:53:43.010 D/SensorManager(3197): registerListener :: 91, gravity  Non-wakeup, 20000, 0, org.godotengine.godot.Godot@8106d1a
10-09 17:53:43.024 D/SensorManager(3197): registerListener :: 21, ak0991x AK09918 Magnetometer Non-wakeup, 20000, 0, org.godotengine.godot.Godot@8106d1a
10-09 17:53:43.035 D/SensorManager(3197): registerListener :: 41, lsm6dso LSM6DSO Gyroscope Non-wakeup, 20000, 0, org.godotengine.godot.Godot@8106d1a
10-09 17:53:43.047 I/SurfaceFlinger(1586): id=74986 createSurf, flag=80004, 4691e39 com.example.trucktown/com.godot.game.GodotApp#74986
10-09 17:53:43.048 D/InsetsController(3197): onStateChanged: InsetsState: {mDisplayFrame=Rect(0, 0 - 2176, 1812), mDisplayCutout=DisplayCutout{insets=Rect(0, 0 - 0, 0) waterfall=Insets{left=0, top=0, right=0, bottom=0} boundingRect={Bounds=[Rect(0, 0 - 0, 0), Rect(0, 0 - 0, 0), Rect(0, 0 - 0, 0), Rect(0, 0 - 0, 0)]} cutoutPathParserInfo={CutoutPathParserInfo{displayWidth=0 displayHeight=0 physicalDisplayWidth=0 physicalDisplayHeight=0 density={0.0} cutoutSpec={} rotation={0} scale={0.0} physicalPixelDisplaySizeRatio={0.0}}}}, mRoundedCorners=RoundedCorners{[RoundedCorner{position=TopLeft, radius=48, center=Point(48, 48)}, RoundedCorner{position=TopRight, radius=48, center=Point(2128, 48)}, RoundedCorner{position=BottomRight, radius=48, center=Point(2128, 1764)}, RoundedCorner{position=BottomLeft, radius=48, center=Point(48, 1764)}]}  mRoundedCornerFrame=Rect(0, 0 - 2176, 1812), mPrivacyIndicatorBounds=PrivacyIndicatorBounds {static bounds=Rect(2209, 0 - 2316, 58) rotation=1}, mSources= { InsetsSource: {mType=ITYPE_STATUS_BAR, mFrame=[0,0][2176,58], mVisible=true, mInsetsRoundedCornerFrame=false}, InsetsSource: {mType=ITYPE_NAVIGATION_BAR, mFrame=[0,1812][2176,1812], mVisible=true, mInsetsRoundedCornerFrame=false}, InsetsSource: {mType=ITYPE_LEFT_GESTURES, mFrame=[0,0][57,1812], mVisible=true, mInsetsRoundedCornerFrame=false}, InsetsSource: {mType=ITYPE_RIGHT_GESTURES, mFrame=[2119,0][2176,1812], mVisible=true, mInsetsRoundedCornerFrame=false}, InsetsSource: {mType=ITYPE_TOP_MANDATORY_GESTURES, mFrame=[0,0][2176,58], mVisible=true, mInsetsRoundedCornerFrame=false}, InsetsSource: {mType=ITYPE_BOTTOM_MANDATORY_GESTURES, mFrame=[0,1764][2176,1812], mVisible=true, mInsetsRoundedCornerFrame=false}, InsetsSource: {mType=ITYPE_TOP_TAPPABLE_ELEMENT, mFrame=[0,0][2176,58], mVisible=true, mInsetsRoundedCornerFrame=false}, InsetsSource: {mType=ITYPE_BOTTOM_TAPPABLE_ELEMENT, mFrame=[0,0][0,0], mVisible=true, mInsetsRoundedCornerFrame=false} } host=com.example.trucktown/com.godot.game.GodotApp from=android.view.ViewRootImpl.setView:1739
10-09 17:53:43.050 D/CoreBackPreview(2324): Window{4691e39 u0 com.example.trucktown/com.godot.game.GodotApp}: Setting back callback OnBackInvokedCallbackInfo{mCallback=android.window.IOnBackInvokedCallback$Stub$Proxy@139c5df, mPriority=0}
10-09 17:53:43.051 I/ViewRootImpl@39de627[GodotApp](3197): setView = com.android.internal.policy.DecorView@c85532d TM=true
10-09 17:53:43.052 I/MSHandlerLifeCycle(3197): removeMultiSplitHandler: no exist. decor=DecorView@c85532d[GodotApp]
10-09 17:53:43.056 I/SurfaceView@b81e3d1(3197): onWindowVisibilityChanged(0) true org.godotengine.godot.GodotVulkanRenderView{b81e3d1 VFE...C.. .F....I. 0,0-0,0} of ViewRootImpl@39de627[GodotApp]
10-09 17:53:43.057 I/ViewRootImpl@39de627[GodotApp](3197): performTraversals params={(0,0)(fillxfill) sim={adjust=pan forwardNavigation} layoutInDisplayCutoutMode=shortEdges ty=BASE_APPLICATION wanim=0x1030001
10-09 17:53:43.057 I/ViewRootImpl@39de627[GodotApp](3197):   fl=1a10180
10-09 17:53:43.057 I/ViewRootImpl@39de627[GodotApp](3197):   pfl=12020040
10-09 17:53:43.057 I/ViewRootImpl@39de627[GodotApp](3197):   bhv=DEFAULT
10-09 17:53:43.057 I/ViewRootImpl@39de627[GodotApp](3197):   fitSides= naviIconColor=0
10-09 17:53:43.057 I/ViewRootImpl@39de627[GodotApp](3197):   sfl=100000}
10-09 17:53:43.058 I/ViewRootImpl@39de627[GodotApp](3197): performTraversals mFirst=true windowShouldResize=true viewVisibilityChanged=false mForceNextWindowRelayout=false params={(0,0)(fillxfill) sim={adjust=pan forwardNavigation} layoutInDisplayCutoutMode=shortEdges ty=BASE_APPLICATION fmt=TRANSLUCENT wanim=0x1030001
10-09 17:53:43.058 I/ViewRootImpl@39de627[GodotApp](3197):   fl=1a10180
10-09 17:53:43.058 I/ViewRootImpl@39de627[GodotApp](3197):   pfl=12020040
10-09 17:53:43.058 I/ViewRootImpl@39de627[GodotApp](3197):   bhv=DEFAULT
10-09 17:53:43.058 I/ViewRootImpl@39de627[GodotApp](3197):   fitSides= naviIconColor=0
10-09 17:53:43.058 I/ViewRootImpl@39de627[GodotApp](3197):   sfl=100000}
10-09 17:53:43.059 V/WindowManager(2324): Relayout Window{4691e39 u0 com.example.trucktown/com.godot.game.GodotApp}: viewVisibility=0 req=2176x1812 d0
10-09 17:53:43.060 I/SurfaceFlinger(1586): id=74987 createSurf, flag=40004, com.example.trucktown/com.godot.game.GodotApp$_3197#74987
10-09 17:53:43.062 D/WindowManager(2324): makeSurface duration=2 name=com.example.trucktown/com.godot.game.GodotApp$_3197
10-09 17:53:43.063 V/WindowManager(2324): Changing focus from null to Window{4691e39 u0 com.example.trucktown/com.godot.game.GodotApp} displayId=0 Callers=com.android.server.wm.RootWindowContainer.updateFocusedWindowLocked:602 com.android.server.wm.WindowManagerService.updateFocusedWindowLocked:6862 com.android.server.wm.WindowManagerService.relayoutWindow:2832 com.android.server.wm.Session.relayout:275 
10-09 17:53:43.063 D/WindowManager(2324): updateSystemBarAttributes: displayId=0, win=Window{4691e39 u0 com.example.trucktown/com.godot.game.GodotApp}, navColorWin=null, focusedCanBeNavColorWin=false, behavior=1, appearance=0, statusBarAppearanceRegions=[AppearanceRegion{ bounds=[0,0][2176,1812]}], requestedVisibilities=, from=com.android.server.wm.DisplayPolicy.focusChangedLw:3396 com.android.server.wm.DisplayContent.updateFocusedWindowLocked:4664 com.android.server.wm.RootWindowContainer.updateFocusedWindowLocked:602 
10-09 17:53:43.066 I/ViewRootImpl@39de627[GodotApp](3197): updateBlastSurfaceIfNeeded mBlastBufferQueue=null isSameSurfaceControl=false
10-09 17:53:43.067 I/BLASTBufferQueue(3197): new BLASTBufferQueue, mName= ViewRootImpl@39de627[GodotApp] mNativeObject= 0xb4000074fd68fef0 sc.mNativeObject= 0xb40000748d6ec3f0 caller= android.view.ViewRootImpl.updateBlastSurfaceIfNeeded:2939 android.view.ViewRootImpl.relayoutWindow:9990 android.view.ViewRootImpl.performTraversals:3919 android.view.ViewRootImpl.doTraversal:3151 android.view.ViewRootImpl$TraversalRunnable.run:11068 android.view.Choreographer$CallbackRecord.run:1321 android.view.Choreographer$CallbackRecord.run:1329 android.view.Choreographer.doCallbacks:930 android.view.Choreographer.doFrame:859 android.view.Choreographer$FrameDisplayEventReceiver.run:1303 
10-09 17:53:43.067 I/BLASTBufferQueue(3197): update, w= 2176 h= 1812 mName = ViewRootImpl@39de627[GodotApp] mNativeObject= 0xb4000074fd68fef0 sc.mNativeObject= 0xb40000748d6ec3f0 format= -3 caller= android.graphics.BLASTBufferQueue.<init>:84 android.view.ViewRootImpl.updateBlastSurfaceIfNeeded:2939 android.view.ViewRootImpl.relayoutWindow:9990 android.view.ViewRootImpl.performTraversals:3919 android.view.ViewRootImpl.doTraversal:3151 android.view.ViewRootImpl$TraversalRunnable.run:11068 
10-09 17:53:43.067 I/ViewRootImpl@39de627[GodotApp](3197): Relayout returned: old=(0,0,2176,1812) new=(0,0,2176,1812) req=(2176,1812)0 dur=7 res=0x3 s={true 0xb40000758d6a6950} ch=true seqId=0
10-09 17:53:43.068 I/ViewRootImpl@39de627[GodotApp](3197): mThreadedRenderer.initialize() mSurface={isValid=true 0xb40000758d6a6950} hwInitialized=true
10-09 17:53:43.069 I/SurfaceView@b81e3d1(3197): windowStopped(false) true org.godotengine.godot.GodotVulkanRenderView{b81e3d1 VFE...C.. .F....ID 0,0-2176,1754} of ViewRootImpl@39de627[GodotApp]
10-09 17:53:43.070 I/ViewRootImpl@39de627[GodotApp](3197): Resizing android.view.ViewRootImpl@e8c6640: frame = [0,0][2176,1812] reportDraw = true forceLayout = false syncSeqId = 0
10-09 17:53:43.071 I/ViewRootImpl@39de627[GodotApp](3197): reportNextDraw android.view.ViewRootImpl.performTraversals:4473 android.view.ViewRootImpl.doTraversal:3151 android.view.ViewRootImpl$TraversalRunnable.run:11068 android.view.Choreographer$CallbackRecord.run:1321 android.view.Choreographer$CallbackRecord.run:1329 
10-09 17:53:43.071 I/SurfaceFlinger(1586): id=74988 createSurf, flag=20004, Bounds for - com.example.trucktown/com.godot.game.GodotApp@0#74988
10-09 17:53:43.071 I/SurfaceFlinger(1586): id=74989 createSurf, flag=80004, SurfaceView[com.example.trucktown/com.godot.game.GodotApp]@0#74989
10-09 17:53:43.071 I/SurfaceFlinger(1586): id=74990 createSurf, flag=40400, SurfaceView[com.example.trucktown/com.godot.game.GodotApp]@0(BLAST)#74990
10-09 17:53:43.071 I/SurfaceFlinger(1586): id=74991 createSurf, flag=20404, Background for SurfaceView[com.example.trucktown/com.godot.game.GodotApp]@0#74991
10-09 17:53:43.073 I/SurfaceView@b81e3d1(3197): applyTransactionOnVriDraw: vri = ViewRootImpl@39de627[GodotApp] fRS = false t = 0xb4000074bd6a7e70 android.view.SurfaceView.performSurfaceTransaction:970 android.view.SurfaceView.updateSurface:1116 android.view.SurfaceView.lambda$new$0$android-view-SurfaceView:201 
10-09 17:53:43.073 I/ViewRootImpl@39de627[GodotApp](3197): applyTransactionOnDraw: mRemoved = false isHardwareEnabled = true t = 0xb4000074bd6a7e70android.view.SurfaceView.applyTransactionOnVriDraw:2059 android.view.SurfaceView.performSurfaceTransaction:970 android.view.SurfaceView.updateSurface:1116 android.view.SurfaceView.lambda$new$0$android-view-SurfaceView:201 android.view.SurfaceView$$ExternalSyntheticLambda5.onPreDraw:2 
10-09 17:53:43.073 I/SurfaceView@b81e3d1(3197): surfaceCreated 1 #8 org.godotengine.godot.GodotVulkanRenderView{b81e3d1 VFE...C.. .F....ID 0,0-2176,1754}
10-09 17:53:43.073 I/SurfaceView@b81e3d1(3197): surfaceChanged (2176,1754) 1 #8 org.godotengine.godot.GodotVulkanRenderView{b81e3d1 VFE...C.. .F....ID 0,0-2176,1754}
10-09 17:53:43.074 I/ViewRootImpl@39de627[GodotApp](3197): Setup new sync id=0
10-09 17:53:43.074 I/ViewRootImpl@39de627[GodotApp](3197): Setting syncFrameCallback
10-09 17:53:43.074 I/ViewRootImpl@39de627[GodotApp](3197): registerCallbacksForSync syncBuffer=false
10-09 17:53:43.074 I/godot   (3197): Godot Engine v4.2.dev.custom_build.860020a1a - https://godotengine.org
10-09 17:53:43.074 I/SurfaceFlinger(1586): [4691e39 com.example.trucktown/com.godot.game.GodotApp#74986] FrameRatePriority: 1
10-09 17:53:43.075 D/InputDispatcher(2324): Focus request (0): 4691e39 com.example.trucktown/com.godot.game.GodotApp but waiting because NOT_VISIBLE
10-09 17:53:43.076 I/SurfaceView@b81e3d1(3197): aOrMT: ViewRootImpl@39de627[GodotApp] t = android.view.SurfaceControl$Transaction@28ea4d2 fN = 1 android.view.SurfaceView.-$$Nest$mapplyOrMergeTransaction:0 android.view.SurfaceView$SurfaceViewPositionUpdateListener.positionChanged:1548 android.graphics.RenderNode$CompositePositionUpdateListener.positionChanged:373 
10-09 17:53:43.076 I/ViewRootImpl@39de627[GodotApp](3197): Received frameDrawingCallback syncResult=0 frameNum=1.
10-09 17:53:43.076 I/ViewRootImpl@39de627[GodotApp](3197): Setting up sync and frameCommitCallback
10-09 17:53:43.080 D/WindowManager(2324): rotationForOrientation, orientationSource=ActivityRecord{ec81a57 u0 com.example.trucktown/com.godot.game.GodotApp} t5668}
10-09 17:53:43.082 I/BLASTBufferQueue(3197): [ViewRootImpl@39de627[GodotApp]#0](f:0,a:0,s:0) onFrameAvailable the first frame is available
10-09 17:53:43.082 I/ViewRootImpl@39de627[GodotApp](3197): Received frameCommittedCallback lastAttemptedDrawFrameNum=1 didProduceBuffer=true
10-09 17:53:43.084 I/ViewRootImpl@39de627[GodotApp](3197): onSyncComplete
10-09 17:53:43.084 I/ViewRootImpl@39de627[GodotApp](3197): setupSync seqId=0 mSyncId=0 fn=1 caller=android.view.ViewRootImpl$$ExternalSyntheticLambda11.accept:6 android.window.SurfaceSyncer.lambda$setupSync$1$android-window-SurfaceSyncer:168 android.window.SurfaceSyncer$$ExternalSyntheticLambda1.accept:8 android.window.SurfaceSyncer$SyncSet.checkIfSyncIsComplete:495 android.window.SurfaceSyncer$SyncSet.markSyncReady:454 android.window.SurfaceSyncer.markSyncReady:191 android.view.ViewRootImpl.performTraversals:4538 
10-09 17:53:43.084 I/ViewRootImpl@39de627[GodotApp](3197): reportDrawFinished seqId=0 mSyncId=-1 fn=1 mSurfaceChangedTransaction=0xb4000074bd6a4990
10-09 17:53:43.085 I/ViewRootImpl@39de627[GodotApp](3197): handleResized, msg = 5 frames=ClientWindowFrames{frame=[0,0][2176,1812] display=[0,0][2176,1812] parentFrame=[0,0][0,0] parentClippedByDisplayCutout=false} forceNextWindowRelayout=false displayId=0 resizeMode=-1 frameChanged=false displayFrameChanged=false configChanged=false displayChanged=false
10-09 17:53:43.085 I/ViewRootImpl@39de627[GodotApp](3197): handleResized mSyncSeqId = 0
10-09 17:53:43.085 I/ViewRootImpl@39de627[GodotApp](3197): reportNextDraw android.view.ViewRootImpl.handleResized:2480 android.view.ViewRootImpl.-$$Nest$mhandleResized:0 android.view.ViewRootImpl$ViewRootHandler.handleMessageImpl:6806 android.view.ViewRootImpl$ViewRootHandler.handleMessage:6775 android.os.Handler.dispatchMessage:106 
10-09 17:53:43.087 I/ViewRootImpl@39de627[GodotApp](3197): Setup new sync id=1
10-09 17:53:43.087 I/ViewRootImpl@39de627[GodotApp](3197): Setting syncFrameCallback
10-09 17:53:43.087 I/ViewRootImpl@39de627[GodotApp](3197): registerCallbacksForSync syncBuffer=false
10-09 17:53:43.087 I/ViewRootImpl@39de627[GodotApp](3197): Received frameDrawingCallback syncResult=0 frameNum=2.
10-09 17:53:43.087 I/ViewRootImpl@39de627[GodotApp](3197): Setting up sync and frameCommitCallback
10-09 17:53:43.088 D/WindowManager(2324): finishDrawingWindow: Window{4691e39 u0 com.example.trucktown/com.godot.game.GodotApp} mDrawState=DRAW_PENDING seqId=0
10-09 17:53:43.088 I/ViewRootImpl@39de627[GodotApp](3197): Received frameCommittedCallback lastAttemptedDrawFrameNum=2 didProduceBuffer=true
10-09 17:53:43.088 I/ViewRootImpl@39de627[GodotApp](3197): onSyncComplete
10-09 17:53:43.088 I/ViewRootImpl@39de627[GodotApp](3197): setupSync seqId=0 mSyncId=1 fn=2 caller=android.view.ViewRootImpl$$ExternalSyntheticLambda11.accept:6 android.window.SurfaceSyncer.lambda$setupSync$1$android-window-SurfaceSyncer:168 android.window.SurfaceSyncer$$ExternalSyntheticLambda1.accept:8 android.window.SurfaceSyncer$SyncSet.checkIfSyncIsComplete:495 android.window.SurfaceSyncer$SyncSet.markSyncReady:454 android.window.SurfaceSyncer.markSyncReady:191 android.view.ViewRootImpl.performTraversals:4538 
10-09 17:53:43.088 I/ViewRootImpl@39de627[GodotApp](3197): reportDrawFinished seqId=0 mSyncId=-1 fn=2 mSurfaceChangedTransaction=0xb4000074bd6a4990
10-09 17:53:43.089 D/MdnieScenarioControlService(2324):  packageName : com.example.trucktown    className : com.godot.game.GodotApp
10-09 17:53:43.089 D/WindowManager(2324): finishDrawingWindow: Window{4691e39 u0 com.example.trucktown/com.godot.game.GodotApp} mDrawState=COMMIT_DRAW_PENDING seqId=0
10-09 17:53:43.093 V/WindowManager(2324): Finish starting ActivityRecord{ec81a57 u0 com.example.trucktown/com.godot.game.GodotApp} t5668}: first real window is shown, no animation
10-09 17:53:43.093 V/WindowManager(2324): Schedule remove starting ActivityRecord{ec81a57 u0 com.example.trucktown/com.godot.game.GodotApp} t5668} startingWindow=null startingView=null Callers=com.android.server.wm.ActivityRecord.removeStartingWindow:3339 com.android.server.wm.ActivityRecord.onFirstWindowDrawn:7715 com.android.server.wm.WindowState.performShowLocked:5711 com.android.server.wm.WindowStateAnimator.commitFinishDrawingLocked:352 com.android.server.wm.DisplayContent.lambda$new$8:1199 
10-09 17:53:43.093 V/WindowManager(2324): performShowLocked: mDrawState=HAS_DRAWN in Window{4691e39 u0 com.example.trucktown/com.godot.game.GodotApp}
10-09 17:53:43.096 I/PkgPredictorService-SecIpmManagerServiceImpl(2324): reportToNAP uid:10490 com.example.trucktown/com.godot.game.GodotApp thisTime:198
10-09 17:53:43.098 D/ActivityTaskManager(2324): mStartingWindow and mStartingData is null for token=ActivityRecord{ec81a57 u0 com.example.trucktown/com.godot.game.GodotApp} t5668}
10-09 17:53:43.099 D/TaskOrganizerController(2324): applyStartingWindowAnimation, window=Window{4691e39 u0 com.example.trucktown/com.godot.game.GodotApp}, caller=com.android.server.wm.TaskOrganizerController.removeStartingWindow:595 com.android.server.wm.StartingSurfaceController$StartingSurface.remove:287 com.android.server.wm.ActivityRecord.lambda$removeStartingWindowAnimation$7:3401 
10-09 17:53:43.099 I/WindowManager(2324): Reparenting to leash, surface=Surface(name=4691e39 com.example.trucktown/com.godot.game.GodotApp)/@0xe89f23a, leashParent=Surface(name=ActivityRecord{ec81a57 u0 com.example.trucktown/com.godot.game.GodotApp} t5668})/@0xb65feeb
10-09 17:53:43.099 I/SurfaceFlinger(1586): id=74996 createSurf, flag=24000, Surface(name=4691e39 com.example.trucktown/com.godot.game.GodotApp)/@0xe89f23a - animation-leash of starting_reveal#74996
10-09 17:53:43.099 I/Layer   (1586): Layer [com.example.trucktown/com.godot.game.GodotApp$_3197#74987] hidden!! flag(0)
10-09 17:53:43.100 D/WindowManager(2324): makeSurface duration=2 leash=Surface(name=Surface(name=4691e39 com.example.trucktown/com.godot.game.GodotApp)/@0xe89f23a - animation-leash of starting_reveal)/@0x2db5448
10-09 17:53:43.101 D/SurfaceFlinger(1586):  SOLID_COLOR |              | 0002 |  Unknown  |    0.0    0.0    0.0    0.0 |    0   58 2176 1812 | Background for SurfaceView[com.examp[...]own/com.godot.game.GodotApp]@0#74991
10-09 17:53:43.101 D/SurfaceFlinger(1586):      DEVICE | 0xb4000079382ec4e0 | 0100 | RGBA_8888    |    0.0    0.0 2176.0   58.0 |    0    0 2176   58 | com.example.trucktown/com.godot.game.GodotApp$_3197#74987
10-09 17:53:43.101 D/InputDispatcher(2324): Focus entered window (0): 4691e39 com.example.trucktown/com.godot.game.GodotApp
10-09 17:53:43.102 I/ViewRootImpl@39de627[GodotApp](3197): MSG_WINDOW_FOCUS_CHANGED 1 0
10-09 17:53:43.102 I/ViewRootImpl@39de627[GodotApp](3197): mThreadedRenderer.initializeIfNeeded()#2 mSurface={isValid=true 0xb40000758d6a6950}
10-09 17:53:43.110 I/ActivityTaskManager(2324): Displayed com.example.trucktown/com.godot.game.GodotApp: +198ms
10-09 17:53:43.112 I/WindowManager(2324): Cancelling animation restarting=false, leash=Surface(name=Surface(name=4691e39 com.example.trucktown/com.godot.game.GodotApp)/@0xe89f23a - animation-leash of starting_reveal)/@0x2db5448
10-09 17:53:43.113 I/WindowManager(2324): Reparenting to original parent: Surface(name=ActivityRecord{ec81a57 u0 com.example.trucktown/com.godot.game.GodotApp} t5668})/@0xb65feeb, destroy=false, surface=Surface(name=4691e39 com.example.trucktown/com.godot.game.GodotApp)/@0xe89f23a
10-09 17:53:43.116 I/Layer   (1586): id=74996 removedFromDrawingState Surface(name=4691e39 com.example.trucktown/com.godot.game.GodotApp)/@0xe89f23a - animation-leash of starting_reveal#74996 (151)
10-09 17:53:43.118 D/SurfaceFlinger(1586):  SOLID_COLOR |              | 0002 |  Unknown  |    0.0    0.0    0.0    0.0 |    0   58 2176 1812 | Background for SurfaceView[com.examp[...]own/com.godot.game.GodotApp]@0#74991
10-09 17:53:43.118 D/SurfaceFlinger(1586):      DEVICE | 0xb40000793831eb80 | 0100 | RGBA_8888    |    0.0    0.0 2176.0   58.0 |    0    0 2176   58 | com.example.trucktown/com.godot.game.GodotApp$_3197#74987
10-09 17:53:43.124 I/AdrenoVK-0(3197): Engine Name         : Godot Engine
10-09 17:53:43.124 D/InsetsController(3197): onStateChanged: InsetsState: {mDisplayFrame=Rect(0, 0 - 2176, 1812), mDisplayCutout=DisplayCutout{insets=Rect(0, 0 - 0, 0) waterfall=Insets{left=0, top=0, right=0, bottom=0} boundingRect={Bounds=[Rect(0, 0 - 0, 0), Rect(0, 0 - 0, 0), Rect(0, 0 - 0, 0), Rect(0, 0 - 0, 0)]} cutoutPathParserInfo={CutoutPathParserInfo{displayWidth=0 displayHeight=0 physicalDisplayWidth=0 physicalDisplayHeight=0 density={0.0} cutoutSpec={} rotation={0} scale={0.0} physicalPixelDisplaySizeRatio={0.0}}}}, mRoundedCorners=RoundedCorners{[RoundedCorner{position=TopLeft, radius=48, center=Point(48, 48)}, RoundedCorner{position=TopRight, radius=48, center=Point(2128, 48)}, RoundedCorner{position=BottomRight, radius=48, center=Point(2128, 1764)}, RoundedCorner{position=BottomLeft, radius=48, center=Point(48, 1764)}]}  mRoundedCornerFrame=Rect(0, 0 - 2176, 1812), mPrivacyIndicatorBounds=PrivacyIndicatorBounds {static bounds=Rect(2209, 0 - 2316, 58) rotation=1}, mSources= { InsetsSource: {mType=ITYPE_STATUS_BAR, mFrame=[0,0][2176,58], mVisible=true, mInsetsRoundedCornerFrame=false}, InsetsSource: {mType=ITYPE_NAVIGATION_BAR, mFrame=[0,1812][2176,1812], mVisible=true, mInsetsRoundedCornerFrame=false}, InsetsSource: {mType=ITYPE_LEFT_GESTURES, mFrame=[0,0][57,1812], mVisible=true, mInsetsRoundedCornerFrame=false}, InsetsSource: {mType=ITYPE_RIGHT_GESTURES, mFrame=[2119,0][2176,1812], mVisible=true, mInsetsRoundedCornerFrame=false}, InsetsSource: {mType=ITYPE_TOP_MANDATORY_GESTURES, mFrame=[0,0][2176,58], mVisible=true, mInsetsRoundedCornerFrame=false}, InsetsSource: {mType=ITYPE_BOTTOM_MANDATORY_GESTURES, mFrame=[0,1764][2176,1812], mVisible=true, mInsetsRoundedCornerFrame=false}, InsetsSource: {mType=ITYPE_TOP_TAPPABLE_ELEMENT, mFrame=[0,0][2176,58], mVisible=true, mInsetsRoundedCornerFrame=false}, InsetsSource: {mType=ITYPE_BOTTOM_TAPPABLE_ELEMENT, mFrame=[0,0][0,0], mVisible=true, mInsetsRoundedCornerFrame=false}, InsetsSource: {mType=ITYPE_IME, mFrame=[0,0][0,0], mVisible=false, mInsetsRoundedCornerFrame=false} } host=com.example.trucktown/com.godot.game.GodotApp from=android.view.ViewRootImpl$ViewRootHandler.handleMessageImpl:6818
10-09 17:53:43.125 I/godot   (3197): Vulkan API 1.1.128 - Forward Mobile - Using Vulkan Device #0: Qualcomm - Adreno (TM) 730
10-09 17:53:43.183 I/godot   (3197):  
10-09 17:53:43.258 D/MdnieScenarioControlService(2324):  packageName : com.example.trucktown    className : com.godot.game.GodotApp
10-09 17:53:43.463 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.463 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.463 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.463 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.463 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.463 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.463 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.463 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.469 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.469 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.469 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.469 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.469 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.469 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.469 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.469 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.469 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.469 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.469 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.469 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.469 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.469 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.469 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.469 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.469 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.469 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.469 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.469 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.470 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.470 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.470 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.470 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.470 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.470 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.470 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.470 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.470 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.470 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.470 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.470 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.470 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.470 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.470 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.470 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.470 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.470 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.470 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.470 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.470 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.470 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.470 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.470 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.470 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.470 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.470 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.470 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.470 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.470 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.470 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.470 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.471 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.471 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.471 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.471 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.471 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.471 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.471 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.471 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.471 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.471 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.471 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.471 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.471 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.471 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.471 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.471 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.471 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.471 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.471 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.471 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.471 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.471 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.471 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.471 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.471 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.471 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.471 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.471 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.472 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.472 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.472 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.472 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.472 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.472 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.472 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.472 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.472 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.472 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.472 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.472 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.472 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.472 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.472 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.472 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.472 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.472 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.472 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.472 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.472 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.472 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.472 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.472 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.472 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.472 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.472 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.472 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.472 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.472 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.473 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.473 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.483 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.483 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.483 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.483 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.483 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.483 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.483 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.483 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.483 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.483 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.483 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.483 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.483 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.483 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.483 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.483 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.484 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.484 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.484 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.484 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.484 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.484 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.484 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.484 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.494 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.494 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.494 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.494 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.494 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.494 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.494 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.494 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.494 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.494 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.494 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.494 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.494 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.494 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.494 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.494 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.501 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.501 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.501 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.501 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.501 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.501 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.502 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.502 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.502 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.502 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.502 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.502 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.503 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.503 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.503 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.503 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.503 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.503 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.503 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.503 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.503 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.503 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.503 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.503 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.503 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.503 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.503 E/godot   (3197): WARNING: Upgrading mesh from older surface format. Once saved again (or re-imported), this mesh will be incompatible with earlier versions of Godot.
10-09 17:53:43.503 E/godot   (3197):    at: _fix_surface_compatibility (./servers/rendering_server.cpp:2035)
10-09 17:53:43.570 I/BLASTBufferQueue(3197): [SurfaceView[com.example.trucktown/com.godot.game.GodotApp]@0#1](f:0,a:0,s:0) onFrameAvailable the first frame is available
10-09 17:53:43.578 D/SurfaceFlinger(1586):      DEVICE | 0xb4000079383235c0 | 0102 | RGBA_8888    |    0.0    0.0 2176.0 1754.0 |    0   58 2176 1812 | SurfaceView[com.example.trucktown/com.godot.game.GodotApp]@0(BLAST)#74990
10-09 17:53:43.578 D/SurfaceFlinger(1586):      DEVICE | 0xb40000793831eb80 | 0100 | RGBA_8888    |    0.0    0.0 2176.0   58.0 |    0    0 2176   58 | com.example.trucktown/com.godot.game.GodotApp$_3197#74987
10-09 17:53:43.909 I/ViewRootImpl@39de627[GodotApp](3197): ViewPostIme pointer 0
10-09 17:53:43.910 I/GestureDetector(3197): obtain mCurrentDownEvent. id: 277287757 caller: android.view.ScaleGestureDetector.onTouchEvent:275 org.godotengine.godot.input.GodotInputHandler.onTouchEvent:188 org.godotengine.godot.GodotVulkanRenderView.onTouchEvent:117 
10-09 17:53:43.910 I/GestureDetector(3197): obtain mCurrentDownEvent. id: 277287757 caller: org.godotengine.godot.input.GodotInputHandler.onTouchEvent:189 org.godotengine.godot.GodotVulkanRenderView.onTouchEvent:117 android.view.View.dispatchTouchEvent:15599 
10-09 17:53:43.955 I/ViewRootImpl@39de627[GodotApp](3197): ViewPostIme pointer 1
10-09 17:53:43.961 E/godot   (3197): USER ERROR: Condition "!is_inside_tree()" is true. Returning: Transform3D()
10-09 17:53:43.961 E/godot   (3197):    at: get_global_transform (./scene/3d/node_3d.cpp:343)
10-09 17:53:45.015 I/ViewRootImpl@39de627[GodotApp](3197): ViewPostIme pointer 0
10-09 17:53:45.016 I/GestureDetector(3197): obtain mCurrentDownEvent. id: 58780051 caller: android.view.ScaleGestureDetector.onTouchEvent:275 org.godotengine.godot.input.GodotInputHandler.onTouchEvent:188 org.godotengine.godot.GodotVulkanRenderView.onTouchEvent:117 
10-09 17:53:45.017 I/GestureDetector(3197): obtain mCurrentDownEvent. id: 58780051 caller: org.godotengine.godot.input.GodotInputHandler.onTouchEvent:189 org.godotengine.godot.GodotVulkanRenderView.onTouchEvent:117 android.view.View.dispatchTouchEvent:15599 
10-09 17:53:46.096 E/godot   (3197): USER ERROR: Vulkan: Cannot submit graphics queue. Error code: VK_ERROR_DEVICE_LOST
10-09 17:53:46.096 E/godot   (3197):    at: swap_buffers (drivers/vulkan/vulkan_context.cpp:2536)
10-09 17:53:46.106 E/godot   (3197): USER ERROR: Vulkan: Cannot submit graphics queue. Error code: VK_ERROR_DEVICE_LOST
10-09 17:53:46.106 E/godot   (3197):    at: swap_buffers (drivers/vulkan/vulkan_context.cpp:2536)
10-09 17:53:46.106 D/WindowManager(2324): requestTransientBars: swipeTarget=Window{d6cbc46 u0 NavigationBar0}, controlTarget=Window{4691e39 u0 com.example.trucktown/com.godot.game.GodotApp}, canShowTransient=false, restorePositionTypes=0x3, from=com.android.server.wm.DisplayPolicy.-$$Nest$mrequestTransientBars:0 com.android.server.wm.DisplayPolicy$1.requestTransientBarsForSideSwipe:708 
10-09 17:53:46.108 I/InputDispatcher(2324): Channel [Gesture Monitor] edge-swipe (server) is stealing touch from [4691e39 com.example.trucktown/com.godot.game.GodotApp (server), [Gesture Monitor] swipe-up (server), [Gesture Monitor] PalmMotion (server), [Gesture Monitor] secinputdev (server)]
10-09 17:53:46.110 E/BufferQueueProducer(3197): [SurfaceView[com.example.trucktown/com.godot.game.GodotApp]@0#1(BLAST Consumer)1](id:c7d00000001,api:1,p:3197,c:3197) dequeueBuffer: attempting to exceed the max dequeued buffer count (2)
10-09 17:53:46.110 E/godot   (3197): USER ERROR: Vulkan: Did not create swapchain successfully. Error code: VK_TIMEOUT
10-09 17:53:46.110 E/godot   (3197):    at: prepare_buffers (drivers/vulkan/vulkan_context.cpp:2459)
10-09 17:53:46.110 E/godot   (3197): USER ERROR: Vulkan: Cannot submit graphics queue. Error code: VK_ERROR_DEVICE_LOST
10-09 17:53:46.110 E/godot   (3197):    at: swap_buffers (drivers/vulkan/vulkan_context.cpp:2536)
10-09 17:53:46.112 E/BufferQueueProducer(3197): [SurfaceView[com.example.trucktown/com.godot.game.GodotApp]@0#1(BLAST Consumer)1](id:c7d00000001,api:1,p:3197,c:3197) dequeueBuffer: attempting to exceed the max dequeued buffer count (2)
10-09 17:53:46.112 E/godot   (3197): USER ERROR: Vulkan: Did not create swapchain successfully. Error code: VK_TIMEOUT
10-09 17:53:46.112 E/godot   (3197):    at: prepare_buffers (drivers/vulkan/vulkan_context.cpp:2459)
10-09 17:53:46.113 E/godot   (3197): USER ERROR: Vulkan: Cannot submit graphics queue. Error code: VK_ERROR_DEVICE_LOST
10-09 17:53:46.113 E/godot   (3197):    at: swap_buffers (drivers/vulkan/vulkan_context.cpp:2536)
10-09 17:53:46.114 E/BufferQueueProducer(3197): [SurfaceView[com.example.trucktown/com.godot.game.GodotApp]@0#1(BLAST Consumer)1](id:c7d00000001,api:1,p:3197,c:3197) dequeueBuffer: attempting to exceed the max dequeued buffer count (2)
10-09 17:53:46.114 E/godot   (3197): USER ERROR: Vulkan: Did not create swapchain successfully. Error code: VK_TIMEOUT
10-09 17:53:46.114 E/godot   (3197):    at: prepare_buffers (drivers/vulkan/vulkan_context.cpp:2459)
10-09 17:53:46.114 D/CoreBackPreview(2324): startBackNavigation currentTask=Task{cd53a2d #5668 type=standard A=10490:com.example.trucktown U=0 visible=true visibleRequested=true mode=fullscreen translucent=false sz=1}, topRunningActivity=ActivityRecord{ec81a57 u0 com.example.trucktown/com.godot.game.GodotApp} t5668}, callbackInfo=OnBackInvokedCallbackInfo{mCallback=android.window.IOnBackInvokedCallback$Stub$Proxy@139c5df, mPriority=0}, currentFocus=Window{4691e39 u0 com.example.trucktown/com.godot.game.GodotApp}
10-09 17:53:46.114 E/godot   (3197): USER ERROR: Vulkan: Cannot submit graphics queue. Error code: VK_ERROR_DEVICE_LOST
10-09 17:53:46.114 E/godot   (3197):    at: swap_buffers (drivers/vulkan/vulkan_context.cpp:2536)
10-09 17:53:46.115 E/BufferQueueProducer(3197): [SurfaceView[com.example.trucktown/com.godot.game.GodotApp]@0#1(BLAST Consumer)1](id:c7d00000001,api:1,p:3197,c:3197) dequeueBuffer: attempting to exceed the max dequeued buffer count (2)
10-09 17:53:46.115 E/godot   (3197): USER ERROR: Vulkan: Did not create swapchain successfully. Error code: VK_TIMEOUT
10-09 17:53:46.115 E/godot   (3197):    at: prepare_buffers (drivers/vulkan/vulkan_context.cpp:2459)
10-09 17:53:46.115 E/godot   (3197): USER ERROR: Vulkan: Cannot submit graphics queue. Error code: VK_ERROR_DEVICE_LOST
10-09 17:53:46.115 E/godot   (3197):    at: swap_buffers (drivers/vulkan/vulkan_context.cpp:2536)
10-09 17:53:46.116 D/WindowOnBackDispatcher(3197): onBackInvoked, viewRoot=ViewRootImpl@39de627[GodotApp], callback=android.view.ViewRootImpl$$ExternalSyntheticLambda17@ec0f27d
10-09 17:53:46.117 E/BufferQueueProducer(3197): [SurfaceView[com.example.trucktown/com.godot.game.GodotApp]@0#1(BLAST Consumer)1](id:c7d00000001,api:1,p:3197,c:3197) dequeueBuffer: attempting to exceed the max dequeued buffer count (2)
10-09 17:53:46.117 E/godot   (3197): USER ERROR: Vulkan: Did not create swapchain successfully. Error code: VK_TIMEOUT
10-09 17:53:46.117 E/godot   (3197):    at: prepare_buffers (drivers/vulkan/vulkan_context.cpp:2459)
10-09 17:53:46.118 E/godot   (3197): USER ERROR: Vulkan: Cannot submit graphics queue. Error code: VK_ERROR_DEVICE_LOST
10-09 17:53:46.118 E/godot   (3197):    at: swap_buffers (drivers/vulkan/vulkan_context.cpp:2536)
10-09 17:53:46.118 I/ViewRootImpl@39de627[GodotApp](3197): ViewPostIme key 0
10-09 17:53:46.118 I/ViewRootImpl@39de627[GodotApp](3197): ViewPostIme key 1
10-09 17:53:46.119 E/BufferQueueProducer(3197): [SurfaceView[com.example.trucktown/com.godot.game.GodotApp]@0#1(BLAST Consumer)1](id:c7d00000001,api:1,p:3197,c:3197) dequeueBuffer: attempting to exceed the max dequeued buffer count (2)
10-09 17:53:46.119 E/godot   (3197): USER ERROR: Vulkan: Did not create swapchain successfully. Error code: VK_TIMEOUT
10-09 17:53:46.119 E/godot   (3197):    at: prepare_buffers (drivers/vulkan/vulkan_context.cpp:2459)
10-09 17:53:46.119 E/godot   (3197): USER ERROR: Vulkan: Cannot submit graphics queue. Error code: VK_ERROR_DEVICE_LOST
10-09 17:53:46.119 E/godot   (3197):    at: swap_buffers (drivers/vulkan/vulkan_context.cpp:2536)
10-09 17:53:46.120 E/BufferQueueProducer(3197): [SurfaceView[com.example.trucktown/com.godot.game.GodotApp]@0#1(BLAST Consumer)1](id:c7d00000001,api:1,p:3197,c:3197) dequeueBuffer: attempting to exceed the max dequeued buffer count (2)
10-09 17:53:46.120 E/godot   (3197): USER ERROR: Vulkan: Did not create swapchain successfully. Error code: VK_TIMEOUT
10-09 17:53:46.120 E/godot   (3197):    at: prepare_buffers (drivers/vulkan/vulkan_context.cpp:2459)
10-09 17:53:46.120 E/godot   (3197): USER ERROR: Vulkan: Cannot submit graphics queue. Error code: VK_ERROR_DEVICE_LOST
10-09 17:53:46.120 E/godot   (3197):    at: swap_buffers (drivers/vulkan/vulkan_context.cpp:2536)
10-09 17:53:46.120 D/SurfaceFlinger(1586):      DEVICE | 0xb4000079382ebf40 | 0102 | RGBA_8888    |    0.0    0.0 2176.0 1754.0 |    0   58 2176 1812 | SurfaceView[com.example.trucktown/com.godot.game.GodotApp]@0(BLAST)#74990
10-09 17:53:46.120 D/SurfaceFlinger(1586):      DEVICE | 0xb40000793831eb80 | 0100 | RGBA_8888    |    0.0    0.0 2176.0   58.0 |    0    0 2176   58 | com.example.trucktown/com.godot.game.GodotApp$_3197#74987
10-09 17:53:46.130 E/godot   (3197): USER WARNING: 3 RIDs of type "StorageBuffer" were leaked.
10-09 17:53:46.130 E/godot   (3197):    at: _free_rids (drivers/vulkan/rendering_device_vulkan.cpp:9284)
10-09 17:53:46.137 D/SurfaceFlinger(1586):      DEVICE | 0xb4000079382ebf40 | 0102 | RGBA_8888    |    0.0    0.0 2176.0 1754.0 |    0   58 2176 1812 | SurfaceView[com.example.trucktown/com.godot.game.GodotApp]@0(BLAST)#74990
10-09 17:53:46.137 D/SurfaceFlinger(1586):      DEVICE | 0xb40000793831eb80 | 0100 | RGBA_8888    |    0.0    0.0 2176.0   58.0 |    0    0 2176   58 | com.example.trucktown/com.godot.game.GodotApp$_3197#74987
10-09 17:53:46.145 E/godot   (3197): USER WARNING: ObjectDB instances leaked at exit (run with --verbose for details).
10-09 17:53:46.145 E/godot   (3197):    at: cleanup (./core/object/object.cpp:2207)
10-09 17:53:46.156 E/godot   (3197): USER ERROR: Resources still in use at exit (run with --verbose for details).
10-09 17:53:46.156 E/godot   (3197):    at: clear (./core/io/resource.cpp:489)
10-09 17:53:46.157 V/GodotActivity(3197): Force quitting Godot instance
10-09 17:53:46.180 I/WindowManager(2324): WIN DEATH: Window{4691e39 u0 com.example.trucktown/com.godot.game.GodotApp}
10-09 17:53:46.181 W/InputManager-JNI(2324): Input channel object '4691e39 com.example.trucktown/com.godot.game.GodotApp (client)' was disposed without first being removed with the input manager!
10-09 17:53:46.181 I/SurfaceFlinger(1586): id=74989 Removed SurfaceView[com.example.trucktown/com.godot.game.GodotApp]@0#74989 (146)
10-09 17:53:46.181 I/SurfaceFlinger(1586): id=74988 Removed Bounds for - com.example.trucktown/com.godot.game.GodotApp@0#74988 (146)
10-09 17:53:46.181 V/WindowManager(2324): Remove Window{4691e39 u0 com.example.trucktown/com.godot.game.GodotApp}: mSurfaceController=Surface(name=com.example.trucktown/com.godot.game.GodotApp$_3197)/@0xb403e98 mAnimatingExit=false mRemoveOnExit=false mHasSurface=true surfaceShowing=true animating=false app-animation=false mWillReplaceWindow=false mDisplayFrozen=false callers=com.android.server.wm.WindowState.-$$Nest$mremoveIfPossible:0 com.android.server.wm.WindowState$DeathRecipient.binderDied:4015 android.os.IBinder$DeathRecipient.binderDied:323 android.os.BinderProxy.sendDeathNotice:781 <bottom of call stack> <bottom of call stack> 
10-09 17:53:46.182 I/WindowManager(2324): Destroying surface Surface(name=com.example.trucktown/com.godot.game.GodotApp$_3197)/@0xb403e98 called by com.android.server.wm.WindowStateAnimator.destroySurface:951 com.android.server.wm.WindowStateAnimator.destroySurfaceLocked:537 com.android.server.wm.WindowState.removeImmediately:3133 com.android.server.wm.WindowState.removeIfPossible:3400 com.android.server.wm.WindowState.-$$Nest$mremoveIfPossible:0 com.android.server.wm.WindowState$DeathRecipient.binderDied:4015 android.os.IBinder$DeathRecipient.binderDied:323 android.os.BinderProxy.sendDeathNotice:781 
10-09 17:53:46.183 D/InputDispatcher(2324): Focus left window (0): 4691e39 com.example.trucktown/com.godot.game.GodotApp
10-09 17:53:46.183 I/SurfaceFlinger(1586): id=74990 Removed SurfaceView[com.example.trucktown/com.godot.game.GodotApp]@0(BLAST)#74990 (147)
10-09 17:53:46.183 I/SurfaceFlinger(1586): id=74991 Removed Background for SurfaceView[com.example.trucktown/com.godot.game.GodotApp]@0#74991 (147)
10-09 17:53:46.185 D/WindowManager(2324): updateSystemBarAttributes: displayId=0, win=Window{4691e39 u0 com.example.trucktown/com.godot.game.GodotApp}, navColorWin=null, focusedCanBeNavColorWin=false, behavior=1, appearance=0, statusBarAppearanceRegions=[], requestedVisibilities=, from=com.android.server.wm.DisplayPolicy.finishPostLayoutPolicyLw:2623 com.android.server.wm.DisplayContent.applySurfaceChangesTransaction:5746 com.android.server.wm.RootWindowContainer.applySurfaceChangesTransaction:1249 
10-09 17:53:46.187 V/WindowManager(2324): Changing focus from Window{4691e39 u0 com.example.trucktown/com.godot.game.GodotApp} to null displayId=0 Callers=com.android.server.wm.RootWindowContainer.updateFocusedWindowLocked:602 com.android.server.wm.WindowManagerService.updateFocusedWindowLocked:6862 com.android.server.wm.WindowState.removeIfPossible:3409 com.android.server.wm.WindowState.-$$Nest$mremoveIfPossible:0 
10-09 17:53:46.188 W/ActivityTaskManager(2324): Force removing ActivityRecord{ec81a57 u0 com.example.trucktown/com.godot.game.GodotApp} t5668}: app died, no saved state
10-09 17:53:46.190 I/Layer   (1586): id=74987 removedFromDrawingState com.example.trucktown/com.godot.game.GodotApp$_3197#74987 (148)
10-09 17:53:46.191 I/Layer   (1586): id=74988 removedFromDrawingState Bounds for - com.example.trucktown/com.godot.game.GodotApp@0#74988 (148)
10-09 17:53:46.191 I/Layer   (1586): id=74989 removedFromDrawingState SurfaceView[com.example.trucktown/com.godot.game.GodotApp]@0#74989 (148)
10-09 17:53:46.191 I/Layer   (1586): id=74991 removedFromDrawingState Background for SurfaceView[com.example.trucktown/com.godot.game.GodotApp]@0#74991 (148)
10-09 17:53:46.191 I/Layer   (1586): id=74990 removedFromDrawingState SurfaceView[com.example.trucktown/com.godot.game.GodotApp]@0(BLAST)#74990 (148)
10-09 17:53:46.191 I/Layer   (1586): id=74986 removedFromDrawingState 4691e39 com.example.trucktown/com.godot.game.GodotApp#74986 (148)
10-09 17:53:46.191 I/Layer   (1586): id=74983 removedFromDrawingState c76e7d6 ActivityRecordInputSink com.example.trucktown/com.godot.game.GodotApp#74983 (148)
10-09 17:53:46.191 I/SurfaceFlinger(1586): id=74983 Removed c76e7d6 ActivityRecordInputSink com.example.trucktown/com.godot.game.GodotApp#74983 (148)
10-09 17:53:46.191 I/SurfaceFlinger(1586): id=74987 Removed com.example.trucktown/com.godot.game.GodotApp$_3197#74987 (148)
10-09 17:53:46.191 I/SurfaceFlinger(1586): id=74986 Removed 4691e39 com.example.trucktown/com.godot.game.GodotApp#74986 (148)
10-09 17:53:46.191 I/Layer   (1586): id=74983 Destroyed c76e7d6 ActivityRecordInputSink com.example.trucktown/com.godot.game.GodotApp#74983
10-09 17:53:46.191 I/Layer   (1586): id=74986 Destroyed 4691e39 com.example.trucktown/com.godot.game.GodotApp#74986
10-09 17:53:46.191 I/Layer   (1586): id=74987 Destroyed com.example.trucktown/com.godot.game.GodotApp$_3197#74987
10-09 17:53:46.191 I/Layer   (1586): id=74988 Destroyed Bounds for - com.example.trucktown/com.godot.game.GodotApp@0#74988
10-09 17:53:46.191 I/Layer   (1586): id=74989 Destroyed SurfaceView[com.example.trucktown/com.godot.game.GodotApp]@0#74989
10-09 17:53:46.191 I/Layer   (1586): id=74991 Destroyed Background for SurfaceView[com.example.trucktown/com.godot.game.GodotApp]@0#74991
10-09 17:53:46.192 I/Layer   (1586): id=74990 Destroyed SurfaceView[com.example.trucktown/com.godot.game.GodotApp]@0(BLAST)#74990
10-09 17:53:46.215 I/Layer   (1586): id=74975 removedFromDrawingState ActivityRecord{ec81a57 u0 com.example.trucktown/com.godot.game.GodotApp} t5668}#74975 (141)
10-09 17:53:46.215 I/SurfaceFlinger(1586): id=74975 Removed ActivityRecord{ec81a57 u0 com.example.trucktown/com.godot.game.GodotApp} t5668}#74975 (141)
10-09 17:53:46.215 I/Layer   (1586): id=74975 Destroyed ActivityRecord{ec81a57 u0 com.example.trucktown/com.godot.game.GodotApp} t5668}#74975
10-09 17:53:47.140 I/AppInfo (4278): set ComponentInfo{com.example.trucktown/com.godot.game.GodotApp} app progress level to 100

Device info:

build.board: taro
build.bootloader: F936BXXS4DWHA
build.brand: samsung
build.cpu_abi: arm64-v8a
build.cpu_abi2: 
build.device: q4q
build.display: TP1A.220624.014.F936BXXS4DWHA
build.fingerprint: samsung/q4qxeea/q4q:13/TP1A.220624.014/F936BXXS4DWHA:user/release-keys
build.hardware: qcom
build.host: 21DK7914
build.id: TP1A.220624.014
build.manufacturer: samsung
build.model: SM-F936B
build.product: q4qxeea
build.radio: unknown
build.serial: unknown
build.tags: release-keys
build.time: 1693198872000
build.type: user
build.user: dpi
version.codename: REL
version.incremental: F936BXXS4DWHA
version.release: 13
version.sdk_int: 33

@Calinou Calinou added this to the 4.x milestone Oct 9, 2023
@darksylinc
Copy link
Contributor Author

It's hard to evaluate if this PR causes the problem if the scene doesn't look correctly on unpatched master.

But there is an alternate solution: Could you try adding (e.g. cherry pick) #82805 as well? I strongly suspect that could fix your hang.

@Calinou
Copy link
Member

Calinou commented Nov 17, 2023

Tested locally on Android with #82805 applied on top of this PR (and then rebased on master 80de898), it works as expected.

On the same device as above, I don't notice rendering issues but still can't spot a performance improvement on either the cover display (110 FPS) or main screen (60 FPS) in Truck Town. This also applies if I disable MSAA in the project (99 FPS on main screen).

This likely helps more on lower-end devices, but since I don't notice any performance regressions or rendering issues, this should be good to go.

@akien-mga akien-mga modified the milestones: 4.x, 4.3 Nov 17, 2023
@YuriSizov YuriSizov requested a review from a team December 18, 2023 19:23
@akien-mga akien-mga modified the milestones: 4.3, 4.4 May 28, 2024
@clayjohn
Copy link
Member

Superseded by #98825

@clayjohn clayjohn closed this Nov 13, 2024
@clayjohn clayjohn removed this from the 4.4 milestone Nov 13, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants