DirectX历史

本文介绍了DirectX从7.0到10的进化,强调了DirectX在游戏开发中的重要性。DirectX 8引入了像素着色器和D3DX实用库,9.0版加强了HLSL和纹理功能,而9 Ex针对Windows Vista进行了优化。DirectX 10则引入了XACT, XAudio2和XInput。文章讨论了如何合理利用DirectX和D3DX库以提高开发效率。" 70231903,5692819,分治算法实战:伪币检测,"['分冶算法', 'ACM竞赛', '算法实例']

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

DirectX 7

1.

DirectX 8

 

DirectX 9

 

DirectX 9 Ex

 

DirectX 10

DirectX 7.0

新增的内容:

一、 Direct3D 立即模式 API 增加了新特性,包括 : 设备状态块, 几何混合,立方体环境映射 , 用户自定义裁剪面。

二、

API 组成

第一、   Direct3D 快速模式

Direct3DX 实用库

D3D 立即模式的体系结构

           

在了解时,主要了解 Direct3D Immediate Mode C/C++ Reference

         以接口为中心 : 

         接口 : IDirect3D7

           IDirect3DDevice7

           IDirect3DVertexBuffer7

D3DX 实用库是十分重要的库,使用此库可以便利开发。

D3DX 使用库的功能

利用 D3DX 封装 D3D 渲染器,利用 OpenGL API 封装渲染器,渲染器的设计使用统一的接口产生不同的实现版本,

而且可拆卸,即可利用另一个架构的渲染器完全替换掉此渲染器。渲染器 API 可以自由从 D3D 和 OpnGL 之间切换。

Direct3D Utility Library

下图是 Direct3D Utility Library 位于 Direct3D API 库的位置。

 

ID3DXContext ——根接口,用于状态配置,纹理创建,显示更新

ID3DXMatrixStack ——实现场景层次的辅助接口

ID3DXSimpleShape ——用于绘制图元的 vertex-buffer 接口

Encapsulates ——封装

Direct3DX Utility Library 本质

   主要用于创建对象,封装对象,操作对象。

主要包括下面几大类的 D3DX API

第一、   Direct3DX 和 Direct3D

第二、   Direct3DX Context

第三、   Direct3DX Devices

第四、   Direct3DX Matrix Stack

第五、   Hardware Acceleration Levels(HAL)

第六、   Sprite Support

第七、   Texturing Support

第八、   Simple Geometric Shapes

第九、   3-D Math Support

D3DX API 分类

用途

备注

代表函数

 

Direct3DX 和Direct3D

第一、初始化context object, 更方便的初始化Direct3D 和DirectDraw

第二、访问Direct3D 和DirectDraw 对象

获取IDirect3DDevice7 接口

获取 IDirect3D7 接口

获取 IDirectDraw7 接口

D3DXCreateContextEx()

g_pd3dx->GetD3DDevice()

 

 

Direct3DX Context

封装了所有各种Direct3D 和DirectDraw 对象

 

 

 

Direct3DX Devices

扩展了 Direct3D device

可直接获取设备数量

查询 Direct3DX 设备

 

D3DXGetCurrentVideoMode

D3DXGetMaxNumVideoModes

D3DXGetVideoMode

 

Direct3DX Matrix Stack

记录矩阵状态

 

 

 

Hardware Acceleration Levels(HAL)

硬件加速

 

ID3DXContext::GetDeviceIndex

D3DXGetDeviceDescription

 

Sprite Support

辅助 Sprite 的 API,用于 3

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值