react-native-skia icon indicating copy to clipboard operation
react-native-skia copied to clipboard

Show performance comparisons with alternatives

Open LifeIsStrange opened this issue 3 years ago • 1 comments

Description

Android native renderer use Skia since years and hence regular react native use Skia for canvas. React web and react-native-web use skia (although I'm not sure wether chromium canvas use skia or if they bypass it and do direct OpenGL/Vulkan + direct compositing)

The third way is to use react-native-web and to manually include the canvaskit library which is an indirect skia port via wasm.

Hence the only way (I believe) this library can differentiate is by using a different Skia configuration I believe, AKA not enabling the same skia optimization flags (there are many).

So documenting the differing skia flags would be informative but essentially empirical data is needed aka a good old benchmark.

LifeIsStrange avatar Aug 17 '22 13:08 LifeIsStrange

When talking about React Native Skia performance, there are a lot of things to consider, and indeed we should have a documentation page on that topic. The goal would be to be transparent and informative about what the module does, how it does it, and what the trade-offs are there.

wcandillon avatar Aug 17 '22 14:08 wcandillon

Closing this issue as we don't plan to compare this library to alternative libraries. However we did publish a blog entry about our new UI-thread renderer and why it is one to two order of magnitude after than the previous renderer: https://shopify.engineering/react-native-skia-2022

Since we also released UI-thread-level integration with Reanimated: https://shopify.github.io/react-native-skia/docs/animations/reanimated

wcandillon avatar Mar 30 '23 07:03 wcandillon