设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 3480|回复: 30
打印 上一主题 下一主题

[有事请教] 如何制作pattern fade?

[复制链接]

Lv4.逐梦者

梦石
0
星屑
5039
在线时间
1780 小时
注册时间
2012-7-3
帖子
1799

开拓者

跳转到指定楼层
1
发表于 2018-9-8 13:56:31 | 显示全部楼层 |只看大图 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
本帖最后由 defisym 于 2018-9-8 13:58 编辑

众所周知,rm在xp时代有一个事件指令叫“执行渐变”
后来虽然阉割掉了,但默认进战斗的时候也会做这件事
像这样

这种东西其实蛮常见的,比如你传


好吧其实上面vx的那个就是这张图
rm里把这个功能封装了,没给你看内部实现,不过其实思路很简单,筛选像素rgb,该涂黑涂黑该透明透明就行了,哦,vx里应该还是做了一个求灰度

后来拆别的游戏的包(好吧还是你传),知道这玩意学名叫pattern fade

那么问题来了……这种东西要如何制作呢?

这样的其实还好,但那些猫爪子等等的实在是想不明白怎么做的
果然还是我太菜了

(突然发现不能传视频上来)
(好吧2mb也传不上来)

点评

我试着找张图做一下感觉可能是找个图变成亮色对比然后拉渐变……  发表于 2018-9-10 09:13
Project Ktr进行中:
   
------------------
SRPG开发之六-天气与地形互动
→→围观
→→→去Lofter围观
------------------
离经叛道的扯淡者/伪独立游戏爱好者/Decade Studio(?)/造轮子真TM开心呀

Lv4.逐梦者

梦石
0
星屑
5039
在线时间
1780 小时
注册时间
2012-7-3
帖子
1799

开拓者

2
 楼主| 发表于 2018-9-10 09:37:03 | 显示全部楼层
89444640 发表于 2018-9-10 09:10
试了一下效果
确实是从黑影开始渐变的。
但是各种花样的怎么做就不清楚了,

RPG maker里面应该是求过灰度,然后算法也没有我这样简单粗暴直接
应该是在边界上有循环来做半透明过渡,目前我还没想到用循环做的好方法
尤其是Pixel Shader的指令数量限制……暴力肯定超了_(:з)∠)_
Project Ktr进行中:
   
------------------
SRPG开发之六-天气与地形互动
→→围观
→→→去Lofter围观
------------------
离经叛道的扯淡者/伪独立游戏爱好者/Decade Studio(?)/造轮子真TM开心呀
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
5039
在线时间
1780 小时
注册时间
2012-7-3
帖子
1799

开拓者

3
 楼主| 发表于 2018-9-10 10:51:58 | 显示全部楼层
89444640 发表于 2018-9-10 09:48
这个似乎还挺好玩的,好像有很多种方法绘制?渐变工具除了默认的几个也应该有很多吧?

...

图像间切换其实不难,将涂黑改成获取前景,背景或指定贴图就行了,但最大的问题是,mmf里pixel shader的贴图只能在编辑器里指定,动态读取做不到……似乎是因为用公式指定parameter默认返回的是数值类型,没办法指定一个文件路径,但全都导入进exe里面去维护起来很麻烦,等同于就没什么意义了……
大概想了想,应该是先把不透明度抹了,然后循环指定一级一级自加来实现流畅过渡,只是不知道这样性能开销是不是太大了

点评

维护起来很烦啊,比如说你要换什么的,而且一个对象的贴图写死了想要给这个对象做其他的叠层变换就得新开一个对象,这就很烦躁了……  发表于 2018-9-10 11:39
一个游戏没必要好多渐变方式吧种都导入exe多省心以后就不折腾了XD  发表于 2018-9-10 11:06
Project Ktr进行中:
   
------------------
SRPG开发之六-天气与地形互动
→→围观
→→→去Lofter围观
------------------
离经叛道的扯淡者/伪独立游戏爱好者/Decade Studio(?)/造轮子真TM开心呀
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
5039
在线时间
1780 小时
注册时间
2012-7-3
帖子
1799

开拓者

4
 楼主| 发表于 2018-9-11 20:06:50 | 显示全部楼层
虽然不够平滑,但我尽力了




  1. for(int i=step;i>0;i--)
  2.         {
  3.                 if(Out.Color.r<=(progress+i*RgbStep))
  4.                 {
  5.                         a=a+AlphaStep;
  6.                 }                               
  7.         }
复制代码

Pattern Fade 2.part1.rar (2 MB, 下载次数: 63)
Pattern Fade 2.part2.rar (1.65 MB, 下载次数: 64)


评分

参与人数 1+1 收起 理由
89444640 + 1 塞糖

查看全部评分

Project Ktr进行中:
   
------------------
SRPG开发之六-天气与地形互动
→→围观
→→→去Lofter围观
------------------
离经叛道的扯淡者/伪独立游戏爱好者/Decade Studio(?)/造轮子真TM开心呀
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
5039
在线时间
1780 小时
注册时间
2012-7-3
帖子
1799

开拓者

5
 楼主| 发表于 2018-9-12 11:56:54 | 显示全部楼层
shencao 发表于 2018-9-12 03:49
是说怎么做图吗?那你还需要ps技术⋯⋯

不知道具体脚本里是怎么实现的,反正从效果来看(我猜)它的过程是 ...

感谢!
具体实现我是写了一个Pixel Shader,循环处理不透明度来做了渐变
虽然边缘过渡还不够流畅(理论上不是直接卡而是应该求梯度,根据梯度决定过渡边沿),但也算是凑合了……

点评

可能美工觉得改图快,程序觉得改脚本快吧哈哈(嗯也可以参考下别的开源引擎,比如krkr,这个效果是必定有的)  发表于 2018-9-12 13:06
下降速度最快的方向,如果下降快就减小每一级的差,慢就可以拉大,总体类似a律13折线的思想  发表于 2018-9-12 12:38
在我(美工)看来,如果哪里渐变的不流畅,那就改图咯?听不太懂你们(程序)在聊啥XD 我感觉就是线性对应的吧,求梯度是什么XD  发表于 2018-9-12 12:26
Project Ktr进行中:
   
------------------
SRPG开发之六-天气与地形互动
→→围观
→→→去Lofter围观
------------------
离经叛道的扯淡者/伪独立游戏爱好者/Decade Studio(?)/造轮子真TM开心呀
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
5039
在线时间
1780 小时
注册时间
2012-7-3
帖子
1799

开拓者

6
 楼主| 发表于 2018-9-12 23:45:46 | 显示全部楼层

尽力了_(:з」∠)_
Project Ktr进行中:
   
------------------
SRPG开发之六-天气与地形互动
→→围观
→→→去Lofter围观
------------------
离经叛道的扯淡者/伪独立游戏爱好者/Decade Studio(?)/造轮子真TM开心呀
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
5039
在线时间
1780 小时
注册时间
2012-7-3
帖子
1799

开拓者

7
 楼主| 发表于 2018-9-14 12:36:07 | 显示全部楼层
每当我觉得做的差不多的时候,就是发现新bug的时候
之前的算法没考虑渐变图透明的场合……
修好了大概是这样的


实装了大概是这样的

虽然立绘不适合做Pattern Fade,但经常出现半透明的也就这里了
Project Ktr进行中:
   
------------------
SRPG开发之六-天气与地形互动
→→围观
→→→去Lofter围观
------------------
离经叛道的扯淡者/伪独立游戏爱好者/Decade Studio(?)/造轮子真TM开心呀
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-5-9 17:13

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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