doc: updated README

This commit is contained in:
Hermet Park 2025-03-15 13:39:42 +09:00
parent 44acb11fdc
commit ca3c0949b0
2 changed files with 15 additions and 10 deletions

View file

@ -41,19 +41,11 @@ The following list shows primitives that are supported by ThorVG: <br />
<img width="700" height="auto" src="https://github.com/thorvg/thorvg/blob/main/res/example_primitives.png">
</p>
ThorVG is designed for a wide range of programs, offering adaptability for integration and use in various applications and systems. It achieves this through a single binary with selectively buildable, modular components in a building block style. This ensures both optimal size and easy maintenance. <br />
<br />
<br/>
<p align="center">
<img width="700" height="auto" src="https://github.com/thorvg/thorvg/blob/main/res/example_structure.png">
</p>
If your program includes the main renderer, you can seamlessly utilize ThorVG APIs by transitioning drawing contexts between the main renderer and ThorVG. Throughout these API calls, ThorVG effectively serializes drawing commands among volatile paint nodes. Subsequently, it undertakes synchronous or asynchronous rendering via its backend raster engines. Currently, ThorVG provides its own implementation of multiple raster engines, allowing you to choose the one that best suits your app and system preferences.<br/>
<br/>
- CPU/SIMD (Software)
- OpenGL/ES
- WebGL
- WebGPU
<br />
ThorVG is adept at handling vector images, including formats like SVG, and it remains adaptable for accommodating additional popular formats as needed. In the rendering process, the library may generate intermediate frame buffers for scene compositing, though only when essential. The accompanying diagram provides a concise overview of how to effectively incorporate ThorVG within your system.<br />
If your program includes the main renderer, you can seamlessly utilize ThorVG APIs by transitioning drawing contexts between the main renderer and ThorVG. Throughout these API calls, ThorVG effectively serializes drawing commands among volatile paint nodes. Subsequently, it undertakes synchronous or asynchronous rendering via its backend raster engines. Additionally, ThorVG is adept at handling vector images, including formats like SVG, and it remains adaptable for accommodating additional popular formats as needed. In the rendering process, the library may generate intermediate frame buffers for scene compositing, though only when essential. The accompanying diagram provides a concise overview of how to effectively incorporate ThorVG within your system.<br />
<br />
<p align="center">
<img width="900" height="auto" src="https://github.com/thorvg/thorvg/blob/main/res/example_flow.png">
@ -65,6 +57,19 @@ The task scheduler has been meticulously crafted to conceal complexity, streamli
<p align="center">
<img width="900" height="auto" src="https://github.com/thorvg/thorvg/blob/main/res/example_thread.png">
</p>
Today, ThorVG provides its own implementation of multiple raster engines, allowing you to choose the one that best suits your app and system preferences.<br/>
<br/>
- CPU/SIMD (Software)
- OpenGL/ES
- WebGL
- WebGPU
<br/>
ThorVG is ahead of the curve, particularly in the web ecosystem. WebGPU introduces next-generation APIs similar to Vulkan, leveraging compute shaders and providing low-overhead, modern GPU access for more aggressive optimization strategies and broader applications. Building on this, ThorVG fully supports vector rendering features within its specification on top of WebGPU. Additionally, by abstracting underlying hardware graphics accelerations such as Metal, Vulkan, and DirectX, ThorVG ensures seamless adoption across various systems, regardless of the installed hardware accelerations.<br/>
<br/>
<p align="center">
<img width="700" height="auto" src="https://github.com/thorvg/thorvg/blob/main/res/example_webgpu.png">
</p>
ThorVG is actively under development, continuously expanding its support for essential platforms as needed. The major platforms currently supported include: <br />
<br />
<p align="center">

BIN
res/example_webgpu.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 105 KiB