WEB开发网
开发学院软件开发VC MFC下DirectX DirectInput的实现 阅读

MFC下DirectX DirectInput的实现

 2007-03-22 21:31:38 来源:WEB开发网   
核心提示:一般来说DirectX技术总是应用在游戏上的,而在DirectX天生就能与Win32很好的结合,MFC下DirectX DirectInput的实现,看看市面上的图书,凡是用到DirectX技术的大多是使用Win32编程的,删除对话框中间的标签,按钮可以先不管,因为DirectDraw或者DirectXGraphics

一般来说DirectX技术总是应用在游戏上的,而在DirectX天生就能与Win32很好的结合。看看市面上的图书,凡是用到DirectX技术的大多是使用Win32编程的,因为DirectDraw或者DirectXGraphics需要自己控制屏幕上的每一个象素,MFC等类库显然不适合太多自定义的东西。而另一方面,对于DirectInput里的内容,因为并不需要控制窗体,仅仅需要发送控制消息,则可以实现在MFC下的DirectInput编程。

下面简要说明一下一个DirectInput在MFC下的实现,其中也包括DirectInput的一些基础知识。

1.简介

DirectInput和其他DirectX组成部分一样,是通过硬件抽象层(HAL)和硬件仿真层(HEL)来实现,但是一般来说,所有的游戏控制器都有合适的驱动程序来支持,所以一般来说硬件仿真层的内容并不多,大多数的控制是通过DirectX调用驱动程序来完成的。

DirectInput处理的输入设备一般包括鼠标、键盘、游戏控制杆、操作杆等。而且现在的DirectInput还能够支持力反馈设备。本文仅仅讲述如何实现一个普通的PS游戏控制手柄在MFC中的应用,因为所有的输入设备的实现一般都大同小异,具体的力反馈设备,可以在SDK中查询。

2.组件

DirectInput8.0版中包括很多COM接口,而最主要的接口有两个:

IDirectInput8:启动DirectInput所必须创建的主COM接口。创建了这个接口,才可以创建其他的接口,设置DirectInput属性,创建或者获得想要的输入设备。

IDirectInputDevice8:由IDirectInput8接口创建而的,表示具体的输入设备。

3.实现

创建一个基于对话框的MFC应用程序。项目名称为DirectInputJS(JS表示joystick)其他使用默认设置。删除对话框中间的标签,按钮可以先不管,因为这不是本文的重点。

1 2 3 4 5 6  下一页

Tags:MFC DirectX DirectInput

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接