使用InfiniteRunner生成无限地形
https://assetstore.unity.com/packages/templates/systems/2d-3d-infinite-runner-engine-51328
这个插件是一些跑酷类游戏的原型,插件中也有各种应用场景的demo,不过我只需要用到无限连接的地形生成就行了
先随便整两个平面
然后添加这几个脚本
其中
LinkedSpawnedObject
说明这是个Linked
类型(可以连接)的物体,In和Out分别是连接的头和尾,这样在生成物体时就会自动帮我们把当前物体和前一个物体的尾连接起来PoolableObject
表示这是一个对象池的物体MovingObject
来让物体移动OutOfBoundRecycle
可以确定物体在距离回收范围多远后被回收
然后给一个物体添加MultipleObjectPooler
和LinkedSpawer
两个脚本,前者是对象池的设定,后者用来生成Linked
类型的物体
然后在另外一个物体上添加LevelManager脚本,然后在场景中编辑RecycleBounds
和DeathBounds
的范围
最后简单的效果就像这样
优化
场景
我又在资源商店里找到个音乐可视化的地形https://assetstore.unity.com/packages/vfx/particles/spells/living-particles-105817
以下是其中一个场景
这个场景也是一个个方形区域,正好用上面的InfiniteRunner
可以生成无限连续的场景
人物
搭配一个UnityChan的模型,并试给两个“光剑”设定手部为父物体
void Start () {
if (leftHand != null) {
transform.SetParent (leftHand);
}
if (rightHand != null) {
transform.SetParent (rightHand);
}
transform.localPosition=Vector3.zero;
}
现在的样子
而今天我的Kinect也终于到货了
摄像头视角是这样的
接下来的任务就是学习Kinect的使用,如何把现实中人的动作和模型绑定起来