ShapoGFX
GitHub
|
demo2d
|
demo3d
はじめに
概要
ShapoGFX とは
名前空間と構成
対応ピクセルフォーマット
主要な制約
3D レンダラ
2D API
共通
性能の目安
ライセンス
導入
必要なもの
インストール
CMake で使う
PlatformIO で使う
CMake も PlatformIO も使わない
コンパイル時オプション
バージョン
プラットフォーム別の設定
最小のサンプル: 2D
最小のサンプル: 3D
ツールとドキュメントの依存パッケージ
2D グラフィックス (shapoco::gfx2d)
ピクセルフォーマットと色
PixelFormat
BlendMode
補助関数
Color (ARGB8888)
フォーマット別の変換
ピクセルカーソル
テンプレート補助
例: 手書きのループで市松模様を書く
Surface と Texture
Texture (読み取り専用画像)
Surface (書き込み可能な画像)
補助関数
OwnedSurface (任意)
Graphics2D
概要
メモリとステート
描画先とクリップ
変換行列
ブレンドとカラーキー
ピクセルと矩形
楕円と円
円弧と扇形
線と多角形
画像
ビットマップ
文字
GraphicsState2D / TextState
実装上の注意
フォント
GFXfont 形式
同梱フォント
使い方
ボーンアニメーション (rig)
用語
データ構造
アニメーション
Instance
姿勢の計算
描画
コンパイル時オプション
性能の目安
対応していない機能
3D グラフィックス (shapoco::gfx3d)
3D レンダラの概念
描画の流れ
座標系
ライティングとマテリアル
半透明
点と線
レイヤ
背景
透視補正
省略できる機能
メモリ
三角形が破棄される条件
複数インスタンス
Graphics3D API
データ構造
Vertex / VertexBuffer
Texture
Material
Primitive
Config / LayerFlags
Stats
初期化
シーンの構築
ライトと背景
投影
レンダリング
形状と静的シーン
使用例: 帯状レンダリングと統計
使用例: デュアルコア
統計の確認
基本形状
共通の規約
関数一覧
実装とコスト
静的シーン (Mesh / Node / Scene)
概要
構造体
描画関数
NodeVisitor
メモリ安全性について
ベクトルと行列
2D 型 (
shapoco::gfx2d
)
affine2f
3D 型 (
shapoco::gfx3d
)
vec3f
mat4f
ツール
img2cpp: 画像を C++ コードに変換する
オプション
出力
共通モジュール
gltf2cpp: glTF モデルを C++ コードに変換する
オプション
対応する glTF の機能
出力の構成
サイズの目安
ワークフローの例
dbones2cpp: DragonBones のアーマチュアを C++ コードに変換する
オプション
入力
透過の扱い
アトラス
余白の削減
出力の構成
対応していない機能
性能のためのオプションの選び方
ワークフローの例
その他
サンプル
ブラウザで動くデモ
ソース
WASM のビルド
M5Stack 版 demorig
新しいデモを作る
ShapoGFX
索引
Edit on GitHub
索引