Language:
Share
此中文页面内容对应的英文页面有后续更新,如需浏览最新文档可切换至英文页面浏览。

坐标空间术语

空间

虚幻引擎中的坐标空间

别名

描述

Tangent(切线空间)

为正交坐标系(插值后将发生偏移),可为左手或右手坐标系。 TangentToLocal(切线空间到局部空间)变换仅包含旋转变换,因此它是标准正交坐标系(可通过转置变换进行反转)。

Local(局部空间)

Object Space(对象空间)

为正交坐标系,可为左手或右手坐标系(需调整三角面剔除次序)。LocalToWorld(局部空间到世界空间)变换包含旋转变换、非等比缩放变换(包括改变旋绕顺序的非等比负值缩放)以及平移变换。

World(世界空间)

WorldToView(世界空间到视角空间)变换仅包含旋转和平移,所以View(视角)空间中的距离和World(世界)空间中的距离一样。

TranslatedWorld(平移的世界空间)

World(世界空间)

TranslatedWorld(平移的世界空间) - PreViewTranslation(在视变换之前进行的平移变换)

TranslatedWorld(平移的世界空间)

World(世界空间) + PreViewTranslation(在视变换之前进行的平移变换)

平移矩阵用于从组合变换矩阵开始移动相机位置,这提高了移动顶点时的精确度。

View(观察空间)

CameraSpace(相机空间)

ViewToClip(观察空间到裁剪空间)变换包括X、Y轴上的缩放变换,但不包括平移变换 (这将造成投影偏离中心)。可在Z轴上缩放以及平移。通过投影变换将它转为齐次ClipSpace(裁剪空间)。

Clip(裁剪空间)

HomogeniousCoordinates(齐次坐标系), PostProjectionSpace(后投影空间), , ProjectionSpace(投影空间)

以透视投影矩阵进行变换后的空间。 注意裁剪空间中的W和视察控件中的Z一样。

Screen(屏幕空间)

OpenGL 的 NormalizedDeviceCoordinates(规格化设备坐标系)

在透视除法完成之后:

左侧/右侧

-1,1

顶部/底部

1,-1

近/远

0,1 (OpenGL RHI需要把这个值变换为 -1,1)

Viewport(视口空间)

ViewportCoordinates(视口坐标系), WindowCoordinates(窗口坐标系)

以像素为单位:

左侧/右侧

0, 宽度-1

顶部/底部

0,高度-1

空间变换

空间变换命名应该使用这样的格式: X To Y

示例:

  • WorldToView

  • TranslatedWorldToView

  • TangentToWorld