Jump to content
  • Advertisement
  • entries
    422
  • comments
    1540
  • views
    490633

DXGI Enumeration

Sign in to follow this  
jollyjeffers

369 views

I've been pretty busy lately, but I thought I'd post the following just to prove I was doing something and that I'm still alive [grin]

Adapter 0:
Dedicated Video Memory: 0gb 127mb 948kb 0b
Shared Video Memory: 0gb 64mb 0kb 0b
Device ID: 20040
Vendor ID: 4098
Sub System ID: 135170
Revision: 0
Description 'RADEON 9800 PRO'
Output 0 for adapter 0
Name: \\.\DISPLAY1
Output is NOT attached to desktop
Desktop Coordinates: [0,0] to [1024,768]
Current display mode:
Dimensions: 1024x768 @ 60hz
Format: DXGI_FORMAT_B8G8R8A8_UNORM
Supported display mode 0:
Dimensions: 1920x1080 @ 59hz
Format: DXGI_FORMAT_B8G8R8A8_UNORM
Supported display mode 1:
Dimensions: 1280x720 @ 59hz
Format: DXGI_FORMAT_B8G8R8A8_UNORM
Supported display mode 2:
Dimensions: 1024x768 @ 75hz
Format: DXGI_FORMAT_B8G8R8A8_UNORM
Supported display mode 3:
Dimensions: 1024x768 @ 72hz
Format: DXGI_FORMAT_B8G8R8A8_UNORM
Supported display mode 4:
Dimensions: 1024x768 @ 70hz
Format: DXGI_FORMAT_B8G8R8A8_UNORM
Supported display mode 5:
Dimensions: 1024x768 @ 60hz
Format: DXGI_FORMAT_B8G8R8A8_UNORM
Supported display mode 6:
Dimensions: 1024x768 @ 86hz
Format: DXGI_FORMAT_B8G8R8A8_UNORM
Supported display mode 7:
Dimensions: 960x720 @ 60hz
Format: DXGI_FORMAT_B8G8R8A8_UNORM
Supported display mode 8:
Dimensions: 856x480 @ 60hz
Format: DXGI_FORMAT_B8G8R8A8_UNORM
Supported display mode 9:
Dimensions: 848x480 @ 75hz
Format: DXGI_FORMAT_B8G8R8A8_UNORM
Supported display mode 10:
Dimensions: 848x480 @ 60hz
Format: DXGI_FORMAT_B8G8R8A8_UNORM
Supported display mode 11:
Dimensions: 800x600 @ 75hz
Format: DXGI_FORMAT_B8G8R8A8_UNORM
Supported display mode 12:
Dimensions: 800x600 @ 72hz
Format: DXGI_FORMAT_B8G8R8A8_UNORM
Supported display mode 13:
Dimensions: 800x600 @ 70hz
Format: DXGI_FORMAT_B8G8R8A8_UNORM
Supported display mode 14:
Dimensions: 800x600 @ 60hz
Format: DXGI_FORMAT_B8G8R8A8_UNORM
Supported display mode 15:
Dimensions: 800x600 @ 56hz
Format: DXGI_FORMAT_B8G8R8A8_UNORM
Supported display mode 16:
Dimensions: 800x600 @ 94hz
Format: DXGI_FORMAT_B8G8R8A8_UNORM
Supported display mode 17:
Dimensions: 720x576 @ 60hz
Format: DXGI_FORMAT_B8G8R8A8_UNORM
Supported display mode 18:
Dimensions: 720x480 @ 75hz
Format: DXGI_FORMAT_B8G8R8A8_UNORM
Supported display mode 19:
Dimensions: 720x480 @ 60hz
Format: DXGI_FORMAT_B8G8R8A8_UNORM
Supported display mode 20:
Dimensions: 704x480 @ 60hz
Format: DXGI_FORMAT_B8G8R8A8_UNORM
Supported display mode 21:
Dimensions: 640x480 @ 75hz
Format: DXGI_FORMAT_B8G8R8A8_UNORM
Supported display mode 22:
Dimensions: 640x480 @ 72hz
Format: DXGI_FORMAT_B8G8R8A8_UNORM
Supported display mode 23:
Dimensions: 640x480 @ 60hz
Format: DXGI_FORMAT_B8G8R8A8_UNORM
Interesting, isn't it. It's the output from examining the available data from the DXGI (DirectX Graphics Infrastructure). Whilst D3D10 has fixed feature caps, things like resolution and monitor output can't be fixed - so enumerations do still exist. The above is pretty similar to IDirect3D9::GetAdapterIdentifier().

The interesting part is being able to get the exact amount of VRAM installed on the physical hardware. Yes, you can get it currently - but it's nowhere near as easy...

I'm not too sure whats up with the refresh rates on the supported modes. Some really odd values in there. 59hz? 86hz? 94hz? I think they should be 60/85/95 respectively. Refresh rates are expressed as rational numbers - with some really odd values.

I installed the Feb '06 SDK on my machine and started building up a simple D3D10 application. It doesn't really do much at the moment, but I'm trying to build up a simple application without copy-n-pasting the stock code. Thus going from the API reference and documentation. Yes, I am that hardcore [razz]

I'm planning on putting some D3D10 goodness into this journal in the near future. I've got a few simple applications I want to mess with, and I'll be posting any notable findings here...

Any requests?
Sign in to follow this  


2 Comments


Recommended Comments

One thing I always wanted to get around to doing was a dynamic non-linear/planar tesselator. i.e. increase the # of verts between existing verts, but also curve them appropiately.

Share this comment


Link to comment
You mean some form of higher-order surfaces? bezier/cubic patches and so on?

I might see about including something on that, but the current idea I have is to go for the really simple core basics. Sort of like a foundation "here's what sort of information you have, here's how to manipulate it - now go do some cool stuff!"

Jack

Share this comment


Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!