我试图计算深度的统一和统一的ml图像合成库支持渲染深度纹理,我想得到的虚拟点,不会渲染到屏幕上的深度。https://bitbucket.org/Unity-Technologies/ml-imagesynthesis/src/master/Assets/ImageSynthesis/Shaders/UberReplacement.shader
我已经拼凑到一起,它使用COMPUTE_DEPTH_01将眼睛移到很远的深度,并通过使用预构建的函数将其转换为近距离。我已经做了一些关于使用transform.localtoworldmatrix
生成模型矩阵和使用Camera.worldToCameraMatrix
查看矩阵的基本测试。但是,如果我想复制被定义为COMPUTE_DEPTH_01的-(mul( UNITY_MATRIX_MV, v.vertex ).z * _ProjectionParams.w)
,我需要帮助确定当前和视图模型是什么,UNITY_MATRIX_MV
是视图矩阵,我不知道当前模型是指相机的当前模型还是相机视图当前模型中的对象。
发布于 2020-08-28 20:47:13
当前模型是指在场景中呈现的当前对象。
在一个非常简单的带有相机、光线和立方体的联合项目中,立方体在世界中的位置将是模型矩阵。在一个具有众多对象的复杂场景中,模型矩阵将是当前正在转换的任何对象的转换矩阵。
因此,模型矩阵、摄像机矩阵和视图矩阵变换使模型的顶点位置从自身的局部坐标到世界坐标(模型矩阵),然后进入摄像机空间(视图矩阵),最后投影到平面(投影矩阵)上。
https://stackoverflow.com/questions/63639909
复制相似问题