Skip to content
Public template

About

Linux Siv3D project template with CMake, devcontainer, Docker Compose, and GUI support.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

8 Commits

Folders and files

Repository files navigation

Siv3D テンプレート

このリポジトリは、再利用可能な base image を中心にした Linux 向け Siv3D テンプレートです。

できること

  • ルート直下の CMake プロジェクトでゲームコードを置ける
  • ghcr.io/xlair-dev/siv3d-docker-base に公開される Siv3D base image を使える
  • devcontainer で Siv3D の再ビルドなしにすぐ開発を始められる
  • docker compose でホストの GUI に接続して Linux 上で実行できる
  • ccache と build ディレクトリで再ビルドを高速化できる
  • GitHub Actions から base image を自動公開できる

使い方

1. devcontainer で開く

/home/noname/me/workspace/personal/siv3d-template をワークスペースルートにして devcontainer を開くと、公開済みの base image をそのまま利用します。

devcontainer up --workspace-folder /home/noname/me/workspace/personal/siv3d-template --remove-existing-container

workspace-folder を省略する場合は、必ず siv3d-template リポジトリのルートで実行してください。siv3d-docker 側には devcontainer 設定を置いていません。

2. compose で起動する

docker compose up -d
docker compose exec siv3d-app bash

3. プロジェクトをビルドする

コンテナ内またはローカルの Linux 環境で、リポジトリのルートからビルドします。build/ はホスト側に置かれるので、そのまま cmake が書き込めます。

cmake -S . -B build -GNinja -DCMAKE_BUILD_TYPE=Debug
cmake --build build

4. 実行する

./build/Siv3DTemplate

主な feature

  • Siv3D base image の分離: 重い Siv3D ビルドを docker/base/Dockerfile に集約
  • 高速な再ビルド: ccache とホスト側 build/ でゲーム側の再ビルドを短縮
  • Linux GUI 対応: X11 をホストにバイパスして描画可能
  • devcontainer 対応: そのまま開いて開発を始められる
  • GitHub Actions 対応: main への push などで GHCR に公開
  • テンプレート向け構成: src/Main.cpp だけを触ればゲームの起点になる

ファイル構成

  • CMakeLists.txt: ルートの CMake 定義
  • src/Main.cpp: グラフィカルな最小サンプル
  • docker/base/Dockerfile: Siv3D base image のビルド定義
  • .devcontainer/devcontainer.json: devcontainer 設定
  • compose.yml: ローカル実行用の compose 定義
  • .github/workflows/publish-base-image.yml: GHCR への公開 workflow

About

Linux Siv3D project template with CMake, devcontainer, Docker Compose, and GUI support.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages