萌新求教,夜晚2D光照该怎么实现

image
你看这个三年前的回复,就知道为什么要这么说了。
官方说要做的很多东西,现也没点影子。要用cocos只能靠自己改了。

我是 给游戏对象渲染出的纹理增加了一个shader ,然后将光照图传进去, 在shader里自己混合的
image
内容比较多 有光照、云彩的投影、闪电。。。
最后主要是用的max 函数,但是这写写的太久了 我自己也看不明白了
大概这么个意思。。。。

1赞

我现在也在弄这个 :smiley: 要是弄的好了demo发你

太好了,到时候有demo那就帮大忙啦,多谢大佬~~ :grinning:

我这种完全不会底层的肯定没戏了:joy:


这个应该符合你要的效果
自己做的一个游戏demo,源码开放出来
这里有你要的源代码,自己找一下吧

大佬,这个用3.x能实现吗?

万分感谢~~~~

这个看着像是3D游戏啊?我是用的3.x做的2d游戏,不知道行不行
我用你demo研究下哈哈,真的感谢大佬~

不客气,这个就是2d游戏,用的3.6.1QQ图片20231010151355

666收藏了,大佬pc游戏上线了没有

太棒了啊 :laughing:

简单做的话,在人物脚底叠加个模拟光照范围的圆形白色图,一行代码不用敲

如果这样就太好了 :laughing:,但是像路灯的话能照亮周围的东西吗?

一个正常的照亮的图片,一个黑色迷雾图层,一个掏空的圆范围。mask,shader都可以实现

没有,项目比较大,周期很长,还得好几年

我一动手就抓瞎了,而且网上居然一个demo都找不到也是离谱 :joy:
顺便问下,需要涉及到GLSL编写吗?这个底层的完全不会 :joy:

这个就得看你需要做到什么地步,只要一个圈,那就mask,要渐变,那就一张黑图,js传到材质里坐标,把周围的a值改掉。如果要光照遮挡物阴影变动,那就找上面的demo

不需要阴影的,就一个简单的边缘带点过渡的光圈照明就可以了,路灯跟人物视野(其它没光的地方就比较暗就行了),我用的3.x引擎,不知道具体咋实现,网上也没啥demo,找到的只有一些shader的好像比较底层的,完全无从下手 :joy:

【ituuz分享】探照灯效果shader实现 - Creator 2.x - Cocos中文社区
2.x的effect功能算法复制一份过去。只复制里面的实现算法,其他还是用3.x引擎的。

有demo的,只是shader的东西,不知道咋写,但是要知道咋用。
复制一份保留下来==这个功能我会写 :rofl: