A Unity ID allows you to buy and/or subscribe to Unity products and services, shop in the Asset Store and participate
in the Unity community.
Discussion in 'AR' started by hawken, Nov 27, 2018.
Is this running at a lower frame rate than normal ARKit?
ARFoundation does not set or require a particular framerate, no. You might try setting it explicitly.
Could it be the camera framerate? With ARCore it's locked to 30 fps. In UnityARKitPlugin it runs at something much higher, but in ARFoundation it seems more like 30 on iOS
UnityARKitPlugin sets Application.targetFrameRate to 60 in several of the examples and the UnityARCameraManager. ARFoundation leaves it up to you to set the frame rate (rather than enforce a specific one). The frame rate in Unity defaults to 30 on mobile, so if you don't set it, it will likely be 30 fps.
Sorry, I mean the camera. I don't think it's the application framerate.
I understand that older ARkitr might run the camera slower? ARCore runs it at 30 fps.
You can see the difference for yourself by building an empty iOS ARFoundation project and an empty UnityARKitPlugin project, the camera update speed (?) difference is noticeable.
Might have to do with the ARWorldTrackingConfiguration's videoFormat property, which can affect the framerate. We don't set it explicitly. I'll investigate.
In ARFoundation, setting Application.targetFrameRate to 60 gives me a solid 60 Hz framerate on iOS, according to the Unity profiler. I looked at the videoFormats that I mentioned, and they are all 60 Hz, so it's not possible to select 30 Hz at the ARKit level.
Visually comparing the result to the UnityARKit plugin on Bitbucket, I can't tell any difference.
If, however, I do not set the Application.targetFrameRate to 60 and leave it at the default of 30, then the difference is quite noticeable.
I think only ARKit 1.5+ runs the camera at 60fps at full resolution, the camera texture is lower resolution and framerate in ARFoundation than running UnityARKit
Theres some notes about it here in "Video Formats" by @jimmya https://blogs.unity3d.com/2018/02/16/developing-for-arkit-1-5-update-using-unity-arkit-plugin/
Will it be possible to change the video feed to a higher frame rate / resolution in future ARFoundation releases?
You will be able to enumerate and set the coffee format on the next release. However, ARKit chooses the highest resolution one by default, so this would only allow to to choose a lower resolution.
I have a question about the video texture quality; I record my AR session at 1080p on my iPhone XR, but the video background looks like it is poorly encoded or something. Any possibility to increase texture quality?
Can anyone clarify the whole FPS target for ARCore and ARKit... I was watching the Unite LA performance related videos and came across this one, recommending 30FPS for AR apps.. and says most studios are targeting this now.
But I keep reading ARKit targets 60FPS anyway.. and ARCore 30FPS.
So should/shouldnt we override it? I had also read in numerous places, overriding it to 60 on IOS improves the tracking?
ARFoundation defaults to 30fps for both right? So whats your thoughts on leaving that alone? And does that limit ARKit to 30 also... I am finding after some playtime, my Samsung S8 seems to do some Thermal Throttling... And Im currently targeting 60FPS on both.
Anyone have ideas on how to get less compressed (higher quality) 1080 video recordings of an AR session?
@tdmowrer any suggestions?
How are you recording the screen. iOS has a built-in way to do this, which works pretty well for me.
I have tried both using code with ReplayKit: https://docs.unity3d.com/ScriptReference/Apple.ReplayKit.ReplayKit.html
and third party too rEK:
I´m on track of a solutiuon now; tba.