隐藏置顶帖
置顶
精华
“Ren'Py引擎从入门到放弃”系列教程
“Ren'Py引擎从入门到放弃”系列教程
—— 作者:@被诅咒的章鱼
原文章在逼乎网址:https://www.zhihu.com/people/bei-zu-zhou-de-zhang-yu/posts
[*]Ren'Py引擎从入门到放弃(1) —— 只要下载成功就是胜利
[*]Ren'Py引擎从入门到放弃(2) —— 成功创建第一个工程
[*]Ren'Py引擎从入门到放弃(支线1) —— 自定义开场画 ...
隐藏置顶帖
置顶
精华推荐
Ren'Py入门教程《雪凡与好朋友们的 Ren'Py游戏引擎初学心得...
2019.02.08更新:
由于原帖地址无法访问,出现:Database Error: Unable to connect to the database:Could not connect to MySQL
所以本站也进行原帖原样转载。
对于英文文档链接,采用【新注:中文文档参考这里:https://doc.renpy.cn/zh-CN/editor.html】追加方式。
而里面示例的脚本代码,使用 论坛支持的Ren'Py语法高 ...
对于简单粒子效果代码的更新
New
Ren'Py引擎从入门到放弃(支线3)——简单粒子效果
https://www.renpy.cn/forum.php?mod=viewthread&tid=296
(出处: RenPy中文空间)
原帖是这个. 但是年代有些久远, 并不能拿来直接用. 研究了一下, 现在的代码可以直接拿来用了.
比较重要的更新点有三个.
1. 在screen 里面使用, 而不是在label里面使用.
2. 遍历字典的方式 ...
“drag如何在中心缩放/旋转”的解决办法
起因是我想给画廊的图片加一个拖拽缩放功能,但是发现缩放中心总是在左上角,于是我翻看了文档、论坛和交流群的聊天记录,结果发现这个问题从24年就有人问过了,但没有看到任何解决方法
在大费周章的各种尝试之后,科基提醒我可以尝试fixed,于是直接就解决了……
简单来说就是在drag外套一个fixed,然后在fixed里添加变 ...
NetImage:加载网络图片
🖼️ Ren'Py 网络图片加载模块 - NetImage
📌 简介
在 Ren'Py 游戏中直接加载网络图片,无需手动下载
NetImage 是一个轻量级的 Ren'Py 自定义可视组件,支持:
- ✅ 多线程加载网络图片,不阻塞游戏
- ✅ 自动缓存,避免重复下载
- ✅ 加载失败时显示默认封面
- ✅ 跨平台支持(Windows/Linux/macOS)
- ✅ 完整的日志输 ...
“如何在打开界面时实时模糊背景”的解决办法
就在我发出上一篇帖子几小时后,突然得知了一个惊天消息!原来rp存在renpy.show_layer_at这样方便的函数!(归根结底,还是rp文档内容太多,没办法记住所有函数)))
文档:等效语句 — Ren'Py 中文文档
那么,这有什么用呢?
我们知道blur是一种变换特性,而renpy.show_layer_at可以直接将变换作用在图层上,那么我们就可 ...
物品及物品栏系统及使用教程
许久之前在论坛分享了物品栏的大概思路,但并不完善,且那个物品栏的用途为解谜游戏,而不是传统的“背包”系统。
因此在这分享自己写的框架以及使用教程。
首先,我们需要为物品写一个类:
可以注意到我添加了一些属性,它们用于在screen展示对应的信息
这里以图中的测试物品为例:
你可以这样定义一个“测试物品1”: ...
新人帖
开源 DSH Ren'Py 开发工作台(dsh-renpy-dev)发布
项目地址:https://github.com/Matsuka/dsh-renpy-dev
### 1.1 这是什么
**dsh-renpy-dev** 是一套装在 DeepSeek Harness(DSH)里的 **Ren'Py 游戏开发工作台**:把一个普通的 AI 编程对话界面,扩展成带完整开发工具链的浏览器面板,让"看代码 → 改代码 → 验证 → 运行"的整个 Ren'Py 开发循环在浏览器内闭环完成,A ...
关于“描边文字逐字显示异常”的解决方案
如图所示,当文字被添加描边后,换行显示时会出现“异常区域”
这个问题困扰了我很久,为了观感甚至一度放弃使用outlines,但今天终于找到了一个较完美的解决方法
只需要给text添加上line_overlap_split即可
文档链接:https://doc.renpy.cn/zh-CN/style ... -line_overlap_split
下图添加后的效果,“头盖骨”位置的 ...
【演出组件】影像图片(时间切片问题、帧动画音声问题)
26.8.29 更新
基于后文需求,新写了一个更为舒适封装内聚的组件
功能
1.能够手动重启的动画
2.同时提供了播放音声资源的功能,这个功能是基于“能够在image的序列帧动画里对应播放声音,而不用外部匹配计算”的想法。
最开始的讨论点,仅记录,下文算是思路分享,新的组件已经更内聚,适用性更好了
正题:
为什么我 ...
Ren'Py 8.5的粒子不显示bug及规避方案
使用 SpriteManager 创建粒子管理类之后,如果在界面中通过“add”语句显示,可能会不渲染任何东西。
官方的 Issue#6767 有详细信息。目前已知 8.5 的各个版本都存在类似问题。官方文档的样例使用 show expression 直接在 label 中显示正常,原因时实际渲染路径不同。
规避方法为,定义 SpriteManager 对象后,立刻将其 ...
简单实用的自定义命名存档功能和修改存档名功能
本应该是很常见的功能,但在renpy里好像并没有看到,实际上修改起来也十分简单。
首先要自定义存档命名肯定需要有个输入框,这里先建个存档专用的输入框界面,UI布局可自行修改。
然后只需修改原本存读档界面里调用的file_slots界面里的网格布局里的存档按钮button。
原本是长这样子:
直接替换成这样: ...
renpy图片与原图出现色差的原因之一及解决
解释:有的时候, 我们把非常nice的一张图片导入到renpy中以后会发现, 图片的颜色发灰, 似乎饱和度很低.
这有可能时因为, 图片使用了非srgb的色彩管理, 也就是ICC色彩配置文件.
例如比较常用的display p3, Adobe RGB, ProPhoto RGB. 这些ICC都有着比srgb更广的色域.
但很可惜, renpy以及一些Windows的图片浏览工具无法正常 ...
【功能组件】安卓水平仪
在早期时写了一个视差组件,最近在更新优化
好友@blurred提供了一个应用在视差组件上的,安卓手机传感器草案(就是安卓没有鼠标,用陀螺仪来检测)
当时问题蛮多的,但是因为并不是主要功能就没有彻底完善,把一些问题当成了设备个例的问题
然后现在完善了一下,并记录一下思路的过程
1.模块化调用,解耦,内部直接角度转 ...
【演出组件】自适应尺寸文本
出于美术需求写的一个组件
功能是根据xysize或容器xysize的约束自适应文本字号。
典型情况:
·多语言的时候,中文只有几个字,外语却一大串。
·同一个区域,填充不同长度的文本时候,不希望影响布局。
使用方法和Text()组件完全一致,快捷语法则使用关键字autosize
...
[教程]音乐进度条显示,全长和已播放进度,附加播放/暂停.
下面代码的主要功能是把音乐的播放位置用进度条的形式显示出来。
使用AudioPositionValue来确定现在音乐播放的位置数值,参数是channel,缺省频道是music。
renpy.music.get_duration 函数可以获得设定channel播放音乐的总长度,单位是秒,类型是float。
renpy.music.get_pos 函数可以获得设定channel当前播放进度,单位是 ...
“如何在打开界面时模糊背景”的解决办法
已有更好的方法,请移步“如何在打开界面时实时模糊背景”的解决办法 - 经验教程 - RenPy中文空间
此篇仅作为留档
起因是有人问我怎么实现打开界面时显示模糊后的对话界面,作为新界面的背景使用,实际上原理很简单,只要三步:
1-打开界面时截屏
2-显示截屏
3-模糊截屏
这些是代码:
实现方法十分甚至有九分的简单,当 ...
精华
修改适配renpy的Shader代码经验分享
昨天和西粥老师探讨了很多关于如何将shader应用于图层的尝试时聊到制作更多适用于renpy的shader程序,于是这里分享一下关于将shader代码修改成适配于renpy引擎的心得
*抱歉其实俺不懂shader,也不怎么懂renpy,甚至不会python(……)以下心得是基于对比了很多shader源码和renpy版本之间的差异(以及昨晚AxelKong老师修改我 ...
支持链式if-elif-else的If行为
我这个标题好像起的很烂……主要是不知道该怎么说,也不知道之前有没有人做过这个东西如果有人做过的话那就最好了,我们可以用别人的了
好了废话不多说,我们来看看实际内容吧
---
我们知道renpy有一个名叫If的action,它的作用是根据入参表达式的值选择不同的action,但是这个东西有一个缺点,那就是相当于只支持if/else ...
Ren'Py 8.5的位图字体渲染存在bug
8.3版本可以正确使用和渲染位图字体(BMfont).
8.4版本更换位图字体相关接口,项目运行会报错。
8.5版本修复了报错问题,但位图字体渲染的颜色有误,看起来是没有正确获取颜色值导致的品红色。
更详细的内容可以查看 github 上Ren'Py仓库的 issue#7114 。
...