Q95:纹理映射(Texture Mapping)(3)——Triangle Meshes

198 篇文章 12 订阅
195 篇文章 27 订阅

首先,声明一下:
个人感觉这一章节有点鸡肋,因为通过“纹理映射”的方式给Triangle Meshes图形添加纹理貌似不太常用。

1,理论分析

能够通过“纹理映射”的方式给Triangle Meshes图形添加纹理的前提条件是“图形对应的PLY文件中每个顶点包含纹理参数u、v”(如下图所示)。但是,这样的PLY文件貌似不太好找(反正本人是没有找到)。
这里写图片描述

书上也只是拿之前介绍过的“两个三角形”来说明方法的可行性。
(这里的书指的是《Ray Tracing from the Ground Up》;“两个三角形”的PLY文件如上图所示。之前生成的图形如下图所示)
这里写图片描述

基于当前的程序,通过“纹理映射”的方式给Triangle Meshes图形添加纹理,我们需要做如下修改:
1,读取PLY文件中的u、v数据;
2,对u、v的值进行插值得到撞击点的u、v值;

1.1,读取PLY文件中的u、v数据;

相关代码截图如下:
这里写图片描述

1.2,对u、v的值进行插值得到撞击点的u、v值

首先,按照如下继承关系添加两个新的类:
这里写图片描述

相关代码截图如下:

这里写图片描述

这里写图片描述

2,图形测试

测试代码:

这里写图片描述
这里写图片描述

输出图形:

纹理图片:
这里写图片描述

输出图形:

前边是平坦(flat)着色的图形;后边是平滑(smooth)着色的图形:
这里写图片描述 这里写图片描述

3,其他说明

完整代码下载路径:
http://download.csdn.net/detail/libing_zeng/9792810

Referrance:
[1]. Kevin Suffern, Ray Tracing from theGround Up, A K PetersLtd, 2007.

  • 4
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值