游戏开发论坛

 找回密码
 立即注册
搜索
查看: 2539|回复: 8

请问怎样实现 不同device之间的纹理拷贝?

[复制链接]

25

主题

73

帖子

73

积分

注册会员

Rank: 2

积分
73
发表于 2008-1-2 19:34:00 | 显示全部楼层 |阅读模式
如题,有没有办法实现两个不同device的纹理surface之间的拷贝,我尝试过lock两个表面,但是lock操作失败,还请高手指点一下 [em15]

25

主题

73

帖子

73

积分

注册会员

Rank: 2

积分
73
 楼主| 发表于 2008-1-3 23:31:00 | 显示全部楼层

Re:请问怎样实现 不同device之间的纹理拷贝?

真是痛苦啊,咋就没人理呢?........
救命则个

25

主题

73

帖子

73

积分

注册会员

Rank: 2

积分
73
 楼主| 发表于 2008-1-4 19:57:00 | 显示全部楼层

Re:请问怎样实现 不同device之间的纹理拷贝?

我用D3DXLoadSurfaceFromSurface实现了,但是为什么如此之慢,cpu几乎耗尽了  难道与两个设备之间拷贝有关?

35

主题

1735

帖子

1739

积分

金牌会员

Rank: 6Rank: 6

积分
1739
QQ
发表于 2008-1-4 22:32:00 | 显示全部楼层

Re:请问怎样实现 不同device之间的纹理拷贝?

我是没有遇到过此类情况,不知LZ在什么情况下使用这种功能?

25

主题

73

帖子

73

积分

注册会员

Rank: 2

积分
73
 楼主| 发表于 2008-1-5 19:27:00 | 显示全部楼层

Re:请问怎样实现 不同device之间的纹理拷贝?

我是在做一些游戏中播放视频的实验,用vmr9,不得以使用两个device,但是两个device之间的纹理拷贝,就是使用D3DXLoadSurfaceFromSurface这个函数,慢的出奇,

35

主题

1735

帖子

1739

积分

金牌会员

Rank: 6Rank: 6

积分
1739
QQ
发表于 2008-1-5 20:15:00 | 显示全部楼层

Re:请问怎样实现 不同device之间的纹理拷贝?

哦,是在一个游戏里播放视频嘛?那也不需要两个device,在游戏中使用DirectShow就可以播放视频。

25

主题

73

帖子

73

积分

注册会员

Rank: 2

积分
73
 楼主| 发表于 2008-1-6 00:21:00 | 显示全部楼层

Re:请问怎样实现 不同device之间的纹理拷贝?

用一个device可以么?我是参考dxsdk 的sample里的那个vmrallocator做的,如果使用同一个device的话,dshow会改变d3d的rendertarget导致游戏的原本的rendertarget被改变了,画面会一直闪烁,所以我只能选择用两个device
是不是我的方法不对?还有没有别的方法,还请楼上指教一下,不胜感激阿

35

主题

1735

帖子

1739

积分

金牌会员

Rank: 6Rank: 6

积分
1739
QQ
发表于 2008-1-6 09:45:00 | 显示全部楼层

Re:请问怎样实现 不同device之间的纹理拷贝?

我想知道你具体要怎么个播放视频法,通过你刚才所述,你是打算在整个游戏窗口中播放视频吗?也就是说如果游戏窗口是全屏的话,你是否也是全屏播放视频?还是你只想在游戏窗口中的某个区域或在某个物体表面上播放视频?

25

主题

73

帖子

73

积分

注册会员

Rank: 2

积分
73
 楼主| 发表于 2008-1-7 10:37:00 | 显示全部楼层

Re:请问怎样实现 不同device之间的纹理拷贝?

只是在某个物体的表面播放,你可以看看vmrallocator这个例子,差不多,但是我要改变一下逻辑,要在游戏的主逻辑里面进行draw操作
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2026-1-23 22:40

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表