Code:
Lenovo G50-70
Card name: AMD Radeon HD 8500M
Manufacturer: Advanced Micro Devices, Inc.
Chip type: AMD Radeon Graphics Processor (0x666F)
Adding feature levels and implementing them as part of DX12 means that millions of people will see significant benefits from adopting the new API in the here and now. No, older GPUs may not support every single DX12 feature, but no one is going to end up having to choose between a game that looks great in DX11 or a half-assed DX12 version due to graphics card implementation issues. When AMD, Nvidia, and Intel talk about supporting DirectX 12 on older hardware, they’re talking about the features that matter most — lower-overhead APIs, better CPU utilization, and multi-GPU functionality. The actual feature levels that define 12_1 as being different from 11_0 are interesting and useful in certain scenarios, but they aren’t the capabilities that will truly shape how gamers experience gaming with the API.
Just as there are very few games that require DirectX 11.2 or 11.1 (offhand, I can’t think of any), there are going to be very few DirectX 12 titles that mandate DirectX 12 FL 12_0 or 12_1. I’m not saying such games will never happen, but that’s going to be years from now, long after current GPUs have been replaced by modern hardware. If you own a GCN 1.0, Fermi, or Kepler card, you’re going to get the DirectX 12 features that matter most. That’s why Microsoft created feature levels that older GPUs could use — if Fermi, Kepler, and older GCN 1.0 cards couldn’t benefit from the core advantages of DirectX 12, Microsoft wouldn’t have qualified them to use it in the first place. The API was purposefully designed to allow for backwards compatibility in order to ensure developers would be willing to target it.