(X)SSetConstantBuffers1 - no luck?

Started by
6 comments, last by sepul 10 years, 5 months ago

Hi,

I need to use some limited functionality of d3d11.1 under win7, but so far I had no luck

I've installed the win7 platform update and win8 sdk. Here's a snippet that I acquire d3d11.1 device :


dxhr = D3D11CreateDevice(adapter, D3D_DRIVER_TYPE_UNKNOWN, NULL, dev_flags,  
    NULL, 0, D3D11_SDK_VERSION, &dev, &ft_level, &ctx);  
ID3D11Device1* dev1;  
dxhr = dev->QueryInterface(__uuidof(ID3D11Device1), (void**)&dev1);  
dev->Release()  
D3D_FEATURE_LEVEL ft_level = dev1->GetFeatureLevel()  
...

The d3d11.1 objects are valid and working, but I can't use any d3d11.1 specific feature. The structure returned by CheckFeatureLevel(D3D11_FEATURE_D3D11_OPTIONS) is all FALSE and I can't run any d3d11.1 APIs without error (or d3d-debug complains)

For example my application is something like glMapBufferRange and glBindBufferRange on DX. (which existed since GL3), so I guess it's just a API/driver issue and doesn't rely on d3d11.1 hardware requirements.

But the support in the D3D11_FEATURE_D3D11_OPTIONS is not there and calling VSSetConstantBuffers1 leads to d3d complain "This current driver does not support constant buffer offsets"

In the d3d document for VSSetConstantBuffers it says: "This feature is always available on new drivers for feature level 10 and higher"

So, Am I missing something in the API ? or it's just lazy drivers from AMD ? (I'm using latest Catalyst 13.9 drivers on 5750 card)

dark-hammer engine - http://www.hmrengine.com

Advertisement

What GPU do you have?

It may be that it simply doesn't have the capability of executing dx 10-11 commands.

EDIT:

As you said:

"This feature is always available on new drivers for feature level 10 and higher"

Either your GPU isn't capable of this, or you should update your driver, from NVIDIA.

FastCall22: "I want to make the distinction that my laptop is a whore-box that connects to different network"

Blog about... stuff (GDNet, WordPress): www.gamedev.net/blog/1882-the-cuboid-zone/, cuboidzone.wordpress.com/

@migi: mentioned them in my first post.
amd 5950 card, win7, latest amd catalyst 13.9 drivers
gpu should be capable as described in d3d documentation

dark-hammer engine - http://www.hmrengine.com

When you call D3D11CreateDevice, you pass NULL as the requested feature level array (5th param). You need to explicitly request D3D_FEATURE_LEVEL_11_1, otherwise it will create 11.0 device.

Check D3D11CreateDevice() on MSDN.

I'm not sure if any drivers actually support that feature on Win7. I just checked on my 7950 and it also reports that constant buffer offsets aren't available. It's pretty frustrating, since it's the 1 feature from 11.1 that's supposed to be available on Win7.

When you call D3D11CreateDevice, what feature level do you request? You need to explicitly request D3D_FEATURE_LEVEL_11_1, otherwise it will create 11.0 device.

Check D3D11CreateDevice() on MSDN.

FEATURE_LEVEL_11_1 isn't available at all on Win7. The platform update basically lets Win7 support the new interfaces, but none of the functionality. Basically, it's totally useless.


FEATURE_LEVEL_11_1 isn't available at all on Win7. The platform update basically lets Win7 support the new interfaces, but none of the functionality. Basically, it's totally useless.

Some features are supported on Win7(MSDN), though it doesn't say how to create device that supports those features.

@MJP this sucks.

Isn't it because of AMD drivers ?

dark-hammer engine - http://www.hmrengine.com

This topic is closed to new replies.

Advertisement