Hello everyone.

The Mixed Reality Forums here are no longer being used or maintained.

There are a few other places we would like to direct you to for support, both from Microsoft and from the community.

The first way we want to connect with you is our mixed reality developer program, which you can sign up for at https://aka.ms/IWantMR.

For technical questions, please use Stack Overflow, and tag your questions using either hololens or windows-mixed-reality.

If you want to join in discussions, please do so in the HoloDevelopers Slack, which you can join by going to https://aka.ms/holodevelopers, or in our Microsoft Tech Communities forums at https://techcommunity.microsoft.com/t5/mixed-reality/ct-p/MicrosoftMixedReality.

And always feel free to hit us up on Twitter @MxdRealityDev.
Options

Performance question

Hi HL guys,

I have a entire week trying to get decent performance from the HL, with no success. Today, I decided to go from the basics, so I created a simple plane, and a sphere. Then I created a material, with a 2048x2048 texture and the HoloToolkit/StandardFast shader. Project quality settings on 'fastest', project graphics settings deferred, deferred reflections, screen space shadows, legacy deferred, depth normal, light halo, lens flare and sprite pointing to custom shader (HoloToolkit/StandardFast). 'Always included shaders' - added HoloToolkit/StandardFast to the list along with Legacy/Diffuse, Hidden/CubeBlur, Hidden/CubeCopy, Hidden/CubeBlend, UI/Default and UI/font. In project player settings, turned on 'use 16-bit depth buffer' and rendering path 'forward'.


This image shows the sphere on my field of view. getting 60 fps


Here, the plane is on my fov, getting 30 fps. Why?

Another question: The second GPU engine (engine 1) is always turned off? looks like all the rendering is made by eng 0, even with other apps like the galaxy explorer.

Any ideas?

Answers

  • Options
    bernieSFbernieSF ✭✭
    edited May 2016

    I think I figured out the perf issue: On the material, I deactivated 'highlights' and 'reflections' and changed source to 'Albedo Alpha' and did the trick. Now getting steady 60fps.

    Update: HoloToolkit StandarFast shader doesn't work on Terrains, getting this error: 'Cant use materials with shaders which need tangent geometry on terrain, use shaders in Nature/Terrain instead', but, HoloToolkit's Lambertian works and deliver 60fps most of the time.

  • Options

    I think the second graphics engine handles the compute shader workloads, but I'll need to confirm. Running HoloTour will cause light activity on that engine.

    ===
    This post provided as-is with no warranties and confers no rights. Using information provided is done at own risk.

    (Daddy, what does 'now formatting drive C:' mean?)

  • Options
    Jarrod1937Jarrod1937 ✭✭✭
    edited May 2016

    @bernieSF said:
    I think I figured out the perf issue: On the material, I deactivated 'highlights' and 'reflections' and changed source to 'Albedo Alpha' and did the trick. Now getting steady 60fps.

    Update: HoloToolkit StandarFast shader doesn't work on Terrains, getting this error: 'Cant use materials with shaders which need tangent geometry on terrain, use shaders in Nature/Terrain instead', but, HoloToolkit's Lambertian works and deliver 60fps most of the time.

    Ah, glad you got it figured out. Can you add this information to the Wiki talked about here?
    https://forums.hololens.com/discussion/603/wiki-for-developers

    Getting a central area for these kinds of things is quite helpful.

  • Options

    The second engine doesn't appear to be compute. Someone more knowledgeable than me is speculating that the second engine is for video decoding. I'll post again when this is confirmed.

    ===
    This post provided as-is with no warranties and confers no rights. Using information provided is done at own risk.

    (Daddy, what does 'now formatting drive C:' mean?)

  • Options

    Without looking at a profiler there are a few recommendations:

    • Use forward rendering, not deferred. Deferred rendering is great for high end graphics, but it has a high "up front" cost and isn't very suitable for mobile hardware.
    • Don't use screenspace shadows. In fact, avoid shadows if you can in favor of custom tricks (like "shadow blobs"). Shadows are expensive because they require a lot of extra rendering to happen, so if you can fake it there are outsized gains to be had.
    • If you are going to use shadows, use the built "hard shadows only" option. I'd suggest reducing the number of lights as much as possible (e.g. no dynamic point lights, one directional light).

    BTW, have you tried the visual studio graphics debugger, it's what I use most of the time to optimize performance.

  • Options

    We also have an FPS problem. Did anything above and more. Still have 30 FPS on a 37k poly scene.

  • Options
    bernieSFbernieSF ✭✭
    edited May 2016

    @IvanEvdokimov I solved my problems creating materials, and assigning shaders like the HoloToolkit's 'StandardFast' or the stock Mobile/VertexLit. Let me know if you need more information on how to assign shaders to a material.
    PS: Turn off ALL the shadows (cast and receive shadows). They have a high impact on the rendering speed.

Sign In or Register to comment.