コンテンツにスキップ

クイックスタート

このページでは、Prometeを使ったゲーム開発を始めるための基本的なセットアップ方法を説明します。

必要な環境

  • .NET 8 SDK以降
  • Visual Studio 2022、Visual Studio Code、Rider などの.NET開発環境

プロジェクトの作成

1. 新しいコンソールアプリケーションプロジェクトを作成

Terminal window
dotnet new console -n MyPrometeGame
cd MyPrometeGame

2. PrometeのNuGetパッケージをインストール

Terminal window
dotnet add package Promete

基本

Prometeアプリの基本的なエントリポイントを以下に示します。

using Promete;
using Promete.Input;
using Promete.Windowing;
// アプリケーションを作成
var app = PrometeApp.Create()
.Use<Keyboard>() // キーボード入力
.BuildWithOpenGLDesktop(); // OpenGLデスクトップバックエンド
// メインシーンで実行
return app.Run<MainScene>(WindowOptions.Default with
{
Title = "My Promete Game",
Size = (800, 600),
});
// メインシーンクラス
public class MainScene : Scene
{
private readonly Keyboard _keyboard;
public MainScene(Keyboard keyboard)
{
_keyboard = keyboard;
}
public override void OnStart()
{
// シーン開始時の処理
Console.WriteLine("ゲームが開始されました!");
}
public override void OnUpdate()
{
// フレーム毎の更新処理
if (_keyboard.Escape.IsKeyDown)
{
// Escapeキーでゲーム終了
Window.Close();
}
}
}

アプリケーションの実行

Terminal window
dotnet run

正常に動作すると、800×600ピクセルの黒いウィンドウが表示され、Escapeキーで終了できます。

プロジェクト構造の推奨

プロジェクトが大きくなる場合は、必要に応じてディレクトリを分割してください。

例えば、以下のような構造が良いでしょう。

  • ディレクトリMyPrometeGame
    • Program.cs
    • MyPrometeGame.csproj
    • ディレクトリScenes/
      • MainScene.cs
      • GameScene.cs
      • MenuScene.cs
    • ディレクトリAssets/
      • ディレクトリTextures/
      • ディレクトリAudio/
      • ディレクトリFonts/
    • ディレクトリNodes/
      • HealthBar.cs
      • Player.cs
      • Enemy.cs
    • ディレクトリManagers/
      • EnemyManager.cs
      • AssetManager.cs
    • ディレクトリServices/
      • CombatService.cs

代表的なプラグイン

Prometeには用途別に様々なプラグインが用意されています。

プラグイン名説明
Keyboardキーボード入力を管理
Mouseマウス入力を管理
Gamepadsゲームパッド入力を管理
ConsoleLayerデバッグ用のテキスト表示
CoroutineManagerコルーチン(非同期処理)を管理
AudioPlayerオーディオ再生を管理

プラグインの詳細については、プラグインのドキュメントを参照してください。

サンプルコード

Promete.Exampleプロジェクトには、様々な機能を示すサンプルコードが含まれています。

このコードはGitHubからクローンして実行できます。

Terminal window
git clone https://github.com/prometeapp/Promete
cd Promete/Promete.Example
dotnet run

トラブルシューティング

よくある問題

OpenGLエラーが発生する場合

  • グラフィックドライバーが最新であることを確認
  • Windows の場合、DirectX ランタイムがインストールされていることを確認

パッケージが見つからない場合

  • NuGetパッケージマネージャーでプレリリース版を含めて検索
  • パッケージソースが正しく設定されていることを確認

実行時にクラッシュする場合

  • .NET 8 SDKが正しくインストールされていることを確認
  • プロジェクトのターゲットフレームワークがnet8.0以降に設定されていることを確認