Ureader.com  
Microsoft software help and Community
   home   |   control panel login   |   archive   |  
 
Windos
win32.3rdparty
win32.directx.audio
win32.directx.ddk
win32.directx.graphics
win32.directx.input
win32.directx.managed
win32.directx.misc
win32.directx.networking
win32.directx.sdk
win32.directx.video
win32.dirx.grap.shaders
win32.gdi
win32.international
win32.kernel
win32.messaging
win32.mmedia
win32.networks
win32.ole
win32.rtc
win32.tapi
win32.tapi.beta
win32.tools
win32.ui
win32.wince
win32.wmi
windows.mediacenter
winfx.aero
winfx.announcements
winfx.avalon
winfx.collaboration
winfx.fundamentals
winfx.general
winfx.indigo
winfx.sdk
winfx.winfs
  
 
date: Wed, 2 Jul 2008 22:55:23 +0200,    group: microsoft.public.win32.programmer.directx.misc        back       


DirectX vs Driver vs HAL question   
Regards to all

I am little confused had big disscussion on subject of how DirectX actually 
works with hardware
and found some very different oppionions on subject also alot 
dissambiguioses about subject.

Topic of my interest is very simple actually:

Q1:
Does call to some drawing (simplest function for example bliting) DirectX 
function on PC that (for example) has GFX Card that supports DX 10.0 
(supports DX10.0 is that it supports all of its function provided with DX 
API/DDI) will call driver or not for that GFX card?

Some simple explanation what actually is happening in background:
1. Program/application calls directX function which is calling driver to 
execute one or more instructions, where driver is calling HAL(hardware 
abstraction layer) to paste those instructions to the hardware:

program->directX function->gfx driver->HAL(hardware abstraction 
layer)->hardware

-or-
2. Program/application calls directX function which is calling HAL(hardware 
abstraction layer) to paste those instructions to the hardware:

program->directX function->HAL(hardware abstraction layer)->hardware

-or-
3. (this was craziest thing I saw in some docs on MS site or maybe wrongly 
intepreted by me)
Program/application calls directX function, directX directly pastes 
instructions to hardware.
in wich case DirectX is HAL(hardware abstraction layer) for this GFX Card?

program->directX function->hardware

Q2:
and here program can be actually a driver wich is calling directX (cause 
directX is HAL)???


I hope my English is not that bad ;)

//NB
date: Wed, 2 Jul 2008 22:55:23 +0200   author:   Nikola Bozovic

Re: DirectX vs Driver vs HAL question   
Perhaps you can explain why any of this matters to you? In other words, what 
are you trying to do?

The application calls the Direct3D API and when it creates the device, it 
specifies D3DDEVTYPE_HAL for using hardware in almost all cases.

The D3DDEVTYPE_NULLREF type is useful for some limited tools that don't 
actually render, just do some work with the APIs.  The D3DDEVTYPE_REF type 
is really only useful for driver writers wanting to test their hardware for 
accuracy or perhaps debugging scenarios, but is far too slow for any real 
use. You'd need some kind of plug-in to make use of D3DDEVTYPE_SW software 
renderring like PixoMatic.

In other words, for all practical purposes you just use HAL in all cases.

The video driver and the DirectX Runtime take care of the rest.

-- 
Chuck Walbourn
SDE, XNA Developer Connection

This posting is provided "AS IS" with no warranties, and confers no rights.
date: Wed, 20 Aug 2008 16:40:37 -0700   author:   Chuck Walbourn [MSFT]

Google
 
Web ureader.com


    COPYRIGHT 2007, YARDI TECHNOLOGY LIMITED, ALL RIGHT RESERVE  |   contact us