Lua FrameworkはLuaスクリプト言語で定義されたデータを.NETオブジェクトへ自動的に変換および逆変換するフレームワークです。XMLやJSONリーダーのように機能します。違いはJSONやXMLのようなマークアップ言語ではなく、高性能なプログラミング言語を使いゲームやアプリのロジックを定義できることです。多くの人気ゲームのようにLuaを選択することでゲームデザインのプロセスを効率化できますが、更に重要な利点はModding機能を簡単に導入できることです。
Lua FrameworkはMoonSharpというモダンで無料な .NETのLua言語インプリメンテーションを基に開発されました。LuaInterface、NLuaやUniLuaのような従来の.NET・Lua間のブリッジに比べ、MoonSharpは使いやすく覚えやすいユーザー体験を提供し、高性能で、定期的に更新され、最新のLua 5.2とUnityのMono.NET言語の実装を、iOS版を含む全てのバージョンのUnityプラットフォームで最初からサポートする優れものです。
Lua Frameworkは2つの主要モジュールがあります:LuaReaderとLuaWriter。LuaReaderは自動的にLua変数とテーブルを.NETオブジェクトにマップします。LuaWriterは.NETオブジェクトをLuaスクリプトで表現します。現在サポートされている型は:
-内蔵型: bool、int、float、double、string、byteおよびdecimal。
-Enums
-Unity特有の構造体:Color、Color32、Rect、Vector2、Vector3&Vector4。
-パブリックプロパティーを持つカスタムクラス全般
-サポートされているタイプの1次元および2次元配列、
-サポートされているタイプの汎用リストまたはディクショナリー
-可能なネスト全般、例えばList>.
本アセット使用方法の詳しい説明は、次の完全版マニュアルで紹介しています:Lua Framework Manual V 1.1.pdf。
Lua Frameworkのコードはクリーンかつプロフェショナルであり、パフォーマンスを重視して最適化された上にインテリセンスを完全にサポートしています。
フォーラムリンク:Lua Framework