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

我一动手就抓瞎了,而且网上居然一个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:

直接搞个贴图 :sweat_smile:

高张黑色的图用shader挖两个孔,然后通过代码传位置移动这个孔应该可以。image

1赞

问下,你这个孔的坐标是怎么传进去的,弄了俩个参数吗?如果弄10个孔,就得10个点吗?
没找到不定数量的怎么传

image

搞两个float 数组代表x,y穿进去

本想加点颜色,没想到还有意外收获,有点像metaBall效果dddd

一个没有2d灯光的引擎哈哈哈

j是j,官方是官方,搞清楚点好,j的话,我一般都会屏蔽

主要也不知道咋用 :joy: ,感觉版本好乱,知道用在哪里就好了

感谢大佬,想问一下我是用的creater3.8来做的2d游戏,也可以用shader吗?需要换2.x不 :slightly_smiling_face:

算法是通用的,逻辑是一样的,无非是改像素点的a值,去研究研究3.8的effect使用,大差不差的。

能贴下代码吗?uniform跟properties的初始化的。

shader都差不多

我这个是两个参数的,数组的暂时没搞定

讨论了那么久,看着难受,我送你一份后处理mask的,算是单一灯光吧,自己多加几个点变成多光源就行了:
mask.rar (1.2 KB)

2赞