unity是个壮大的游戏引擎,尤其是他壮大的跨平台能力让他当作为很多游戏开辟者的首选引擎,下面我就就来进修一下若何用unity来建造一个传送门
起首我们成立一个unity工程,用来做我们测试的工程,然后我们成立一个简单的物体活动节制系统,这个可以鄙人面的经验里找到
1简单脚色节制
我们成立两个Cube,用来做传送用的地标
然后我们新建一个c#剧本,该剧本用于实现传送门的传送机制,操纵的是碰撞的检测后进行位置转移.
转移时需要计较相对位置,以免物体传送后进入信标内部
具体代码
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Script_chuansong : MonoBehaviour
{
public GameObject target;
// Start is called before the first frame update
void Start()
{
}
// Update is called once per frame
void Update()
{
}
void OnCollisionEnter(Collision collision)
{
Vector3 tempVec =(collision.gameObject.transform.position - this.transform.position)*1.1f;
if (collision.gameObject.name== "CubePlay") {
print(233);
collision.gameObject.transform.position = target.transform.position + tempVec;
}
}
}
最后将写好的剧本绑心猿意马到信标上,剧本有个空开属性,该属性是传送的方针游戏对象,我们把Cube_1的放置为Cube_2,Cube_2的放置为Cube_1,这样就可以实现互相传送了
这样当我们节制的脚色碰着信标时就会被传送的另一个信标旁边
0 篇文章
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!