微软的DirectX是干嘛的?游戏为什么离不开它?

  • 2017-06-28
  • 599
  • 1
  • 2

视频最后说的“接口”是什么意思?

“API”也就是我们说的应用程序编程接口,有了接口,开发人员就不需要理解(软件/硬件)内部的工作原理,而和我们的(软件/硬件)建立联系。

(以下内容来自:net_assassin)

DirectDraw

DirectDraw是DirectX家族中的元老,它为高速的2D渲染提供了良好的支持,由于其具备直接显存访问和位快传送的能力,使得2D图形的绘制速度相对GDI有了一个质的飞跃,其渲染速度甚至有上百倍的差距。

DirectDraw在DirectX3.0时就已经接近极致,但是随着PC图形技术的飞速发展,人们逐渐不再满足于2D的图形效果,而通过2D技术实现伪3D模拟又非常损失效率,这种需求直接导致了Direct3D的诞生,早期的Direct3D技术不甚完善,相对于2D技术还有一定的差距,直到图形加速卡支持硬件3D特效后,Direct3D才逐渐步入正轨,慢慢显示出它的性能优势来。

DirectX Audio

在DirectX中DirectSound和DirectMusic可以统称DirectX Audio。一个好的游戏是不能没有声音的,DirectX Audio负责了游戏中的音效控制。不仅仅是游戏,很多需要高质量音效的地方都有它们的影子,我们经常在一些播放软件的设置面板中看见是否使用DirectSound支持的选项。

DirectInput

在DirectX这个大家族中,DirectInput掌管着“行为控制权”。与Winodows事件响应相比,DirectInput可以直接访问硬件,直接从输入缓冲区内检索数据,从而获得比响应Windows消息更快的速度。此外DirectInput也对力反馈游戏杆(Force Feedback)提供了良好支持。

DirectPlay

网络底层程序的开发向来是令开发者头痛的一件事,而DirectPlay兼顾了速度与易用性两个方面,在网络游戏这样一类对速度和效率要求较高的软件来说,针对游戏优化设计的DirectPlay显然是一个比较好的选择。DirectPlay提供了一个额外的层,使你的游戏和网络底层相隔。并且,你的游戏可以非常简单地使用DirectPlay API,并使用DirectPlay管理网络通讯。

精选留言

  • 小喵喵回复

    微软最喜欢干封装这种事 2333 😆

写留言


· · ·