/// <summary> /// 後片付け /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void WindowClosed(object sender, EventArgs e) { renderer.Finalize(); renderer.Delete(); if (renderer != null) // { // renderer.Dispose(); renderer = null; // } }
/// <summary> /// 初期化処理 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void WindowSourceInitialized(object sender, EventArgs e) { //ウィンドウハンドル取得 IntPtr hWnd = new WindowInteropHelper(this).Handle; renderer = new CRenderer(); renderer.New(); renderer.SetWindow(hWnd); renderer.Initialize(); //描画クラスの作成 // renderer = new GLRenderer(hWnd); // renderer.Initialized(); // renderer.SizeChanged(RenderSize);//一度リサイズしておく //タイマー timer = new DispatcherTimer(); timer.Tick += new EventHandler(DispatcherTimerTick); timer.Interval = new TimeSpan(0, 0, 0, 0, 16); // 16msecで描画 timer.Start(); }