社区
图形处理/算法
帖子详情
请教个d3d9显示2d图像的效率问题
rageliu
2015-09-28 10:53:04
加精
为了兼容xp,选择的d3d9。
5路视频RGB32格式的内存数据的实时叠加显示。每路都是25fps。
不熟d3d9,查阅到2d图像的显示,第一种就是把图片以纹理方式加载,然后以此为纹理绘制一个四边形即可;第二种就是使用2D点精灵。想请教熟悉的朋友,哪种方式效率更高。多谢。或是有其他方式,麻烦告诉我下,拜谢。
...全文
925
9
打赏
收藏
请教个d3d9显示2d图像的效率问题
为了兼容xp,选择的d3d9。 5路视频RGB32格式的内存数据的实时叠加显示。每路都是25fps。 不熟d3d9,查阅到2d图像的显示,第一种就是把图片以纹理方式加载,然后以此为纹理绘制一个四边形即可;第二种就是使用2D点精灵。想请教熟悉的朋友,哪种方式效率更高。多谢。或是有其他方式,麻烦告诉我下,拜谢。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
qq_32446325
2015-10-31
打赏
举报
回复
看不到的 呀烦烦烦
draculamx
2015-10-28
打赏
举报
回复
dx9的话,使用dxsprite会比较慢,因为它本身就经过了一次封装,效率不高,最好还是用二楼说的,直接渲染即可。
洗洗睡去
2015-10-25
打赏
举报
回复
不兼容xp的话 推荐Direct2D 我在win10上测试了GDI GDI+ Direct2D 绘制1000w个点的连线,不抗锯齿的话D2D时间是GDI的一半,抗锯齿的话和GDI差不多 GDI+ 渣渣就不说了
Poopaye
2015-10-25
打赏
举报
回复
哪种方式最终都是4边形+贴图,所以效率上应该看开发成本
injuer
2015-10-08
打赏
举报
回复
四边形绘制已经可以满足了,两者效率在于图像融合,不在于整张
IRQ_CRASH
2015-09-30
打赏
举报
回复
有一种更原始的方法。surface,效率什么没测试过,这种使用方式类似于DirectDraw。 使用离屏表面,需要把d3dpp.SwapEffect设置为 D3DSWAPEFFECT_COPY后背缓冲数量设置为1。直接使用把 d3dpp的 flag设置D3DPRESENTFLAG_LOCKABLE_BACKBUFFER。LockRect之后直接向VRAM写像素,之后直接 present 就能显示了,单纯显示画面的话,整个步骤就是写根据pitch写VRAM然后present 两个步骤。
worldy
2015-09-28
打赏
举报
回复
把图片以纹理方式加载,然后以此为纹理绘制一个四边形 这个应该是比较合适的方案,灵活可扩展
rageliu
2015-09-28
打赏
举报
回复
哦,好的,感谢大侠
Windows游戏编程系列之6:D
3D
编程基础及游戏开发实战
具体的内容包括:D
3D
开发环境的搭建与配置、Windows窗口与消息、D
3D
编程基础、 D
3D
的顶点缓存与索引缓存、 D
3D
三维世界之四大变换、D
3D
三维世界之光照与材质、 D
3D
编程之纹理映射、D
3D
编程之Alpha混合技术、D
3D
编程...
D
3D
9---
2D
编程(画矩形)
#include #include #pragma comment(lib, "D
3D
9.lib") const TCHAR *kClassName = L"Rectangle_D
3D
"; IDirect
3D
9 *d
3d
9 = nullptr; IDirect
3D
Device9 *device9 = nullptr; IDirect
3D
VertexBuffer9 *vectex_buffe
[SheRO]用D
3D
绘制
2D
图像
我在GameRes发布SheRO后,收到了几封热心朋友的来信,都希望我坚持把SheRO做下去,还意外的发现有一个志同道合者theshine以前也做过模拟RO的客户端,不过中途太监了。。他给我提供了很多有用的资料和意见,再次表示感谢:) 不管坚持不坚持做下去,现在首要任务是开源,所以有了关于SheRO的第一篇开发资料《用D
3D
绘制
2D
图像
》。因为从图书馆借的资料快到期了,加之最近改正了一个
2D
渲染的性能
问题
,所以先从这个题目讲解了。 在D
3D
之前,绘制
2D
图像
都用的是DirectDraw的API,可是
d
3d
9中绘制
2d
元素时提高
效率
比如绘制一个rect,通常方法 vertexbuffer->lock(); fillRectVertex(); vertexbuffer->unlock(); setTexture(); drawprimitive(); 绘制多个
2d
元素时
效率
很低。其原因是lo
D
3D
9 简单图形的绘制以及
显示
程序截图所示: 要想完成这样的程序,首先咱们先得知道以下几点才能进行绘制并且
显示
: 一、了解什么是D
3D
9的绘制流水线: 1.局部坐标系: 主要用于在使用
3D
建模时,所使用的坐标系,无需考虑它相对于场景中其他物体的位置,大小。通常在创建模型时,建模人员都会将模型围绕原点进行建模,那样将有助于坐标变换,比如让模型旋转起来,在我们将坐标变换时将会进行描述。 ...
图形处理/算法
19,468
社区成员
50,698
社区内容
发帖
与我相关
我的任务
图形处理/算法
VC/MFC 图形处理/算法
复制链接
扫一扫
分享
社区描述
VC/MFC 图形处理/算法
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章