Search Unity

Tessellation on Android and IOS

Discussion in 'Shaders' started by promero, Dec 30, 2019.

  1. promero

    promero

    Joined:
    Sep 29, 2014
    Posts:
    2
    Hello everyone, I try to use tessellation on IOS ( Ipad Pro 3º. Latest one ) and Android ( Samsung Tab S4- Adreno 540 ).

    Samsung Tab S4 has opengl ES 3.2, so in theory must work D11 tessellation samples, but when I use them, I get invisible objects. If I compile for Vulkan, Shaders works fine ( Standard ) except tessellation that doens't work.

    Same on Ipad Pro, Objects that use tessellation shader became invisible ( I can see their shadow cast ).

    I test all tessellation functions without result. All of them works fine on desktop ( Windows and OSX ).

    Are mobile devices not ready yet for tessellation ? is it an Unity Shader compilation problem ? or I mistake something ?

    Thanks
     
    Last edited: Jan 4, 2020
    Propagant likes this.
  2. zhixiongwang

    zhixiongwang

    Joined:
    Jun 12, 2018
    Posts:
    1
    I have the same problem. Is there a solution?is it an Unity Shader compilation problem ?
     
  3. BattleAngelAlita

    BattleAngelAlita

    Joined:
    Nov 20, 2016
    Posts:
    400
    Mobile GPUs do not support tessellation.
     
  4. aleksandrk

    aleksandrk

    Unity Technologies

    Joined:
    Jul 3, 2017
    Posts:
    3,014
    Tessellation should work on all mobile GPUs that have OpenGL ES 3.1 AEP support.
    Please submit a bug report, we'll take a look.
     
  5. promero

    promero

    Joined:
    Sep 29, 2014
    Posts:
    2
    I will. Thanks for your support
     
  6. jamesbean

    jamesbean

    Joined:
    May 15, 2014
    Posts:
    3
    Bump. Have there been any news, guys?
     
  7. snoche

    snoche

    Joined:
    Feb 22, 2010
    Posts:
    82
    I made a water shader in Unity 2020.1.6f1 using Vulkan with latest URP package, (I can not use OpenGL if I want vfxgraph), if I enable tessellation shader don't work when I build to the Oculus Quest. Works perfect on Editor.

    Is there any plans on the roadmap to fix/support that?
     
  8. aleksandrk

    aleksandrk

    Unity Technologies

    Joined:
    Jul 3, 2017
    Posts:
    3,014
    @snoche do you see any errors in the device log?
     
  9. snoche

    snoche

    Joined:
    Feb 22, 2010
    Posts:
    82
    No, I don't see anything just renders pink if I enable tesselation

    I have attached the logs from adb

    Can you please confirm if tessellation should work in 2020.1 and vulkan?
     

    Attached Files:

    • logs.rar
      File size:
      43.5 KB
      Views:
      320
  10. aleksandrk

    aleksandrk

    Unity Technologies

    Joined:
    Jul 3, 2017
    Posts:
    3,014
  11. snoche

    snoche

    Joined:
    Feb 22, 2010
    Posts:
    82
    It is false in the oculus build, that means quest don't support tesselation at all? is because the gpu? may quest 2 works?
     
  12. aleksandrk

    aleksandrk

    Unity Technologies

    Joined:
    Jul 3, 2017
    Posts:
    3,014
    No, it means "Quest with vulkan doesn't support tessellation". It well may do on GLES3 - the drivers are different.
    The hardware in Quest seems to support tessellation, so it's a matter of driver/OS support.
     
  13. snoche

    snoche

    Joined:
    Feb 22, 2010
    Posts:
    82
    Thanks Aleksandrk,

    If I understood well, this is something Oculus needs to support on their Oculus drivers and not something Unity still need to implement in Vulkan, is that right?
     
  14. aleksandrk

    aleksandrk

    Unity Technologies

    Joined:
    Jul 3, 2017
    Posts:
    3,014
    Yes, that's correct :)
     
  15. snoche

    snoche

    Joined:
    Feb 22, 2010
    Posts:
    82
    FYI I did the same test with Quest 2, and it returns true, so looks like tessellation is supported in Quest 2 and doesn't in Quest 1
     
  16. stasclick

    stasclick

    Joined:
    Dec 10, 2014
    Posts:
    3
    Any example of tessellation shader for Android/IOS? I did not find any. The shaders I tried to write do not work.