- nvdiffrast库的官方地址
- 整体需求:有了一个obj的mesh,mesh内包含顶点位置(v)、uv坐标(vt)、面片索引(f)。uv坐标可以采用xatlas-python得到。
- 有了mesh和texture image之后,用mesh lab打开mesh可以直接显示带有diffuse color的外观。(需要在mesh的文件里加一行mtllib mesh_0.mtl,然后在mesh_0.mtl中加一行map_Kd diffuse color的texture image名称.jpg)
- 打开mesh lab之后可以查看每一个顶点的uv坐标和顶点位置坐标,如图一,pos代表的是顶点位置(v),uv代表的是uvmapping得到的纹理坐标(vt)。面片索引是f v//vt v//vt v//vt的形式,可以查看vt对应的下标找到对应v的下标,发现是一一对应的。
- 可以用nvdiffrast对mesh光栅化并对uv坐标进行插值,参考官方的例程。然后用uv坐标对texture image查询对应的texture。
- 最大的坑来了,uv坐标的u不用动,v需要1-v,也就是uv[:,:,:,1] = 1-uv[:,:,:,1]
利用nvdiffrast库对mesh结合texture image渲染
最新推荐文章于 2024-05-15 09:50:16 发布
![](https://img-home.csdnimg.cn/images/20240611030827.png)