Unity怎么弄传送门
1、首先我们建立一个unity工程,用来做我们测试的工程,然后我们建立一个简单的物体运动控制系统,这个可以在下面的经验里找到

2、我们建立两个Cube,用来做传送用的地标

3、然后我们新建一个c#脚本,该脚本用于实现传送门的传送机制,利用的是碰撞的检测后进行位置转移.
转移时需要计算相对位置,以免物体传送后进入信标内部

4、具体代码
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;
}
}
}

5、最后将写好的脚本绑定到信标上,脚本有个空开属性,该属性是传送的目标游戏对象,我们把Cube_1的放置为Cube_2,Cube_2的放置为Cube_1,这样就可以实现互相传送了



6、这样当我们控制的角色碰到信标时就会被传送的另一个信标旁边

