【Unity3D】Unity使用自己生成的DLL文件

目录

 

生成DLL文件

创建DLL类库工程

生成DLL文件

Unity使用DLL文件

 打版WebGL


生成DLL文件

创建DLL类库工程

【Unity3D】Unity使用自己生成的DLL文件_第1张图片

【Unity3D】Unity使用自己生成的DLL文件_第2张图片

测试的时候,如果有多个class,可以写到一个文件中;多个文件的没有测试

生成DLL文件

【Unity3D】Unity使用自己生成的DLL文件_第3张图片

【Unity3D】Unity使用自己生成的DLL文件_第4张图片

【Unity3D】Unity使用自己生成的DLL文件_第5张图片

 【Unity3D】Unity使用自己生成的DLL文件_第6张图片

Unity使用DLL文件

【Unity3D】Unity使用自己生成的DLL文件_第7张图片

放到Unity工程的Asset->Plugins文件夹下。“虽然”这个操作没有起作用,但是还是规范下比较好。

 【Unity3D】Unity使用自己生成的DLL文件_第8张图片

本地操作可以正常使用,但是后面的打包WebGL却有问题

 打版WebGL

出现过找不到DLLNotFond的问题;不报错但是读取配置文件,没有值的问题

【Unity3D】Unity使用自己生成的DLL文件_第9张图片

解决方案:主场景中创建一个空物体,将DLL文件挂载上去;

 public class MonoSingletonBase : MonoBehaviour where T : MonoBehaviour
    {
        private static object _singletonLock = new object();

        private static T _instance;

        public static T Instance
        {
            get
            {
                if (_instance == null)
                {
                    lock (_singletonLock)
                    {
                        T[] singletonInstances = FindObjectsOfType(typeof(T)) as T[];
                        if (singletonInstances.Length == 0) return null;

                        if (singletonInstances.Length > 1)
                        {
                            if (Application.isEditor)
                                UnityEngine.Debug.LogWarning(
                                    "MonoSingleton.Instance: Only 1 singleton instance can exist in the scene. Null will be returned.");
                            return null;
                        }

                        _instance = singletonInstances[0];
                    }
                }

                return _instance;
            }
        }
    }

【Unity3D】Unity使用自己生成的DLL文件_第10张图片

你可能感兴趣的:(Unity3D,unity,游戏引擎)