找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 16918|回复: 4

[已解决] 求助如何在界面语言中添加动态图片

[复制链接]
发表于 2019-1-20 22:51:16 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
在正常label下renpy可以利用ATL组成的transform代码块来实现动态图片,不过如果想在scene界面里如何添加呢?比如界面语言的add语句,看文档他支持为图片添加transform,不过不知道如何添加像ATL一样的一个transform代码实现图片循环移动。目前我可以通过定时器来控制变量来间接实现scene内的动态效果,仅仅是平移,不过很麻烦每次都,不知道有没有什么简单的方法推荐。
发表于 2019-1-21 16:31:18 | 显示全部楼层
本帖最后由 龙氏 于 2019-3-16 12:29 编辑

(2019.3.16)脚本略微调整,使显示效果更好些。

看脚本,附件下面。

[RenPy] 纯文本查看 复制代码
###### 定义:动态序列帧图 ####
image Sign:

    ## 这里也可以,比如 按比例缩放此显示对象。
    # zoom 2 ## 放大2倍。

    "images/Dynamic/1.png"
    pause 0.2 # 暂停0.2秒
    "images/Dynamic/2.png"
    pause 0.2
    "images/Dynamic/3.png"
    pause 0.2
    "images/Dynamic/4.png"
    pause 0.2
    "images/Dynamic/5.png"
    pause 0.2
    "images/Dynamic/6.png"
    pause 0.2
    "images/Dynamic/1.png"
    pause 1 # 暂停1秒

    repeat # 循环 

###### 定义:变换(transform)效果 ####
transform hello_1:
    align (0.5, 0.5)
    linear 1 pos (0.5, 0.2) alpha 0.3
    linear 1 pos (0.5, 0.5) alpha 1.0
    repeat # 循环 

transform hello_2:
    align (0.5, 1.0) 
    linear 2.0 align (0.5, 1.0) knot (0.0, .33) knot (1.0, .66)
    pause 0.5 # 暂停1秒
    repeat # 循环 

###### 定义:界面(screen) ####
screen aaa:
    add "Sign" align (0.5,0)

screen bbb:
    add "Sign" at hello_1

screen ccc:
    add "Sign" at hello_2

# 游戏在此开始。
label start:

    "开始演示"

    show screen aaa
    "显示aaa"

    show screen bbb
    "显示bbb"

    show screen ccc
    "显示ccc"

    hide  screen aaa
    hide  screen bbb
    hide  screen ccc
    "演示完成"

    # 此处为游戏结尾。
    return

repeat语句:https://doc.renpy.cn/zh-CN/atl.html?highlight=repeat#repeat

align:将pos和anchor设置为相同的值。将pos和anchor设置为相同的值。
https://doc.renpy.cn/zh-CN/atl.html?highlight=pos

附件(解压后Dynamic文件夹)放进工程 game/images文件夹里: Dynamic.zip (4.74 KB, 下载次数: 31)

评分

参与人数 1干货 +1 收起 理由
BuErShen + 1 感谢分享!

查看全部评分

回复 支持 抱歉

使用道具 举报

 楼主| 发表于 2019-2-5 11:53:36 | 显示全部楼层
龙氏 发表于 2019-1-21 16:31
看脚本,附件下面。
[mw_shl_code=renpy,true]###### 定义:动态序列帧图 ####
image Sign:

多谢,帮了大忙了
回复 支持 抱歉

使用道具 举报

发表于 2020-8-6 20:38:52 | 显示全部楼层
本帖最后由 enjoyuruf 于 2020-8-6 20:46 编辑
龙氏 发表于 2019-1-21 16:31
(2019.3.16)脚本略微调整,使显示效果更好些。

看脚本,附件下面。

定义动态序列帧,帧数过多,会卡顿,除了降低帧数,请问有什么办法可以避免卡顿吗?
是300多帧的动态图片,每帧是不超过300kb的jpg图片,总有89M。

想要在播放的同时,也进行着对话。但是在进入对话的时候会卡顿。
回复 支持 抱歉

使用道具 举报

发表于 2020-8-12 15:23:22 | 显示全部楼层
enjoyuruf 发表于 2020-8-6 20:38
定义动态序列帧,帧数过多,会卡顿,除了降低帧数,请问有什么办法可以避免卡顿吗?
是300多帧的动态图片 ...

非手机端的话,可以试试把图片序列换成视频,然后用Movie……
回复 支持 抱歉

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|RenPy中文空间 ( 苏ICP备17067825号|苏公网安备 32092302000068号 )

GMT+8, 2024-4-18 10:01 , Processed in 0.078139 second(s), 16 queries , File On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表