自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(6)
  • 收藏
  • 关注

原创 Unity渲染小知识点汇总,备忘一下,持续更新...

延迟:利用MRT(Multi Render Target)需硬件支持,依次渲染Diffuse,Normal,Depth等信息到多张RT中,之后利用这些RT以光源为单位计算每个光源产生的颜色再合并。URP:可编程,SRPbatch,通过URP的接口获取所有光源信息统一在一个Pass里计算。前向:轻量化,多光源和物体渲染pass数是乘法关系。1.简述前向渲染管线,延迟渲染管线,URP管线。

2025-03-07 16:05:12 203

原创 Unity实现基于POM的视差云效果

如图所示把单位为1的总深度向下依次等分多层,图中分了9层,T代表uv坐标,视线在T0的深度,在没有视差的情况下大约深度值为0.75,为了实现视差效果,需要计算出Tp的坐标,正常的SPM原理是,沿着向量V的反方向,依次采样出T的深度值,并且和当前层深度进行比较,如果层深度值大于采样深度值,步进结束,把此时的T当作近似的视差之后的坐标。实现了一个函数,输入原始uv,切线空间视角方向,高度干扰参数(产生略微波动感),为什么是切线空间,归一化的视角向量的xy分量就是视角的视差的uv偏移量了,这点很重要。

2025-02-28 21:44:50 1257

原创 渲染流水线简单梳理

如图所示,左面是观察空间坐标系,右面是其次裁剪空间,此时顶点坐标做了齐次处理(增加了w=1分量),主要原因是,透视空间中,数值是无法正常做线性插值的,需要增加维度方便透视投影和裁剪(通过升维的方式简化裁剪过程,想到这个方法的真是天才,我怀疑他是高纬度的生物),经过裁剪矩阵(投影矩阵)转换后,w有了新的意义。NDC空间下的,在dx中-1<=x,y<=1,0<=z<=1,在OpenGL中-1<=x,y,z<=1,从而判断是否是在可视范围内,完全在NDC外的剔除,部分在NDC内的,生成新的图元。

2025-02-27 01:19:51 585

原创 UV的旋转缩放和平移

【代码】UV的旋转缩放和平移。

2025-02-24 18:29:05 375

原创 Unity实现视察3D效果

如上图,绿色是前图且没有深度,红色后图是视差偏移的图,视线和两张图分别相交于AB两点,计算出parallaxUV后可以把深度值z忽略,在计算过程中uv实际就是切线空间里xy轴,法线是切线空间的z轴,为什么是在这个坐标系,因为这个空间可以看作是贴图空间,计算后的uv也是基于贴图空间的。代码如下,后面改成urp或者直接用在UI的sprite上,稍微改一改就行了。有了这个函数后面简单了,直接把多张图的颜色混合一下就行了。在一个面片上实现,多张图具有深度层次效果。

2025-02-23 20:40:30 372

原创 Unity获取屏幕UV方法的总结

1.VPOS语义获得2.顶点通过ComputeScreenPos计算获得半成品屏幕坐标positionNDC,在片元里除以w分量3.1利用顶点输出的SV_POSITION语义,在片元里直接用SV_POSITION变量除以屏幕分辨率3.2在顶点里获得裁剪空间坐标,片元里重新映射到[0,1]

2025-02-18 22:16:37 1184

URP视差云,视差遮蔽映射(Parallax Occlusion Mapping, POM)实现

URP视差云,视差遮蔽映射(Parallax Occlusion Mapping, POM)实现

2025-02-28

unity视差3d效果

unity一个面片实现3D视差效果的图,包含前中后三层,根据视角方向和深度计算后面图采样的uv

2025-02-23

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除