Unity3D之使用ITween制作自动漫游超简单

摘要:
2使用System.Collections;12//将此用于初始化13voidStart()14{15StartCoroutine(Running());31用于(inti=tiles.Count-1;i>=0;i-)32{33tiles[i].path=path_tile;34tiles[i]。位置=0;

ITween真的非常牛逼的东西,对于现在手头的程序里的一般机器的运动还有一些物体的有规律移动,包括第一人称视角的已知路线的自主漫游都可以用ITween来实现,既简单又实用。

1,创建一个空对象,挂上ITween Path,根据需要设置Node Count的个数,然后再设置node内所有节点的位置

  Unity3D之使用ITween制作自动漫游超简单第1张

2,比如我要做这个摄像机沿着这个路径进行漫游,那选中这个摄像机挂上PathAnimation.cs(不过这个是自已写的类)

  然后将PathAnimation的公共变量iTweenPath赋值

  Unity3D之使用ITween制作自动漫游超简单第2张

3,这样的话我们就开始漫游了

  

 1 using UnityEngine;
 2 using System.Collections;
 3 using System.Collections.Generic;
 4 
 5 public class CarRunning_JX : MonoBehaviour
 6 {
 7     public List<PathAnimation> tiles = new List<PathAnimation>();
 8     public List<Transform> postions = new List<Transform>();
 9     public iTweenPath path_tuoChe;
10     public iTweenPath path_tile;
11     public PathAnimation tuoChe;
12     // Use this for initialization
13     void Start()
14     {
15         StartCoroutine(Running());
16     }
17 
18     // Update is called once per frame
19     void Update()
20     {
21 
22     }
23 
24     IEnumerator Running()
25     {
26         tuoChe.path = path_tuoChe;
27         tuoChe.Position = 0;
28         yield return StartCoroutine(tuoChe.RotateTo(10, 0.424f, Quaternion.Euler(270f, 90f, 0)));
29         yield return StartCoroutine(tuoChe.RotateTo(5, 0.5f, Quaternion.Euler(270f, 0f, 0)));
30         yield return StartCoroutine(tuoChe.RotateTo(5, 1, Quaternion.Euler(270f, 0, 0)));
31         for (int i = tiles.Count - 1; i >= 0; i--)
32         {
33             tiles[i].path = path_tile;
34             tiles[i].Position = 0;
35             tiles[i].path.nodes[0] = tiles[i].transform.position;
36             tiles[i].path.nodes[tiles[i].path.nodes.Count - 1] = postions[tiles.Count - i - 1].transform.position;
37             yield return StartCoroutine(tiles[i].RotateTo(3, 1, Quaternion.Euler(0, 180f, 270f)));
38             yield return new WaitForSeconds(1);
39         }
40         yield return null;
41     }
42 }

代码是随便挑了一节贴上的,大致的用法,很明了很简单。

注:不过想在ITween Path上使物体匀速运动的话,一定要将路径的每一个节点之间的距离必须一致。

免责声明:文章转载自《Unity3D之使用ITween制作自动漫游超简单》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇(原创)CheckTool:CRC校验、累加和校验、异或和校验专业校验工具V1.1ansible 基本命令学习与踩坑下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

摄像头测距

摄像头测距 深度检测主要技术方法:  1.双目匹配(双RGB摄像头+可选的照明系统)  三角测量原理即目标点在左右两幅视图中成像的横坐标之间存在的差异(视差Disparity),与目标点到成像平面的距离成反比例的关系:Z = ft/d;得到深度信息。  双目匹配采用三角测量原理完全基于图像处理技术,通过寻找两个图像中的相同的特征点得到匹配点,从而得到深度值...

资源从3ds max导入UE4问题

1.先删掉灯光和相机。材质命名为英文,贴图也要英文取名,不能有中文,并且必须是JPG格式。并整理好组;删掉多余的物体,例如线2、坐标归零。并把材质转换为默认材质3、选中一个组,先unground,然后选中物体转换为mesh用插件转换,然后再给UVWmap4、全部完成后,另存文件5、导出文件格式为FBX,去点灯光,相机点,单位设置为厘米。...

Unity中Instantiate物体失效问题

才开始学Unity,开始总是这样用Instantiate函数: GameObject temp = (GameObject)Instantiate(bulletSource, transform.position, transform.rotation); 然后该类中定义一个共有变量如下: public GameObject bulletSource;...

FBX BlendShape/Morph动画解析

目前fbx 2015.1中支持三种变形器:skinDeformer,blendShapeDeformer,vertexCacheDeformer。定义在fbxdeformer.h中: enum EDeformerType {   eUnknown, //!< Unknown deformer type   eSkin, //!< Type Fb...

Cesium原理篇:3D Tiles(2)数据结构

      上一节介绍3D Tiles渲染调度的时候,我们提到目前Cesium支持的Cesium3DTileContent目前支持如下类型: Batched3DModel3DTileContent Instanced3DModel3DTileContent PointCloud3DTileContent Composite3DTileContent...

Unity技术面试题

一:什么是协同程序?答:在主线程运行时同时开启另一段逻辑处理,来协助当前程序的执行。换句话说,开启协程就是开启一个可以与程序并行的逻辑。可以用来控制运动、序列以及对象的行为。 二:Unity3d中的碰撞器和触发器的区别?答:碰撞器是触发器的载体,而触发器只是碰撞器身上的一个属性。当Is Trigger=false时,碰撞器根据物理引擎引发碰撞,产生碰撞的...