public EglInterface(WindowingService ws) { // vsync is enabled by default in EGL _vsyncState = VSyncState.On; ws.InitializeOpenGl(); _wwsd = (WaylandWindowingServiceData)ws.GetPlatformData(); LoadMethods(); }
public override bool SetVSyncImpl(VSyncState state) { if (state == VSyncState.Adaptive) { WindowingService.LogError("Adaptive VSync is not supported on EGL."); return(false); } var result = EGLSwapInterval(_wwsd.EGLDisplay, (int)state); if (result) { _vsyncState = state; } else { LogError("eglSwapInterval"); } return(result); }
/// <summary> /// Set VSync state. /// </summary> public static bool SetVSync(VSyncState state) => _impl.SetVSyncImpl(state);
public abstract bool SetVSyncImpl(VSyncState state);
public override bool SetVSyncImpl(VSyncState state) { return(WglSwapIntervalEXT?.Invoke((int)state) ?? false); }