翻译20 视差-Parallax

Posted baolong-chen

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了翻译20 视差-Parallax相关的知识,希望对你有一定的参考价值。

1 视差纹理

??? 由于视角的原因,当调整摄像机位置时,观察到的事物的相对位置会发生变化,这种视觉现象称为视差。在坐火车高速行驶看窗外的景物,附近的物体看起来很大并且移动很快,而远处的背景看起来很小并且移动较慢。渲染时,相机使用透视模式时,也会出现视差。

??? 之前(翻译6翻译9)使用过法线贴图将表面不规则感添加到平滑表面。 它会影响照明,但不会影响表面的实际形状。 因此,该效果视差不明显,通过实现法线贴图基于视野深度的幻觉有许多限制。这一篇的目的就是解决该限制。

1.1 法线贴图效果回顾

??? 下面给出许多albedo map 和 normal map差异对比:

技术图片 技术图片

albedo map 和 normal map

如果没有法线贴图,表面看起来很平坦。 添加法线贴图会使它看起来好像具有不规则的表面。 但是,高度海拔差异看起来不明显。 当从入射视角与表面的夹角越趋于0,高度差越不明显。如果高程差异较大,则表面特征的相对视觉位置应由于视差而发生很大变化,但不会发生变化。 我们看到的视差是平坦的表面。

public class GammaCorrection : MonoBehaviour

{

VolumeProfile myProfile;

[Header("Load Profile From Volume")]

public Volume _volume;

//public LiftGammaGain myGamma;

LiftGammaGain _allGamma;

[Range(-1, 3)]

public float gammaValue;

void Start()

{

myProfile = _volume.sharedProfile;

myProfile.TryGet<LiftGammaGain>(out _allGamma);

}

void Update()

{

_allGamma.gamma.Override(new Vector4(1, 1, 1, gammaValue));

//_allGamma.gamma.value = new Vector4(1, 1, 1, gammaValue);

}

}?

?

?

?

以上是关于翻译20 视差-Parallax的主要内容,如果未能解决你的问题,请参考以下文章

使用固定标题实现视差滚动 [Windows Phone]

视差滚动技术的简介及运用

Emgu (OpenCV for C#) - 使用 cvStereoRectify 构建视差图

vs2019+opencv3.4.1+pcl1.8.1环境搭建

立体匹配中的视差图和视差图有啥区别?

使用 Open CV Python 使用带有对角视差的 StereoBM 创建视差图