Project1

标题: 关于bitmap释放的代码问题及验证方法和位图不透明度的设置 [打印本页]

作者: 负零    时间: 2015-3-31 16:01
标题: 关于bitmap释放的代码问题及验证方法和位图不透明度的设置
RUBY 代码复制
  1. def backg
  2.     actor=@actor
  3.     actor_bg(actor.name)
  4.    end
  5.  
  6. def actor_bg(file_name)
  7.     bitmap = Cache.picture("Statesbg/#{file_name}")
  8.      src_rect = Rect.new(0,0,bitmap.width ,bitmap.height)
  9.       contents.blt(0, 0, bitmap, src_rect)
  10.      [color=Red] bitmap.dispose[/color]
  11.      end

1、如上,菜单中的“状态”栏下,当我切换角色(使用Q/W键)红字部分的语句是否已经使位图释放?如何验证?(以上使用效果正常)

2、不透明度方法bitmap.opacity=40无法生效的问题求指导,报错——没有opacity的属性,如此应该怎么控制bitmap的不透明度?
作者: zeldafd    时间: 2015-3-31 16:12
如何驗證?就是用bitmap.disposed?啊
是要返回TRUE就是已DISPOSE

而BITMAP本來沒得控制ALPHA值, 要用SPRITE來控制他才能做到
作者: taroxd    时间: 2015-3-31 17:11
本帖最后由 taroxd 于 2015-3-31 19:52 编辑

1. 无需验证。局部变量的特性已经保证了所有这个方法产生的临时位图都会释放。
另外,要释放的临时位图不建议从 Cache 中取,建议直接 Bitmap.new
2. set_pixel
作者: zeldafd    时间: 2015-4-1 14:09

怎有可能沒有disposed?方法
你到底那時候實體還在不在





欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1