public static void InitializeScene(ref CommonInfo commonInfo)//该函数初始化的时候只执行一次,是按下I键后启动
        {
            CudaUtil.OpenDebugConsole();

            CudaUtil.InitializeResources(CommonInfo.Width, CommonInfo.Heght, 64);

            CudaUtil.AddBufferMap(commonInfo.frame_buffer0_data.Scan0);
            CudaUtil.AddBufferMap(commonInfo.frame_buffer1_data.Scan0);
            CudaUtil.AddBufferMap(commonInfo.picking_buffer_data.Scan0);

            commonInfo.frameBuffer0.UnlockBits(commonInfo.frame_buffer0_data);
            commonInfo.frameBuffer1.UnlockBits(commonInfo.frame_buffer1_data);
            commonInfo.pickingBuffer.UnlockBits(commonInfo.picking_buffer_data);

            Point3[] points = new Point3[3];
            points[0] = new Point3(-1.0f, 0.0f, -15.0f);
            points[1] = new Point3(1.0f, 0.0f, -15.0f);
            points[2] = new Point3(0.5f, 1.0f, -15.0f);

            Point2[] uv = new Point2[3];
            uv[0] = new Point2(0.0f, 0.0f);
            uv[1] = new Point2(1.0f, 0.0f);
            uv[2] = new Point2(0.5f, 1.0f);

            //CudaUtil.AddTriangle(Color.White, points, uv);
            CudaUtil.AddSphere(new Point3(0.0f, 0.0f, -5.0f), Color.White, 2.0f);
            CudaUtil.AddSphere(new Point3(4.0f, 0.0f, -5.0f), Color.White, 2.0f);
            CudaUtil.AddPlane(new Point3(0.0f, -2.0f, 0.0f), Color.White, new Normal(0.0f, 1.0f, 0.0f));

            CudaUtil.AddTexture("C:\\Users\\Hordr\\source\\repos\\CavakazeRenderer\\CavakazeRenderer\\bin\\Debug\\Textures\\albedo.png");
            CudaUtil.AddTexture("C:\\Users\\Hordr\\source\\repos\\CavakazeRenderer\\CavakazeRenderer\\bin\\Debug\\Textures\\normal.png");
            CudaUtil.AddTexture("C:\\Users\\Hordr\\source\\repos\\CavakazeRenderer\\CavakazeRenderer\\bin\\Debug\\Textures\\metallic.png");
            CudaUtil.AddTexture("C:\\Users\\Hordr\\source\\repos\\CavakazeRenderer\\CavakazeRenderer\\bin\\Debug\\Textures\\roughness.png");
            CudaUtil.AddTexture("C:\\Users\\Hordr\\source\\repos\\CavakazeRenderer\\CavakazeRenderer\\bin\\Debug\\Textures\\ao.png");
            CudaUtil.GenerateTextureList();
            CudaUtil.SetPrimitiveDesinyPBRMaterial(0, 0, 1, 2, 3, 4);
            CudaUtil.SetPrimitiveDesinyPBRMaterial(1, 0, 1, 2, 3, 4);
            CudaUtil.SetPrimitiveDesinyPBRMaterial(2, 0, 1, 2, 3, 4);
            CudaUtil.GenerateScene();
        }
 public override void AddToCuda()
 {
     CudaUtil.AddSphere(centre, materialColor, radius);
 }