马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
本帖最后由 烈林凤 于 2026-7-24 19:40 编辑
已有更好的方法,请移步“如何在打开界面时实时模糊背景”的解决办法 - 经验教程 - RenPy中文空间
此篇仅作为留档
起因是有人问我怎么实现打开界面时显示模糊后的对话界面,作为新界面的背景使用,实际上原理很简单,只要三步:
1-打开界面时截屏
2-显示截屏
3-模糊截屏
这些是代码:
[RenPy] 纯文本查看 复制代码 init python:
def screenshot():
renpy.screenshot(config.gamedir + '/images/history_screenshot.png')
screen game_menu(title, scroll=None, yinitial=0.0, spacing=0):
style_prefix "game_menu"
on "show" action Function(screenshot)
add 'history_screenshot':
xysize (1920,1080)
xycenter (0.5,0.5)
blur 10
# if main_menu:
# add gui.main_menu_background
# else:
# add gui.game_menu_background
实现方法十分甚至有九分的简单,当然也有局限性:
1-会受到打开界面前一刻对话界面变换和转场的影响,导致可能出现错误的截屏
2-会受到config.pre_screenshot_actions的影响,可能出现部分界面或图层需要被截屏但被隐藏的情况(只要修改这个配置变量即可解决),文档:配置项变量 — Ren'Py 中文文档
3-会占用images文件夹内的位置(这家伙在说些什么呢),可能会因一些未知原因导致截屏失败导致报错,需要做一下文件检测(不过我很懒,就没放上去了)
总而言之,这应该是最简单的实现方法了,还是很推荐大家使用的(想当初急头白脸求koji用shaber实现的模糊效果,原来这么简单)))
最后是效果图↓
|