最全面、最前沿、最专业的游戏研发实战

提供最全面的游戏研发技能分享,让您在最短时间变成高级游戏工程师

查看:0|回复:1

【环境】为什么DirectX 的其他组件全部没落了,没有像D3D一样发展甚至进入Windows的核心层呢?

 attach_img

3

帖子

5

回复

8

积分
最后登录:
2025-03-30 12:36
注册时间:
2023-03-12 17:23
楼主
  发表于:2025-03-30 16:35:31|查看用户信息

DirectX原有的组件包括:

图形 Direct3D/DirectDraw -> DirectGraphics 进入到 Windows 核心

音频 DirectSound -> 被 XAudio 替代

输入 DirectInput -> 被 XInput 替代

视频 DirectShow -> 被 MdeiaFoundation 替代

网络 DirectPlay -> 就没发展起来过

DirectPlay 纯属没用,但是其他几个为什么不发展了而变成了别的项目呢?尤其是当时的 DirectShow 还是非常火的,可能到现在还有用的。DirectSound也是被替代也很费解。


6

帖子

1

回复

6

积分
最后登录:
2025-03-30 15:32
注册时间:
2024-07-15 23:26
1 楼
  发表于:2025-03-30 16:37:15|查看用户信息

发表一下自己的看法。

除了图形一直在更新以外,你说的这些主要是dx8、dx9的组件,这些东西始终是dx sdk的组件而不是windows的 core sdk。


这几个更适合当成库而不是API,亦或是Xbox的API。其实微软很多API有类似的问题(要么太原始,要么太精细)比如两种网络的API一种只能写原始套接字,一种是只能写http。我个人比较喜欢操作系统提供的API只提供基础功能的。但是不知道微软的做法有什么考量。


而作为库显然他们也过于老旧有很多东西不支持,功能太少。比如输入输出可以用rawinput代替dinput,至于题主提到的xinput,xaudio主要是为了Xbox顺带支持pc平台的,和direct的东西不完全一样。


总之说了这么多,总结为一个观点,微软当时到现在也把这些东西作为库去搞的,时间长了发现不爽之后就不维护,也不会有什么麻烦。不作为API去添加到核心中是因为windows不完全是游戏开发平台加上这些功能肯定冗余,兼容起来估计也会很恶心。


共 1/1 页

0

帖子

0

回复

0

积分
最后登录:
1970-01-01 08:00
注册时间:
1970-01-01 08:00
会员必须登录才能发布帖子! 点击登录