Osiris — Counter-Strike 2 向けクロスプラットフォーム解析ツール(GUI付)

Tool

概要

Osiris は Counter-Strike 2 を対象としたクロスプラットフォームのゲーム改変プロジェクトで、ゲーム内の Panorama UI を利用した GUI とレンダリング機能を特徴としています。Windows と Linux の両方で動作することを目標にしており、C++ と CMake によるビルド構成、静的解析用の .clang-tidy、CI 用の GitHub Actions ワークフローが含まれます。リポジトリ自体は教育やリバースエンジニアリングの学習用としてコード例や設計パターンを提供しており、ゲーム内部のフックやレンダリングパスの取り扱い、クロスプラットフォームでのコード分岐の実装方法が読み取れる構成です。

GitHub

リポジトリの統計情報

  • スター数: 43
  • フォーク数: 4
  • ウォッチャー数: 43
  • コミット数: 30
  • ファイル数: 9
  • メインの言語: C++

主な特徴

  • Panorama ベースの GUI とゲーム内レンダリングの統合実装
  • Windows と Linux のクロスプラットフォーム対応(CMake、CI ワークフロー)
  • C++ で書かれたモジュール化されたコードベースと静的解析設定(.clang-tidy)
  • リリース済みバイナリ(v1.7.2)が GitHub Actions と連携して配布

技術的なポイント

このプロジェクトの技術的な注目点は、ゲームの UI レンダリングシステム(Panorama)とツール側の描画・UI を密接に連携させている点です。Panorama は HTML/CSS 風のレンダリングレイヤを持つため、従来のオーバーレイ描画とは異なるアプローチでインゲーム UI を構築できます。Osiris はその仕組みを利用して GUI 要素をゲーム内部に馴染ませる設計を採用しており、レンダリングフックやゲーム側の描画パイプラインに割り込む実装パターンが見て取れます。また、CMake によるビルド設定はプラットフォーム抽象化を容易にし、Windows と Linux の差異(API 呼び出しやライブラリ依存)をビルド時に解決する構造になっています。コード品質面では .clang-tidy を用いた静的解析ルールの用意や、CI(GitHub Actions)での自動ビルド/リリースフローが整備されており、開発プロセスの標準化が図られています。これらはゲーム内レンダリングやフック技術、マルチプラットフォーム開発の学習材料として有益です。

プロジェクトの構成

主要なファイルとディレクトリ:

  • .clang-tidy: file
  • .gitattributes: file
  • .gitignore: file
  • CMakeLists.txt: file
  • LICENSE: file

…他 4 ファイル

まとめ

ゲーム内 UI とレンダリングの連携やクロスプラットフォーム設計を学べる技術的サンプル集。

リポジトリ情報:

READMEの抜粋:

Osiris

Windows Linux

Cross-platform (Windows, Linux) game hack for Counter-Strike 2 with GUI and rendering based on game’s Panorama UI. Compat…