コード例 #1
0
ファイル: CameraMovement.cs プロジェクト: MoePus/CameraPlus
        public static void CreateExampleScript()
        {
            string path = Path.Combine(UnityGame.UserDataPath, Plugin.Name, "Scripts");

            if (!Directory.Exists(path))
            {
                Directory.CreateDirectory(path);
            }
            string defaultScript = Path.Combine(path, "ExampleMovementScript.json");

            if (!File.Exists(defaultScript))
            {
                File.WriteAllBytes(defaultScript, Utils.GetResource(Assembly.GetExecutingAssembly(), "CameraPlus.Resources.ExampleMovementScript.json"));
            }
        }
コード例 #2
0
        private SaberSalient()
        {
            if (SaberSalientNative.Init(out native) != 0)
            {
                native = IntPtr.Zero;
                throw new ExternalException("Could not init native saber-saliend.dll");
            }
            mvpTransformRaw = new float[16];
            mvpTransform    = Matrix4x4.identity;

            positionRaw = new float[3];
            rotationRaw = new float[9];
            mvTransform = Matrix4x4.identity;
            pTransform  = Matrix4x4.zero;

            if (SaberSalientNative.GetCameraIntrinsics(native, Camera) != 0)
            {
                throw new ExternalException("Could not get camera intrinsics in native saber-saliend.dll");
            }

            Logger.Log("Initialized SaberSalient camera: " + Camera.width + " " + Camera.height);
            float near = 0.1f;
            float far  = 10.0f;

            pTransform.m00 = 2 * Camera.fx / Camera.width;
            pTransform.m11 = 2 * Camera.fy / Camera.height;
            pTransform.m22 = -(far + near) / (far - near);
            pTransform.m32 = -1;
            pTransform.m23 = 2 * far * near / (near - far);

            CurrentColorTex = new Texture2D(Camera.width, Camera.height, TextureFormat.ARGB32, false, false);
            CurrentDepthTex = new Texture2D(Camera.width, Camera.height, TextureFormat.RFloat, false, true);
            bufferSize      = Camera.width * Camera.height * 4;

            ab = AssetBundle.LoadFromMemory(Utils.GetResource(System.Reflection.Assembly.GetExecutingAssembly(), "CameraPlus.Resources.sabersalient"));
            // AssetBundle.LoadFromFile("G:\\prorgamming\\CameraPlus\\CameraPlus\\Resources\\sabersalient");
            if (ab == null)
            {
                throw new NullReferenceException("SaberSalientOverlayed - No AssetBundle!");
            }
        }