ホームCross-platformTencent/tgfx
// archived 2026-04-27
Tencent

tgfx

Other#Graphics#C++#Rendering#Cross-platform#OpenGL
GitHub で見る →
1,532

// 概要

TGFX は、モダンな GPU レンダリング向けに設計された、軽量かつ高性能な 2D グラフィックスライブラリです。Skia などの従来の代替品よりもバイナリサイズを抑えつつ、テキスト、画像、ベクターグラフィックスを強力にサポートします。本ライブラリは Tencent の様々な製品で広く採用されており、iOS、Android、Windows、Web を含む主要なオペレーティングシステムに対応しています。

// 技術解説

TGFX (Tencent Graphics) は、モバイル、デスクトップ、Web を含む多様なプラットフォームでモダンな GPU アクセラレーションを実現するために設計された、軽量かつ高性能な 2D グラフィックスライブラリです。Skia に代わる機能豊富な選択肢として開発され、テキスト、画像、ベクターグラフィックスの堅牢なレンダリング機能を維持しつつ、バイナリサイズを大幅に削減することを特に重視しています。このプロジェクトは C++17 アーキテクチャを採用しており、レンダリングバックエンドに対してモジュール式のアプローチをとることで、OpenGL、WebGL、そして Metal や Vulkan への対応といった抽象化レイヤーを通じてクロスプラットフォームの互換性を確保しています。

// 主要ハイライト

01
iOS、Android、macOS、Windows、Linux、OpenHarmony、Web を含む主要プラットフォームにおいて、テキスト、画像、ベクターグラフィックスの高性能な 2D レンダリングを提供します。
02
Skia の軽量な代替として設計されており、レンダリング機能を犠牲にすることなくバイナリサイズの最小化に注力しています。
03
OpenGL、OpenGL ES、WebGL を含む幅広いモダンなレンダリングバックエンドをサポートし、Metal、Vulkan、WebGPU に向けた開発も積極的に行われています。
04
vendor_tools と CMake を使用した統合ビルドシステムを提供しており、開発者は特定のプラットフォームを容易にターゲットとし、xcframeworks などのアーティファクトを生成できます。
05
サポートされているすべてのプラットフォーム向けの包括的なデモプロジェクトが含まれており、開発者は提供されたテストケースを通じてレンダリング機能のテストや API の使用方法を確認できます。
06
公式の vcpkg ポートファイルを提供しており、依存関係の管理や既存の C++ プロジェクトへの統合を簡素化します。

// ユースケース

01
テキスト、画像、ベクターグラフィックスの高性能な 2D レンダリング
02
モバイル、デスクトップ、Web アプリケーション向けのクロスプラットフォームなグラフィックスエンジン
03
リソースが制限された環境における Skia の軽量な代替手段

// クイックスタート

まず、環境が C++17 の要件を満たしていることを確認し、CMake、Ninja、Node.js などの必要なビルドツールをインストールしてください。提供されている 'depsync' ツールを使用してサードパーティの依存関係を同期し、特定のプラットフォームディレクトリ (例: 'ios/'、'android/'、'web/') に移動して、提供されたスクリプトや IDE 設定を使用してデモプロジェクトをビルドします。また、ルートディレクトリで 'build_tgfx' コマンドを使用して、ターゲットプラットフォーム向けにライブラリをコンパイルすることも可能です。