engine
Skia
engine | Skia | |
---|---|---|
53 | 59 | |
7,532 | 9,636 | |
- | 1.6% | |
10.0 | 9.9 | |
26 days ago | 3 days ago | |
C++ | C++ | |
BSD 3-clause "New" or "Revised" License | BSD 3-clause "New" or "Revised" License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
engine
-
Skia Canvas: Browser-Less Implementation of the HTML Canvas Drawing API for Node
Impeller - Flutter’s rendering library that replaces Skia on iOS and Android - is working on a C API: https://github.com/flutter/engine/blob/main/impeller/toolkit...
-
We're forking Flutter. This is why
https://github.com/flutter/engine/graphs/contributors
- Flutter GPU
-
Show HN: 3D rendering toolkit for Flutter and/or Dart
We are aware that these priorities might change in the future. There have been sanity checks to ensure that the Impeller API can be ported to WASM and also that Impeller shaders can be compiled to WGSL for eventual WebGPU support.
https://github.com/flutter/engine/blob/main/impeller/docs/fa...
-
Ten Years of “Go: The Good, the Bad, and the Meh
https://github.com/flutter/engine/blob/main/impeller/docs/fa...
Impeller is the Skia replacement and is in full c++ that supports all platform.
It will be great if Go team can work with them(both are in Google) and make Impeller a render engine for Go.
With this no more bloated electron.js and no more Java/Swing or Qt, what a dream for the day.
-
The performance of the impeller engine
Likely it's https://github.com/flutter/engine/pull/41168 that fixed it, which got cherry picked into that commit.
-
Flutter embedded
Depends on what you want to do. The best documentation for writing the code where the engine should run in is in this header file.
-
Is Impeller now enabled by default on iOS?
Performance on large-screen and also high-refresh rate iPads was definitely a blind spot during the preview. We've done a ton of work to plug that gap since the preview though. Framebuffer fetch for advanced blends, improvement to blur performance, and using half-precision in performance critical shaders are just some of the improvements driven by these findings.
-
Ubuntu is now using Flutter for its installer
Yes. We use ATK for accessibility. FlAccessibleNode is where SemanticsNode and friends are exposed as ATK objects.
- Make textures thread-safe on linux
Skia
- Better text rendering in Chromium-based browsers on Windows
-
Skia Canvas: Browser-Less Implementation of the HTML Canvas Drawing API for Node
If you're interested in node-compatible canvas implementations, there are several:
* canvaskit-wasm, from the skia project. I don't think it's gpu-accelerated: https://github.com/google/skia/tree/main/modules/canvaskit/n...
* @napi-rs/canvas. This is the fastest binding: https://github.com/Brooooooklyn/canvas?tab=readme-ov-file#pe...
* node-canvas. Uses Cairo instead of Skia: https://github.com/Automattic/node-canvas
-
Web Browser Engineering
Yes [4].
> [1] The library is used as of 2023 in Google Chrome, ChromeOS, ChromiumOS, Mozilla Firefox, Mozilla Thunderbird, Android, Firefox OS, Flutter,[5] Avalonia (from Alpha 4), LibreOffice (from version 7.0) and RAD Studio[6](since version 12.0).
> [2] Changes to the Skia repository will be rolled into Chromium by the AutoRoll bot several times per day.
> [3] It serves as the graphics engine for Google Chrome and ChromeOS, Android, Flutter, and many other products.
[1]: https://en.wikipedia.org/wiki/Skia_Graphics_Engine
[2]: https://skia.org/docs/dev/chrome/
[3]: https://skia.org/
[4]: https://github.com/chromium/chromium/tree/main/skia
-
Skia VS nitro-gl - a user suggested alternative
2 projects | 21 Aug 2023
- The Future of the Web Is VNC
- Cairo – Open-Source 2D Graphics Layer/API with Fonts and Many Back-Ends
-
Lottie under the hood
Actually, that's not entirely accurate. The lottie-web library itself doesn't support rendering to WebGL. However, there is a package called canvaskit-wasm that wraps Skia (a graphics engine) with WebAssembly (wasm). This package includes a module called skottie which supports rendering animations into a WebGL surface. However, there is a drawback with this approach: using wasm requires loading a relatively large package, and it's uncertain whether all features are supported correctly, as the official compatibility table that tracks lottie support on different platforms does not include skottie.
-
Widely-used graphics library
Skia is pretty great if you can get it running.
- Vivaldi 6.0 Web Browser Introduces Tab Workspaces and Custom Icons
-
Due to popular demand, here’s part 2
The imgs are mainly used by Tencent QQ and Baidu Tieba users. QQ and Tieba compress imgs by default, so the popular imgs (in China we call them "屌图" or "表情包") would be compressed million of times during the spreading, causing the super low quality. These APPs on Android are using Skia for image processing, which suffering from a legendary bug: result would be more green. The bug was fixed in 2016: https://github.com/google/skia/commit/c7d01d3e1d3621907c27b283fb7f8b6e177c629d
What are some alternatives?
awesome-tauri - 🚀 Awesome Tauri Apps, Plugins and Resources
bgfx - Cross-platform, graphics API agnostic, "Bring Your Own Engine/Framework" style rendering library.
blurhash - A very compact representation of a placeholder for an image.
GLFW - A multi-platform library for OpenGL, OpenGL ES, Vulkan, window and input
website - Flutter documentation web site
nanovg - Antialiased 2D vector drawing library on top of OpenGL for UI and visualizations.