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

Project1

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

[已经解决] 请教这个弹窗故障可能发生的原因

[复制链接]

Lv1.梦旅人

梦石
0
星屑
164
在线时间
415 小时
注册时间
2020-1-11
帖子
256
跳转到指定楼层
1
发表于 2022-4-26 20:00:05 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

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

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

x
本帖最后由 alianlord 于 2022-4-26 20:01 编辑

请教这个弹窗故障可能发生的原因。空位图建立不了,怎么可能呢?

2022-04-26_195649.png (2.6 KB, 下载次数: 64)

2022-04-26_195649.png

2022-04-26_200051.png (2.56 KB, 下载次数: 69)

2022-04-26_200051.png

Lv5.捕梦者

梦石
10
星屑
39592
在线时间
1920 小时
注册时间
2010-11-14
帖子
3320

R考场第七期纪念奖

2
发表于 2022-4-26 21:00:02 | 只看该作者
把100行对应的方法改成这个然后看下输出、截图?
这段代码可以计算到100行这段出错为止总共运行了多少次生成新位图的方法。

def self.empty_bitmap
  @n=(@n||0)+1
  Bitmap.new(32, 32)
rescue
  msgbox @n
  raise
end
用头画头像,用脚写脚本
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
164
在线时间
415 小时
注册时间
2020-1-11
帖子
256
3
 楼主| 发表于 2022-4-26 21:50:52 | 只看该作者
KB.Driver 发表于 2022-4-26 21:00
把100行对应的方法改成这个然后看下输出、截图?
这段代码可以计算到100行这段出错为止总共运行了多少次生 ...

马上试验
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
164
在线时间
415 小时
注册时间
2020-1-11
帖子
256
4
 楼主| 发表于 2022-4-26 22:05:38 | 只看该作者
KB.Driver 发表于 2022-4-26 21:00
把100行对应的方法改成这个然后看下输出、截图?
这段代码可以计算到100行这段出错为止总共运行了多少次生 ...

试验结果如下。

2022-04-26_220054.png (4.31 KB, 下载次数: 63)

2022-04-26_220054.png

2022-04-26_220305.png (5.16 KB, 下载次数: 60)

2022-04-26_220305.png
回复 支持 反对

使用道具 举报

Lv5.捕梦者

梦石
10
星屑
39592
在线时间
1920 小时
注册时间
2010-11-14
帖子
3320

R考场第七期纪念奖

5
发表于 2022-4-26 22:23:05 | 只看该作者

那看来这个错误捕获不到,要开控制台才行。



控制台在这里开,然后从工程里测试游戏。
测试之前把刚才的地方复原一下,找个空白位置粘贴这个脚本

总的来说,大的位图用的太多是会这样的。
测试事件:


炸了:

点评

总的来说,创建不了位图无非几种情况。1、位图的宽或高至少一个为0。2、位图尺寸太大。3、RM可用的内存不足(使用中的位图太多)  发表于 2022-4-26 22:24

评分

参与人数 1星屑 +150 +1 收起 理由
alexncf125 + 150 + 1 非常有帮助,谢谢。

查看全部评分

用头画头像,用脚写脚本
回复 支持 1 反对 0

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
164
在线时间
415 小时
注册时间
2020-1-11
帖子
256
6
 楼主| 发表于 2022-4-26 23:00:07 | 只看该作者
KB.Driver 发表于 2022-4-26 22:23
那看来这个错误捕获不到,要开控制台才行。

非常有帮助,谢谢。
回复 支持 反对

使用道具 举报

Lv5.捕梦者

梦石
10
星屑
39592
在线时间
1920 小时
注册时间
2010-11-14
帖子
3320

R考场第七期纪念奖

7
发表于 2022-4-26 23:59:10 | 只看该作者
alianlord 发表于 2022-4-26 23:00
非常有帮助,谢谢。

不好意思,最重要的脚本我忘记贴了。

class Bitmap
  
  @@count = 0
  
  alias initialize_no_count initialize
  def initialize(*a)
    @@count += 1
    puts "位图数量:#{@@count}"
    initialize_no_count(*a)
  end
  
  alias dispose_no_count dispose
  def dispose
    @@count -= 1
    puts "位图数量:#{@@count}"
    dispose_no_count
  end
  
end
用头画头像,用脚写脚本
回复 支持 1 反对 0

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
164
在线时间
415 小时
注册时间
2020-1-11
帖子
256
8
 楼主| 发表于 2022-4-27 08:31:14 | 只看该作者
KB.Driver 发表于 2022-4-26 23:59
不好意思,最重要的脚本我忘记贴了。

class Bitmap

就如所言,我的工程问题就是使用了动画脚本,累积到了一定数目,就无法生成新的空位图而弹窗了。

就没办法解决空位图过多的现像吗?

谢谢
回复 支持 反对

使用道具 举报

Lv5.捕梦者

梦石
10
星屑
39592
在线时间
1920 小时
注册时间
2010-11-14
帖子
3320

R考场第七期纪念奖

9
发表于 2022-4-27 21:38:07 | 只看该作者
alianlord 发表于 2022-4-27 08:31
就如所言,我的工程问题就是使用了动画脚本,累积到了一定数目,就无法生成新的空位图而弹窗了。

就没办 ...

要看看动画脚本的写法了。
可能是有意或无意没有释放位图。
有意不释放是为了保证画面流畅,但是数量多了就会炸。
无意的那就单纯是脚本作者没写释放,可能是能力不足也可能是忘记了之类。
用头画头像,用脚写脚本
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-27 20:58

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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