网站大量收购独家精品文档,联系QQ:2885784924

虚拟现实程序设计基础 虚拟现实程序设计基础 Unity3D中的线性插值Lerp()函数解析.docx

虚拟现实程序设计基础 虚拟现实程序设计基础 Unity3D中的线性插值Lerp()函数解析.docx

  1. 1、本文档共17页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Unity3D中的线性插值Lerp()函数解析 在 unity3d中经常用线性插值函数Lerp()来在两者之间插值,两者之间可以是两个材质之间、两个向量之间、两个浮点数之间、两个颜色之间,其函数原型如下: 1. Material.Lerp 插值 function Lerp(start : Material, end : Material, t : float) : void 在两个材质之间插值 ? 2. Vector2.Lerp 插值 static functionLerp (from : Vector2, to : Vector2, t : float) : Vector2 两个向量之间的线性插值。按照数字t在form到to之间插值。 t是夹在0到1之间。当t=0时,返回from。当t=1时,返回to。当t=0.5时放回from和to之间的平均数。 3. Vector3.Lerp 插值 static functionLerp (from :? Vector3, to : Vector3, t : float) : Vector3 两个向量之间的线性插值。按照数字t在from到to之间插值。 4. Vector4.Lerp 插值 static functionLerp (from : Vector4, to : Vector4, t : float) : Vector4 两个向量之间的线形插值。按照数字t在from到to之间插值。t是夹在[0...1]之间的值。,当t = 0时,返回from。当t = 1时,返回to。当t = 0.5 返回from和to的平均数。 ? 5. Mathf.Lerp 插值 static functionLerp (from : float, to : float, t : float) : float 基于浮点数t返回a到b之间的插值,t限制在0~1之间。当t = 0返回from,当t = 1 返回to。当t = 0.5 返回from和to的平均值。 ? 6. Color.Lerp 插值 static functionLerp (a : Color, b : Color, t : float) : Color 通过t在颜色a和b之间插值。 t是夹在0到1之间的值。当t是0时返回颜色a。当t是1时返回颜色b。 ? 插值,从字面意思上看,就是在其间插入一个数值,这种理解是否正确呢?我们先从最简单的浮点数插值函数来分析: Mathf.Lerp 插值 static functionLerp (from : float, to : float, t : float) : float 基于浮点数t返回a到b之间的插值,t限制在0~1之间。当t = 0返回from,当t = 1 返回to。当t = 0.5 返回from和to的平均值。 ? 首先,我们来做一个试验,启动Unity3D,任建一个脚本文件,在其Start()中输入内容如下: void?Start () { ??????? print(Mathf.Lerp(0.0f, 100.0f,0.0f).ToString()); ??????? print(Mathf.Lerp(0.0f, 100.0f,0.1f).ToString()); ??????? print(Mathf.Lerp(0.0f, 100.0f,0.2f).ToString()); ??????? print(Mathf.Lerp(0.0f, 100.0f,0.3f).ToString()); ??????? print(Mathf.Lerp(0.0f, 100.0f,0.4f).ToString()); ??????? print(Mathf.Lerp(0.0f, 100.0f,0.5f).ToString()); ??????? print(Mathf.Lerp(0.0f, 100.0f,0.6f).ToString()); ??????? print(Mathf.Lerp(0.0f, 100.0f,0.7f).ToString()); ??????? print(Mathf.Lerp(0.0f, 100.0f,0.8f).ToString()); ??????? print(Mathf.Lerp(0.0f, 100.0f,0.9f).ToString()); ??????? print(Mathf.Lerp(0.0f, 100.0f,1.0f).ToString()); ??? } 运行Unity,在控制台将打印出: ? ? ? ?这个实验是在0到100之间插值,插入什么值,取决于第3个参数,从打印结果可看出,第3个参数是个比例因数,是0.

您可能关注的文档

文档评论(0)

WanDocx + 关注
实名认证
内容提供者

大部分文档都有全套资料,如需打包优惠下载,请留言联系。 所有资料均来源于互联网公开下载资源,如有侵权,请联系管理员及时删除。

1亿VIP精品文档

相关文档