You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Unity场景重载后道路生成脚本失效问题求助

无限跑酷道路生成脚本重载关卡后失效的解决方案

问题核心分析

重载关卡后,初始道路块可能直接处于「road creator」触发器内部,而OnTriggerExit仅在对象从触发器内移动到外部时触发——第一次运行时道路是从外到内再离开,但重载后初始状态就在触发器里,没有触发前置的OnTriggerEnter,自然不会触发Exit逻辑。此外还有标签错误、重复生成位置重叠、碰撞器状态异常等可能。

具体解决办法

  • 补全初始触发逻辑
    在脚本中添加Start()方法,主动检查初始状态是否在触发器内,若在则直接生成道路,同时修改生成位置逻辑避免重复重叠:

    using System.Collections;
    using System.Collections.Generic;
    using UnityEngine;
    
    public class roadGenerator : MonoBehaviour
    {
        public GameObject road;
        private Vector3 _nextSpawnPos = new Vector3(200, 0, 0);
    
        private void Start()
        {
            // 检查当前道路是否在road creator触发器内
            Collider[] triggerColliders = Physics.OverlapCollider(GetComponent<Collider>());
            foreach (var col in triggerColliders)
            {
                if (col.CompareTag("roadGenerator"))
                {
                    InstantiateRoad();
                    break;
                }
            }
        }
    
        private void OnTriggerExit(Collider other)
        {
            if (other.CompareTag("roadGenerator"))
            {
                InstantiateRoad();
            }
        }
    
        private void InstantiateRoad()
        {
            Instantiate(road, _nextSpawnPos, Quaternion.identity);
            // 假设单段道路长度为200,每次生成位置后移对应长度
            _nextSpawnPos += new Vector3(200, 0, 0);
        }
    }
    
  • 校验标签与碰撞器设置

    • 确认「road creator」对象的标签是roadGenerator,且其碰撞器勾选了Is Trigger
    • 道路预制体的碰撞器未勾选Is Trigger,且enabled状态为开启
    • 替换other.gameObject.tag == "roadGenerator"为other.CompareTag("roadGenerator"),避免空引用报错
  • 修复碰撞器状态异常
    重载关卡时碰撞器可能被意外禁用,在Start()中主动启用:

    private void Start()
    {
        GetComponent<Collider>().enabled = true;
        GameObject roadCreator = GameObject.FindGameObjectWithTag("roadGenerator");
        if (roadCreator != null)
        {
            roadCreator.GetComponent<Collider>().enabled = true;
        }
        // 其他初始检查逻辑...
    }
    

内容的提问来源于stack exchange,提问作者Gobhniu

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.25 21:54:18