游戏开发论坛

 找回密码
 立即注册
搜索
查看: 4725|回复: 19

有个不太懂的问题!

[复制链接]

77

主题

203

帖子

279

积分

中级会员

Rank: 3Rank: 3

积分
279
发表于 2005-3-31 16:29:00 | 显示全部楼层 |阅读模式
如果离屏画面与后备缓冲区都在显存中,当用blt()函数把离屏画面数据输出到后备缓冲区时,会自动启用硬件加速,输出是很快的!但当离屏画面在系统内存中,而后备缓冲区在显存中,再用blt()函数把离屏画面数据输出到后备缓冲区,是不是blt()函数就无法用硬件加速了?

18

主题

573

帖子

573

积分

高级会员

Rank: 4

积分
573
发表于 2005-3-31 20:17:00 | 显示全部楼层

Re:有个不太懂的问题!

我想你说的是对的,需要CPU干预实施Blt操作。而在显存到显存就不会。请大家指正。

77

主题

203

帖子

279

积分

中级会员

Rank: 3Rank: 3

积分
279
 楼主| 发表于 2005-4-1 09:53:00 | 显示全部楼层

Re:有个不太懂的问题!

还有一个问题:
一个画面在显存中,定义一个指针指向它,然后根据这个指针把这个画面每一个点的数据进行运算。我认为我们的程序在运行时,是将这些数据直接送往CPU进行运算,而不是先把画面数据拷贝到内存,然后再送往CPU ,是吧?

59

主题

1104

帖子

1199

积分

金牌会员

Rank: 6Rank: 6

积分
1199
发表于 2005-4-1 09:56:00 | 显示全部楼层

Re:有个不太懂的问题!

是的,显存自古以来就是写显存快,读显存慢,所以尽量避免读显存的操作,这也是为什么要在系统内存中留一份后备缓冲,修改数据就直接在后备缓冲里面修改,修改完了直接写入显存。

77

主题

203

帖子

279

积分

中级会员

Rank: 3Rank: 3

积分
279
 楼主| 发表于 2005-4-1 10:22:00 | 显示全部楼层

Re: 有个不太懂的问题!

我以前听别人说CPU只能直接读内存,直到看到了教程上的例子!照这样说,CPU可以直接读显存了?

20

主题

398

帖子

398

积分

中级会员

Rank: 3Rank: 3

积分
398
发表于 2005-4-1 21:13:00 | 显示全部楼层

Re:有个不太懂的问题!

不知道tarkey兄是从哪里看到CPU能直接读显存的?是最新技术?我一直认为(也在某本书上看到过)CPU只能对内存进行读写,难道是在下孤陋寡闻?现在的CPU功能变强了?

如果说得不对,请tarkey兄别见怪!

30

主题

298

帖子

299

积分

中级会员

Rank: 3Rank: 3

积分
299
QQ
发表于 2005-4-1 21:29:00 | 显示全部楼层

Re:有个不太懂的问题!

记得只有显卡能通过AGP总线访问内存,CPU直接访问显存好像不行,因为处于不同的总线之中。

18

主题

573

帖子

573

积分

高级会员

Rank: 4

积分
573
发表于 2005-4-1 23:47:00 | 显示全部楼层

Re:有个不太懂的问题!

我也觉得奇怪,记得第一次学习ddraw时,需要先lock,修改数据,再unlock,觉得很麻烦。现在想起来,可能lock函数在幕后帮我们在作一些不为人知的动作。。。

77

主题

203

帖子

279

积分

中级会员

Rank: 3Rank: 3

积分
279
 楼主| 发表于 2005-4-2 10:02:00 | 显示全部楼层

Re:有个不太懂的问题!

如果cpu不能直接读显存,那么显存与内存之间,应该必须有一种硬件机制。当需要读取显存数据进行操作时,采用硬件加速功能将显存数据拷贝到内存中(必须用硬件加速,因为CPU不能读显存),然后由CPU读系统内存,我说的对不对,请大家指正!

77

主题

203

帖子

279

积分

中级会员

Rank: 3Rank: 3

积分
279
 楼主| 发表于 2005-4-3 16:07:00 | 显示全部楼层

Re: Re:有个不太懂的问题!

gg0001: Re:有个不太懂的问题!

如果cpu不能直接读显存,那么显存与内存之间,应该必须有一种硬件机制。当需要读取显存数据进行操作时,采用...

有懂得的么?请指点一下!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-12-25 04:41

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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