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

Unity程序化地形生成代码报错:GUILayout不存在于当前上下文求修复

修复Unity Editor扩展中GUILayout未找到的问题

问题原因

GUILayout 类属于 UnityEngine 命名空间,你的代码仅引用了 UnityEditor 命名空间,未引入包含 GUILayout 的命名空间,导致编译器无法识别该类。

解决方案

在代码顶部添加 using UnityEngine; 引用即可。修复后的完整代码如下:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;  // 新增该命名空间引用
using UnityEditor;

[CustomEditor(typeof(MapGenerator))]
public class MapGeneratorEditor : Editor {
    public override void OnInspectorGUI() {
        MapGenerator mapGen = (MapGenerator)target;

        DrawDefaultInspector();

        if (GUILayout.Button("Generate")) {
            mapGen.GenerateMap();
        }
    }
}

额外注意事项

  • 确保该Editor扩展脚本放置在项目的 Editor 文件夹下,否则Unity会在运行时尝试编译该脚本,引发其他错误。
  • 若已添加 using UnityEngine; 仍报错,可检查脚本是否被意外排除在编译范围外,或重启Unity编辑器刷新编译环境。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.24 17:24:27