将mesh的顶点数据变换到投影框的三维空间中,这样一来是方便裁剪,二来是裁剪完成后可以将变换后的坐标值直接作为uv值使用.
3.得到相交的三角形片:
判断每个点是否在投影框内,如果三角形有任意一个点在框内...的纹理重新渲染一次,UV可以直接取映射到框中的xy值,当然要注意在shader中把uv 0~1之外的部分clip掉
5.如果你想的话,也可以对处在边界,不完全在框内部的三角形进行裁剪,最后整理顶点生成新的...,传入一个或多个decal投影框矩阵+数张decal贴图.FS得到原始的输出颜色后,再根据decal拿到的颜色进行混合,如果同时有多个Decal,则需要不同数量改变shader变体.
...,输出一个标志位到stencil buffer(或者任意其他可以标志像素点的方式),不需要输出颜色值
3.再次将投影框作为长方体渲染,打开Face Cull(只绘制长方形靠前的三个面),再上一步中stencil... 大致和上面的方法相同
deferred渲染管线中渲染所有gbuffer之后
和上一个方法中讲到的一样,同样是先渲染长方体,写入stencil buffer,然后再次渲染长方体,根据stencil