Search Unity

  1. Unity 2019.2 is now released.
    Dismiss Notice

MegaCity Feedback & Discussion

Discussion in 'Data Oriented Technology Stack' started by smcclelland, Mar 19, 2019.

  1. sharpwind11

    sharpwind11

    Joined:
    Jun 13, 2019
    Posts:
    9
    Why do you guys not put it on the Github, since the download server is unstable
     
  2. Antypodish

    Antypodish

    Joined:
    Apr 29, 2014
    Posts:
    5,683
    Probably do to project size.
     
  3. Quatum1000

    Quatum1000

    Joined:
    Oct 5, 2014
    Posts:
    724
    Several reasons:
    1) The import-texture-processor script always compile to BC4 or 7, anyway what you set up in the editor. This took time to import. Rename this script extension to .cs0 or mark it as hidden in Windows. Unity does not recognize files or complete folders are hidden in file OS system. You should take care about to have "visible hidden files" under folder properties in Windows first.

    2) The Textures are not optimized for ppl are interesting in code only. Textures use 16bit and use a lot layers at 8K. Most of them are >500MB. Change the original Textures to 8 bit RGB and flatten all layers and set them to dxt5/1 in unity.

    On my oldest 10 year old cheesy laptop with the first Windows7 64b and Sp1 4GB, I reduced all Textures to max. 512 dxt5. I got 15fps in editor. Absolutely great ECS performance al the way.

    Eg. having below 3 frames indicates Texture Swapping at GPU Memory overflow or HDD Swapping. Also Texture sampling is at the core of all Memory Bandwidth costs. The fewer textures we use, and the smaller we make them, the better. The more we use, the more cache misses we are likely to invoke, and the larger they are, the more Memory Bandwidth is consumed transferring them into the Texture Cache. Such situations should be simplified as much as possible to avoid severe GPU bottlenecks in case of weak hardware devices and insufficient GPU Memory.

    There is a another temporary optimization you can set in Unity Editor. Set LOD Bias in the Project Settings > Quality to < 1. Values below 1 cause to enlarge the virtual distance to the LOD objects.
     
    Last edited: Aug 2, 2019
  4. georgeq

    georgeq

    Joined:
    Mar 5, 2014
    Posts:
    484
    Thanks for the so detailed explanation, however nothing of the above has something to do with the real problem. After banging my head against the wall for hours (metaphorically) I discovered this wasn't neither a CPU nor a GPU problem, but a UI design flaw. As a seasoned PC user I did expect the game to respond to mouse commands, but it didn't, so I assumed the game was performing extremely bad, and that assumption was reinforced when I saw the game eating most of my memory and CPU, but that wasn't the case, because when (after hours) the idea of trying with the keyboard instead of the mouse came to my mind, I was finally able to see some action.So, as you can see, all this fuss was caused just because someone forgot to make sure the UI was able to support mouse input.
     
  5. Quatum1000

    Quatum1000

    Joined:
    Oct 5, 2014
    Posts:
    724
    Never had problem with the default setting and mouse input by default in buidl or editor in MC. Perhaps you USB mosue rate is set to 1000Hz ?
     
    GameDevCouple_I likes this.
  6. georgeq

    georgeq

    Joined:
    Mar 5, 2014
    Posts:
    484
    Hmmmm... I don't understand how that would affect this game and this game only?... I think is most likely that you have a newer version where this issue has already been solved... I don't know the version number, but I think I have the very first. Thanks for your interest, I do appreciate it very much.
     
  7. HiWill

    HiWill

    Joined:
    Jun 2, 2013
    Posts:
    13
    how about occlusion culling ?
     
  8. snaecoperth

    snaecoperth

    Joined:
    Jul 18, 2019
    Posts:
    7
    I have high performance SSD, with i9-9900k and Radeon VII (not that it mattered as the Demo never used my GPU), I was running about 45-70 fps on Average, with CPU maxed out most of the time, but was still responsive to input.

    Tried to make a Build, but it seemed to fail somewhere.

    Loved the MUSIC - was that a RIP from Blade Runner ?
    Sad to say there was no collisions and the AC Sounds seemed like over kill - but I understand they are trying to push systems to the limit.

    I'm sad that it doesn't' work for newer Unity versions, why only a specific version?
    In fact, I can't find the C# Jobs in the Package Downloads any more, lets hope in the next 2 months they have something for us at the Events/ Unite's around the world ..
     
  9. snaecoperth

    snaecoperth

    Joined:
    Jul 18, 2019
    Posts:
    7
    OK there is so many videos I had to shuffle though, but I can answer some Q's here.

    The Cars are Objects, they are spawned in on a Rail system that gives each Car/Vehicle a slightly random speed, they don't use ray-tracing, they split the Rail system into parts and they Run the Entities though a System that detects what is in front of them, if they are about to occupy a space in front of them that has another vehicle, then they will be updated with "Move to the adjacent rail that free" - this could be a vertical or horizontal rail. Why they did it this way, don't ask me.

    I had to search though Youtube very thoroughly just to find some answers.
    Unity hasn't grouped the DOTS very well, and I found some YT on a second channel - https://www.youtube.com/channel/UCLD4SqNu97cJ7u19WMUeZCA
     
    Artaani and AlanMattano like this.
  10. AlanMattano

    AlanMattano

    Joined:
    Aug 22, 2013
    Posts:
    1,079
    snaecoperth likes this.