public static void ToggleVideo() { if (_Video != -1) { if (_VideoEnabled) { _VideoEnabled = false; CVideo.VdClose(_Video); _Video = -1; CDraw.RemoveTexture(ref _CurrentVideoTexture); return; } if (CVideo.VdFinished(_Video)) { CVideo.VdClose(_Video); CDraw.RemoveTexture(ref _CurrentVideoTexture); _Video = -1; return; } } else { LoadVideo(); } }
public void Draw() { if (!_Finished) { float VideoTime = _VideoTimer.ElapsedMilliseconds / 1000f; _Finished = CVideo.VdFinished(_VideoStream); STexture tex = new STexture(-1); tex.height = 0f; CVideo.VdGetFrame(_VideoStream, ref tex, VideoTime, ref VideoTime); if (tex.height > 0) { CDraw.RemoveTexture(ref _VideoTexture); _VideoTexture = tex; } } RectangleF bounds = new RectangleF(0f, 0f, CSettings.iRenderW, CSettings.iRenderH); RectangleF rect = new RectangleF(0f, 0f, _VideoTexture.width, _VideoTexture.height); CHelper.SetRect(bounds, ref rect, rect.Width / rect.Height, EAspect.Crop); CDraw.DrawTexture(_VideoTexture, new SRectF(rect.X, rect.Y, rect.Width, rect.Height, CSettings.zFar / 4)); }