static void Main(string[] args) { //// Kinect //using (var k = new KinectCapturer(new RawAudioTransport(null), new RawVideoTransport(null))) //{ // k.Initialize(); // k.Start(); // Thread.Sleep(new TimeSpan(0, 0, 13)); // k.Stop(); //} // MME + DirectShow var dummyTransport = new DummyTransport(); using (var m = new MmeCapturer(new RawAudioTransport(dummyTransport))) using (var d = new DirectShowCapturer(new RawVideoTransport(dummyTransport))) { m.Initialize(); d.Initialize(); m.Start(); d.Start(); Thread.Sleep(new TimeSpan(0, 0, 13)); m.Stop(); d.Stop(); } }
protected override void OnLoad(EventArgs e) { var realGame = new RealGame(this, panelSimulator, panelSimulatorBlocks, panelDanger, labelLinesCleared, labelDanger); tetrisPlayer = new Player(realGame, realGame); for (int i = 0; i < Tetrimino.All.Length; i++) { var beest = Tetrimino.All[i]; Console.WriteLine($"{i}:"); Console.WriteLine(beest.ToString()); var result = beest.RotateCW(); Console.WriteLine(result.ToString()); var result2 = result.RotateCW(); Console.WriteLine(result2.ToString()); var result3 = result2.RotateCW(); Console.WriteLine(result3.ToString()); var result4 = result3.RotateCW(); Console.WriteLine(result4.ToString()); if (!beest.Equals(result4)) { throw new Exception("Error"); } } if (true) { var dsc = new DirectShowCapturer(this, pictureBox1, (bmp) => { var nextBlocks = TetrisDetectorCalculator.ScreenRefreshed(null, bmp, panel1, panel2); realGame.LoadCapturedGameData(nextBlocks); }); } else { var dsc2 = new FakeDetector("testimage.png", this, pictureBox1, (bmp) => { var nextBlocks = TetrisDetectorCalculator.ScreenRefreshed(null, bmp, panel1, panel2); realGame.LoadCapturedGameData(nextBlocks); }); } ReloadComPorts(); base.OnLoad(e); }