社区
游戏开发
帖子详情
DirectX已经抛弃了DDraw,那么如果使用D3D来进行2D游戏的开发呢?
HashCodeWithJava
2004-10-18 02:59:45
我已经做的游戏都是基于DirectDraw上的开发,现在MS已经说明不再对DDraw进行更新了,那么以后的2D游戏怎么做呢?D3D如何做2D游戏?能不能给我指明一个方向?
谢谢指教!!!
...全文
1081
31
打赏
收藏
DirectX已经抛弃了DDraw,那么如果使用D3D来进行2D游戏的开发呢?
我已经做的游戏都是基于DirectDraw上的开发,现在MS已经说明不再对DDraw进行更新了,那么以后的2D游戏怎么做呢?D3D如何做2D游戏?能不能给我指明一个方向? 谢谢指教!!!
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
31 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
myling
2004-10-28
打赏
举报
回复
听听看看
stonepeter
2004-10-28
打赏
举报
回复
Managed DirectX® 9 Kick Start: Graphics and Game Programming
这本书要从这个地址下载了
http://www.glartgallery.com/MDXKickStart.rar
社会栋梁
2004-10-27
打赏
举报
回复
接受新事物
只要快,表现能力加强,容易学习(其实都差不多),什么不都一样吗?如果哪天MS的东西落后了,不也得放弃吗?
bigbook2000
2004-10-26
打赏
举报
回复
晕死了
ddraw是什么?只是个设备接口,这个接口只是初始化一下就好了,而我们在游戏中最重要的操作是Surface。
d3d也有Surface接口,而且是基本接口,在d3d下面做2D游戏再简单不过了,初始化的时候把创建ddraw改为创建d3d,然后生成Surface,其他的都一样了(原理差不多,都是从一个Surface拷贝到另一个Surface上)。而且支持显卡硬操作。
怎么这么多人对ddraw念念不忘阿
贝笨33
2004-10-26
打赏
举报
回复
学习中。。。
stonepeter
2004-10-26
打赏
举报
回复
MDX Kick Start电子书下载(经典)
http://www.fixdown.net/soft/14203.asp?soft=scdown
stonepeter
2004-10-25
打赏
举报
回复
Managed DirectX9 Kick Start: Graphics and Game Programming中的PartV:2D Graphics这一部分认D真地讨论了两种在DX9下使用2D图形的两种方法
1、使用Sprite等
2、使用DirectDraw
寻开心
2004-10-25
打赏
举报
回复
呵呵。
说白了就是两个事情
1 喜欢用DirectDraw的就继续用DirectDraw7,dx9等新版本向前兼容老版本
但是,你不能在试用dw7的同时D3D9这样的东西,否则会冲突
你试用dw7的同时用3d就和d3d7来配合
因为在dx8以后dw和d3d集成在一起叫做DirectGraphics了,试用DW7的同时使用它就会产生冲突
2 使用3d的来表现2d的,方法有,也不复杂,但是要换一种脑袋来想解决问题的方法
HashCodeWithJava
2004-10-23
打赏
举报
回复
老大,我是这个网站的专栏作家...
(脸红了)
gddsky
2004-10-22
打赏
举报
回复
http://www.gddsky.com/File/GESurface/GESurface.htm
几年前做的一个比较古老的东西,献丑了。
寻开心
2004-10-22
打赏
举报
回复
http://www.gameres.com/Articles/Program/Visual/2D/2Drender.htm
没事就多上这个网站上去看看吧
这些最基本的东西早就有答案的了
fycom200
2004-10-21
打赏
举报
回复
收藏
lly20000
2004-10-21
打赏
举报
回复
基本上可以通过D3DSprite来实现过去的精灵动画 里面也有blit 其实在D3D中实现2d有很多方法 比如精灵动画就可以用D3Dsprite 或者billboard来做 方法很多 就看你怎么用了
李海辰
2004-10-21
打赏
举报
回复
其实就是 D3D 啦,使用 RHW 顶点或者用正交投影矩阵,文章嘛~~我认为最好的还是 DirectX SDK
HashCodeWithJava
2004-10-21
打赏
举报
回复
大家能告诉我一个讲解了D3D实现2D的资料文章吗?
HashCodeWithJava
2004-10-20
打赏
举报
回复
谢谢各位大哥的指点,我明白了.
mgphuang
2004-10-20
打赏
举报
回复
把3D的Z轴都看成0,不就是2D了吗?关键是3D提供了更多的硬件加速.比较缩放啊,旋转啊,alpha等以前在DDraw里只能使用软件加速的功能,在D3D里可以使用硬件加速来完成.不过对终端用户的要求会高一些.
李海辰
2004-10-20
打赏
举报
回复
啊,忘了告诉你。用 IDirect3DTexture 的 LockRect 方法就可以了。还有别忘了将纹理用 D3DUSAGE_DYNAMIC 创建,锁定的时候某些情况可用 DISCARD 标志。如果是鼠标指针之类的小动画,用动态改变 UV 就可以实现动画了。
李海辰
2004-10-20
打赏
举报
回复
楼主啊~~用 D3D RHW 顶点不就好了吗?不过我推荐你还是使用正交投影矩阵,因为这样可以很好地解决不同分辨率下图片尺寸不同的问题。况且这些计算是硬件搞的,而现在显卡的瓶颈都在纹理填充率上,所以你计算这些东东根本达不到瓶颈,一点都不浪费,反正它闲着也是闲着。
还有,使用 D3D 时将使用显卡的 3D 渲染管道,其速度比用 DDraw 要快很多,一般用 DDraw 顶多达到 60-80 FPS,而你用 D3D 渲染 2D 很轻松就能达到上千 FPS,这个你可以下载炎龙工作室的 Demo 证实。而且,你用 3D 硬件实现的 Alpha Blend,绝对比你 DDraw 计算得快,除此之外,众多的 3D 特效也是 DDraw 无法实现的。
你觉得选哪个更好呢? ^_^
zengcity
2004-10-19
打赏
举报
回复
顶~
加载更多回复(11)
C++ 封装 d
draw
渲染视频图像
Direct
Draw
是微软
DirectX
的一部分,它提供了一种高效的方式来
进行
2D
图形加速,包括视频图像的显示。在早期的Windows系统中,d
draw
是视频播放和图形渲染的重要工具。尽管现在Direct
3D
和更现代的API如OpenGL被广泛应用...
DirectX
7.0a .h .lib
然而,需要注意的是,
DirectX
7.0a
已经
非常过时,现代的
游戏
和应用普遍
使用
更新版本的
DirectX
(通常至少是
DirectX
9.0c),甚至转向了更现代的图形API,如Microsoft的
DirectX
12或跨平台的Vulkan。
使用
DirectX
7.0...
封装主要的
DirectX
和 Direct
3D
DLL 它允许您拦截对
DirectX
和 Direct
3D
接口函数的调用,以便您可以记录 API 调用,或者您可以将自己的代码添加到
游戏
中.zip
包装以下版本的
DirectX
DirectX
1-7、Direct
Draw
和 Direct
3D
(d
draw
.dll)
DirectX
8、Direct
3D
(d
3d
8.dll)
DirectX
9,Direct
3D
(d
3d
9.dll)DirectSound 和 DirectSound8 (dsound.dll)DirectInput(dinput.dll)...
ms
directx
7 头文件库文件
DirectX
7是微软
开发
的一套用于Windows操作系统上的多媒体编程接口,它极大地丰富了
游戏
和图形应用程序的功能。这个压缩包包含了
DirectX
7的头文件(include)和库文件(lib),是
开发
者创建利用
DirectX
技术的应用...
游戏
进程注入和DX后台原理剖析
D
3D
(Direct
3D
) 技术 - **目标**: 捕获
3D
图形数据。 - **关键函数**: `Present`。 - **应用场景**: - 后台抓图。 - 写屏。 - 降低CPU占用率。 #### 五、注意事项与限制 - **法律风险**: 修改
游戏
内存可能违反...
游戏开发
8,325
社区成员
23,684
社区内容
发帖
与我相关
我的任务
游戏开发
游戏开发相关内容讨论专区
复制链接
扫一扫
分享
社区描述
游戏开发相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章