Search Unity

Resolved Why are thinclients so heavy

Discussion in 'DOTS Dev Blitz Day 2022 - Q&A' started by Rupture13, Dec 8, 2022.

  1. Rupture13

    Rupture13

    Joined:
    Apr 12, 2016
    Posts:
    131
    Why are thinclient worlds so seemingly heavy?
    Don't they only have to generate fake input to send to the server?
    A lot of my client systems currently run for thinclients too, and I have to manually disable them, since I don't want them to run in the thinclient world.
     
  2. NikiWalker

    NikiWalker

    Unity Technologies

    Joined:
    May 18, 2021
    Posts:
    316
    Hey Rupture13!

    We agree that thin clients are unnecessarily heavy at the moment. We have plans to optimize them a lot in the near future. We expect a minimum of 10x improvement, likely much more.

    Thin clients do have to process some of the snapshot stream too.

    Which version are you on? In 1.0 you have the option to set the `
    [WorldSystemFilter(WorldSystemFilterFlags.ClientSimulation)]` (which will ignore Thin Client worlds).
     
    Rupture13 and Kmsxkuse like this.
  3. CMarastoni

    CMarastoni

    Unity Technologies

    Joined:
    Mar 18, 2020
    Posts:
    896
    Thin clients:
    - does not process ghosts
    - does not do a prediction or interpolation
    - they don't have presentation group
    - they just send input as you say.

    However, all systems that are tagged to run for client will runs. Also, because they are all in different worlds, these extra costs, sum up.
    Even scheduling a job that does nothing may add a visible overhead in the editor (especially if the JobDebugger is enabled). So, in general, care is still necessary to achieve decent results.
     
    Rupture13 likes this.