设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 2690|回复: 7
打印 上一主题 下一主题

远景图内存不释放的问题…

 关闭 [复制链接]

Lv2.观梦者

梦石
0
星屑
676
在线时间
224 小时
注册时间
2006-12-7
帖子
839
跳转到指定楼层
1
发表于 2007-4-5 03:41:52 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
用的双远景图脚本
玩时间长了就会卡

用任务管理器查看内存发现
每次切换新地图的时候内存占用都会明显提高
似乎没有被释放掉?
我看脚本里面用的高速缓存,上次用的CP条也出现过相关问题
不知道是不是高速缓存没有把以前的远景图释放掉,导致内存占用逐渐增大的?
@panorama.bitmap = RPG::Cache.panorama(@panorama_name, @panorama_hue)

试了下貌似不动脚本 原来的单远景图也有类似问题
不过只用了几张地图试了一下,有观察到内存上升但是不下降,不过地图不多,最大也没有过100M 不知道是不是真的是这个问题

Lv2.观梦者

梦石
0
星屑
676
在线时间
224 小时
注册时间
2006-12-7
帖子
839
2
 楼主| 发表于 2007-4-5 03:41:52 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
用的双远景图脚本
玩时间长了就会卡

用任务管理器查看内存发现
每次切换新地图的时候内存占用都会明显提高
似乎没有被释放掉?
我看脚本里面用的高速缓存,上次用的CP条也出现过相关问题
不知道是不是高速缓存没有把以前的远景图释放掉,导致内存占用逐渐增大的?
@panorama.bitmap = RPG::Cache.panorama(@panorama_name, @panorama_hue)

试了下貌似不动脚本 原来的单远景图也有类似问题
不过只用了几张地图试了一下,有观察到内存上升但是不下降,不过地图不多,最大也没有过100M 不知道是不是真的是这个问题

Lv1.梦旅人

蝦米

梦石
0
星屑
100
在线时间
280 小时
注册时间
2006-7-5
帖子
587
3
发表于 2007-4-5 04:29:20 | 只看该作者
RM对内存的管理本来就不怎么好……
我一般来说玩0.5H~1H就要重新进入一次的
虾米的小站:
http://www.jhdxr.com
回复 支持 反对

使用道具 举报

Lv1.梦旅人

月下可怜人

梦石
0
星屑
50
在线时间
10 小时
注册时间
2005-11-23
帖子
4085

第1届短篇游戏比赛亚军

4
发表于 2007-4-5 05:47:09 | 只看该作者
高速缓存就是载入一次后不释放存储起来,以后重复调用同名资源时,直接调用引用,而不需要重新载入,依次提高速度.
纵然千里外,我等雁归来。
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
676
在线时间
224 小时
注册时间
2006-12-7
帖子
839
5
 楼主| 发表于 2007-4-5 07:53:55 | 只看该作者
所以在256的条子的机子上显得格外的卡
多的时候能到200M
而且我那个CP条系统(挨打减CP的)使得战斗也比较卡
一个华丽的全体攻击动画能一下子爆40多M的内存占用{/gg}
要是内存不够貌似会卡死陷入死循环…
回复 支持 反对

使用道具 举报

Lv1.梦旅人

Dancer-

梦石
0
星屑
55
在线时间
76 小时
注册时间
2006-11-9
帖子
3551

开拓者贵宾

6
发表于 2007-4-6 20:57:47 | 只看该作者
移动到技术区
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

苹果梨

梦石
0
星屑
43
在线时间
6 小时
注册时间
2007-2-14
帖子
720
7
发表于 2007-4-8 00:42:04 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
676
在线时间
224 小时
注册时间
2006-12-7
帖子
839
8
 楼主| 发表于 2007-4-8 01:24:13 | 只看该作者
把那个击退CP条的改了一下
r是在数据库里面设置的击退CP的数量

  1.          if r > 0
  2.           for i in 1..8
  3.             Graphics.update
  4.             Input.update
  5.             update
  6.             target.cp -= 62*r
  7.             @battler_cp.ttbar[target].x = [514*target.cp/ 65535 + 45,45].max
  8.           end
  9.           end
复制代码


原来的是

  1.          if r > 0
  2.           for i in 1..r
  3.             Graphics.update
  4.             Input.update
  5.             update
  6.             target.cp -= 500
  7.             @battler_cp.ttbar[target].x = [514*target.cp/ 65535 + 45,45].max
  8.           end
  9.           end
复制代码


          for i in 1..r
这个里面似乎r大到一定程度就会死循环,就是攻击动画循环播放无法继续下一步…
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2025-5-21 23:56

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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