快適なRCライフを送る為の豆知識 〜ライブラリ編〜


そもそもライブラリって何なのさ?

RCのモデルにはLuaを記述することができます。
よく使う自作の関数をいちいちコピペしていても、量が膨大になってくると面倒だわモデルのメンテナンス性も落ちるわで大変です。
そこで、関数を別のファイルにまとめておいて、モデルからそのファイルを読み込むのがスマートでカッコイイのです。

RCの仕様の壁

一言に外部ファイルを読み込むといっても、まずそのファイルがどこにあるのか分からないとお話になりません。
相対パス(例:lib.lua)で書けばモデルと同じフォルダから読んでくれる・・・ハズなんです。
しかし、モデルをRCにドロップして読み込んだり、シナリオやRCGファイルを読み込んだりすると、
基本の場所が変わってしまって、読めなくなってしまうんです。これ、何とかしてくれって要望出して早1年
フルパス(例:C:\RigidChips\lib\lib.lua)で書けば確実に読めるけれど、
ネットで配布して他人の手に渡ったとき、まったく同じ場所にファイルを置け、というのはあまりにも酷です。
これではどうしようもないですね。

LUA_PATH

まぁ、そんな感じにいろいろ悩んでいろいろ試行錯誤しました。
Luaのリファレンスによると環境変数"LUA_PATH"にパスを書いておくとそこから読んでくれるとのことで、
そこに書いてやったらちゃんと読んでくれました。
でも、Windowsのけっこうマニアックな設定で万人にお勧めできるものじゃない。それに面倒。

簡単設定bat

と、いうことでダブルクリック一発(とPC再起動)で簡単に環境変数LUA_PATHを設定できるバッチファイル作りました。
ここからDL
詳しい使いかたは解凍して出てくるReadMe読んでね。

フォルダ構造について

ライブラリフォルダはどこに設置してもいいけれど、その中の構造はちょっと決まってるんです。
いろんな人のライブラリ集まるとファイルたくさんで大変なことになるからね。
ライブラリフォルダの中に自分用のフォルダ作って、その中に自分のライブラリファイルを入れておくんだ。それだけ。
たとえば私のライブラリは hikeo\stdlib.lua とかそんな感じ。

他人のライブラリは宝の山

自分のモデルだからって自分のライブラリしか読めないわけじゃないし、読んじゃいけないなんてことも無い。
便利な機能を提供してくれる関数があったり、侮れない。
というか私のモデルは他人様のライブラリが無いと成り立たないほどです。ライブラリ作ってくれた人たちに感謝感謝
私のも含め主要なライブラリはここからDLできます。

さぁあなたもライブラリ活用して快適なRCライフを!