Skia
GLFW
Our great sponsors
Skia | GLFW | |
---|---|---|
43 | 61 | |
7,197 | 10,153 | |
1.7% | 1.5% | |
10.0 | 9.3 | |
12 days ago | 8 days ago | |
C++ | C | |
BSD 3-clause "New" or "Revised" License | zlib 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.
Skia
-
Ask HN: Is WASM (WebAssembly) getting adoption in real use cases?
Not specially something that you cannot do without WASM but at $WORK we are using a WASM build of Skia [0] to render canvas from nodejs.
Why use WASM ? Because we wanted to stay close to our stack (ie. calling wasm from nodejs). Do it work ? Yes, memory consumption is quite heavy though (each WASM module have its own heap that can quickly grow).
However we are looking to directly use Skia now and avoid the overhead of WASM so i think its a nice solution in the beginning but you might want to ditch it later on.
[0]: https://github.com/google/skia/tree/main/modules/canvaskit
-
SIMD intrinsics and the possibility of a standard library solution
I use SkVx from Skia. It uses compilers' vector extensions and few platform-specific intrinsics. If no vector extension available (e.g. msvc), a scalar implementation is provided in the hope that compiler can vectorize it.
-
Can you develop any type of desktop app with Flutter?
Regarding compiling to JS, you can compile dart to JS however when running Flutter on mobile platforms such as iOS or Android, you're not compiling to JS but instead you're using Dart to draw widgets on the screen via Flutter engine which uses a cross-platform graphics engine under the hood called Skia. If you're running on web on the other hand, your dart code would compile to vector graphics rendered within a canvas element in pure HTML.
-
Build desktop applications with JetBrains' new UI style and Compose Desktop
It built on a render framework named skia, JetBrains create a kotlin mapping which named skiko for it.
-
In One Minute : Flutter
Flutter applications are written in the Dart programming language, and can connect to platform languages such as Java, Kotlin, Swift, and Objective-C. Also, thanks to ffi support, it is possible to interact with the C code directly . Flutter itself is built with C, C++, Dart, and Skia (a 2D rendering engine).
-
JetBrains invites developers to join the Fleet Public Preview Program
Fleet does not use Compose, but it does use Skiko[1], which also provides binding for Skia[2] (the native graphics library also used by Chrome & Flutter).
The main difference between the libraries is that Skija provides Java/JVM bindings for Skia, whereas Skiko provides Kotlin bindings for Kotlin/JVM, Kotlin/JS, and Kotlin/Native targets. Of course Skiko's Kotlin/JVM bindings can be used with other JVM languages, not just with Kotlin.
-
Opinions on canvas(or canvas like capabilities) in React Native
RN Skia: https://github.com/Shopify/react-native-skia Skia itself: https://skia.org/
-
Modern.Forms: Cross-platform spiritual successor to Winforms for .NET 6
Yeahp, it renders the controls itself using skiasharp, which I believe uses skia
-
Alternatives to Cairo for 2d graphics for X11
If you want CPU rendering perhaps tiny-skia meets your needs? Also proper Skia is generally the Cairo alternative, though I dunno that its any easier to use or compile than Cairo is. Alternatively you could try Raqote or Piet.
-
How do you read a big project's source code?
First step: Read the documentation. I see at the bottom of the github page that there's a link, so I go there: https://skia.org/
GLFW
- ayuda OpengL
-
Cursor scaling on Wayland is not there yet
I recently started following the Learn OpenGL tutorial and noticed that when I create a window with GLFW in the Wayland GNOME session the cursor becomes much larger when hovering over the window. This is because a Wayland client is expected to define its own pointer (cursor) and that seems to lead to inconsistencies between implementations. I do not have a problem with CSD being default on Wayland (I even prefer it when done really well, like Telegram Desktop, or any GTK app with GtkHeaderBar) but the cursor switching scale while moving it over surfaces (windows) is much more jarring.
- Ayuda con OpenGL
-
I have trouble creating window In Ubuntu
I recall an issue specific to Wayland where windows only appear after the first command buffer is submitted. https://github.com/glfw/glfw/issues/1398
-
SDL, SFML, other libraries for game development in C++...?
GLFW - Windowing and Rendering
-
Dependency management with Cmake FetchContent
cmake_minimum_required(VERSION 3.11) project(my_project LANGUAGES CXX VERSION 1.0 ) include(FetchContent) FetchContent_Declare( glfw GIT_REPOSITORY "https://github.com/glfw/glfw" GIT_TAG dd8a678a66f1967372e5a5e3deac41ebf65ee127 ) message("Fetching glfw...") FetchContent_MakeAvailable(glfw) FetchContent_Declare( vulkan GIT_REPOSITORY "https://github.com/KhronosGroup/Vulkan-Hpp" GIT_TAG 429c4c522c65d10ec6df4633a1b78fc28aca7dc3 ) message("Fetching vulkan") FetchContent_MakeAvailable(vulkan) add_executable(my_project src/main.cpp) target_link_libraries(my_project PRIVATE glfw) target_link_libraries(my_project PRIVATE vulkan)
-
gamen: Cross-platform GUI window creation & management library in Go
gamen is just a window handling library, it is comparable to glfw & winit.
-
I love C! What are some areas that C is used for the most?
This is a personal thing, but I write all my code starting off using OpenGL with GLFW as my main library and GLAD as my plugin loader.
- Unable to utilize mouse input with GL_CURSOR_DISABLED
-
Adding a cylinder to an already built project
an alternative to GLUT is FreeGLUT, but the problem with that is that It's not as useful as GLFW still
What are some alternatives?
SDL - Simple Directmedia Layer
bgfx - Cross-platform, graphics API agnostic, "Bring Your Own Engine/Framework" style rendering library.
glad - Multi-Language Vulkan/GL/GLES/EGL/GLX/WGL Loader-Generator based on the official specs.
nanovg - Antialiased 2D vector drawing library on top of OpenGL for UI and visualizations.
Atomic Game Engine - The Atomic Game Engine is a multi-platform 2D and 3D engine with a consistent API in C++, C#, JavaScript, and TypeScript
Ogre 3D - scene-oriented, flexible 3D engine (C++, Python, C#, Java)
imgui - Dear ImGui: Bloat-free Graphical User interface for C++ with minimal dependencies
OpenSceneGraph - OpenSceneGraph git repository
Open-Source Vulkan C++ API - Open-Source Vulkan C++ API