Search Unity

Bug Status of graphics jobs support on macOS

Discussion in 'General Graphics' started by oobartez, Dec 28, 2022.

  1. oobartez

    oobartez

    Joined:
    Oct 12, 2016
    Posts:
    167
    What is the current status of graphics jobs support on macOS?

    According to our benchmarks enabling graphics jobs on Windows significantly improves performance.

    macOS however is a different story - graphics jobs are still labeled as experimental in Player settings.

    Most importantly during our tests on macOS they caused serious artifacts: objects are randomly rendered with transforms from a few frames before. It looks like some kind of race condition / threading issue where positions and rotations are calculated on separate threads and the frames sometimes get all mixed up.

    It happens both with GameObjects that we animated manually from code and with objects animated by Unity by AnimationControllers (such as a simple rotating element). Performance on macOS is better but those artifacts are unacceptable, they happen constantly on a big portion of objects.

    So the questions comes down to, are graphics jobs on macOS a work in progress and we should stay put or should they already work fine for the majority of use cases?
     
  2. oobartez

    oobartez

    Joined:
    Oct 12, 2016
    Posts:
    167
    Of course any workarounds for the macOS artifacts are welcome but this thread is mostly about understanding what the status is of graphics jobs support.
     
  3. oobartez

    oobartez

    Joined:
    Oct 12, 2016
    Posts:
    167
    Regarding the bug mentioned in OP, our dev team managed to reproduce it and we submitted a bug report.

    The problem appears to only affect the game if there are animated objects (skinned or rigid).

    The problem only becomes apparent if the FPS drops below a certain value, so it may affect some games without them realizing it. Our suspicion is that it is some kind of race condition which happens when some threaded jobs do not complete within the allocated time and their results are picked up at a later time, in an incorrect frame, when the calculations are long outdated.

    We tested the bug on Unity 2022.1.24 and 2022.2.1.
     
  4. oobartez

    oobartez

    Joined:
    Oct 12, 2016
    Posts:
    167
    It appears that the previous bug report was never received by Unity. Despite the confirmation dialog in the Editor, we never received the standard confirmation email and we do not see it in fogbugz. We have resubmitted the bug report now.
     
  5. oobartez

    oobartez

    Joined:
    Oct 12, 2016
    Posts:
    167
  6. oobartez

    oobartez

    Joined:
    Oct 12, 2016
    Posts:
    167
    The issue has been updated by the Unity team as "Won't Fix".

    I suppose it means that we cannot expect graphics jobs to be supported on macOS any time soon. It probably makes sense for Unity to remove the Graphics jobs checkbox altogether from player settings - in its current form it does not work even in the simple repro project that we submitted.
     
    Last edited: Apr 27, 2023