Black grid on camera frame when displaying point cloud
I am developing an application that receives and display a point cloud. When I try to render a point cloud (both with normal mesh or MaterialPropertyBlock and GPU) I get what it seems to be a black transparent canvas that follows my head. This is very annoying. I tried to change materials and shaders, to disable shadows, but I didn't find a way to get rid of this problem.323Views0likes0CommentsHuge GPU performance loss after updating to v55 from v54.
After Updating the Meta Quest 2 to v55 from v54 the GPU usage has increased from 50-70% to 90-99%. I had to reduce the resolution by 30% to maintain the solid 90fps that I had before the update. I've read online that some people now can't play some games like Beat Saber anymore after the update because it stutters a lot.Solved929Views0likes1CommentCan I link my Quest 2 to the Oculus App on PC with a non-supported GPU for development in Unity?
I understand that the Oculus app for PC requires newer, more powerful GPUs in order to link the Quest 2 for PCVR games, however I need to link the Quest 2 to my PC for the purpose of development of a school project in Unity. I'm borrowing the Quest 2 from my school, so I didn't know that it would require such GPUs. From a couple tutorials I've watched, the easiest way to test a playable version of the project that I'm building in Unity is to link the Quest 2 to my PC via a link cable. I've already spent a bit of time setting up and developing my project in Unity, and now I'd like to test if the XR interaction and other elements in my project actually work with the headset. The problem is that my Quest 2 can't link to my PC app, because I have an older laptop with an outdated GPU(NVIDIA GeForce MX150), but my processor should be compatible(Intel Core i5-8250U[8th gen]). I don't actually want to link the Quest 2 to the PC app for any other reason than for my Unity to recognize/use the Quest 2 as the run device. From my understanding, the reason it only lets the Quest 2 pair with newer, more powerful GPUs is so that it can run PCVR games without any problems, but I only want to link it to test my Unity project. I think there is a way to build the project and then move it onto the Quest 2 without the need of a link cable, but that would waste time during production and I'm not totally sure how to do it. Is there any way to link the Quest 2 to the Oculus app on PC just for the sake of development? If not, can anyone point me to any resources to bypass the Oculus app for PC and still be able to test my Unity project?2.1KViews0likes3CommentssuggestedCpuPerfLevel and suggestedGpuPerfLevel appear to do nothing
Setting OVRManager.suggestedCpuPerfLevel and OVRManager.suggestedGpuPerfLevel to OVRManager.ProcessorPerformanceLevel.Boost has no effect on CPU and GPU levels when observed through the OVRMetrics tool. Both are locked to CPU = 1 and GPU = 1. How do give the app control over these levels to increase or decrease as required by the game? Using Unity 2019.3.34 and Oculus Integration 39.0.0.0 Thanks in advanceSolved3.6KViews0likes4CommentsOculus Quest - huge render textures in rendering profiler
Rendering empty scene (solid color) in Unity 2019.1.10f takes Quest's GPU around 10ms. After further profiling I discovered that there are 4 render textures (I'm guessing color and depth for each eye) and that they take almost 300MB of space. Snapdragon Profiler showed that texture memory read is often up to 6.25 MB/s. Profiling the game with Renderdoc didn't show any huge textures, eye textures were taking around 13.07MB (1216x1344) What could be the cause of this?Solved1.5KViews0likes1Comment(Android) Unity got Poor CPU Performance compared with Native apk
Hello everyone, my team have been contributing to develop " view dependent media player ", which using a single thread decode 2048 * 1536 with android-media-codec (we can call it BASE TEX) and four thread decode 512 * 256 * 24 split blocks for viewer directly look at with ffmpeg (we can call it HD TEX), very similar with VR_5K_PLAYER. The above main framework make the cpu usage more heavy compare with gpu. Cpu need decode 2048 *1536 totally and upload YUV from memory to video memory every frame, while gpu only decode 2048 *1536. After a few test with Samsung S8 & Quest, i found that, s8 & Quest got different performance which s8 got a high fps because of Quest has less cpu avaliability compare with S8. ( PS: S8 & Quest all equiped with snapdragon 835. as far as i know, the 835 chip contain 8 core, 4 core of all 8 core are big core responsible for heavy work ) To confirm my point of view , i made a test proj using unity & the latest gear sdk, add heavy cpu work for some thread public class NewBehaviourScript : MonoBehaviour { // Use this for initialization void Start () { for (int i = 0; i < 8; i++) { ThreadStart method = () => threadWork(); Thread thread = new Thread(method); thread.Start(); } void Update() { long sum = 0; for (int i = 0; i < 1000000; ++i) sum = (int)((sum + i) * 2.0f / 2.0f); } void threadWork() { while (true) { long sum = 0; for (int i = 0; i < 100000000; ++i) sum = (int)((sum + i) * 2.0f / 2.0f); Debug.LogFormat("TestThread End name:{0} curr thread id:{1} cur timeStamp:{2}", sum, Thread.CurrentThread.ManagedThreadId, DateTime.Now.ToString()); } } } the enclosed python file use "adb shell cat /proc/stat" to calculate 8 core usage. the above result is S8, the last four core are big core usage, while 3 big core execute full load. the above result is Quest, the last four core are big core usage, while 2 big core execute full load. my team also made a native android project which using gradle & android studio & without gear, loading my dynamic library through jni & execute view dependent media player. the S8 cpu usage is the below result is executed with S8 using unity & gear & same dynamic library, the two test show that native apk get a better & average cpu usage while heavy cpu work executing, compared with unity & gear apk. My question is, Is there a way for unity & gear apk to control device cpu availability rate ? why native apk performance diff with unity & gear apk? why Quest got less core to execute cpu work compared with S8?791Views0likes0CommentsOculus's GPU cost of pixel shading is much greater than Vive(SteamVR), why?
I did a simple test for the same scene in Unity 5.6.4p4, just a quad in front of camera covering the whole screen, with a custom PBR shader which executes the PBR lighting model several times, and here's the result (raw app render time in Unity Profiler and GPUView, no compositor involved): 32 64 16 4 steamvr 4.75 9.05 2.63 0.69 ovr 8.45 12.58 4.05 1.87 diff 1.78x 1.39x 1.54x 2.71x I know that SteamVR is using a stencil mesh to save fillrate, but from the statistics the difference is not proportional to the execution times, so it's not solely because of the extra pixels rendered. OVR uses Adaptive Queue Ahead to trade input lag for CPU framerate, so when porting from Vive to Oculus, I'm currently GPU-bound due to the unknown reason. Anyone has any idea?1.3KViews0likes5Comments