如何实现unity函数的再次封装?

来源:互联网 发布:学而知不足,思而得远虑 编辑:程序博客网 时间:2024/06/12 20:11
这里我将用unity内的Debug打印方法为例进行封装:

1.新建一个unity工程项目;


2.新建一个脚本Debugger.cs;
using UnityEngine;
using System.Collections;

public class Debugger {
    //是否调试打印的开关
    public static bool isOpenDebugger = false;

    public static void Log(object message)
    {
        Log(message, null);
    }
    public static void Log(object message, UnityEngine.Object context)
    {
        if (isOpenDebugger)
        {
            Debug.Log(message, context);
        }
    }
    public static void LogError(object message)
    {
        LogError(message, null);
    }
    public static void LogError(object message, UnityEngine.Object context)
    {
        if (isOpenDebugger)
        {
            Debug.LogError(message, context);
        }
    }
    public static void LogWarning(object message)
    {
        LogWarning(message, null);
    }
    public static void LogWarning(object message, UnityEngine.Object context)
    {
        if (isOpenDebugger)
        {
            Debug.LogWarning(message, context);
        }
    }
}
3.打开VS,新建一个类库项目

4.更改新建后的项目类名为Debugger,并且将unity项目中Debugger类中的内容复制到VS新建的类库项目当中;


注意修改红色箭头部分类名保持一致;

5.到这里后,我们需要添加UnityEngine引用;
回到unity工程中找到Debugger类打开,在右侧解决方案引用中找到UnityEngine,点击选中后在属性中复制路径

6.复制完路径后,回到VS类库项目中,按下图步骤操作:



输入路径,按回车键后,找到UnityEngine.dll文件添加;
7.在vs类库项目中Debugger类里面,引用 using UnityEngine;
8.在VS项目菜单栏找到“生成”,点击进入“生成解决方案”,生成成功后,在右侧解决方案中,右键点击项目名称SystemDebugger,在下拉菜单中点击“在文件资源管理器中打开文件夹”,点开bin文件夹==>Debug==>复制SystemDebugger.dll文件到unity工程中;


9.最后看下结果,并且点击打印结果看看是否是 回到你打印的地方(如果不打包成dll文件,点击测试结果是不会回到你输出的代码那里的);




1 0