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

Project1

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

[交流讨论] 关于水、镜面等反射 #filter #shader

[复制链接]

Lv2.观梦者

梦石
0
星屑
673
在线时间
326 小时
注册时间
2012-4-8
帖子
213
跳转到指定楼层
1
发表于 2024-4-28 19:51:05 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

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

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

x
本帖最后由 505681468 于 2024-4-29 02:44 编辑

虽然好像已经有其他人的反射了,但是好像没人做 filter 的反射,于是在了解 filter 的过程中试着探究一下水面反射的实现

先放图


【方法】
通过创建一层 tile map 等大小的图像,来做蒙板,同步拷贝了一份 player 的 bitmap 来做反射显示
看到的反射实际上是 地图的水面蒙板 + 角色拷贝图像的效果
所以如果加上大量事件的话,这部分还没试,之后有机会再看看吧

【过程】
其中遇到过挺多问题,包括 filter 子类的实现
rm 原生 tile map 的渲染逻辑
bitmap 的渲染问题
bitmap 频繁渲染导致闪烁
zlayer 的逻辑
bitmap.context 和 canvas 的使用

【收获】
如果 bitmap 有渲染闪烁问题,可以参考 tilemap 创建 canvasBuffer
至于性能问题,不知道,但是走的 filter ,所以关键是怎么获取对应的 bitmap/texture 做显示
filter 的使用

【附录图像】
地图的拷贝图像

评分

参与人数 2+2 收起 理由
泼墨漓江 + 1 塞糖
雷影 + 1 塞糖

查看全部评分

pokemon 和 digimon 正在路上

Lv2.观梦者

梦石
0
星屑
661
在线时间
105 小时
注册时间
2023-11-16
帖子
76
2
发表于 2024-4-29 00:24:51 | 只看该作者
很强啊 就是这个水面的素材很明显也要匹配才行
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
4713
在线时间
662 小时
注册时间
2021-3-24
帖子
519
3
发表于 2024-4-29 00:30:31 | 只看该作者
说到反射 能不能实现身前身后两个镜子那种效果。
全家活光光~
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
673
在线时间
326 小时
注册时间
2012-4-8
帖子
213
4
 楼主| 发表于 2024-4-29 02:16:12 | 只看该作者
本帖最后由 505681468 于 2024-4-29 02:43 编辑
kyjoke 发表于 2024-4-29 00:24
很强啊 就是这个水面的素材很明显也要匹配才行


对,因为是用蒙板做的,所以要跟原素材匹配
        设想中的反射需要知道反射区域,简单点的就是盖蒙板了,而且因为 rm 是 2d,并不存在光线,所以跟其他对象的反射交互也需要纳入,做管理器来处理了

好处是,精细、灵活,能实现水波纹(做了个粗糙的)、镜面雾化(没做,理论上是shader叠加,没啥大问题)等特殊效果
坏处是,特殊一点的需要特制蒙板,例如 rm 地图 tilemap ,这种有动画的,需要实现动画同步
        如果对于精细度要求不高,动画蒙板只见差别不大的也可以不做,像 tilemap 就特别一点,它自带了动画更新,简单同步下 tilemap 的状态就行了
        这东西就是纯走自己的偏底层的 layer 和 shader (想骂它了)


其实这并不是一个【反射效果插件】成品,只是一个 rm filter shader 的学习衍生品
目前的效果是针对 tilemap 的水面反射,其他的就是理论上 shader 能做,就能实现
pokemon 和 digimon 正在路上
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
673
在线时间
326 小时
注册时间
2012-4-8
帖子
213
5
 楼主| 发表于 2024-4-29 02:22:55 | 只看该作者
清澈淌漾 发表于 2024-4-29 00:30
说到反射 能不能实现身前身后两个镜子那种效果。

复杂场景,没想到啥思路

如果后面背景会缩放,如果加入另外的可交互对象就会变得复杂......
如果镜子小,是等身的,那么就看不见对面的镜子了
如果是下面这种堆叠的情况,就叠加然后做景深位移就好了
pokemon 和 digimon 正在路上
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

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

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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