随笔分类 -  Unity3d

摘要:平行光 2D这里主要是指有高度的光,即限定了影子的长度。 Shadow Mesh 限定影子长度生成的Mesh有很多种,可以根据实际情况,选择不同的方案。 平移Sprite顶点(自动生成的Sprite Vertex 或者 Custome Physics Shape 顶点),然后使用凸包形成新的影子外形 阅读全文
posted @ 2020-11-22 15:11 Lain_vv 阅读(949) 评论(0) 推荐(0)
摘要:半影方案 之前用来生成lightMesh的端点扫描的方案并不适合生成ShadowMesh,主要原因是光源体积边缘的点和光源中心点的端点顺序可能不同。虽然端点排序很快,但也不可能每个半影区域都排一次,即使有优化方案,代码的复杂度也会很高。 使用Shader绘制阴影(包括半影)比较简单,而且效率很高。个 阅读全文
posted @ 2020-11-15 00:16 Lain_vv 阅读(649) 评论(0) 推荐(0)
摘要:光与阴影的渲染 光与阴影的渲染需要两类贴图,LightMap(光照贴图) 和 ShadowMap(阴影贴图)。 每个光源都需要渲染一张LightMap、ShadowMap。LightMap 是光渲染结果,ShadowMap 是阴影渲染结果。 两者可以同一次渲染,分开渲染是为了之后做软阴影或半影。 这 阅读全文
posted @ 2020-11-08 21:23 Lain_vv 阅读(825) 评论(0) 推荐(0)
摘要:2D阴影 生成2d阴影一般有两种方案,一种是基于物理射线生成Light Mesh(也有叫ShadowMesh,我觉得叫LightMesh更贴切点)。另一种同unity3D阴影原理,就有是生成ShadowMap。 这篇记录使用射线生成LightMesh的两种方法。 方法1:通过射线扫描可视区域 因为使 阅读全文
posted @ 2020-10-28 10:28 Lain_vv 阅读(524) 评论(0) 推荐(0)