En la web de
Tom's Hardware publican un denso e interesante artículo sobre como funciona DirectX 10. No podemos resumirlo todo pero intentaremos dar algunos detalles:
DirectX es una aglutinación de librerías que se reparten en tres categorías: dispositivos de entrada, audio y vídeo. Así tenemos DirectInput, DirectSound, DirectMusic, Direct3D y DirectDraw. En esta nueva entrega los cambios principales están en Direct3D.
Comentan que hay 5 cambios importantes en esta nueva entrega.
Improved programmer expressiveness: Shader Model 4.0 y Geometry Shaders que permiten más libertad a los programadores para sus creaciones gráficas.
Tight hardware specifications: Las aproximaciones de NVIDIA y ATI para hacer lo mismo son un tanto distintas y al contrario que pasa con las consolas, es difícil para los programadores optimizar su código u obliga a crear código específico para cada arquitectura, ahora se explicita más las instrucciones que en DX 9 donde las interpretaciones eran más ambiguas, así se permite menos libertad a los fabricantes de chips y se ganará en optimización general.
Improved performance (lower command cycle counts per frame): Muchas instrucciones comunes requerirán menos ciclos de GPU para ejecutarse.
Unified instruction sets (HLSL 10): La únificiación de Shaders permitirá que menos partes de la GPU (Las unidades de Píxeles y Vértices) estén sin trabajar mientras otras están totalmente cargadas.
Stream I/O (Geometry Shader can write to memory): Hay ciertas mejoras en el manejo de memoria y gestión de varios objetos creados con el Geometry Shader.
Finalmente comentan que la migración, por parte de los programadores será relativamente sencilla ya que las herramientas hace tiempo que están a su disposición, aunque naturalmente a falta de S.O. con soporte DX10 y hardware que lo soporte, no tenía lógica hacerlo antes.