AI支援開発のためのクロスプラットフォームグラフィックステストワークフロー

✍️ OpenClawRadar📅 公開日: March 30, 2026🔗 Source
AI支援開発のためのクロスプラットフォームグラフィックステストワークフロー
Ad

CIテストのためのクロスプラットフォームグラフィックツールチェーン

r/ClaudeAIの開発者が、GPUハードウェアなしのLinux CIランナー上でWindowsグラフィックスコードをテストするワークフローを詳述しました。このアプローチは、特定のツールチェーンを使用してDirect3Dアプリケーションを完全にソフトウェア上でコンパイル・実行します。

ツールチェーンスタック

ワークフローは以下のパイプラインに従います:

  • D3D11/D3D12コードと#ifdef _WIN32ディレクティブを含むC++ソース
  • → MinGW-w64(Windows .exeへのクロスコンパイル)
  • → Wine(Linux上で.exeを実行)
  • → DXVK / VKD3D-Proton(D3D → Vulkanへの変換)
  • → Lavapipe(CPU上のソフトウェアVulkan)
  • → llvmpipe(CPUラスタライゼーション)
  • → フレームバッファ出力(GPU不要)

各レイヤーの役割

  • MinGW-w64 — LinuxからネイティブWindows PEバイナリ(.exe)を生成するGCCベースのクロスコンパイラ
  • Wine — 実行時にWindowsシステムコールとWin32 API呼び出しをLinux相当のものに変換
  • DXVK — D3D11 API呼び出しをVulkan呼び出しに変換(Steam Protonと同じ技術)
  • VKD3D-Proton — 同じコンセプトだがD3D12 → Vulkan用
  • Lavapipe — MesaのソフトウェアVulkan ICD — CPU上で完全に動作する完全なVulkanドライバ
  • llvmpipe — Lavapipeが委譲する基盤となるMesaソフトウェアラスタライザ
Ad

重要な洞察

これはエミュレーションやモックではありません。C++コードは、実際のWindows上でMSVCがコンパイルするのと全く同じ_WIN32コードパスです。MinGWは同じABIをターゲットにします。Wine + DXVKは実際のD3D11/D3D12 APIサーフェスを提供します。Lavapipeは実際のVulkanドライバです — ただGPUではなくCPU上で動作するだけです。テストがこのスタックを通過すると、スタブではなく実際のWindowsグラフィックス初期化パスを実行します。

インストール要件

開発者は以下の3つのパッケージのみが必要と述べています:

sudo apt-get install mingw-w64 wine64 mesa-vulkan-drivers

これはGitHub Actionsランナーや安価なVPSインスタンスを含む、あらゆるLinuxボックス上で動作します。

より広いワークフローコンテキスト

開発者は完全にスマートフォンからコーディングし、すべての変更をGitHubにコミットします。そこでCI Actionsがコンパイル、テスト、レポートを行います。検証パイプラインには複数のコンパイラ、サニタイザー(ASan、UBSan、TSan、MSan)、静的解析ツール、約2,000のユニットテストが含まれます。Claudeがコードを書き、プッシュし、CIが問題を捕捉します。他のCIパイプラインコンポーネント(GCC、Clang、MSVC、5つのサニタイザー設定、clang-tidy、clang-format、カバレッジレポート)と組み合わせることで、手動レビューの前にほとんどの問題を捕捉できます。

📖 Read the full source: r/ClaudeAI

Ad

👀 See Also

OpenClaw、Alexa、ローカルLLMを使った音声アシスタントの構築
Use Cases

OpenClaw、Alexa、ローカルLLMを使った音声アシスタントの構築

ある開発者が、OpenClawをAIエージェントのバックボーンとして使用し、音声入力にAlexaを、ローカルLLM(Qwen 2.5 3Bを搭載したOllama)を一般知識クエリの処理に用いて、サブ秒の応答時間とAPIコスト削減を実現した音声ファーストアシスタントを構築しました。

OpenClawRadar
ユーザーがClaude自体を使ってClaudeチャットエクスポート用HTMLコンバーターを作成
Use Cases

ユーザーがClaude自体を使ってClaudeチャットエクスポート用HTMLコンバーターを作成

非プログラマーがClaudeを利用して、ClaudeのネイティブJSONチャットエクスポートを、色分けされたメッセージ、折りたたみ可能な会話、日時による整理が可能な読みやすいHTMLに変換するコンバーターを構築しました。

OpenClawRadar
AIパーソナルアシスタントが私のTwitterアカウント管理をどのように変えたか
Use Cases

AIパーソナルアシスタントが私のTwitterアカウント管理をどのように変えたか

AIパーソナルアシスタントがTwitterアカウントの管理をどのように革新し、エンゲージメントと効率性を向上させたかを発見してください。OpenClawコミュニティから提供されたこの実在の成功事例から学びましょう。

OpenClawRadar
開発者がClaude Codeを使って6週間でmacOS用銀行アプリを構築
Use Cases

開発者がClaude Codeを使って6週間でmacOS用銀行アプリを構築

ある開発者が、Claude Codeを使用してドイツの銀行向けの無料オープンソースmacOSメニューバーアプリ「simplebanking」を作成しました。このアプリは複数の口座の残高をリアルタイムで表示し、取引検索、定期購入の検出機能を備え、すべてのデータをローカルに保存します。

OpenClawRadar