C# でのプログラミング

このページは自動翻訳されており、誤りが含まれる場合があります。誤りを見つけた場合は「このページを編集」リンクからご協力ください。

Turian は .NET 10 上の C# で書かれており、ゲームのスクリプトも C# です。エンジンと同じ言語で、学ぶべきバインディングやスクリプト方言はありません。Unity を知っていれば、ほとんどが馴染みのある形です。Component を継承したクラス、OnStart や OnUpdate などのオーバーライドするコールバック、そして Inspector に表示される public フィールド。

コードエディター

どの C# エディターでも使えます。補完、ナビゲーション、エラー表示のために、Turian がスクリプト用に生成するプロジェクトファイルを開きます:

<プロジェクト>/.Cache/Source/<プロジェクト名>.csproj

Assets/**/*.cs とエンジンのアセンブリを参照しており、Turian がコンパイルするたびに再生成されます。

エディター 設定
Visual Studio Code C# Dev Kit をインストールし、生成された .csproj を開きます。
JetBrains Rider 生成された .csproj を開きます。
Visual Studio 生成された .csproj を開きます(Windows)。
Zed、Neovim、Helix csharp-ls または Roslyn LSP を使う LSP クライアントを、生成された .csproj に向けます。

Turian Studio 自体はコードを編集しません。Assets パネルでスクリプトをダブルクリックすると、デスクトップが .cs ファイルに関連付けているプログラムで開きます。

コードのビルド方法

  • Studio では、スクリプトを保存すると Roslyn によるバックグラウンドコンパイルが始まります。新しいアセンブリはエディターを再起動せずに読み込まれ、エラーは Output パネルに表示されます。
  • turian-cli compile は同じことをヘッドレスで行います。
  • エクスポート(turian-cli export または Project → Export)は、スクリプトをエンジンと一緒に Release モードでビルドし、dotnet publish で自己完結型の単一ファイル実行形式を出力します。

Turian は通常の .NET SDK を使うので、スクリプトでは .NET 10 がサポートする C# のあらゆる機能と基本クラスライブラリ全体を使えます。

規約

  • スクリプトは Assets/ 内のどこに置いてもかまいません。1 ファイルに 1 つのコンポーネントクラスを、ファイル名と同じ名前で。
  • 新規プロジェクトの既定の名前空間は Usercode ですが、どの名前空間でも動作します。
  • null 許容参照型が有効です。Node はコンポーネントがアタッチされるまで null なので、常に設定されているライフサイクルのコールバック内では Node! を使います。
  • 暗黙の using は無効です。新規プロジェクトには Assets/Globals.cs があり、エンジン(Turian.Engine.Core、Turian.Engine.UI)、属性(Turian)、System、System.IO、System.Linq、System.Numerics、ログ、Silk.NET の入力キーコードの global using 行が入っています。独自のものもそこに追加してください。
  • ログは標準の Microsoft.Extensions.Logging の ILogger である Log.Logger で出力します。

数学型

Turian は System.Numerics — Vector2、Vector3、Vector4、Quaternion、Matrix4x4 — を使い、これらは .NET によって SIMD で高速化されます。Mathf は Mathf.Forward、Mathf.Up、Mathf.DegreesToRadians などのヘルパーと定数を追加します。


← すべてのドキュメント このページを編集