概要
HeliScript初学者向けに、C#との主な違いをコンパクトにまとめました。
効果的な学習方法としては、公式ドキュメントを読みながら実際にコードを試してみることをお勧めします。
この違いを頭に入れておくと、つまずきが少なくなると思います。
2025/3現在のHeliScript仕様にもとづいた記事となります。
Heliscriptでは出来ない
- パラメーター付きコンストラクタ
- enum
- static
- インスタンス変数をフィールドで初期化
- ただし、constを付与した定数の基本の組み込み型は可能
- 型の名前と同じ変数名
- オーバーロード(同名異引数のメソッド)
- 非同期処理
- ただし、Updateを利用した簡易的な処理は可能
- readonly修飾子
- interface
- 基本の組み込み型以外の引数を持つメソッドのdelegate
C#では出来ない
-
グローバル関数、グローバル変数の使用
- HeliScript ではこれらを使用できます
実行環境の違い
HeliScriptファイルはブラウザ上で直接実行されます。
- C#スクリプト: Unityでapkとしてビルドされる際に、中間言語にコンパイルされます
- HeliScriptスクリプト: ビルド時にコンパイル工程がなく、webブラウザでコードがそのまま実行されます
VKCコンポーネントのビルドの流れ
HeliScriptファイルと異なり、一旦JSONファイルに反映されます
- ユーザーがUnity EditorのInspector上でコンポーネントを設定
- ビルド時にその設定がJSONファイルに反映されます
- ブラウザでそのJSONを解釈・実行することで、ワールド内にアイテムが表現されます