Uno: SkiaSharp Support

Created on 21 Jun 2019  路  9Comments  路  Source: unoplatform/uno

This issue is a meta issue for the tracking of the SkiaSharp support for Uno in general, and WebAssembly specifically.

Fixes https://github.com/nventive/Uno/issues/1070

epic kinenhancement projecthird-party triagmost-wanted

Most helpful comment

It is coming folks!!! Very soon!!!

Progress is here: https://github.com/mono/SkiaSharp/pull/1333

_Just_ got the WebGL views to work!

All 9 comments

See also https://platform.uno/skiasharp-support-for-webassembly-via-uno-platform/ for a status update.

Uno Platform
Today we are proud to announce that the Uno Platform now has initial support for Skia via the聽Uno.SkiaSharp.Views package which was published to NuGet moments ago.

Just thought I'd check in here and see how things are going. I'm very interested in pure C#+Skia. It looks like the WebGL issue hasn't progressed since June. Can anyone provide a bit of a status report? Thanks!

Hi @EisenbergEffect, thanks for asking! The WebGL update is still on the roadmap, we've announed it at UnoConf for future work.

At this time, the bulk of the work is stabilizing the SkiaSharp support for Wasm using software rendering, and there was an update today that includes a lot of changes made for the past few months in the official SkiaSharp repo.

@jeromelaban Thanks for the update. Please ping this issue when WebGL rendering drops. I'd love to give it a try. I've been using CanvasKit WebGL with TypeScript quite a bit this year and I'd like to compare the experience and performance to an equivalent C# implementation of my work.

It is coming folks!!! Very soon!!!

Progress is here: https://github.com/mono/SkiaSharp/pull/1333

_Just_ got the WebGL views to work!

Just more info, the Uno views for Android, iOS and macOS are already out: https://www.nuget.org/packages/SkiaSharp.Views.Uno

This is just the raster/CPU views at this time. GPU/OpenGL views are coming soon. Working on getting the WASM raster out first.

SkiaSharp for Uno Platform is a set of views that can be used to draw on the screen.

This issue can now be closed as the support is now being added in the official SkiaSharp repo.

@mattleibow I'll make a PR to add support for Uno 3.0 soon.

@jeromelaban Would you mind clarifying status and capabilities a bit more please? For example, is it now possible to write C# Skia code and compile to WASM? Can it be done with "vanilla" C# and WASM builds or is Uno required? Is it raster only or GPU?

On Wasm, it is possible to use SkiaSharp with Uno.Wasm.Bootstrap projects (vanilla, in some sense), as well as full Uno projects using SKXamlCanvas. The implementation provided in the official repo supports both raster and GPU.

Note that at this point, Uno does not yet support using Skia as a rendering backend.

Was this page helpful?
0 / 5 - 0 ratings