public GLScreen(Switch Ns, IGalRenderer Renderer) : base(1280, 720, new GraphicsMode(), "Ryujinx", 0, DisplayDevice.Default, 3, 3, GraphicsContextFlags.ForwardCompatible) { this.Ns = Ns; this.Renderer = Renderer; ScreenTex = new ScreenTexture(Ns, Renderer, 1280, 720); }
public GLScreen(Context Context, Switch Ns, IGalRenderer Renderer) : base(Context) { this.Ns = Ns; this.Renderer = Renderer; ScreenTex = new ScreenTexture(Ns, Renderer, 1280, 720); AutoSetContextOnRenderFrame = false; RenderOnUIThread = false; ContextRenderingApi = GLVersion.ES3; }
protected override void OnCreate(Bundle savedInstanceState) { base.OnCreate(savedInstanceState); Config.Read(); Renderer = new NullRenderer(); Ns = new Switch(Renderer); ScreenTex = new ScreenTexture(Ns, Renderer, 1280, 720); SetContentView(Resource.Layout.activity_main); Thread RenderThread = new Thread(Render); ImageView = FindViewById <ImageView>(Resource.Id.imageView); ImageBitmap = Bitmap.CreateBitmap(1280, 720, Bitmap.Config.Argb8888); DisplayMetrics DisplayMetrics = new DisplayMetrics(); WindowManager.DefaultDisplay.GetRealMetrics(DisplayMetrics); NxLog = FindViewById <TextView>(Resource.Id.nxLog); NxLog.MovementMethod = new ScrollingMovementMethod(); NxLog.LayoutParameters.Width = DisplayMetrics.WidthPixels; NxLog.LayoutParameters.Height = DisplayMetrics.HeightPixels - (int)(720 * 1.5); Button LoadRomButton = FindViewById <Button>(Resource.Id.loadRom); LoadRomButton.Click += async delegate { try { FileData FileInput = await CrossFilePicker.Current.PickFile(); if (FileInput == null) { return; } Ns.Os.LoadProgram(FileInput.FileName, FileInput.GetStream()); RenderThread.Start(); } catch (Exception e) { Logging.Error($"An exception has occured: {e.ToString()}"); } }; }