using System.Collections;
using System.Collections.Generic;
using UnityEngine; public class TestSlerp : MonoBehaviour
{
public Transform a;
public Transform b; void Start()
{ }
bool kaishi = false;
float T;
void Update()
{
if (Input.GetKeyDown(KeyCode.S))
{
kaishi = true;
T = Time.time;
print(Time.time + " SSSSSSSSSSS " + T); }
if (kaishi)
{
Debug.DrawLine(Vector3.zero, new Vector3(, , ), Color.red);
//for (int i=0;i<11;++i)
//{
Vector3 center = (a.position + b.position) * 0.5f;
center -= new Vector3(, , );
Vector3 temp1 = a.position - center;
Vector3 temp2 = b.position - center;
print(Time.time + " " + T);
Vector3 c = Vector3.Slerp(temp1, temp2, (Time.time-T) * 0.1f); c += center;
transform.position = c;
//Debug.DrawRay(center, c, Color.red);
//Debug.DrawRay(Vector3.zero, c, Color.red);
Debug.DrawLine(center, c, Color.blue);
Debug.DrawLine(Vector3.zero, c, Color.blue); // print(i);
}
}
}

最终效果如下:

修改如下:

 using System.Collections;
using System.Collections.Generic;
using UnityEngine; public class TestSlerp : MonoBehaviour {
public Transform a;
public Transform b;
void Start () { }
void Update () {
Debug.DrawLine(Vector3.zero,new Vector3(,,),Color.red);
for (int i=;i<;++i)
{
Vector3 center = (a.position + b.position) *0.5f;
center -= new Vector3(,,);
Vector3 temp1 =a.position - center;
Vector3 temp2 =b.position - center;
Vector3 c = Vector3.Slerp(temp1, temp2, i * 0.1f);
Debug.DrawLine(center, c, Color.blue);
Debug.DrawLine(Vector3.zero, c, Color.blue);
}
}
}

效果如下:

更多可参考:http://www.manew.com/thread-43314-1-1.html

Unity Vector3.Slerp使用范例的更多相关文章

  1. Unity球形插值Slerp解析

    Unity球形插值,官方有个太阳升降的例子: http://docs.unity3d.com/ScriptReference/Vector3.Slerp.html 一开始主观认为这个球形插值Slerp ...

  2. 【Unity】6.7 向量和Vector3类

    分类:Unity.C#.VS2015 创建日期:2016-04-20 一.简介 在虚拟的游戏世界中,与3D有关的数学知识决定了游戏引擎如何计算和模拟出开发者以及玩家看到的每一帧画面.学习或者回想一下基 ...

  3. Unity Game窗口中还原Scene窗口摄像机操作 强化版

    之前写的那个版本看来真的是不行啊.最近研究了一下官方第一人称脚本,人家的平滑过渡真的是没得说.借鉴了一下,写出来了一个新的比较完美的控制. 之前我们的操作是通过鼠标输入的开始坐标和转动坐标.其实官方有 ...

  4. C#程序员整理的Unity 3D笔记(十):Unity3D的位移、旋转的3D数学模型

    遇到一个想做的功能,但是实现不了,核心原因是因为对U3D的3D数学概念没有灵活吃透.故再次系统学习之—第三次学习3D数学. 本次,希望实现的功能很简单: 如在小地图中,希望可以动态画出Player当前 ...

  5. Unity 之 c# 版的 CharacterMotor

    using System; using System.Collections; using UnityEngine; // This class just convert from Character ...

  6. Unity 代码 学习

    A B C D E F G H I J K L M N O P Q R S T U V W X Y Z A: B: using System; using System.Runtime.Compile ...

  7. Unity API 解析 (陈泉宏著)

    1 Application类 2 Camera类 3 GameObject类 4 HideFlags类 5 Mathf类 6 Matrix4x4类 7 Object类 8 Quaternion类 9 ...

  8. unity 移动物体的方式

    1. 简介 在Unity3D中,有多种方式可以改变物体的坐标,实现移动的目的,其本质是每帧修改物体的position. 2. 通过Transform组件移动物体 Transform 组件用于描述物体在 ...

  9. 关于Unity中的transform组件(三)

    game_root节点下右一个Cube子节点,和一个Sphere节点,脚本挂载在game_root下 四元数:(1)Quaternion rot (2)this.cube.rotation 欧拉角:V ...

随机推荐

  1. 使用SpringMVC搭建第一个项目

    概述 使用SpringMVC搭建第一个项目,入门教程,分享给大家. 详细 代码下载:http://www.demodashi.com/demo/10596.html 一.概述 1.什么是Spring ...

  2. ORA-04089: 无法对 SYS 拥有的对象创建触发器

    ORA-04089: 无法对 SYS 拥有的对象创建触发器 http://bbs.csdn.net/topics/390355220 猛然发现自己是用sys用户创建表空间,创建用户,赋权,顺手就把sq ...

  3. HDUOJ-----2838Cow Sorting(组合树状数组)

    Cow Sorting Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total ...

  4. js中的let和var

    在ES6中,应该尽量使用const和let来声明变量,而尽量避免使用var. var的缺点是它的作用域比较混乱,使用let能够保证清晰的作用域. 下面看一个小例子. var x = 3; if(x== ...

  5. 玩转Masonry JS库来实现瀑布流Web效果

    工作项目中需要制作个Mobile上的Web App的展示,方便快捷访问和评价反馈.在展示页面能看到应用展示图,点击进入Web应用.我不是前端开发者,对HTML, CSS, JS这三剑客仅仅是略知一二. ...

  6. PLSQL_统计信息系列06_统计信息的历史和日志

    20150506 Created By BaoXinjian

  7. Android使用DrawerLayout仿qq6.6版本侧滑效果

      一讲到侧滑菜单,我相信大家都会想到一个开源控件SlidingMenu,在google还没有出来DrawerLayout的时候几乎都是使用Slidingmenu来实现侧滑效果,可以说是效果很不错,自 ...

  8. linux文件系统管理的工作原理

    一.系统在初始化时如何识别硬盘 1.系统初始时根据MBR的信息来识别硬盘,其中包括了一些执行文件就来载入系统,这些执行文件就是MBR里前面446bytes里的boot loader 程式,而后面的16 ...

  9. 【iOS】自动引用计数 (循环引用)

    历史版本 ARC(Automatic Reference Counting,自动引用计数)极大地减少了Cocoa开发中的常见编程错误:retain跟release不匹配.ARC并不会消除对retain ...

  10. 处理“位域”枚举类型变量的几个例子

    所谓的位域就是说利用一个整形数字二进制下不同的标志位来使一个枚举变量可以记录多个信息. 例如现在有一个定义好的位域枚举: [Flags] public enum FlagEnum { 我是第一个=, ...