游戏开发论坛

 找回密码
 立即注册
搜索
12
返回列表 发新帖
楼主: 冰河魔法师

[问题]请问大家是如何解决内存占用过大的问题的?

[复制链接]

21

主题

126

帖子

144

积分

注册会员

Rank: 2

积分
144
QQ
 楼主| 发表于 2005-8-20 11:20:00 | 显示全部楼层

Re:[问题]请问大家是如何解决内存占用过大的问题的?

谢谢secondage,问题好像是出在这里,不过我如果全部用Default会出现“outofmemory”的错误,而用systemmem,则会有贴图不能正常显示,不过这两种方式占内存都很正常了,

所以我还想问一下Pool究竟是干什么用的,还有lost-reset device如何理解

132

主题

1341

帖子

1341

积分

金牌会员

Rank: 6Rank: 6

积分
1341
发表于 2005-8-20 15:12:00 | 显示全部楼层

Re:[问题]请问大家是如何解决内存占用过大的问题的?

pool是储存的池,DirectX Sdk的帮助文件十分详细
lost-reset device应该是设备掉失后的恢复

85

主题

824

帖子

878

积分

高级会员

Rank: 4

积分
878
QQ
发表于 2005-8-20 16:08:00 | 显示全部楼层

Re:[问题]请问大家是如何解决内存占用过大的问题的?

一般不要使用systemmem,
使用Default或MANAGED时,
纹理存储在VRAM,
GPU/VPU 可以直接对其进行处理.
如果使用systemmem,
GPU/VPU 要处理它就必须经过CPU, 系统内存, 芯片组等等.
另外,
在使用MANAGED时,
纹理先是往VRAM上放,
如果放不下就会往APG和系统内存上放,
而这样做的结果就是在系统内存上创建了两次同样的纹理,
从楼主使用Default会出现“outofmemory”的错误来看,
应该是楼主的显存过小所致,
从而在使用MANAGED时在系统内存创建了两次纹理导致系统内存占用巨大

50

主题

992

帖子

1012

积分

金牌会员

Rank: 6Rank: 6

积分
1012
发表于 2005-8-20 16:30:00 | 显示全部楼层

Re:[问题]请问大家是如何解决内存占用过大的问题的?

活活,别小看12M的JPG,一张512X512的”还原“后也要占用1M的空间,如果一次要载入很多图片,而且你的显存又不足的话,帧数一定是低得不行。如果用DEFAULT的话,最好还是自己写资源管理,以保证总是有足够的空间(显存内或AGP缓冲内)来存放你的帖图

21

主题

126

帖子

144

积分

注册会员

Rank: 2

积分
144
QQ
 楼主| 发表于 2005-8-21 15:56:00 | 显示全部楼层

Re:[问题]请问大家是如何解决内存占用过大的问题的?

首先感谢大家的热情解答,不过我还有几个问题,
首先澄清一下,我尚未用到jpg,(用到的部分是动态载入的,而且用完就从内存中去除了的)大部分为PNG,我的显存是64M放下十几M的PNG文件(转换成BMP最多三是M吧)还是没问题吧?

现在我将其中大部分文件用Default,部分Managed(全部的话,会出现outofmemory),桢数正常,但是我有个问题,如果换到一台显存略小的电脑上就会出现outofmemory吗?

36

主题

382

帖子

498

积分

中级会员

Rank: 3Rank: 3

积分
498
发表于 2005-8-21 20:20:00 | 显示全部楼层

Re:[问题]请问大家是如何解决内存占用过大的问题的?

嗯,根据你的情况看,会的。
不过还是觉得你的程序有问题。
否则不会展那么多内存。

15

主题

1268

帖子

1268

积分

金牌会员

Rank: 6Rank: 6

积分
1268
发表于 2005-8-22 09:03:00 | 显示全部楼层

Re:[问题]请问大家是如何解决内存占用过大的问题的?

呵呵,你可以用压缩格式呀,最小的DXT1才4位一个像素比起32位一个像素要小太多
显存你可以用到的绝对没有你显卡标称的,因为后台缓冲,深度缓冲都需要显存空间

21

主题

126

帖子

144

积分

注册会员

Rank: 2

积分
144
QQ
 楼主| 发表于 2005-8-22 16:35:00 | 显示全部楼层

Re:[问题]请问大家是如何解决内存占用过大的问题的?

dx默认读取到内存中都是bmp格式的吧?能变成其他格式的吗?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-12-27 13:36

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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