【日刊レビュー】人気のスクリプト言語・Lua

http://www.lua.org/images/lua.gif

 

そもそもUnity使ってると、標準の言語自体がJavaScriptとかのスクリプトなので、そっからさらにLuaとか別のスクリプト組み込む意味ってあるのか?って感じは最初ありましたが、やっぱLua入れると楽。

主にな理由として

  1. サーバー側で挙動修正ができる(Appleの規約的には大規模なのはNG)
  2. データ定義が楽。見やすい
  3. 非エンジニア系の人も扱いやすい。簡単

ってとこでしょうか。こうしたニーズは常にあるのと、まさにそのニーズにうってつけの進化をしたLua

今、Unityだと、sluaってのが人気かと思ったんですが、なぜかAsset Storeから消えててgithubだけに。なんかあったんすかね?

C#からの親和性もますます楽になっていき、lua側の定義でこんなんとか簡単に参照できて素敵

var name = Monsters.KingSlime.name;  // 例示のための偽装コードです。

余談ながら、Luaにしてもゲームエンジンにしても、10年くらい前だと日本語資料が乏しく、エンジニアによっては勝手な理解による宗教戦争が勃発しまくって、luaで実装してたけど途中で「自前のスクリプトのが信頼できる!(たいていは酷い勘違い)」とかでちゃぶ台返して同レベルに環境整うのに数年待たされるとかとんでも事件がしばしば起きてました。(そうした煽りで経営難>リストラとか、戦争いくない)

今はどのゲームエンジンにしてもスクリプトにしても十分な実績と日本語資料があるので、特に検証結果を豊富に共有してくれるQiitaとか神ですね。

個人的にはステートマシンの制御にシナリオを絡ませる部分をluaでやることが、企画のスクリプタさんに好評の手法で、洗練が進みまくってて本当にお世話になりまくり。

むしろ導入に躊躇する勘案事項は、資料が多すぎて読み切れないことでしょうか。

エンジニアにとっては概要を理解しないと導入しづらいですが、今はAssetStoreにパッケージされてるので、案ずるより産むがやすしすぎてていいですよね。

設計いかんによっては効率が大幅に変わりますが、まずは飛び込んでみて練度をあげてくことはとても有意義だと思います。