Graphics

该模块负责画面整体的处理。

模块方法

Graphics.update

更新游戏画面,推进一帧。该方法需要定期调用。

loop do
  Graphics.update
  Input.update
  do_something
end
Graphics.wait(duration)

等待指定的帧数,与下面的代码等效:

duration.times do
  Graphics.update
end
Graphics.fadeout(duration)

执行画面的淡出。

duration 是淡出花费的帧数。

Graphics.fadein(duration)

执行画面的淡入。

duration 是淡入花费的帧数。

Graphics.freeze

固定当前画面以准备渐变。

在调用 transition 方法之前,禁止一切画面的重绘。

Graphics.transition([duration[, filename[, vague]]])

执行由 Graphics.freeze 方法固定的画面到当前画面的渐变。

duration 是渐变花费的帧数,默认值为 10 。

filename 指定渐变图像的文件名(未指定时则执行普通的淡出)。RGSS-RTP加密档案中的文件都会被查找。 扩展名可以省略。

vague 是设置图像的起始点和终结点之间边界的模糊度,数值愈大则愈模糊。默认值为 40。

Graphics.snap_to_bitmap

以位图对象的形式获取当前的游戏画面。

即使以 freeze 方法固定图像,该方法也会获取当前本来应该显示的图像。

生成的位图不再需要时,必须立刻释放位图。

Graphics.frame_reset

重置画面的更新时间。在执行耗时的处理之后,调用此方法可以避免严重的跳帧。

Graphics.width
Graphics.height

获取画面的宽度和高度。

一般为 544、416。

Graphics.resize_screen(width, height)

修改画面的尺寸。

width、height 指定宽度和高度,范围为 640×480。

Graphics.play_movie(filename) (RGSS3)

从文件名为 filename 的文件中播放视频。

在播放结束后,才会返回。

模块属性

Graphics.frame_rate

每秒更新画面的次数。数值越大就需要越多的 CPU 资源。一般设置为 60。

不建议更改此数值,更改时指定范围 10~120 中的数值。超出范围的数值会自动修正。

Graphics.frame_count

画面更新次数的计数。游戏开始时将该属性设为 0,游戏时间(秒)就可以通过该属性除以 frame_rate 的值而算出。

Graphics.brightness

画面的亮度。取范围 0~255 中的数值。fadeout、fadein、transition 方法内部会根据需要修改此数值。