首页 新闻 会员 周边 捐助

GDI与DirectX的区别?

0
悬赏园豆:50 [已关闭问题] 关闭于 2008-08-18 14:44
本质上有什么区别呢?GDI与DirectX的基础都各是什么?
Alynx的主页 Alynx | 初学一级 | 园豆:165
提问于:2008-08-17 16:01
< >
分享
所有回答(3)
0
GDI仅实现了画图功能, 没有DirectX画起来流畅 DirectX是有多层缓冲的,支持3D DirectX还支持多咱输入,比如手柄,网络连接及播放声音
重典 | 园豆:2442 (老鸟四级) | 2008-08-17 16:08
0
GDI功能太简了,主要用于二维 directx用于三维,用来开发游戏
lizhengjin | 园豆:205 (菜鸟二级) | 2008-08-17 16:19
0

我说说我的理解,欢迎指正,O(∩_∩)O谢谢~~

 

GDI 属于硬件和系统之间的抽象层,既保护了存储系统也方便了开发者,防止程序员直接操作显存引致错误(比如蓝屏),在DOS时代,程序员是可以直接操纵内存、显存等一系列硬件。。。GDI带来的问题就是效率!程序员间接调用gdi32.dll中的接口进行窗口的绘制,数据从显存到内存这之间的一系列数据交换带来的是效率的下降。。。

 

directx 是微软开发的,多媒体编程套件,他既做到了GDI的设备无关性也在效率上超过了OpenGL,还提供了更多的功能。用来对抗OpenGL以及拉拢游戏开发商,并推广自己的xbox产品 。。。至于他为什么比opengl做的更好,我也没有深入了解,但是可以肯定的是,他的绘图效率绝对比GDI高多了,我想大概的原因,就是微软做了折中处理,既是直接操作显存,同时还提供程序员抽象的编程模型。

 

一点愚见!

LuckyLuke | 园豆:205 (菜鸟二级) | 2012-03-16 11:16
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册