Search Unity

Official What hardware is the game targeting?

Discussion in 'Open Projects' started by superpig, Oct 1, 2020.

  1. superpig

    superpig

    Drink more water! Unity Technologies

    Joined:
    Jan 16, 2011
    Posts:
    4,659
    So, we know the game is for desktop platforms, but that could be quite a wide range. Requiring an RTX 3080 is... probably not a good idea. At the same time, insisting that the game run on a 32-bit potato is not practical either (I mean, 32-bit? In 2020? I suppose Boris might appreciate it). So what's the sweet spot between the two?

    For reference, here's Unity 2019's minimum system requirements. An SSE2-enabled CPU means "Pentium 4 or later" (so, from the year 2000 or later) and a DX10-capable GPU means "GeForce 8xxx series or later" (so, from the year 2006 or later). That rules out the potato, but in principle a game made with Unity 2019 should still run on a 14-year-old machine. That could mean running on computers which are older than some of the project contributors! :D

    Meanwhile, the Steam Hardware Survey gives more data about what people are typically using for desktop games. No potatoes there.

    I suggest that we aim for something like this as a minimum spec:
    • Windows 10, macOS 10.13, or Ubuntu 16.04
    • 3GB of RAM
    • Dual-core CPU @ 2GHz
    • GeForce GT 630 / 640M or AMD Radeon HD 7450
    • 1GB of VRAM
    • 5GB free disk space
    The Steam Hardware Survey suggests that a spec like that should cover around 90% of all players on Steam, which I think is a good place to start.

    However, 1GB of VRAM and a dual-core CPU is pretty constraining - just because the game should run on a spec like that doesn't mean it has to run well. So in addition to the minimum spec, we could adopt a 'recommended' spec:
    • Windows 10, macOS 10.13, or Ubuntu 16.04
    • 8GB of RAM
    • Quad-core CPU @ 2.3GHz
    • GeForce GTX 1080
    • 4GB of VRAM
    • 5GB free disk space
    This gives us a bit more breathing room, while still being accessible to ~70% of Steam players.

    We should aim for the game to run at a solid 60FPS on the recommended spec, and a solid 30FPS on the minimum spec (possibly with some settings turned down).

    What do you all think?
     
    Last edited: Oct 18, 2020
  2. MattMirrorfish

    MattMirrorfish

    Joined:
    Dec 8, 2013
    Posts:
    40
    I think this is a great suggestion and a good target to cluster around. If it needs to adjust later fine but good to adopt something like this early to facilitate decision making. Take my upvote.
     
  3. VoxelGuy

    VoxelGuy

    Joined:
    Sep 11, 2018
    Posts:
    4
    GeForce GTX1080 as minimum spec ?
    GTX1080 is a pretty powerful card no ?

    Even Cyberpunk 2077 only ask for a GeForce GTX 780 :D
     
  4. AndreFMMecheto

    AndreFMMecheto

    Joined:
    Mar 23, 2017
    Posts:
    12
    Hey! So I'm aboard the other requirements, but GTX 1080 is super overkill. As min spec we could probably go for a 1050 or lower, and recommended we could go for a 1060 6GB, which might also be overkill
     
  5. superpig

    superpig

    Drink more water! Unity Technologies

    Joined:
    Jan 16, 2011
    Posts:
    4,659
    Alright, I pulled the Steam video card data into Excel and massaged it into a table so we could actually see the cutoff more clearly.

    Of the NVIDIA cards - which account for 66% of the total - if we require a GTX 1050 or later, that covers 58% of the market. If we assume that the other manufacturers are similar, then a "GTX 1xxx series or equivalent" minimum spec would give us 87% of the market, which I think sounds fine. So yeah, dropping it to a GTX 1050 seems like a good idea to me.
     
  6. Neonage

    Neonage

    Joined:
    May 22, 2020
    Posts:
    287
    Holy pig man, i'm working on GT 740m ._.
    URP is super optimized, i think this project could work even on mid-mobile
     
    derera199 likes this.
  7. superpig

    superpig

    Drink more water! Unity Technologies

    Joined:
    Jan 16, 2011
    Posts:
    4,659
    Well, the target hardware has a big impact on the content, right? We could push all the way down and say that it has to run on a 14-year-old machine, but the lower the target spec, the more we are tying the hands of the people creating artwork.

    The game design says that the island "is a small patch of land almost completely covered by trees and palms" - so I think we should expect quite densely-populated scenes, and I think ideally we'd want it to be quite dynamic, so branches can sway in the wind etc?

    One thing to try would be to create an example of a densely populated 'island section', run it on some cards, and see how many ms/frame rendering costs. Maybe we can put 10000 trees and ferns on-screen on a GT 740m in 5ms/frame, in which case, sure, let's lower the minspec further.
     
  8. luisquid

    luisquid

    Joined:
    Mar 21, 2015
    Posts:
    38
    I would say find references on games that are of a similar scope and theme as the one we are developing and base the specs on their minimum specs. That way we can have a better scope as what something is overkill or not.

    For example, Yooka Layle. I think it's a game that is quite similar to what we are looking to develop.

    upload_2020-10-1_12-18-49.png
    I don't know what you folks think?
     
    SideSwipe9th, Neonage and superpig like this.
  9. AndreFMMecheto

    AndreFMMecheto

    Joined:
    Mar 23, 2017
    Posts:
    12
    Sounds good! Another goodie but oldie is Legend Of Kay:


    • MINIMUM:
      • OS: Windows 7/Windows 8.1 32 or 64 bit
      • Processor: Dual Core Processor at 2.0+ GHz or better
      • Memory: 2 GB RAM
      • Graphics: 1024 MB NVidia or ATI graphics card
      • DirectX: Version 11
      • Storage: 6 GB available space
    I Believe the processor is ok, RAM should be 4GB and for the card, 1GB or 2 sound great so here is my take on minimum:

    • MINIMUM:
      • OS: Windows 10 64-bit
      • Processor: Dual Core Processor at 2.3+ GHz or better
      • Memory: 4 GB RAM
      • Graphics: 1024 MB NVidia or ATI graphics card
      • DirectX: Version 11
      • Storage: 6 GB available space
     
  10. superpig

    superpig

    Drink more water! Unity Technologies

    Joined:
    Jan 16, 2011
    Posts:
    4,659
    I think we need to be more specific than 'NVidia or ATI graphics card' - imagine that we are actually going to go out and buy parts to build a machine for this, so we can use it for regularly testing the performance. We need enough information to know what to buy, reasonably clearly enough :)

    Other than that, keep it coming! What other games do you think would have comparable technical requirements? (They don't even have to be Unity games).
     
    konsnos and cirocontinisio like this.
  11. neoshaman

    neoshaman

    Joined:
    Feb 11, 2011
    Posts:
    6,493
    Many good games where made with low specs, imho having to target these specs help a lot a project to focus on what matter and budget accordingly. I know the project isn't about ambition and pushing unity to its limit, but part of learning making games is precisely about dealing with limitations and the lessons pay off handsomely. Especially for art, even AAA capitalize on lesson learned in previous generation. And a lot of time, you have to port your game to mobile, so there is a real case of learning to deal with low specs, Fortnite is a case study about it. Another case is genshin impact, crazy good visual that scale amazingly.

    Personally I have a gforce 705 and a radeon r2, respectively 150 and 70 flops more or less, my phone is probably around 4 or 11 flops on opengl 2.0. And there is visually decent games on island since at least the GameCube era with dense forest. Composition matter the most anyway. I mean Mario galaxy still looks nice today upscaled, sonic colour was confused for a x360 games, both are Wii games so no more than 12 flops with essentially no modern programmable shader, I would definitely learn about their visuals as we can have more breathing room than a simple Wii. Also probably a switch could a perfect minimal target, I mean fraking Witcher 3 run on it.

    It would be sad you cut off poor people like me, especially those trying to learn game dev, because they can't access a 1000+ $ computer of a middle class family, and that's already more than twice my monthly income. And there is a huge emergent market in India that are still on low end phones. I could barely run the 3d game kit already.

    So planning early art to scale, as it's easier to upscale rather than downscale. If it looks good with low end, adding details for high end would be a breeze.
     
    Last edited: Oct 2, 2020
  12. MileyUnity

    MileyUnity

    Joined:
    Jan 3, 2020
    Posts:
    92
    To build on top of this thread, how should we monitor whether we are actually able to run on these lower spec machines?

    Would it make sense to have a dedicated performance testing thread for each release where people will test the game, post their performance numbers (would be great if we can build in some tools to keep track of the FPSs min, max, avg and such to have a consistent dataset) and also post the specs of their machine + OS? Through that we could put the data into a spreadsheet and start looking at whether there are performance issues rising that we need to resolve in order to meet the target requirements.
     
    adamgolden likes this.
  13. Neonage

    Neonage

    Joined:
    May 22, 2020
    Posts:
    287
    Separate thread for testing is a nice idea
    Wouldn't Profiler data be enough? Don't know if we can put it inside spreadsheet, but it's much better for an actual debugging
     
  14. MileyUnity

    MileyUnity

    Joined:
    Jan 3, 2020
    Posts:
    92
    Potentially yeah, but running the game inside the editor or as a debug build to allow for the profiler to track data could cause extra overhead that won’t be there in the final build and could give us some inconsistent data. It would be better to test with a true final build in order to get rid of such overhead. Once we do figure out that there is a performance regression then of-course we should use the profiler to find out where it’s coming from :)
     
  15. Jim_West

    Jim_West

    Joined:
    Aug 5, 2013
    Posts:
    49
    • GeForce GTX 1080
    • 4GB of VRAM
    Doesn't fit together?
    I would suggest for recommended (I even can play Call of Duty Modern Warfare on 1440p with all max with around 70 FPS with that gpu):
    • GeForce GTX 1070
    • 8GB of VRAM
    Also, for min settings, I don't think this game will be a HDRP unity game with breakthrough graphics (that's not what the styles etc. tend to), you can play it on a newer integrated GPU without problems.
     
  16. razzminkelvin

    razzminkelvin

    Joined:
    Aug 21, 2020
    Posts:
    4
    having a thread performance dedicated to just testing performance would be nice, or maybe the performance reports could be made in the bug section. For early testing, I think there should be a demo scene (perhaps unoptimised) with an estimated performance cost similar to the project in mind that we could all download and test. optimizations would be made based on the performance results.
     
  17. MileyUnity

    MileyUnity

    Joined:
    Jan 3, 2020
    Posts:
    92
    It's gonna be very difficult to create a scene specifically for creating a baseline of performance when we basically don't even have a game yet. I think it's better to keep track of the performance as we go and once we start seeing issues we should step in to improve the codebase
     
    cirocontinisio likes this.
  18. superpig

    superpig

    Drink more water! Unity Technologies

    Joined:
    Jan 16, 2011
    Posts:
    4,659
    Let's keep the performance testing discussion in a separate thread, please. It's premature to get into that before we have even agreed on what the target hardware is :)
     
  19. wtd_rename

    wtd_rename

    Joined:
    Jun 29, 2020
    Posts:
    5
    a 750 should be able to run this game, unless we build a really non graphically optimized game
     
  20. MagdielM

    MagdielM

    Joined:
    May 27, 2020
    Posts:
    32
    Allow me to toss my two cents in from a different angle: the idea behind the Open Project is that anyone from all walks of life can contribute, right? The team behind this won't necessarily have company-provided hardware or a rig built for gaming (let alone game dev). Some of us just might be trying to pitch in from our Dad's laptop that came with a measly RX 540 because we've got $20 to our name and are still hunting for jobs, but also incredibly excited about an opportunity like this. We then end up frustrated because later down the line the project became too demanding for our hardware and we can't even test it for bugs, let alone actually contribute.

    I haven't been this motivated to get involved in a project in ages. Please don't cut me off.
     
    Neonage likes this.
  21. Ryiah

    Ryiah

    Joined:
    Oct 11, 2012
    Posts:
    21,190
    Just be prepared for the possibility that the game won't be in an optimized state for most of its development.

    According to the sources that I have been following Cyberpunk's system requirements are for 1080p @ 30 Hz with low settings. Meanwhile hardware reviewers have been estimating based off of the visuals and the Witcher 3 that you will need a 2080 or greater to have good performance without raytracing.
     
    Last edited: Oct 3, 2020
  22. Neonage

    Neonage

    Joined:
    May 22, 2020
    Posts:
    287
    We need to think about performance from the start, as it would be hard to refactor things at the final stages.

    And we need to know exactly why we have slowdowns - if it's due to bad design choice, or a mistake made in code
     
    ArtyUwU likes this.
  23. Ryiah

    Ryiah

    Joined:
    Oct 11, 2012
    Posts:
    21,190
    Planning ahead for optimization doesn't mean it will run ideally on an older machine from the beginning. An RX 540 has approximately the same performance as Intel's latest integrated graphics.
     
    Last edited: Oct 3, 2020
  24. Neonage

    Neonage

    Joined:
    May 22, 2020
    Posts:
    287
    I'll make sure that it runs perfectly on mine :D
     
  25. dmitsuki

    dmitsuki

    Joined:
    Apr 13, 2013
    Posts:
    4
    The range from min to recommended is actually really huge. I think the 1080 is over 100% faster than the 1050. Also, it's weird to make us have a 1 gb vram requirement when it and the amd equivalent have at least 2.

    4 gigs of ram on Windows 10 is kind of tight, and what are the earliest cpu's we are supporting? A pentium 2 duo is a lot slower than a 2500k is a lot slower than a i5 10600k, and for AMD equivalents, it gets really slow once it's not a ryzen first gen.

    Also, what are the targets? Is it min for 720p low settings, and recommended for 4k 60 fps? Given the huge gap, that's not entirely unrealistic, we should probably just know what we actually mean when we say min and recommended. Not to mention it's good to have some cut off point where the specs are really low and you get into a "YMMV" zone.

    Most importantly, even if we have very low system requirements on the minimum end, that doesn't necessarily mean you can develop for it. Development requirements are generally higher than runtime requirements.
     
    Ryiah and superpig like this.
  26. Ryiah

    Ryiah

    Joined:
    Oct 11, 2012
    Posts:
    21,190
    I'm currently running a GTX 1080 upgraded from a 960 which is nearly identical to a 1050, and having tested both extensively I can say with confidence that it's much closer to 150 to 200%. You will occasionally run into a game that only sees a 100% increase but that's mostly for games that are limited in some other way.

    Agreed. You would have to go back as far as the GTX 750 to see a 1GB card. Neither the 900 series nor the 10 series has anything lower than 2GB, and that includes the very budget tier cards like the GTX 1030.
     
  27. Mirazul-Kabir-Bhuiyan

    Mirazul-Kabir-Bhuiyan

    Joined:
    Apr 4, 2018
    Posts:
    2
    I have just read through everyone's comment. Some of my thoughts:
    • If not going for HDRP than minimum and recommended specs both look overkill when it comes down to graphics card selection.
    • Relation between graphics card, VRAM & RAM don't feel balanced. If going for GTX 1050 than shouldn't we expect minimum 2GB of VRAM. On the other side, if someone has a GTX 1080 card, he is most likely to have minimum 16GB of RAM or more.
    • Windows 7 is decent OS to support. Just for consideration.
     
    Last edited: Oct 9, 2020
    Ryiah likes this.
  28. superpig

    superpig

    Drink more water! Unity Technologies

    Joined:
    Jan 16, 2011
    Posts:
    4,659
    Alright, looping back on this...

    I went and dug up the analytics data we get from the Editor itself, and indeed Unity Editor users skew lower-spec than the Steam numbers. Looking only at the NVidia numbers for Windows Editor, here's what I see for the most recent generations:
    • 19.34% GeForce RTX (or Quadro equivalent)
    • 56.68% GeForce 1000 series (or Quadro equivalent)
    • 4.76% GeForce 900 series
    • 4.77% GeForce 900M series
    • 0.98% GeForce 800M series
    • 4.65% GeForce 700 series
    • 0.70% GeForce 700M series
    • 1.26% GeForce 600 series
    • 0.41% GeForce 600M series
    So, that means if we pick something like a GeForce GT 630 / 640M, that should be met by over 93% of Unity developers. I think the AMD equivalent is something upwards of a Radeon HD 7450+. For these cards 1GB VRAM looks more appropriate. Remember that it's not like if you have a GT 620 then the game will definitely totally crash, it just means that we are not going to focus our efforts on making it meet our targets. This is a little higher than Yooka Layle, but 3 years have passed since that game came out, and it looks like the market has moved on a bit.

    So, if we pick a GeForce 630 / 640M as our GPU, what can we determine about the rest of the spec? If I query the analytics some more, I don't see a lot of either of those chips running 2018 LTS or newer in the past couple of months, but - nothing below 2GHz (a Core i7-4765T). So I think "Dual-core CPU @ 2GHz" is reasonable.

    For system RAM, the absolute lowest I see is 2GB, but only 1% of people with those cards have less than 3GB; across all Unity users, only 0.2% have less than 3GB. So I think 3GB is a reasonable requirement; if we raise it to 4GB then we drop another 3% or thereabouts. What do you think?

    Remember, a lot of this is about content, not code. The reason I proposed quite high specifications in the first place is because I want to give our artists and designers lots of space to fill up the game world with content. But, I think it's a good idea to use the data about what people are running the Editor on as a guideline here, indeed.
     
    konsnos and Neonage like this.
  29. WagnerGFX

    WagnerGFX

    Joined:
    Aug 26, 2013
    Posts:
    28
    I think we should use a more flexible approach with the requirements for now.

    Let's start by considering a few key points for system requirements:
    1. What Unity can run;
    2. What is the project scope;
    3. How to cover the maximum amount of the player's and developer's systems;
    4. What technologies will be used (Processor instructions, DX, OpenGL, Vulkan, etc);
    5. Inspector results when testing (RAM and VRAM consumption);
    6. Build size.

    In the current state of the project we can only evaluate the first three points, while the others can only be evaluated as estimates, corrected during development and actually pinpointed at the final stages.

    With this and what has already been proposed, my suggestion is to follow these steps:
    1. Start with the Unity official base requirements and apply on top a very basic target requirement as an estimation.
      In this case, we could use a mix between the Yooka Layle suggestion, the developers' statistics and the steam players' statistics.

    2. Create a thread calling out for the community to continuously test the project using similar specs and give reports on issues with performance, hardware or operating systems.

    3. Reevaluate the target requirements as the project moves forward and issues arise that cannot be solved with compatibility fixes or optimization changes.

    4. Give a final review when the project development reach a stable point to create the minimum and recommended requirements.

    My Target Requirements suggestion:

    OS: Windows 7 (SP1+) 64 bit or Ubuntu 16.04
    Minimum Unity requirements. Upgrade to Windows 10 or Ubuntu 20.04 LTS only if issues arise.

    Processor: Intel Core i5-2500 3.3GHz or AMD FX-8150 3.6GHz
    They both have x64 architecture, SSE2 instruction, 4+ cores and are above 3.0Ghz. It is even above many specs for other adventure games.

    Memory: 4 GB
    Minimum OS requirements. Raise to 8GB if need, but avoid increasing more as it could be overkill.

    Graphics: Nvidia GTX 650 or Radeon HD 7750 with a minimum of 1GB of VRAM
    Minimum support for DX11, OpenGL 4.2 and Vulkan 1.2 with reasonable power. Increase to 2GB cards or a little more power if needed, but avoid too modern cards.

    Adv. Graphics: DirectX 10, OpenGL 3.2 and Vulkan
    Minimum Unity requirements. Increase if shaders require it, but each increase might need to review the graphic cards above.

    Storage: 2 GB of hard drive storage
    This is a vertical slice of a very cartoony game, it should not have a huge size. Increase if needed, but I suggest a ceiling of 5GB. No SSDs should be necessary.


    For the final specs and testing:
    • Minimum specs reference: 720p @ 30fps
    • Recommended specs reference: 1080p @ 60fps
    • Let us not enter in the 4K/8K domain since it will increase the project size and complexity by ridiculous steps.
     
  30. superpig

    superpig

    Drink more water! Unity Technologies

    Joined:
    Jan 16, 2011
    Posts:
    4,659
    Yes, these things can change over the course of the project, but we need to pick something concrete to start with. If we want to establish performance budgets - and we do, because leaving optimization to the end of the project is a catastrophically bad idea, so we need to track how we are doing as we are going - then we need to define what those budgets are being evaluated on.

    It's even more important with a project like this, I think, because it's a bit more chaotic than the average production - we are going to see contributors showing up with all kinds of additions, so having a clear performance target that we can use as a foundation for conversations will help people a lot in terms of figuring out what contributions are or are not acceptable from a technical point of view.

    Other than Windows 7 (which makes up around 2.5% of all Unity users), it looks like everything else you're proposing is higher than the spec I proposed in my latest post.
     
    WagnerGFX likes this.
  31. superpig

    superpig

    Drink more water! Unity Technologies

    Joined:
    Jan 16, 2011
    Posts:
    4,659
    BTW, I've updated the first post in this thread to reflect my latest proposed minspec.
     
  32. WagnerGFX

    WagnerGFX

    Joined:
    Aug 26, 2013
    Posts:
    28
    I just saw that. :eek:
    Let me reevaluate my suggestion:

    For OS I suggest then Windows 7 and Ubuntu 16.04 for minimum, but Windows 10 and Ubuntu 20.04 LTS as recommended, since they are the current supported versions. MAC I don't know anything about to give any suggestions.

    The processor I just copied from the Yooka Layle suggestion. I also thought it was a little above necessary. A dual-core 2.0GHz might do the work, but future testing will be needed to add some real processor names.

    4GB of memory is the minimum for 64 bits operating systems, lower than that could bring issues beyond the game, unless the game will support 32 bit systems, which I don't really recommend.

    For graphics I searched in the Vulkan site for the lowest cards with support for Vulkan 1.2.
    The Nvidia site mentions GT 630 as supporting it, but I can't find anything on the HD7450, the lowest was HD 7750.
    If the project is not going to use Vulkan, then your suggestion is already great.

    In this case, both cards support DirectX 11 and OpenGL 4.4. This part I suggest adding to the requirements for everyone to keep in mind to avoid making shaders with more advanced tech than available in the project.