Project1

标题: 关于精灵缩放 [打印本页]

作者: 余音·魔眼    时间: 2019-2-4 14:44
标题: 关于精灵缩放
本帖最后由 余音·魔眼 于 2019-2-4 14:52 编辑

我发现当精灵的ox,oy为精灵位图的宽度或高度时,也就是以右上角,右下角,左下角(只要不是左上角)为原点时,执行缩放都会有1像素的偏移,不知道是什么问题,求大佬指点!
这是以右下角为原点执行的缩放:

这是以左上角为原点执行的缩放:

附上代码:
RUBY 代码复制
  1. s = Sprite.new
  2. s.bitmap = Bitmap.new(200, 200)
  3. s.bitmap.fill_rect(s.bitmap.rect, Color.new(255,255,255))
  4. s.zoom_x = s.zoom_y = 0
  5. s.x, s.y = 250, 250
  6. s.ox, s.oy = s.bitmap.width, s.bitmap.height
  7. loop do
  8.   s.zoom_x += 0.01 if s.zoom_x < 1
  9.   s.zoom_y += 0.01 if s.zoom_y < 1
  10.   s.zoom_x = 1 if s.zoom_x > 1
  11.   s.zoom_y = 1 if s.zoom_y > 1
  12.   Graphics.update
  13. end





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