繁体   English   中英

使用OpenGL进行贴图后的结果奇怪

[英]Strange result after Texture Mapping with OpenGL

  1. 步骤:在2D图像上(使用dlib)找到68个地标,所以我知道每个地标的所有68个坐标!

  2. 创建通用面孔的3D蒙版(使用OpenGL)->结果 在此处输入图片说明

我也知道面部模型的所有3d坐标!

  1. 现在我想使用此教程对从2d图像到3D通用Facemodel的所有三角形进行纹理映射

有人知道我的问题的答案吗? 如果您需要更多信息,请给我留言,我会给您发送您所需要的信息。 谢谢大家!

编辑:找到本教程后,我更改了图片大小,以得到宽度和高度为2的幂。 然后将我所有的图片坐标(地标)除以大小:地标(x)/高度和地标(y)/宽度

图片: 在此处输入图片说明 结果: 在此处输入图片说明

宽度和高度越大,图像清晰度就越好!

您所看到的就像您将所有顶点直接传递给glDrawArrays没有任何重用。 因此,每个顶点用于结果中的单个三角形,而不是用于原始图片中的6个或更多三角形。

您需要使用元素缓冲区来描述所有三角形是如何由拥有的顶点组成的,并使用glDrawElements绘制它们。

另请注意,原始图像上的某些多边形实际上不是三角形。 您可能需要为这些多边形(眼睛的内部)插入其他三角形。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM